-
DIY unit tests … Nov 20, 2024
-
Reading programming languages you don't understand … Nov 10, 2024
-
Golang, flow state, and Copilot … Oct 29, 2024
-
Mental models of the command line … Oct 7, 2024
-
Command line tool design … Oct 1, 2024
-
Pointers in Ruby … Sep 26, 2024
-
Always document flows … Sep 25, 2024
-
A confusing issue to debug … Sep 5, 2024
-
Identity management in big places … Aug 18, 2024
-
The perils of IPv6, or, why I got rid of my virtual private server … Jan 21, 2024
-
Software and softness … Sep 16, 2023
-
How to write your own Jira client and suffer slightly less … Aug 22, 2023
-
Two years in enterprise software … Jul 21, 2023
-
How to downsize a tiny web server and the services on it … May 9, 2023
-
Just where do env vars come from? … Mar 6, 2023
-
My first day using Docker … Nov 29, 2022
-
Were you root? … Oct 18, 2022
-
Thoughts on URL path routing … Oct 7, 2022
-
The hacker spirit … Oct 3, 2022
-
How this site is built … Oct 2, 2022
-
Web projects in a Humanities division … Sep 16, 2022
-
A day in the life of a web agency … Aug 21, 2021
-
Reading as caching … Mar 16, 2016
-
A day in the life of campus IT … Jan 1, 2016