Vivian Voss

Blog

Selected pieces. Full length.

Extended editions of my LinkedIn writing, expanded with diagrams, sources, and the detail that 3,000 characters cannot hold. For the full series overview, see Writing.

Articles

12 Apr 2026
cloud architecture devops

Why the Cloud Is the Default

27% of cloud spend wasted. $182 billion per year. 37signals saved $10M+ leaving AWS. Ahrefs: 11.3x cheaper on-prem. 86% of CIOs plan repatriation. The cloud was the only answer nobody got fired for choosing. What if the default is wrong?

11 Apr 2026
architecture web

The Feature Creep

Notion: notes to email client. Jira: bug tracker to 3,000 plugins. Google: 299 products killed. Sonos: CEO resigned. Skype: 405M users to shutdown. VLC: media player since 2001, never tried to send your email. The best software never added the wrong features.

10 Apr 2026
architecture cloud

The Certification Industrial Complex

$700 exam. Expires in 3 years. Repeat. Non-certified skills earn 2% more since 2007. CompTIA: $168M/year, now PE-owned. Kent Beck called it a pyramid scheme. When private equity acquires the exam, the product is you.

09 Apr 2026
architecture performance security

Rust Says No

In 2006, Graydon Hoare walked up twenty-one flights of stairs because his elevator had crashed. Memory bug. C code. He started writing Rust that evening. No null. No exceptions. No GC. No inheritance. Every "no" eliminates a category of bugs. The elevator stops crashing.

08 Apr 2026
css html web

The Page Transition You Never Had to Build

We shipped 400KB of JavaScript so a heading could fade. The browser does it now. Three lines of CSS. Zero JavaScript. Barba.js: 7.5KB. Framer Motion: 32KB. View Transition API: 0KB. Because it is the browser. 87.82% global coverage. Progressive enhancement, done properly.

07 Apr 2026
unix freebsd performance

DTrace

In 2001, Bryan Cantrill had built an entirely synthetic system and could not ask it what it was doing. DTrace was the answer. Zero overhead. Safe by construction. Concise answers to arbitrary questions. Twenty-three years later, the system still answers.

06 Apr 2026
unix freebsd linux architecture

The Philosophy

In 1978, Doug McIlroy wrote four sentences. They have outlasted every framework since. grep searches. sort sorts. awk transforms. Compose them through pipes. FreeBSD, macOS, OpenBSD: the systems that follow the philosophy outlast the systems that ignore it.

05 Apr 2026
architecture web

Why We Teach Tools Instead of Foundations

In the 1990s, CS taught foundations. In 2026, it teaches React. Alan Kay warned us in 2004. MIT launched The Missing Semester because its students could not use grep. 250,000 Kubernetes certifications. One does wonder how many could explain what a process is.

05 Apr 2026
javascript performance security architecture

AI Code Generation: The Hallucination Tax

METR: developers 19% slower with AI (believed 20% faster). 19.6% of recommended packages do not exist. 40% of Copilot output contains vulnerabilities. Refactoring collapsed. Trust dropped. The answer is not more AI. It is less complexity. Write lean. The AI will follow.

04 Apr 2026
javascript architecture web

The Update Treadmill

Your software worked on Friday. npm update broke it on Monday. Angular: 18 major versions in 10 years. 75% of dev time on maintenance. SQLite has been backwards-compatible since 2004. The treadmill is not inevitable. It is profitable.

03 Apr 2026
javascript node performance architecture

JavaScript Backend: The Full-Stack Tax

Built in ten days for form validation. Express: 20K RPS. Rust: 60K. Idle memory: 30-50 MB vs 1-2 MB. One thread. 500K malicious npm packages. The creator called node_modules an irreparable mistake and built Deno. The full-stack tax, itemised.

02 Apr 2026
architecture unix

CSV: The Format Nobody Designed

In 1972, IBM separated values with commas. No specification. No committee. Thirty-three years later, someone wrote the RFC. 60% of enterprises still use CSV. The format that requires no agreement outlasts the format that requires consensus.

01 Apr 2026
css html javascript web

The Native Popover That Positions Itself

Floating UI: 35 KB. Popper.js: 28 KB. Tippy.js: 22 KB. The native equivalent: zero kilobytes and a few lines of CSS. The Popover API ships in every browser. CSS Anchor Positioning is landing. One rather suspects the library authors saw this coming.

31 Mar 2026
security web

Let's Encrypt

Before 2015, HTTPS was a luxury. A certificate cost $50 and a week of manual process. Then four people decided this was absurd. 700 million websites. 10 million certificates per day. Ten years. Zero pounds. The complexity was never inherent to the problem. It was inherent to the business model.

30 Mar 2026
unix freebsd linux security

The .env File Nobody Needs

