
Web Development

Containerless Dev environments for Drupal development with Nix
The recording of my talk from DrupalCon this year is now available!
This is perhaps my most technical talk, meant for developers and tinkerers who would like an easy way to get started with Drupal.

Ask Freelock: Do I need a Web Application Firewall?
Craig asks,

Adding power to your shell - my home manager configuration
At Freelock, we're starting to use Nix to manage different PHP environments, and be able to incrementally update websites.

Ask Freelock: Sortable tables?
Kevin asks,
Is there a Drupal Add On or Widget that would allow users to sort tables as they're displayed on the website?
Hi, Kevin,
Several options here:

Privacy Big Picture: 6 ways privacy is changing
It's the end of 2024, and compared to 10 years ago, there's a lot of changes when it comes to privacy.
Parse out names, addresses, complex fields using AI
We've had several clients working with memberships, who have a single name field with the full name of a person. And then they ask us to build a directory that is sorted by last name. This is a bit hard to do if there's a first name in front of it!
Names don't follow rules very well. Some have apostrophes in them, some have multiple words -- you can't just take the last word of a name and assume that's the last name, because often it just isn't.
Automatically post to BlueSky
Since the 2024 election, the BlueSky social network has exploded in popularity, and appears to be replacing the cesspool that used to be Twitter. I'm not much of a social media person -- I much prefer hanging out in smaller spaces with people with shared interests. If you're like me, I would highly recommend finding a Mastodon server that caters to your interests, where you're sure to find rewarding conversations.
Make integrations with other services more resilient using a Queue
One downside of automating things is dealing with outages. Sometimes services go down, and are not available for some period of time. When this happens, how does it impact your automation?
If you don't design your automation carefully, you might lose the data entirely. Or get spammed by hundreds of submissions when it comes back up. Handling this correctly does end up needing some understanding of how the automation works, as well as any quirks of the remote system.
Control access to particular pages, fields
Drupal has long had a variety of access control modules, to make it so you can easily control who can view or edit particular pages. There are actually several different layers of APIs to control this in Drupal core -- the modules generally provide a user interface to let you control access by content type, by tagging content with particular terms, through their position on a menu, or through a group. The Field Permissions module lets you control access to particular fields on an entity.
Create a deep redirect in a headless site
One of our clients has a custom surveying application built with a Drupal back end, and a VueJS/headless front end. They use this application to record observations in various buildings and sites that don't meet accessibility requirements.
They give their clients access to the front end. This application organizes observations into particular sites, in particular projects, grouped by the requirement. Each observation can have photos attached, along with notes and recommended solutions.