Topic

Architecture

16 articles

System Design

Two million games, one running clock

Plate two: two players sharing one truth while the clock runs, and why the bravest thing a real-time system can do is stop.

· 17 min read

Security

Securing GenAI at enterprise scale

Large language models are rarely the weakest part of a GenAI system. The prompts, permissions, tools and people wrapped around them usually are.

· 6 min read

Architecture

Answering questions with MCP

This site now answers questions over MCP through a tool called `ask_matt`. It quotes from published articles, hands over the hand-kept numbers when a question wants one, cites everything, and refuses the rest. The refusal took the most design effort.

· 7 min read

Architecture

The anatomy of a resilient system

Servers fail every day. Whether that becomes an outage depends far more on the organisation than the infrastructure.

· 8 min read

Architecture

The traceability problem

Most engineering systems are built to answer what happened. The harder question, the one that surfaces at the worst possible moment, is who changed what, when, why, and whether they should have.

· 10 min read

Engineering Leadership

AI doesn't change Conway's law

Every technology generation promises to transform how software gets delivered. Most of them eventually rediscover that organisational structure shapes the outcome far more than the tools the engineers happen to be holding.

· 7 min read

Architecture

Your AI doesn't need another API, it needs a toolbox

Why Model Context Protocol matters less because of the protocol itself and more because it solves a problem every engineering organisation eventually encounters.

· 8 min read

System Design

Designing a URL shortener for its worst day

Resilience is a design input, not a deep dive at the end. The first in a series: the smallest system everyone knows, designed around the question of what is allowed to die.

· 16 min read

Payments

Moving money is hard

Most software engineers think a payment is a database transaction. The payments industry has spent decades proving otherwise.

· 14 min read

Security

Secrets are everywhere

Most security incidents don't begin with sophisticated attackers. They begin with credentials sitting somewhere they shouldn't.

· 8 min read

Computer Science

Building a double-entry ledger in 200 lines

Every system that tracks value eventually needs a ledger, and most start with a balance column and a sense of optimism. The fix is double-entry bookkeeping: five hundred years old, and small enough to build in an afternoon.

· 8 min read

Engineering Leadership

Why most technical debt is really organisational debt

Code rarely becomes hard to maintain because engineers wanted it that way. More often the architecture is just a faithful record of the incentives, constraints and decisions of the organisation around it.

· 6 min read

Platform Engineering

Building a desktop platform is like building an operating system

Most engineers think desktop platforms are about windows and toolbars. The hard parts are identity, communication, deployment, versioning and convincing hundreds of applications to coexist without setting fire to each other.

· 10 min read

Computer Science

Building a trading exchange in 200 lines

Modern financial exchanges move billions of dollars a day, yet the core matching engine comes down to a handful of data structures and a few unglamorous rules.

· 9 min read

JavaScript

Most JavaScript performance problems aren't JavaScript problems

After enough profiling sessions you start to realise the language is rarely the bottleneck. Our assumptions usually are.

· 5 min read

Architecture

Caching is easy until it isn't

Most caching strategies look brilliant during architecture reviews and become considerably less impressive the first time stale data reaches production.

· 5 min read

Jump to

32 articles