107 million weekly downloads for dotenv. A package that reads KEY=VALUE pairs from a file. Unix has done this since 1979. GitHub detected 39 million leaked secrets in 2024. Even Node.js conceded and shipped --env-file natively. Rather marvellous, that.

29 Mar 2026
performance web

Google Search: The Time Tax

30% of a knowledge worker's day spent searching. Trust score down 23% in one year. 83% zero-click rate with AI Overviews. 58.5% of searches end at Google. The search engine that once finished your sentence now wastes your afternoon.

28 Mar 2026
architecture performance

The Quality Erosion

In 2023, Klarna replaced 700 support agents with AI. Costs down 25%. In 2025, they started rehiring humans. 64% of customers prefer no AI in support. 41% higher code churn. 19% slower with AI tools. When the product gets cheaper to produce but not cheaper to buy, you are the margin.

27 Mar 2026
demoscene performance

qq

64 kilobytes. Three minutes of architectural hallucination. Corridors fold into corridors. Rooms dissolve into rooms. Every frame calculated in real time from a single executable. When the constraint disappears, the art remains.

27 Mar 2026
javascript architecture web performance

GraphQL: The Query Tax

In 2012, Facebook had a problem: hundreds of microservices, a mobile News Feed, constrained bandwidth. They built GraphQL. The solution was brilliant. For Facebook. You have 12 REST endpoints and a fetch() call. But do carry on.

26 Mar 2026
sql architecture performance

The Single Writer

In 2000, D. Richard Hipp built a database for a U.S. Navy destroyer. The existing Informix installation required a DBA. Hipp's solution was not to fix the server. It was to eliminate it entirely. 600 KB. One file. Zero configuration. The most deployed software module in history.

25 Mar 2026
javascript rust web architecture

Server-Sent Events

Most real-time features are one-way. The server knows something changed, the client needs to hear about it. The browser solved this in 2015 with one line of JavaScript that nobody teaches. No npm. No reconnect logic. No babysitter.

24 Mar 2026
unix tooling

vi

2.7 million people have visited Stack Overflow to learn how to exit a text editor. The most feared tool in computing is also the most elegant. A composable grammar born from a 300 baud modem. Fifty years of production. Zero licence fees.

23 Mar 2026
unix freebsd linux devops

The Log

Eric Allman wrote syslog in the 1980s. Forty years of production. Zero licence fees. Log rotation, live monitoring, frequency analysis, and alerting. Four commands. Each composable. Each free. Each older than most of the frameworks they are supposed to be replaced by.

22 Mar 2026
architecture performance

Why Mathematicians Design Languages

Every mainstream programming language was designed by a mathematician. Not one linguist in the room. Ninety years later, we are still writing in their notation. One does wonder what might have happened if someone had invited one.

22 Mar 2026
devops performance unix cloud

The Observability Tax

syslog has existed since 1983. In 2026, a mid-sized company spends $708,000 per year to know whether its servers are running. 97% report cost surprises. The watchtower now costs more than the castle.

21 Mar 2026
javascript performance architecture tooling

The Electron Tax

Every Electron app ships its own copy of Chromium. Slack, Discord, Teams, VS Code. Four apps, four browsers, none displaying a web page. The company saves on engineering. The user pays in RAM, battery, and disk space.

20 Mar 2026
devops cloud licensing tooling

Terraform: The Abstraction Layer

You wanted to provision a server. You got a proprietary language that cannot express a conditional, a state file that stores your secrets in plain text, and a licence that changed overnight after nine years of open-source trust. Three invoices for one abstraction.

19 Mar 2026
react javascript performance architecture

Hydration

In 1995, PHP rendered HTML on the server and sent it to the browser. In 2026, the industry renders HTML on the server, then ships 558 KB of JavaScript to rebuild the very same DOM. They call this hydration. Twenty years to return to where PHP started.

18 Mar 2026
html css javascript performance

The Form the Browser Already Validated

The average React project installs a validation library before a single input field exists. The browser has validated forms natively since 2014. Required, email, pattern, minlength. No JavaScript. No bundle size. No excuse.

17 Mar 2026
unix architecture tooling

The Pipe

In 1964, Douglas McIlroy wrote a memo about coupling programmes like garden hose. Nine years later, Ken Thompson implemented it overnight. One character. The most elegant composition model in computing, fifty-three years unchanged.

16 Mar 2026
unix freebsd linux architecture

The Origin

In 1969, Ken Thompson wanted to play a video game. The mainframe cost $75 per session. So he found a PDP-7 with 9 KB of memory and built an operating system. Its descendants run most of the world. Rather good return on a video game.

15 Mar 2026
react javascript performance node

The Next.js Tax

React ships 136 KB to the browser. Next.js promised to fix that. 247 MB of node_modules. 87 KB client runtime. The server renders HTML, then the client rebuilds it from scratch. They call this hydration. Six times faster by removing the framework.

