The self-hosted to DevOps engineer pipeline

What’s the best way to get a job? Show someone with a job to do that you can do the job within their iron triangle. What’s the best way you can show someone you can handle a complicated k8s deployment, with 7 different CNCF-approved add-ons, zero-downtime rollouts and a whole bunch of YAML files? Probably by competently and publicly running your own complicated k8s infrastructure. Self-hosters remind me a lot of the sysadmins of yore, who mostly ended up in the profession because they just couldn’t help but mess around with their underlying computing machine until they knew all kinds of weird nooks and crannies within it....

September 18, 2024

How I ask GPT-4 to make tiny Python scripts in practice

First get a working script. “Hey GPT-4, write me a ChatGPT script that does .” Manually check over the script and iterate until it’s giving me what I want. “Now wrap the script into a click command-line interface.” I almost always specify to use an --input flag and an --output flag. If the data it’s working with is human-readable, “Make it so that if --input is not specified, it reads data from stdin....

August 22, 2024

My pet theory of how great software gets started

(Inspired by yungporko’s Ask HN post, which got me thinking.) Pretty much every community, dojo, workplace, subculture, scene you can imagine in the modern day had a software sub-scene embedded within it. It can be as small as “that guy who does our Excel”, or as large as the scene itself . This is owing to the fantastic generality of software as a way to make almost anything more efficient, but we won’t go on that tangent now....

July 16, 2024

Valuable software is about letting people do new things

Today I released a dump of six months of flashcards I autogenerated from my tiny Finnish news archive to make the lives of my fellow language learners easier. The actual code which generates this archive is about 300 lines of Python . The basic value add for the user: What you want: Better fluency in Finnish. What you need: Practice. Lots of it. What this gives you: GOTO 2. This is emphatically not the kind of product, or use case, I would stumble upon as a brain-in-the-vat developer....

June 21, 2024

Layers of abstraction for me, not for thee

Consider the problem of “how do I run more than 1 terminal at a time”. At this moment, I have at least 5 different ways I can effectively solve this issue: I can, from a different physical computer, SSH in to a new session. I can, from the same physical computer, switch to a different tty session with … C-S-F2 through 6 or something. (Rare, but sometimes it comes in really handy....

June 18, 2024

OpenBSD, the computer appliance maker's secret weapon

Between our ESP32 prokaryotic organisms and our 24/7 Internet-enabled megafauna servers, there exists a vast and loosely-defined ecosystem of things the B2B world likes to call computer appliances. Picture a bespoke Pi 4 packaged up neatly with some Python scripts, a little fancy plastic embossing, and maybe a well-guarded id_ed25519.pub in case you end up in hot water during the (long - very long, stable cash flow for generations long) maintenance contract, and you’re in the ballpark....

June 5, 2024

Doing is normally distributed, learning is log-normal

There are few things I think about more than the essays on gwern.net, and there are few with as satisfying a theoretical payout to contemplate in my orb as his essay on “leaky pipelines”, aka log-normal distributions. The skulk: Say you’re working on a Laravel web app. You’re about 90% sure you know how to start the app. You’re 80% sure you know how to handle the infra you’ll need to get it online....

May 28, 2024