5 April 2026

44 links · Sunday

Leaving Middle East Till Things Cool

In early March, due to the unexpected war in the ME, I was contemplating my next move. Should I stay or leave? Flights were still taking off from Dubai, albeit at a limited frequency. Enterprising car rental companies were offering package deals to wealthy exp…

I give up on neovim

Note: English is not my first language. The text below was written by me and corrected by an AI. I then corrected the AI’s corrected text, so there are probably still some wording errors In 2022, I made a New Year’s resolution to switch from Chrome to Firefox,…

How to Get Better at Guitar

Years ago I watched a video where guitar teacher Justin Sandercoe explained a way to get better at guitar. It has changed my playing, and it might change yours, too.

The Codification Treadmill

The person who replaces you probably won't be AI. It'll be someone from the next department over who learned to use it.

Good APIs Age Slowly

Good APIs do not win on first impression. They survive change. This post looks at why stable APIs expose less, assume less, and age better over time.

Don't Yell at Your LLM

LLMs don't have feelings, but they have a dataset based on human interaction. It's probably not a great idea to behave in a way that produced negative results in the dataset.

The Anatomy of SMS Delivery: Routing and Carrier Flow

Most SMS APIs hide routing. This guide explains how SMS delivery really works, from API request to pricing, execution, tracking and carrier outcome

Domain-Driven Design: Lean Aggregates

Design aggregates around true consistency boundaries, not around all related data, to keep domain logic clear and write paths performant as the system grows.

Bazel is not scary anymore

LLMs have eliminated Bazel's biggest adoption barrier — the steep learning curve. They're fluent in Starlark, can generate BUILD files, and make getting started surprisingly easy.

Code freezes

Code freezes can undermine the very thing they are meant to protect.

ILLEGAL 3D Rendering Techniques (N64)

Upgrade Your Workspace with FlexiSpot! Enter my exclusive code 'KAZE50' and save an extra $50 on the C7 Max chair! Shop through Flexispot C7 Max:https://bit.ly/4cYtnPr -us https://bit.ly/4dCNMd4 -ca Patreon: https://www.patreon.com/Kazestuff Streams: https://…

Eight years of wanting, three months of building with AI

For eight years, I’ve wanted a high-quality set of devtools for working with SQLite. Given how important SQLite is to the industry1, I’ve long been puzzled that no one has invested in building a really good developer experience for it2. A couple of weeks ago, …

Someone at BrowserStack is Leaking Users' Email Address

Like all good nerds, I generate a unique email address for every service I sign up to. This has several advantages - it allows me to see if a message is legitimately from a service, if a service is hacked the hackers can't go credential stuffing, and I instant…

It's not that deep

I have these Sunday evenings where I find myself sitting alone at the kitchen table, thinking about my life and how I got here. Usually, these sessions end with an inspiring idea that makes me want to

Know why you don't like OOP

Programmers tend to fight about why Object-Oriented Programming (OOP) is good or bad. Among the anti-OOP crowd, I often see junior programmers hate on OOP and “rebroadcast” what they’ve heard experienced programmers say. But when challenged to explain why OOP …

Detecting Defects in Software Systems

Throughout my time working with complex distributed systems, I have learned that consistently detecting systemic issues is surprisingly difficult and a bit of an art. The canonical way to do this is to set up alerts that notify an engineer when something is wr…

An introduction to Turing machines and computation

Contents Introduction Should you read this? The Turing machine The intuitive approach A mathematical approach Languages Words/Strings Languages from words Distinguishing Turing machines with respect to a language A recogniser A decider Distinguishing languages…

Towards Autonomous Protocol Proofs

Writing formal proofs for distributed protocols is tedious and usually not worth the effort for real-world systems. In general, you have to come up with an inductive invariant which is already a very difficult task. At least a few separate PhD theses were enti…

Automation Without Intention Is Just Faster Chaos

Three failed pipeline architectures, a lesson about backpressure, and the UAT gate that finally made multi-AI vibe coding work. An experience-sharing post about what broke, what survived, and why knowing what you want matters more than the tools you use.

Just because it's work shaped doesn't make it productive

AI Assisted/Agentic programming are pretty common place at this point. The growing sentiment seems to be that if you can't find some sort of benefit in your workflow, it's more of a skill issue than a problem with the tools. Whether you believe this to be true…

blazelight.dev

I do things on the computer.

Three months of agentic coding

Last month I wrote my experience with AI-generated coding on this blog(two months as a vibe coder). I got a lot of positive feedback, so I created another chart for my work up till this months and wrote down the thoughts I had this month.

A diary of an agentic retro-gamer - Part 1

This is the first part of a guest series by Patrick Nadeau, a member of the Research Engineering team based in Canada. I mentioned it in this recent post. Patrick is a great writer and a very experienced developer who gives a personal, nuanced perspective on h…