14 Mar 2026
architecture licensing performance

The Early Access Alibi

Early access was invented so a solo developer in Stockholm could finish a game about mining blocks. Then publishers noticed. They copied the label. Not the honesty. 25,000 jobs lost at record revenue. The handshake became a surcharge.

13 Mar 2026
devops saas performance

Jira: The Workflow Tax

You wanted to track bugs. You got a bureaucracy engine with custom fields nobody remembers creating and workflows nobody dares to simplify. 68% of new users overwhelmed. 1-4 seconds per issue. 883 sites deleted. The invoice, itemised.

12 Mar 2026
architecture javascript performance

Clean Code: The Prescription That Outlived the Diagnosis

Robert C. Martin published Clean Code in 2008 to fix Java monoliths with no structure. The industry copied the rules and forgot the context. A prescription without a diagnosis.

11 Mar 2026
demoscene performance web

Bytes of Art: 0mix

64 kilobytes. A seven-minute techno live set with procedural visuals and synthesised audio, running in your browser. Won Best Soundtrack at The Meteoriks 2024. Against every production of the year.

11 Mar 2026
javascript web architecture

Native WebSocket: Server Pushes, Client Listens

React taught a generation to poll. The browser solved this in 2011 with two lines of JavaScript and zero npm packages. WebSocket: persistent, full-duplex TCP. Two bytes per frame. No library required.

10 Mar 2026
unix tooling devops

diff: The Tool That Enabled Collaboration

In 1974, James Hunt and Douglas McIlroy built diff at Bell Labs. Two files in, one output: what changed. Every code review, every pull request, every version control system since RCS stores history as diffs. 52 years in production. No subscription.

09 Mar 2026
ssh unix devops

SSH Config: The File Nobody Reads

You type ssh -i ~/.ssh/prod_key -p 2222 deploy@192.168.50.12 fourteen times a day. There is a plain text file that reduces this to ssh prod. It has existed since 1999. One file. No GUI. No subscription.

08 Mar 2026
architecture performance kubernetes

The Distributed Tax

A function call costs 0.001 ms. A network call between two microservices costs 1 to 5 ms. That is factor 5,000 before any business logic executes. One rather wonders what one gets for that markup.

07 Mar 2026
architecture saas web

The Enshittification Cycle

Cory Doctorow named it. You have lived it. Every platform begins by being useful, then monetises its users, then monetises its business customers, then dies. The cycle is not new. The speed is.

06 Mar 2026
devops architecture security

Rolling Releases: The Perpetual Beta

Software used to ship when it was ready. Now it ships when the sprint ends. Chrome halved its release cycle twice. CrowdStrike pushed one update and crashed 8.5 million machines. The invoice for velocity is permanent instability.

05 Mar 2026
css html architecture

BEM: The Naming Convention That Named Itself Indispensable

BEM was invented at Yandex to stop CSS from breaking across 100 services. The industry adopted it to name twelve classes on a landing page. A naming convention copied without the problem it solved.

04 Mar 2026
architecture performance rust

The Server Question

72% of the web runs on PHP. Not an accident. But the web has moved: persistent connections, live pushes, minimal memory. Five languages, one task, a 128x difference in memory. Two survive. One has a garbage collector. The other does not.

03 Mar 2026
unix tooling

Technical Beauty: jq

In 2012, JSON was the lingua franca of the web and the Unix toolbox had nothing for it. One PhD student at Cambridge wrote a functional language in 510 KB of C. Forty years of flat text tools, plus one for trees. 822 KB.

02 Mar 2026
freebsd linux security unix

Capsicum vs seccomp: Process Sandboxing

A compromised process inherits the full authority of the user who launched it. Two operating systems fixed this with opposite philosophies. One removed the doors. The other posted a bouncer. Same browser, same threat model, two answers.

01 Mar 2026
graphql rest api performance

GraphQL: The Query You Didn’t Need

GraphQL was built at Facebook for the News Feed: hundreds of content types, three platforms, billions of requests. REST is 50% faster on relational databases. 34x faster with eager loading. You have 12 endpoints. The performance tax, itemised.

28 Feb 2026
architecture devops performance

The Permanent Beta

Software used to come on a disc. A bug on a pressed CD was a recall, not a hotfix. Then the internet removed the disc, and methodology made "never finished" respectable.

27 Feb 2026
saas licensing cloud

SaaS: The Subscription Tax

In 2012, you could buy Adobe Creative Suite for $2,599. You owned it. In 2026, you pay $660 per year and own nothing. You were not upgraded. You were expropriated. The subscription invoice, itemised.

26 Feb 2026
linux freebsd law security

The Kernel Question

