

Cross-compiling C++ with Bazel and Wolfi
rules_apko, toolchains_llvm and Wolfi

Jarvis Wasn't Built in a Day
Google’s mission “to organize the world’s information and make it universally accessible and useful” was in part inspired by the vision of Star Trek’s computer. Generationally, for Millennials and Generation X, there is a more recent point of reference with Jarvis and Tony Stark. Science fiction has always had this role in society: it’s a Janus that faces both the present and the future, incorporating our anxieties and expectations and projecting forward. This dual nature means, of course, th...

Jarvis Wasn't Built in a Day
Google’s mission “to organize the world’s information and make it universally accessible and useful” was in part inspired by the vision of Star Trek’s computer. Generationally, for Millennials and Generation X, there is a more recent point of reference with Jarvis and Tony Stark. Science fiction has always had this role in society: it’s a Janus that faces both the present and the future, incorporating our anxieties and expectations and projecting forward. This dual nature means, of course, th...

Pre-Building Standard Devcontainers with GitHub CI
To support Left-of-Launch quality checks and ensure a consistent development environment straight out of GitHub, I make extensive use of VS Code’s devcontainers. The one problem is once you have built up a large set of tools, the time to rebuild the container gets to be quite long -- unnecessarily so, because the vast majority of the layers in the container never change. Ideally we want the majority of our core features to just be available as a pre-built image. If you search for how to do th...

Pre-Building Standard Devcontainers with GitHub CI
To support Left-of-Launch quality checks and ensure a consistent development environment straight out of GitHub, I make extensive use of VS Code’s devcontainers. The one problem is once you have built up a large set of tools, the time to rebuild the container gets to be quite long -- unnecessarily so, because the vast majority of the layers in the container never change. Ideally we want the majority of our core features to just be available as a pre-built image. If you search for how to do th...

Left of Launch: Questioning the Speed-Quality Tradeoff in Software Engineering
The concept “left of launch” comes from missile defense: in the timeline, the events that happen before the missile launch are to the left; this is where the idea of Shift Left in QA testing comes from as well. You can apply this idea to building code, unit testing, benchmarking and even security scanning: the common thread is that in all these things when there is a mistake of some kind, you want it to become apparent as soon after the mistake is made as possible. Why you might want that, an...

Left of Launch: Questioning the Speed-Quality Tradeoff in Software Engineering
The concept “left of launch” comes from missile defense: in the timeline, the events that happen before the missile launch are to the left; this is where the idea of Shift Left in QA testing comes from as well. You can apply this idea to building code, unit testing, benchmarking and even security scanning: the common thread is that in all these things when there is a mistake of some kind, you want it to become apparent as soon after the mistake is made as possible. Why you might want that, an...

Chaos Manor Reloaded
Many years ago Jerry Pournelle wrote a column for the now-defunct Byte magazine called Computing at Chaos Manor. Nowadays a lot of system administrators and developers are homelabbing and writing about it, but he was probably one of the pioneers, so the title here is a nod to that history. As I am getting back to regular hobbyist software development and being our home’s Bastard Operator From Hell, I wanted to write more about that as well. In the past I have written while building both hardw...

Chaos Manor Reloaded
Many years ago Jerry Pournelle wrote a column for the now-defunct Byte magazine called Computing at Chaos Manor. Nowadays a lot of system administrators and developers are homelabbing and writing about it, but he was probably one of the pioneers, so the title here is a nod to that history. As I am getting back to regular hobbyist software development and being our home’s Bastard Operator From Hell, I wanted to write more about that as well. In the past I have written while building both hardw...