I’m Writing a New Book!

I’m excited to announce that I’m writing a new book for O’Reilly: Follow the Money: Understanding the Financial Architecture of Software. This is a project that’s been quietly brewing for several years. 👇 The book’s primary goal is to help those engineers and managers whose efforts to change their organisations with technology hit the buffers … Read more

Exploring OSCAL Using Neo4J

This post is aimed at those interested in continuous compliance, an extension of cloud native principles to the area of software compliance, an under-developed field of software automation. My consultancy, Container Solutions is working on an open source project to help automate the management and reporting of controls, and this post arose from that work. OSCAL? OSCAL stands … Read more

Does Crossplane Replace Terraform? Part I: the Theory

What is Crossplane? If you don’t already know, Crossplane is billed as an: Open source, CNCF project built on the foundation of Kubernetes to orchestrate anything. Encapsulate policies, permissions, and other guardrails behind a custom API line to enable your customers to self-service without needing to become an infrastructure expert. Another way to view Crossplane is as … Read more

At 50 Years Old, Is SQL Becoming a Niche Skill?

This post was originally triggered – and I choose that word carefully – by a recent experience on a cloud cost-optimisation project. These experiences prompted me to consider how things had changed since I started working in software. As part of the project that provoked me, I was researching the topic of cloud cost analysis … Read more

What I Learned Using Private LLMs to Write an Undergraduate History Essay

TL;DR I used private and public LLMs to answer an undergraduate essay question I spent a week working on nearly 30 years ago, in an effort to see how the experience would have changed in that time. There were two rules: The experience turned out to be radically different with AI assistance in some ways, … Read more

Learn jq the Hard Way,Part IV: Pipes

Other Posts Pipes The pipe is the next-most used feature of jq after filters. If you are already familiar with pipes in the shell, it’s a very similar concept. How Important is this Post? Pipes are fundamental to using jq, so this section is essential to understand. We will cover: Setup Create a folder to … Read more

Learn jq the Hard Way,Part III: Filters

Other Posts Simple Filters In this section we introduce the most-frequently used feature of jq: the filter. Filters allow you to reduce a given stream of JSON to another smaller, more refined stream of JSON that you can then do more filtering or processing on on if you want. How Important is this Post? Filters … Read more

Learn jq the Hard Way, Part II: The jq Command

Other Posts jq This section introduces you to the jq command, starting with the simplest possible commands as well as a brief look at the most commonly-used flags. What is jq? jq is a program for parsing, querying, and manipulating JSON. More broadly, it’s a filter: it takes input and transforms it to output. It … Read more