Europe wants digital sovereignty but builds on a kernel governed by US corporations. 84.3% of Linux commits, $500K board seats, and a 2024 precedent that proved jurisdiction trumps community.

26 Feb 2026
docker kubernetes devops cloud

Containerise Everything

Docker solved deployment. Then the industry decided it also solved development. On macOS, that means running a Linux VM to execute a process that runs natively. The engineering equivalent of driving to your neighbour's via Heathrow.

25 Feb 2026
css web

CSS Learns to Think

For twenty-three years, CSS could only look downward. A parent styled its children. Never the reverse. In 2023, three pseudo-classes changed the direction of the cascade entirely.

25 Feb 2026
performance web demoscene

Why Every Byte Matters

The demoscene taught a generation that constraint is not limitation; it is method. Every instruction must justify its presence. The same principle applies to production software.

24 Feb 2026
make unix tooling

make: Three Concepts, Fifty Years

1976. Stuart Feldman writes make in a weekend. Targets, dependencies, timestamps. Three concepts. Fifty years. Same algorithm. The industry responded with fourteen replacements. make still builds kernels.

23 Feb 2026
unix architecture

The Original Microservices

Unix had single responsibility, API contracts, message queues, and service discovery in 1973. The industry repackaged it and called it microservices.

22 Feb 2026
javascript web performance

JavaScript Bloat: The Battery Tax

558 KB median JavaScript per page. 44 per cent never executes. Mobile parses 25x slower than your dev machine. The thermal throttling feedback loop and the battery invoice, itemised.

21 Feb 2026
tooling web

Markdown: The File That Outlives the Company

John Gruber wrote the specification in 2004. A Perl script. 1,122 lines. Twenty-two years later, the format has not changed. It is text. Your Confluence export has already lost its macros.

20 Feb 2026
architecture devops

The Scrum Tax

Six developers, 80 hours of sprint, 18 hours of ceremonies. A Scrum Master who costs $126k and requires no technical prerequisites. The co-creator says 75 per cent will fail. The Scrum invoice, itemised.

18 Feb 2026
html css javascript web

HTML Dialog: Modal or Not Modal

22.5 million npm installs per week for JavaScript that recreates the native dialog element. Focus traps, escape handlers, backdrop overlays, ARIA semantics. Every browser ships it. Since 2022. Zero kilobytes.

18 Feb 2026
demoscene performance

Bytes of Art: Neuron Activated

5 kilobytes. One person. First place. Krzysztof Kluczek wrote the code, designed the visuals, and built a guitar synthesiser, all at the party place during Riverwash 2014. Fractal cubes, volumetric light, and an instrument that should not fit in a favicon.

17 Feb 2026
sed unix tooling

Technical Beauty: sed

A psychologist at Bell Labs writes a text editor that never opens a file. 53 years later, it runs everywhere. 25 commands, two buffers, one pass. Turing complete. The substitution syntax became internet grammar.

16 Feb 2026
linux freebsd unix

Service Management: init vs systemd

FreeBSD init runs on 178 shell scripts and one shared library. systemd ships 690,000 lines of C across 150 compiled binaries. Both start services. One of them also replaced sudo.

15 Feb 2026
javascript tooling web

The Webpack Tax

Webpack solved a 2012 problem that ES Modules natively solved in 2017. esbuild is 106x faster. Vite cold-starts in 1.7 seconds. The bundler that bundles your patience, itemised.

13 Feb 2026
sql architecture performance

MongoDB: The Reinvention of the Wheel

MongoDB stores relational data in a document store, then spends a decade rebuilding the relational features it discarded. The Aggregation Pipeline is proprietary SQL. Mongoose is the schema you removed. The invoice, itemised.

12 Feb 2026
architecture devops tooling

Unit Tests for Everything

In 1994, Kent Beck wrote SUnit to test isolated units of logic. By 2015, the industry had turned his invention into a coverage KPI. 400 tests green, checkout broken. The mocks should have been the clue.

11 Feb 2026
css web architecture

The Specificity War Is Over

CSS Cascade Layers end the two-decade specificity war permanently. One declaration line sets the hierarchy. Layer order outranks specificity. No more !important, no inline styles as nuclear option.

10 Feb 2026
unix tooling

mc: The Workstation in 12 MB

In 1994, a computer science student in Mexico City wrote a file manager. 31 years later, it runs on anything with a C compiler: dual panels, built-in editor, FTP, SFTP, archive browsing. 220,000 lines of C. 12 MB of RAM. No venture capital. No rewrite in Rust.

10 Feb 2026
web performance architecture

HTTP/2: The Bundling Myth

HTTP/1.1 made bundling necessary. HTTP/2 made it obsolete. Multiplexing, granular caching, and the rule that inverted itself a decade ago. The fastest bundle might be no bundle at all.

