Build Versus Buy: You Are Always Building, Always Buying

TL;DR: “Build-vs-Buy” is a false dichotomy, you are always building, always buying “This is not your ‘Core Competency’” is a faux trump-card, everything is a spectrum Past experience is overrated, what matters for hiring is your ability to learn Understanding The Trade-Off Fully understanding the build-versus-buy trade-off requires a bunch of different context to really get right. At first glance you might think that you only need to really understand:


Configuration as Code - Is It That Good of an Idea?

Kyle’s Conclusions: If possible, make your users not care about the intermediate form “Code as Configuration” is not worth it YAML isn’t so bad if you can be strict A Brief History of Configuration as Code Configuration as Code is not new. There are a few subtle distinctions that are worth pointing out: Thing Historic Example Modern Example Config as Config Apache2 (.



I recently gave a talk called “Layers” (~35min). Warning: The audio and video quality are horrendous:

Being a Great Engineering Mentor

Here are some thoughts how I think about being a great engineering mentor. To me the most important thing is remembering “who to be”, and not as much as “how to act”. You won’t remember how to act. You can look up all the listicles you want on tips on what to do as a mentor, but if you can just “be” the right person, the choices you make and the things you say might just come naturally.


Sutro Tower Vinyl Art

I recently finished a project to make a vinyl mural of Sutro tower: The “source code” of this project is on github and is in the public domain.

The Evolution of Distributed Systems Management

Let’s survey the past and present of how we manage distributed systems, and then maybe try to predict the future. For this survey I’ll look at a few open-source technologies to give concrete examples (in Kardashev style. Type 0: Manually Deployed and Configured Type 1: Host-Centric Configuration Management Type 2A: Infrastructure-scoped Orchestration Tooling Type 2B: Application-specific Orchestration Tooling Type 3: Compute-Platform-Native Application-Specific Frameworks Type 3A: Mesos Frameworks Type 3B: Kubernetes (k8s) Operators Type 4: Hybrid?


Adding Electric Motors to a Gemini 105m

I recently added a pair of electric motors to my Gemini 105m catamaran. Haul out Although I don’t have any photos of the actual installation, here is what they look like: motors wake These are a pair of Caroutte S400’s. In theory they have a thrust of 180lbs each and a peak power consumption of 2.7kw each. Although it cannot be directly compared, the onboard diesel is a 20kw (27 Horsepower) engine.


Another Comparison of Image to ASCII Conversion Tools (2017)

Time for another round of terminal-based ascii/ansi art image conversion tools. Check out my last post from 2015 with more comparisons of more tools. This year I compare the best tool from 2015, img2xterm, against a new set of tools that I’ve stumbled across. email me with other tools if you would like to be included in the next round. Methodology For these tests I used an image with a 160px width, twice that of a standard terminal.


Cruising from Port San Luis to San Francisco in a Gemini 105m

Over the last 5 days my wife and I cruised from Port San Luis to San Francisco. The total distance was 228 Nautical Miles (nm). We recently purchased the boat and decided to relocate it to a Marina closer to where we live. We knew the trip would relatively difficult. The majority of the journey would be against the wind and waves. For this reason we decided to motor the entire distance up North.