Jeff Bailey

Jeff Bailey
9d ago

Quick Start: This guide gets you writing Mermaid diagrams that render on GitHub in about 15 minutes. Learn the two diagram types that cover most real work, then build a deployment pipeline diagram you can drop into any README. What You’ll Learn What is Mermaid, and what problem does it solve? What are the use cases for Mermaid? When is Mermaid not the right tool? Which two diagram types cover mos…

Jeff Bailey
9d ago

Lima enables you to run a Linux machine on your Mac for free. This tutorial helps you install Lima, launch a Linux VM, verify shared files, and run a web server in a container accessible via your browser. If you want the concepts first, read What Is Lima? and come back. This article stays hands-on. What You’ll Build A working Lima setup: an Ubuntu virtual machine (VM) running on your Mac, managed…

Jeff Bailey
9d ago

When Docker altered Docker Desktop licensing in 2021, teams received emails from procurement to stop using it or buy seats. Switching a Mac to Lima after such emails, the command line remains nearly unchanged. Containers run, ports forward, and bind mounts appear inside the container. That leaves a question: what is doing the work now? Docker Desktop feels like one thing. Lima seems like tangled …

Jeff Bailey
10d ago

Run kubectl get pods in a Kubernetes cluster with Istio installed, and every application pod shows 2/2 containers. You deployed one container. The second is Envoy, and it now handles every byte of network traffic your application sends or receives. Envoy is an open-source, high-performance proxy for cloud-native systems. It handles networking tasks like routing, retries, timeouts, load balancing,…

Jeff Bailey
25d ago

Introduction Every if statement relies on ideas humans learn before talking. Booleans seem simple: one bit, two values. But explaining a boolean to someone with no programming background is difficult. Boolean logic is a reasoning system based on two values, true and false, with three operations: AND, OR, NOT. It underpins all digital computers and program conditionals. By the end of this article,…

I just got off a 27-minute call trying to understand and fix a credit card decline problem with my Flexible Spending Account (FSA), not to be confused with my Health Savings Account (HSA). Thank you, government, for creating two accounts that sound very similar. It was a wonderful adventure. If I were playing a game of Zork, it might have been fun pressing 1, 2, 3, or 4, or entering random words …

Introduction Why does “it works on my machine” stop being an excuse the moment a team adopts containers? Because a container ships the machine along with the code. That single shift, packaging an application together with everything it needs to run, is the heart of containerization. A container is an isolated process that carries its own filesystem, libraries, and configuration while sharing the …

Most claims about how to build software are opinions wearing the costume of fact. “Pair programming catches more bugs.” “Microservices scale better.” “This linter improves quality.” Each sounds authoritative, and each is testable. Empirical software engineering is the discipline that does the testing: it studies how software is built, maintained, and used by collecting real data and analyzing it,…

Introduction Someone on r/dataengineering asked if there’s a standard for modern data architecture. With 20 years of experience, they had a batch pipeline pulling 200MB files into a data lake and a new source as a serialized Kafka stream. They wondered if streaming was the new paradigm or if they were becoming dinosaurs. The best answer cut to the confusion: the question asked about architecture,…

Introduction A team spends three weeks debating whether to use PostgreSQL or MongoDB. Six months later, nobody remembers why they chose one over the other, a new hire proposes switching, and the whole argument starts again from zero. The database was never the hard part. The team had no way to make the decision, agree on it, and remember it. Most software failures are not coding failures. They tr…

Introduction Most data teams hit the same wall. The pipelines run, the warehouse fills up, and yet nobody trusts the numbers. Two dashboards report different revenue. An analyst spends a morning rebuilding a definition of “active user” that someone already wrote last quarter. The data exists, but the data nobody argues about does not. Analytics engineering is the work that closes that gap. It sit…

Jeff Bailey
7/2/2026

A new paradigm is emerging in the age of AI-led software development. I’m calling it Are We There Yet Development . Last week a developer walked over to another developer asking for something they felt they needed to proceed with their critical greenfield project when the developer was in the middle of troubleshooting a production incident. Looming over nearly every developer is a neverending sen…

Jeff Bailey
6/28/2026

Quick Start: Learn five mental models that cover every HTTP response, then read live codes with curl . Total time: 20 minutes. What You’ll Learn What an HTTP status code is, and what problem it solves. Five mental models that make any code readable, not just the ones you’ve memorized. The mnemonic for all five classes, and four more models for the hard cases. The handful of codes you’ll meet 95% …

I admit it: I’m an operating system addict. I’ve installed countless operating systems over my life, and I still use many of them. It may seem like a bad idea. It isn’t. I jump between macOS, Linux, Windows, and Chrome OS across many devices, and that’s just on desktop. On phones, my first was a Google Nexus One then a couple pit stops with Nokia Lumia 521 and 620 Windows Phones. Later I went bac…

Jeff Bailey
6/23/2026

Most data starts as rows in tables: customers, orders, tickets. To see how a customer links to a product they refunded through a support ticket, you write joins. The connections exist, but the tables hide them; they surface only when you go looking. A knowledge graph puts those connections first, treating the relationships between entities as the main thing. By the end of this article, you’ll kno…

You have read what a knowledge graph is. Now build the smallest one that works. This tutorial uses plain Python, a list, small functions, no database, libraries, or setup beyond Python. By the end, you’ll have a runnable file that stores facts, answers questions, and navigates between facts. If the words triple , node , or edge are new, read What Is a Knowledge Graph? first. This guide builds wha…

The interviews are done. Someone sat with the domain expert and committed ontology.md next to the code. Then the quarter got busy. Six months later a report counts the same Customer three times, and the model built to prevent exactly that has not changed since launch. An ontology earns its keep only when a team uses it. A software ontology is a shared model of a domain: its entities, their attrib…

Two senior engineers argued for an hour over a bug. The fix took ten minutes, but the argument lasted fifty. One meant “active subscription” when saying customer , the other meant “any account.” Both were correct but lacked a shared model. A software ontology is an explicit, agreed-upon domain model, including concepts, meanings, and relationships. In DDD, it covers ubiquitous language, bounded c…

Jeff Bailey
5/28/2026

Open a mature codebase and grep for Customer . In billing, it means an active, paid account; in support, anyone who has sent an email; in analytics, a deduplicated household. The bug isn’t in one module, but in three teams misunderstanding they’re referring to the same thing. A software ontology is a clearly defined, shared model of a domain that includes concepts, meanings, and relationships, do…

Your job as a software engineer in 2026 differs from 2020, beyond just using chat tools. Every system component, review queue, test runner, version control, release process, and on-call rotation must handle more load than they were designed for as demand continues to rise. This article discusses AI’s impact on software engineering through the lens of software ecology, citing Adam Bender’s Google …

research.ioresearch.io

Sign up to keep scrolling

Create your feed subscriptions, save articles, keep scrolling.

Already have an account?