09 Feb 2026
zfs freebsd unix

ZFS Snapshots & Boot Environments: The Safety Net

Same ZFS, same commands, radically different experience. On FreeBSD, bectl is in base, the bootloader understands boot environments natively, and recovery takes 30 seconds. On Linux, ZFS is a legal grey area bolted on from outside.

09 Feb 2026
freebsd linux zfs

ZFS Snapshots: Same Commands, Different Experience

The ZFS commands are identical on FreeBSD and Linux. The snapshots work the same way. The difference is everything around them: kernel integration, boot environments, and what happens when you upgrade.

08 Feb 2026
kubernetes docker performance cloud

Kubernetes: You Are Not Google

82 per cent of container users run Kubernetes in production. The control plane demands 12-24 GB RAM before your app serves one request. CPU utilisation: 10 per cent. 34 workdays per year troubleshooting. The performance tax, itemised.

08 Feb 2026
javascript node performance

The Interpreted Stack

The job description is admirably brief: a request arrives, HTML leaves. And yet, a quarter century of accretion has produced something rather more elaborate.

07 Feb 2026
sql architecture performance

ORM: The Illusion of Portability

ORMs hide complexity instead of eliminating it. They promise database portability you will never use and obscure queries you should understand. SQL has worked since 1974. Your ORM will be deprecated before your queries are.

06 Feb 2026
docker linux devops

Docker: The Capitulation

Docker did not solve a technical problem. It monetised a political one. Linux could not agree on a base system, so the industry shipped the entire OS with every application. The invoice, from 1979 to 2026.

05 Feb 2026
css architecture web

READS: The Five Prefixes

OOCSS arrived in 2009. BEM arrived in 2010. Both produce identical specificity (0,1,0). One reads like a sentence. The other reads like a German compound noun. Five prefixes, one meaning each, and the naming convention the industry should have adopted.

05 Feb 2026
architecture web javascript

MVC for Web

In 1979, Trygve Reenskaug invented MVC for Smalltalk desktop applications. Then Ruby on Rails borrowed the terminology for the web. One small problem: the web works rather differently.

04 Feb 2026
redis architecture performance

Technical Beauty: Redis

Salvatore Sanfilippo built Redis in 2009. Single-threaded by design. One event loop, no locks. 100,000+ operations per second on modest hardware. Sub-millisecond latency. The industry believed concurrency requires threads. Redis proved it requires architecture.

03 Feb 2026
unix tooling freebsd

man: Read the Manual. It's Already Installed.

Ken Thompson wrote the first man pages for Unix Version 1 in 1971. Fifty-five years later, the format remains. One structure. Every tool. Always. Offline documentation that matches the version you are actually running. No tracking. No cookie banners.

01 Feb 2026
zfs freebsd security

Technical Beauty: ZFS

Jeff Bonwick and Matthew Ahrens built ZFS at Sun Microsystems in 2005. Filesystems trusted hardware that lies. ZFS trusts mathematics instead. Copy-on-Write, end-to-end checksumming, instant snapshots. The filesystem that verifies everything.

01 Feb 2026
ssh security unix

Technical Beauty: OpenSSH

Theo de Raadt forked SSH in 1999. The original was accumulating licence restrictions and complexity. OpenSSH stripped it down, audited everything, and assumed the network is hostile. 32 million servers. 25 years. One serious vulnerability. The paranoia paid off.

01 Feb 2026
web architecture javascript

Team Autonomy: The Balkanisation

"Give teams autonomy." Four teams, four frameworks, four pipelines, four security postures. A cross-team feature ships in month three. Conway's Law called. Nobody answered.

01 Feb 2026
javascript web architecture

The Framework Tax

In 2010, vanilla JavaScript built the web. In 2026, a React Hello World installs 2,839 packages. The supply chain, the bundle, and the native APIs that were there all along.

31 Jan 2026
architecture web

From REST Ceremony to JSON-RPC

Five HTTP verbs. Fifty status codes. URL hierarchies. Content negotiation. HATEOAS that nobody implements. All to answer: client wants something from server. JSON-RPC answered that in 2005. Thirty lines of specification.

30 Jan 2026
cloud architecture devops

Serverless: What You Actually Pay

Serverless is not serverless. It is MicroVMs with amnesia, vendor lock-in with four incompatible dialects, and cold starts that cost more than the server you were trying to avoid. The invoice, itemised.

30 Jan 2026
unix tooling architecture

Technical Beauty: rsync

Andrew Tridgell had a problem in 1996: synchronising files over slow links. The naive approach copies everything. rsync splits files into chunks, computes rolling checksums, and transfers only the differences. 29 years. One algorithm. No vendor. No subscription.

29 Jan 2026
unix tooling architecture

Technical Beauty: FFmpeg

