Our Blog

Insights, tutorials, and best practices from our team of experienced developers.

Software Engineering

Five States That Can't Exist, and Your Code Allows All of Them

We gave an agent an ordinary task — a product list screen with loading, an error and data — and it returned a class with one boolean and two nullable fields. That is eight combinations, three of which mean anything; the other five compile, pass review, ship, and wait. This is what an impossible state is, why it is the same thing as a broken invariant, why the real cost is not runtime bugs but the unwritten conventions every reader has to reconstruct, and how sealed classes plus exhaustiveness turn a whole category of mistakes into a build failure. Also: why an enum plus nullable fields makes it worse, the one line that silently switches the check off, and the four places where algebraic data types do not help at all.

August 31, 2026
Software Engineering

Everyone Got the Timeline Wrong: AI, Juniors, and Quantum

Two years ago the loudest voices in tech said software engineers would be obsolete by now. They were wrong: developer employment did not collapse. But the same wave that failed to remove developers removed something else — the routine work that turned beginners into seniors. Employment of developers aged 22 to 25 is down roughly 20% since late 2022 while their older colleagues held flat or grew. Meanwhile quantum computing is running the identical hype cycle one lap behind, and the milestone that actually matters is not the one in the headlines. Here is what the evidence supports, what it does not, and how to tell the two apart.

August 18, 2026
dxpdf 0.5.0: Teaching a DOCX Converter to Read the Rest of the World
Software Engineering

dxpdf 0.5.0: Teaching a DOCX Converter to Read the Rest of the World

dxpdf converts Word documents to PDF without Office, LibreOffice, or a cloud API. Version 0.5.0 is the release where it stopped quietly assuming every document is written in English — UAX #14 line breaking, UAX #9 bidirectional text, and CLDR-driven numbers and dates that follow the document's own language. Here is what shipped, the design decisions behind it, and the measured numbers.

August 11, 2026
How We Build With AI: Architecture and Flexibility Over Keystrokes
Software Engineering

How We Build With AI: Architecture and Flexibility Over Keystrokes

AI now writes a large share of the code in any serious shop — 84% of developers use it daily. We lean into that on purpose. Letting agents produce the code frees our engineers to do the work AI is worst at: architecture, flexibility, and the whole-system decisions that determine whether software survives its second year. Here is how we actually build in 2026, why we moved the human effort up the stack, and how we keep AI-written code from turning into the tangled codebases we audit every week.

June 19, 2026
AI Code Audit Findings: 11 Problems in Almost Every AI-Built Codebase
Software Engineering

AI Code Audit Findings: 11 Problems in Almost Every AI-Built Codebase

Your AI-built app may already be live, and the security holes are only part of the story. We audited dozens of codebases built with Cursor, Claude Code, Bolt, Lovable, and long ChatGPT sessions, and the same eleven problems recur almost every time: hardcoded secrets, no input validation, authentication that checks the box but not the request, zero tests, no error handling on the unhappy path, N+1 queries, stale dependencies with known CVEs, rampant duplication, no consistent architecture, callback hell instead of proper async patterns, and no awareness of the deployment environment. Here is what each one looks like, why AI produces it, and how we fix it.

June 18, 2026