↓ Skip to main content

Software Engineering

2025

·61 words
After reading about it, I started trying out Sonshi style myself. RMS is a disgusting character so let’s just pretend the guru is somebody else.

·67 words
An roller coaster of an interview with a series of FizzBuzz extensions that are honestly not even that bad, but poor form from the interviewers’ side not to recognize the absolute balling brilliance on display here.

·80 words
Do not fall into the trap of anthropomorphising Larry Ellison. You need to think of Larry Ellison the way you think of a lawnmower. You don’t anthropomorphize your lawnmower, the lawnmower just mows the lawn, you stick your hand in there and it’ll chop it off, the end. You don’t think ‘oh, the lawnmower hates me’ – lawnmower doesn’t give a shit about you, lawnmower can’t hate you. Don’t anthropomorphize the lawnmower. Don’t fall into that trap about Oracle.

·132 words
I think this is a well argued plea by Ken Shirriff to stop using the term “cargo cult” and I agree with it but would like to add two things.

·65 words
No port/adapter terms to learn, no unnecessary layers of horizontal abstractions, no extraneous cognitive load.

For those who want to introduce some whimsy into their programming and for whom using a variable width font in your code editor is a bit too far, there is now Comic Mono (via). It doesn’t even look all too terrible.

·52 words
I would have been surprised if Devin had performed even 1/10th as well as it was hyped. This is a good clean write-up.

·144 words
I love Github Projects for tracking work. It’s close to the code and engineers understand it natively. I feel you can deliver features of any size with it if you work with the tool.

·47 words
As if it were possible for me to love htmx more, they post a governance statement that the project is stable and there will be no more new features.

·24 words
Running a LLM on a Nintendo Switch is a marvellous little hack and it’s also a testament to the strength of NVIDIA’s platform.

·44 words
A lack of knowledge about queueing theory and a dash of wishful thinking make this a common trap for most developers to believe that as long as you add bigger queues you can wiggle your way out of any scaling problem.

The Agents chapter from Chip Huyen’s book “AI Engineering” is clear and enjoyable to read. She’s right that “the concept of an agent is fairly simple” but building something functional still looks like a massive lift.

·37 words
A live coding environment to create 3D graphics using signed distance functions written in the Janet programming language. Click through and edit some of the embedded examples to get a feel for how amazing this is.

·90 words
I’ve had to spend more time than I like thinking about how datetimes are stored in databases and even the commonly accepted practice of storing UTC does not work for all cases.

·164 words
The terminal I use daily (because it’s the best really), fish, has been rewritten entirely in Rust, because it’s nice and more fun: “For one, fish is a hobby project, and that means we want it to be fun for us. Nobody is being paid to work on fish, so we need it to be fun. Being fun and interesting also attracts contributors.”

·55 words
The o3 AGI result looked so noteworthy that I dove into it. I read one of the papers that’s at the base of the approach and thought it was pretty interesting.

·31 words
An overview of the year in databases by Andy Pavlo that does not pull any punches. I learned a bunch of things (and I somewhat keep up with this area).

·42 words
I think for sure we’ve built an Erlang but even then again Erlang is such an esoteric environment that I would barely consider using it to be an alternative. Where would you start and how would you get other people onboarded?

·22 words
A cautionary tale of how you can try to avoid Kubernetes to then step-by-step build the same thing yourself but poorly.

·95 words
Another take on the old adage that writing the code is the easy part of software engineering. The real work is figuring out what has to be built and how. Once that is clear, the actual building can be done relatively quickly and linearly.

2024

·188 words
The Digital Patient Record system in Germany is built on smart cards and hardware which make it impossible to update and keep secure.

·142 words
The low-latency user wants Bigtable’s request queues to be (almost always) empty so that the system can process each outstanding request immediately upon arrival. (Indeed, inefficient queuing is often a cause of high tail latency.) The user concerned with offline analysis is more interested in system throughput, so that user wants request queues to never be empty. To optimize for throughput, the Bigtable system should never need to idle while waiting for its next request.

·177 words
I use AI tools to help me program despite them being mostly very disappointing. They save me some typing once in a while.

·34 words
I get to have a lot of conversations around compliance and this is as good a “SOC2 for tech people” guide as I could have asked for by the good people at Fly.

·38 words
Postgres seems to reign as the database solution of choice but there are lots of new specialised databases that are worth looking at. All of these can be used in production at scale for the right application.

·21 words
Fun little write-up how to make a web frontend to a dataset that’s almost infinitely large. See it at: https://everyuuid.com

That’s an amazing overview of all the things that can and will go wrong in online PvP gaming. It covers the range from networking exploits to all the in-game ways that people try to grief or abuse others.

Seeing if I can move from Arc to Vivaldi but there are half a dozen radical improvements in Arc that *make* the experience. It just shows how much innovation and solid thinking was packed in all of that frivolous design.

·38 words
Chuffed by the strength of my team that we have most of the easy decisions from these Node.js pillars in place and we are making headway on all of them to the extent that’s appropriate for us.

·118 words
I painstakingly built a bespoke Rust web application to host the Cuppings venue data and to add Google place_ids to almost 2000 Foursquare location. That’s been done for a while now but now we have the announcement of Foursquare open sourcing their location dataset.

·51 words
Cool to read this long view from the inside by Carlton Gibson of what has made Django work (and not work) for the past 20 years. Django has been a stellar achievement that’s been a cornerstone of my career and I look forward to see the project reach new heights.

·74 words
Reading these database migration stories is usually interesting, but what I found especially noteworthy here is that all of the Django features they used to make it easy for themselves have been in there for more than a decade.

·15 words
Filing for myself for if we need to really work on Postgres integration tests: https://gajus.com/blog/setting-up-postgre-sql-for-running-integration-tests

·39 words
I’ve been waiting for an updated edition of “Designing Data-Intensive Applications” and now I see that Kleppmann is working on it. Reading the first edition has given me such an outsized advantage when architecting and building systems.

·22 words
GitHub Copilot is like every Microsoft product. Everybody uses it because it comes bundled in their company contract but nobody likes it.