Jul 11, 2026
Building an Embedded Multiplatform SQL Database with AI —
I wanted a SQL database that didn’t exist, so I tried to build it with AI…
May 7, 2026
MacBook Pro with Colima vs. Remote Linux for Devcontainers —
I tested whether it was worth remoting to a Linux server instead of running in a VM on a MacBook Pro.…
Sep 26, 2020
Improving SQL Tests with Doppelgänger and Canary Data —
SQL statements can appear to work correctly in development and testing but fail catastrophically in production…
Aug 1, 2020
Sharpening the Axe is Doubly Important In Software Development —
The ancients recognized the wisdom of sharpening one’s tools. It is especially important in software development…
Apr 18, 2020
When To Use PostgreSQL Enums —
PostgreSQL enums should be used for values that directly impact application control flow.…
Apr 11, 2020
The Context Overridable Global Pattern in Go —
Contexts and global variables mitigate each others weakness.…
Feb 4, 2018
Simple Enums in Ruby with the meta_enum Gem —
Ruby does not have a built-in enum type. The meta_enum gem can fill the gap.…
Aug 8, 2017
Simple PostgreSQL Upgrades in Development —
Upgrading a production PostgreSQL server can be a complex and delicate process. But in a development environment downtime is not an issue and database size is typically fairly small. For these cases performing the same upgrade process as production can be overkill. There is a simpler way.…
Sep 8, 2016
Development of a Simple Command Line Websocket Client —
While working on the Websocket Shootout, I frequently needed to connect to a websocket server and interact directly. None of the existing tools I was aware of had exactly the features I was wanted. That led to the creation of ws.…
Jul 7, 2016
Modeling Polymorphic Associations in a Relational Database —
Polymorphic associations can be difficult to correctly represent in a relational database. In this post I will compare and contrast four different ways to model these challenging relationships.…