Fabrice Bellard started FFmpeg in 2000. The multimedia world was fragmented: dozens of proprietary formats, incompatible codecs, expensive licensing. FFmpeg handles every format ever created. 1.5 million lines of C. Powers YouTube, Netflix, VLC, Spotify. Everything else is a wrapper.

29 Jan 2026
unix tooling

Technical Beauty: tar

1979. John Gilmore writes tar for Unix V7. Tape ARchive. One format, one purpose: bundle files into a stream. No compression, no encryption, no opinions. 45 years later, every container image is a stack of tarballs. OCI spec, section 5.

29 Jan 2026
css web

OKLCH: The Colour System That Does Not Lie

For three decades, CSS lied about lightness. HEX told you nothing. HSL promised perceptual uniformity and delivered optical illusion. OKLCH, light-dark(), and Relative Color Syntax fix the problem. No JavaScript. No media queries.

28 Jan 2026
unix tooling

Technical Beauty: tmux

Nicholas Marriott wrote tmux in 2007 because GNU Screen had accumulated three decades of cruft. BSD-licensed. 60,000 lines of C. Persistent sessions, window splitting, scriptable. The terminal multiplexer that replaced its predecessor by being smaller.

28 Jan 2026
freebsd docker unix

The Replacement: FreeBSD Jails

Docker needs a daemon, image layers, a registry, overlay networks, and volume mounts. FreeBSD Jails need a directory and a config file. Native kernel isolation since 2000. ZFS snapshots in milliseconds. No daemon. No images. No layers. The replacement, not the alternative.

27 Jan 2026
rust architecture performance

From PHP to Rust: Why I Skipped Go

After 20 years of PHP, I needed something new for backend work. Everyone said Go. I chose Rust instead. The compiler is your private tutor. No null, no exceptions, no garbage collector. One binary. A twentieth of the memory.

27 Jan 2026
freebsd linux security unix

pf vs nftables: Bruteforce

Fresh server, SSH open, auth.log fills up. Linux reaches for fail2ban , a Python daemon that parses logs after the fact. FreeBSD solves it in four lines of pf.conf, in the kernel, before the attacker finishes the first attempt.

26 Jan 2026
freebsd linux unix

The Linux Compatibility Layer

FreeBSD runs Linux binaries natively. No emulator. No VM. No container. The kernel translates syscalls in real time, at less than 1% overhead. Since 1995. The reverse does not exist. The door swings one way.

25 Jan 2026
typescript javascript tooling

TypeScript: The Build Tax

ECMAScript is a complete language. Types are not missing from JavaScript: they were never part of the specification. A preference and a deficiency are not the same thing.

24 Jan 2026
devops tooling architecture

CI/CD Pipelines: What You Actually Pay

45-minute pipelines, 20 per cent of the work week lost to YAML, and a supply chain that leaked 23,000 repositories of secrets. The pipeline is not the solution. It is the longest-running workaround in the industry.

23 Jan 2026
lua unix tooling

Technical Beauty: Lua

25,000 lines of C. A 200 KB binary. Embedded in World of Warcraft, Lightroom, nginx, Redis, Neovim, Roblox, Nmap. Born from Brazilian trade barriers. MIT licence. Include one header, link one library, call lua_pcall().

22 Jan 2026
demoscene lua

Bytes of Art: Prelude to Neobyte

240 by 136 pixels. 16 colours. 4 audio channels. TIC-80 deliberately mimics 1980s hardware. Spectrox squeezed voxel landscapes, copper bar effects, and an underwater endscroller out of those constraints. Second place at Deadline Berlin 2025.

20 Jan 2026
unix tooling

Technical Beauty: awk

Aho, Weinberger, Kernighan. 1977. A pattern-action language for text processing. One pass through the data. No compilation. The entire language fits on a reference card. Still the fastest way to extract columns from structured text.

19 Jan 2026
architecture web

The Pattern

Over eight episodes we dissected individual performance problems. Stand back far enough and a shape emerges. The same shape, every time. Today we name it.

18 Jan 2026
demoscene 64k creative-coding

Bytes of Art: Clean Slate

65,536 bytes. Three people. A real-time rendered film with physically-based rendering, volumetric lighting, procedural everything, and a synthesised soundtrack. No external assets. Twenty bytes under the limit.

18 Jan 2026
unix devops freebsd

The Monitoring Replacement

Prometheus needs 2 GB RAM to monitor 10 services. The Unix shell has had monitoring since 1971: ps, top, vmstat, netstat. One shell script replaces an entire observability stack for 90% of deployments.

17 Jan 2026
architecture sql performance

Event Sourcing: The Archaeology Tax

Complete audit trail! Time travel! Never lose data! A shopping cart with 10 items produces 13+ events. A 3 TB replay takes 10 hours. The inventor wrote a book about one sub-problem. The event sourcing invoice, itemised.

