-
April 29, 2024
Python versions I’m a little slow on the uptake with version management of language runtimes and environments. For a long time I just followed the Linux distribution convention of global versions of dependencies and compiler versions for my system. This changed during my years doing NodeJS development where the language and tools were changing daily it seemed. Node Version Manager…
-
February 1, 2024
Sharpening the Saw I’ve been deepening my Maker practice over the last year or so. I’m working with physical things, making electronics happen, doing art and making things out of metal. Loosely this could be defined as art. It’s more of a multi-disciplinary exploration of building things. I’m working out details of organizational systems for tools and materials. Also of…
-
November 28, 2022
The quest for modularity I was reading some of Avery Pennarun’s blog posts on system architecture and design. There was a set of bullet points that stood out to me that I will copy below: The top-line goals of module systems are always the same: Isolate each bit of code from the other bits. Re-connect those bits only where explicitly…
-
November 15, 2022
Middleware everywhere I’m a huge fan of composition via middleware. Some people call them plugins, as we did back when I was working on Ubernote. We had plugins for all sorts of things. The only thing you need is a stable API and a default way of invoking things. This turns out to be important later when considering how to…
-
October 10, 2022
Modern C# Those of you that have followed me for a while know that my first significant industry experience was with .NET. Of course my first programming experiences were with C64 BASIC and Pascal on the Mac along with college courses in C++ but it’s always those first real codebases where one cuts their teeth. Anyway, it was very modern…
-
March 23, 2022
Process stability and Software Engineering I’m reading some of Edward Deming’s writing and I can’t help but try to draw parallels between manufacturing fundamentals and statistical process control and the software development lifecycle. Deming was able to show scientific ways of managing hidden variables without trying to make wild guesses about systems up-front. I have seen management systems come and…
-
March 22, 2022
All code is legacy code I was doing some one-on-one meetings with some folks on my dev team and my colleague showed me an informal document that he was keeping. Sprinkled throughout were references to legacy code and proposals to move to different technologies. I wanted to dig into some specifics but I casually mentioned that all of our code…
-
December 5, 2021
Immediacy The last few years I have been going out to a festival in the Nevada desert. You can probably guess which one but it’s not really important for this discussion. One of the core tenets or “principles” of that gathering is embracing immediacy. In the context of the festival that generally manifests itself in a kind of a fractally…
-
July 3, 2019
Go to the H1 of the class I’m refactoring some HTML right now and it occurs to me that headings are problematic for non-frontend devs and inconsistently used at best among frontenders. When I was at Yahoo a big part of the styling philosophy revolved around Atomic CSS. These were the kind of predecessor to React’s JS-like inline style declarations.…
-
June 25, 2019
Simple Ubuntu Desktop with Vagrant I wanted to spin up a Linux development environment to hack on some code that needed epoll. I could have run everything in a Docker container, but I kinda wanted to be in that environment for total hackage. I thought maybe I’d just do it in a Virtualbox instance. Then I didn’t want to install…