In yesterday's email, I mentioned the Private Message Queue module - a contributed Drupal module we wrote for a project as part of a contribution-first workflow.
In our experience, doing that and releasing Private Message Queue as its own open-source project encouraged more open-source contributions.
We started to ask questions like, "Which user should the messages be sent from?".
Inspired by system users in Linux, it provides a way to identify and retrieve system users that aren't tied to individuals' accounts and without relying on "magic" user IDs.
Following the Null object pattern, if there isn't a system user, instead of returning NULL or FALSE, you return a null user that you use in the same way, though they'll have default empty values and won't perform any actions.
This pattern simplifies your code as you don't need to check for NULL or FALSE values.
Here's the thing
If I remember correctly, as part of the project, we created and released around ten new contributed modules to Drupal.org.
We were able to move straight onto the next phase of the project.
We didn't need to clean them up or refactor them beforehand. We didn't need to dedicate any additional time as they were already released.
- Oliver
Was this interesting?
About me
I'm an Acquia-certified Drupal Triple Expert with 17 years of experience, an open-source software maintainer and Drupal core contributor, public speaker, live streamer, and host of the Beyond Blocks podcast.