17 Jan 2026
ssh wireguard security unix

The SSH Replacement

SSH plus shell replaces Ansible, Python, YAML, Jinja2, inventory files, role dependencies, and Galaxy collections. OpenSSH since 1999. Shell since 1971. Both outlive every automation tool.

15 Jan 2026
demoscene 64k creative-coding

Bytes of Art: The Scene Is Dead

Razor 1911, founded 1985. Their 2012 demo is 64 kilobytes of irony: CRT scanlines, Dubmood's soundtrack, and a running gag the demoscene has been telling itself for three decades. UNESCO cultural heritage. Still not dead.

14 Jan 2026
unix architecture

The Ones I Can't Show You

Some of the most elegant systems ever built are behind closed doors. QNX fit a complete POSIX OS on a 1.44 MB floppy. BeOS had pervasive multithreading before anyone understood why it mattered. NeXTSTEP gave us the web browser and macOS. Elegance has no licence requirement.

14 Jan 2026
agile architecture methodology

Agile Estimation Theatre

Story points were invented to stop managers converting estimates into deadlines. Then the industry converted story points into deadlines. The inventor apologised in 2019. The industry carried on. Goodhart's Law, dressed in a Fibonacci sequence.

14 Jan 2026
html javascript web

Native Form Validation: The Library You Never Needed

44 KB of JavaScript to accomplish what HTML does with five characters: <input required>. The browser validates. Shows localised error messages. Accessible by default. No npm install required. Since 2014.

13 Jan 2026
unix tooling architecture

Technical Beauty: cron

One loop. One file. Every minute. Since 1975. Ken Thompson wrote the first version at Bell Labs. Paul Vixie rewrote it in 1987. 2,500 lines of C. No dependencies. The modern alternative requires Kubernetes. cron requires a text file.

12 Jan 2026
demoscene 4k creative-coding

Bytes of Art: Zetsubo

4,096 bytes. A complete audiovisual experience: procedural geometry, synthesised soundtrack, real-time rendering. Prismbeings proved in 2018 that limitation breeds creativity. The demoscene is UNESCO cultural heritage. Hardly anyone noticed.

09 Jan 2026
cloud kubernetes docker devops

The Cloud-Native Tax

"Pay only what you use." The bill is 47 pages and requires a FinOps specialist to decode. Netflix uses AWS for the back office. For delivering video to 260 million subscribers: FreeBSD, jails, bare metal.

08 Jan 2026
unix tooling freebsd

htop: 20 Years of Treating the Terminal as a Canvas

In 2004, Hisham Muhammad looked at top and saw a tool from 1984 pretending the terminal was still a teletype. One binary replaced an entire workflow: top, ps, grep, kill, renice, lsof. 12,000 lines of C. Zero configuration.

07 Jan 2026
javascript web performance

Vanilla JS: The Framework You Already Have

React ships 142 KB before your code runs. The browser ships querySelector, addEventListener, Web Components, Proxy, and fetch. Zero kilobytes. The framework was always there.

07 Jan 2026
security tooling unix

Technical Beauty: age

Filippo Valsorda wrote age because GPG had become unusable. One binary. One command to encrypt. One command to decrypt. No key servers, no web of trust, no configuration. The successor PGP never managed to be.

06 Jan 2026
freebsd architecture unix

Technical Beauty: FreeBSD Jails

Poul-Henning Kamp built FreeBSD Jails in 1999. Kernel-level isolation, near-zero overhead, native ZFS integration. Stable API for 25 years. No daemon, no overlay network, no orchestration layer. 14 years before Docker, the problem was already solved.

05 Jan 2026
css javascript react web

The CSS-in-JS Tax

CSS-in-JS is writing CSS in JavaScript to generate CSS. The runtime overhead, the 13 KB library tax, hydration roulette, and the browser that understood you all along. Since 1996.

04 Jan 2026
css web tooling

Vanilla CSS: The Sass Replacement

Sass was revolutionary in 2012. Variables, nesting, functions. In 2026, CSS does all of it natively. No build step. No node-sass conflicts. No dart-sass migration. The bridge has arrived.

03 Jan 2026
architecture performance

AI Agents Waste More Compute on Padding Than on Answers

Defensive loops, trained hedging, three tool-calls where one would do. Data centres humming at full capacity. Not for answers. For comfort. The demoscene taught me: 4 KB leaves no space for bullshit.

02 Jan 2026
javascript node tooling

The npm Tax

"But it's just one dependency!" That sentence has done more damage to software security than any zero-day exploit. It installs 1,400 packages before your kettle has boiled.

31 Dec 2025
javascript web performance

The SPA Tax

"We need a Single Page Application." A perfectly reasonable sentence, provided one does not ask the follow-up question. But let us ask it anyway.

