No big revelation here, just writing this as a reminder to myself next time I try curl localhost from WSL and it doesn't work: Don't use localhost o...
This post is part 4 of a series where I build a task queue system. Other parts: Part 1 Part 2 Part 3 Before we continue, at this point, you'd have...
This post is part 3 of a series where I build a task queue system. Other parts: Part 1 Part 2 Part 4 Error handling Right now, when an error happe...
I thought I understood Ruby's Module class, but nope. While reading Jeremy Evans' Polished Ruby Programming, I looked deeper and found some confusing...
This post is part 2 of a series where I build a task queue system. Other parts: Part 1 Part 3 Part 4 Next, I'll beef up my queue library with some...
This post is part 1 of a series where I build a task queue system. Other parts: Part 2 Part 3 Part 4 Motivation Some time ago, I came across a pos...
This post was inspired by this Twitter conversation. The tweet asserts: I should be able to use pnpm while my teammates use yarn or npm, without iss...
I'm sorry, I know the title is confusing!😖 I couldn't think of a better way to summarize the task, so I went with that. So let me explain the prob...
IDs. We need them to reference entities uniquely. But not all kinds of IDs are equal. Features Some IDs are the main identifier (the primary key) of ...
A quick post to document some specific behaviours I encountered with PHP 8's Attributes that aren't in the official docs. 1. Inheriting from an attr...
I had a use case some time ago where base64 saved my ass, and I thought I'd write a short refresher for myself on what it can do, and how it can be a...
While writing my custom serialization format, I spent a while working with byte streams, strings and encodings, so I figured I'd do an article on tha...