Breaking Evil
Walter White explains the strategy in one line in season two. Google has been running it on Android for fifteen years, and this September it starts collecting.
Writing about software, systems I build, and the work behind them.
Walter White explains the strategy in one line in season two. Google has been running it on Android for fifteen years, and this September it starts collecting.
A page that shows my fediverse posts, why it is filtered the way it is, and the rebuild that took it from a browser fetching my server on every visit to an archive held in memory.
A dozen places where the implementation disagreed with the specification, and what each of them taught.
The 2026 Portuguese tech talent report, the funnel that is left once you filter real openings through real constraints, and why the job market got precarious in a way the AI discourse still refuses to price in.
The point where a design stops being a set of options. What got decided, and what got rejected on purpose.
Taking storage from Kirby, structure from Sanity, model as code from Payload, hooks from WordPress and reload from Neovim. Four of them fight.
The practical end of the series: the productivity gains that are real, the traps that remain, and how serious developers should use LLMs now.
PHP-native blocks in 7.0, a talent pipeline that is quietly drying up, and what it actually takes to run WordPress at scale in 2026.
LinkedIn is still where software work happens, which is the part that hurts. A short essay on the panopticon logic of professional networking, why nobody has replaced it, and the people who have at least tried.
The models are useful. The marketing around them is not honest. This is the part about confident wrongness, fear-driven hype, captured voices, and the surveillance bargain behind mass-market LLMs.
A working genealogy of the consumer LLM wave: the releases that hit the scene, how they were received, and what I actually used them for.
Why the CMS runs inside nginx, what LuaJIT's FFI makes possible, and the parts of the Lua ecosystem that are missing.
What MCP is, where I used it, where it bites, and the rule I ended up with.
The gap I keep running into, and the argument for adding one more CMS to a crowded field.
I wanted to stay a Firefox person. The web kept punishing me for it, and eventually I stopped pretending I was holding the line.
After a decade of streaming, I bought a DAP and started syncing FLACs from my own library.
Not the database, usually. A look at where the time really goes, and why caching became the whole industry.
WordPress won on plugins. What the hook model actually is, what it costs, and what Neovim does differently.
A personal note on ergonomics, split keyboards, and the slow physical cost of a life spent at computers.
Contentful, Sanity, Strapi and Payload each answered the same question differently. What each of them is actually good at.
Kirby, Statamic and Grav keep content on disk and are serious software. What that buys, and where it stops.
Your brain is a battery. Plan accordingly.
For about a decade the answer to a slow CMS was to remove the CMS. What that period got right, and why people came back.
The word headless became a category around 2015. What it actually specifies, and what it leaves open.
For twenty years a CMS shipped its own rendering layer. That decision shaped everything else, including who could work on a site.
Roles, permissions and editorial workflow. The part of a CMS that exists because organisations do, not because software does.
The main body of a document is the part every CMS handles differently and most handle badly. Blob, markup, or structure.
Every CMS eventually grows field definitions. Where the pressure comes from, and what it costs when the model is wrong.
Almost every CMS puts content in a relational database. That is a decision, not a law, and it costs more than people notice.
Stripping a content management system down to the parts it cannot do without, and finding there are only four.
The phrase content management system appears in the mid nineties, attached to server software for newspapers. What it meant then is not what it means now.
PHP grew up quietly while the JavaScript ecosystem kept tearing itself apart. The language and its tooling are genuinely good now, and Laravel is the proof.
Document management systems predate the web by a decade. What they were for, and what the web inherited from them.
The one thing a Markdown vault cannot do for you, and the analog tool that handles it.
Habit trackers own the record and throw away the history. Daily Markdown notes, Obsidian, and a custom plugin that turns the day into data you still own.