30 Dec 2025
nginx architecture unix

Technical Beauty: nginx

Igor Sysoev built nginx in 2004 because Apache's thread-per-connection model was architecturally wrong. Event-driven, pure C, no framework. 10,000 connections on a single process. 34 per cent of all websites. F5 Networks paid $670 million. Still the correct architecture.

29 Dec 2025
angular typescript javascript web

The Angular Tax

Angular is the SAP of frontend frameworks. Zone.js monkey-patches 30+ browser APIs, a Hello World ships 500 KB, and Google builds Angular but does not use it. The performance tax, itemised.

28 Dec 2025
architecture devops

Agile: The Hostile Takeover

Divide and conquer. The oldest strategy of control. Fragment the opposition. Isolate the units. They call it Agile.

27 Dec 2025
kubernetes docker cloud devops

The Kubernetes Tax

81 resource types. 200 lines of YAML to replace one systemctl command. A platform team before your first customer. The Kubernetes invoice, itemised.

26 Dec 2025
curl unix tooling

Technical Beauty: curl

Daniel Stenberg released curl in 1998. 26 years, zero breaking changes, one dependency: libc. Runs on 10+ billion devices. 180,000 lines of C, 30+ protocols. Every HTTP library wraps libcurl. The bedrock the industry pretends it built itself.

24 Dec 2025
postgresql sql unix

Technical Beauty: PostgreSQL

Michael Stonebraker built POSTGRES at Berkeley in 1986. Minimal core, everything extensible. 38 years, 17 major versions, same BSD licence. No corporate owner, no licence changes. The extension architecture that outlasted every trend.

23 Dec 2025
git architecture unix

Technical Beauty: git

Linus Torvalds built git in ten days. 10 MB, no server, no database, no dependencies beyond libc. Content-addressable, distributed, backwards compatible since 2005. The tooling around it weighs more than the tool itself.

22 Dec 2025
css performance web

The Flexbox Tax

Flexbox arrived to solve layout. Then the industry used it for everything. Twelve wrapper divs for a holy grail layout that CSS Grid solves in three lines. The layout tax, itemised.

21 Dec 2025
javascript html css web

The Browser Is Not a JavaScript Runtime

80% of the JavaScript on modern websites solves problems that do not exist anymore. Accordions, modals, form validation, lazy loading. The browser ships all of it. Zero kilobytes.

20 Dec 2025
architecture docker devops

The Microservices Tax

"But deployments are cleaner!" That sentence has launched more Kubernetes clusters than any legitimate scaling requirement. Let us examine the invoice.

17 Dec 2025
wireguard security unix

WireGuard: The VPN That Fits in Your Head

Jason Donenfeld built WireGuard in 4,000 lines of code. OpenVPN needs 100,000. IPsec is worse. Linus Torvalds called it a work of art. 57 per cent faster. In the Linux kernel since 2020. Readable in an afternoon.

16 Dec 2025
sqlite architecture unix

Technical Beauty: SQLite

D. Richard Hipp built SQLite in 2000 for a US Navy destroyer. 600 KB, single file, zero configuration. 156,000 lines of source, 92 million lines of tests. Powers every phone, most browsers, probably your car. Public domain. Supported until 2050.

15 Dec 2025
react javascript typescript web

The React Tax

React 18 ships 136 KB minified before you have written a single line of application code. The Virtual DOM costs 30 per cent versus vanilla JavaScript. 95 per cent of websites do not need it. The performance invoice, itemised.

14 Dec 2025
javascript web tooling

Native ES Modules: The Replacement

Browsers have understood ES Modules since 2018. HTTP/2 solved the request overhead in 2015. For 90% of projects under 50 modules, the build pipeline is not solving complexity. It is the complexity.

07 Dec 2025
javascript architecture web

Shallow Errors

In 2013, a German data scientist discovered Xerox scanners were silently changing numbers in scanned documents. No error. No warning. Just a quiet substitution.

07 Dec 2025
caddy nginx web unix

The Caddy Replacement

Caddy replaces Nginx, Certbot, Cron, and renewal hooks. One binary. Zero TLS configuration. Auto HTTPS since 2015. Your reverse proxy config fits in a tweet. The replacement, not the alternative.

25 Dec 2024
web performance

The Quiet Web

The web got far too loud. Pop-overs, cookie banners, newsletter modals, autoplay, scroll-jacking. The native dialog element, content-visibility, and one preferences wizard replace every banner. Zero interruptions.

18 Dec 2024
architecture web

The MVC Myth

MVC was invented in 1979 for Smalltalk desktop GUIs. The web has no persistent controller, no event loop, no state between requests. 30% performance overhead from abstraction layers that serve no purpose in HTTP. The leanest architecture is the one you do not need to explain.