The silent death of good code
I’ve been passionate about writing “Good Code™” since before I started my career, beginning way back when I was still a kid in middle school.
Topics /
The most popular blog posts about software engineering on Hacker News. 14,544 posts.
I’ve been passionate about writing “Good Code™” since before I started my career, beginning way back when I was still a kid in middle school.
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
Splitting code into files can scatter related logic. Jimmy Koppel on cognitive load, design reconstruction, and a third way to organize code.
The people who live in a Golden Age usually go around complaining how yellow everything looks. – Randall Jarrell
Asking Gemini 3 to generate Brainf*ck code results in an infinite loop, akin amost to a DDoS attack:
In astronomy and cosmology, dark matter is a currently-undetermined type of ...
If there’s two sources of truth, one is probably wrong. And yes, please repeat yourself.
Back in April of last year, the speedometer failed in my ‘94 Explorer. Rather than hunting down a replacement cable and tearing apart the dash just to restore an old analog needle, I opted to build a digital replacement using a Raspberry Pi and GPS.
LedgerStore became a case study for DynamoDB, and system design publications keep praising it to this day. But the design was abandoned 3 years after it went live.
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
When a service fails to start up enough times in a row, systemd gives up on it. On servers, this isn’t what I want — in general it’s helpful for automated recovery if daemons are restarted indefinitely. As long as you don’t have circular dependencies between services, all your services will eventually come up after…
Fragmented systems are brittle. Coherent systems are special-purpose. We need a new, general-purpose model so we can build coherent, multi-domain applications.
Dockerfiles are de facto standard for creating container images. In this article I highlight some issues with this approach and I propose building container images with Nix.
I've been testing a simple prompt with different model and harness combinations to work out which one produces best results. I do this in /goal mode.
Programming is complicated. Different programs have different abstraction levels, domains, platforms, longevity, team sizes, etc ad infinitum. There …
Quite a while back I wrote a larger article on the algebraic foundation of software patterns which also covered the MapReduce algorithm .
Overview Part 2 is now ready There is a common refrain on the internet that things have gotten worse and are continuing to get worse. There is a proliferation of horrible jumpy loading ads on every website, every search engine throws a crappy AI summary in front of your search result, every site/webapp seems to have…
Just like CAD didn't make everyone an industrial designer, visual programming isn't going to make everyone a programmer. Whether textual or visual, there'd still be a lot of underlying concepts (and how they are composed) to learn. But still, I think it's underexplored. Most visual programming paradigms focus on…
That’s the headline for my latest project (with Tomas Petricek), presented at HATRA. [paper] [recorded talk] With this work I am finally confronting the demon cursing my work: version control. If w…
This page is a collection of obscure C++ features, gathered over the years as I've explored different corners of the language. C++ is very big and I'm always learning more about it. Hopefully you'll learn something from this page even if you already know C++ pretty well. The features below are roughly ordered from…
Discover what's new in Emacs 24.4 as I annotate most of the changes made to the new Emacs version.
My CppCon 2025 talk, Practical Reflection, is now online, and goes over this example in more detail and more digressions. Check it out!