Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 49,212 posts.
If your product is Great, it doesn't need to be Good.
By now, everyone is tired of hearing about the iPad, but the negative responses are so perfectly misguided that it would be wrong to waste t...
How many users block Google analytics? (2017)
Comparing Google Analytics with server logs
Firefox removes RSS support
gHacks recently reported that Mozilla plans to remove support for RSS & Atom related features. Specifically Live Bookmarks and their feed reader.
"Token anxiety", a slot machine by any other name
You're absolutely right!
Two Years with Rust
It’s been just over two years since I started learning Rust. Since then, I’ve used it heavily at my day job, including work in the Firecracker code base, and a number of other projects. Rust is a great fit for the systems-level work I’ve been doing over the last few years: often performance- and density-sensitive…
Lessons from Outsourcing to India, China and the Philippines
I've had this blog post in one form or another of draft for several years now. I hesitated to complete it, in part because at the best of times cultural observations can easily be misinterpreted and also in part because of the role I had in working with many
Go 1.17 is deprecating the traditional use of 'go get'
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…
500 Byte Images: The Haiku Vector Icon Format
Haiku uses a custom vector image format to store icons. This is surprising both because most OSes consider bitmaps to be totally sufficient to represent icons and because there are plenty of vector graphics formats out this (e.g. SVG). The goal of the Haiku Vector Icon Format (HVIF) is to make vector icon files as…
Taste in the age of AI and LLMs
AI made competent output cheap. That raises the value of taste and exposes its limits. The real edge is judgment paired with context, stakes, and the will to build.
IoT Unravelled Part 1: It's a Mess but Then There's Home Assistant
With the benefit of hindsight, this was a naïve question: > Alright clever IoT folks, I've got two of these garage door openers, what do you reckon the best way of connecting them with Apple HomeKit is? https://t.co/i0RmjSMkkD — Troy Hunt (@troyhunt) April 25, 2020 [https://twitter.com/
The coming industrialisation of exploit generation with LLMs
Recently I ran an experiment where I built agents on top of Opus 4.5 and GPT-5.2 and then challenged them to write exploits for a zeroday vulnerability in the QuickJS Javascript interpreter. I adde…
Jujutsu megamerges for fun and profit
A practical guide to creating and maintaining powerful megamerge workflows in Jujutsu for faster, conflict-free development.
Is K8s Too Complicated? 
Joe Beda had a great twitter thread this morning about the complexity of Kubernetes. You can read it in full , and I suggest you do, but I wanted to quote a few things I found to be particularly thought provoking:
Switching to Claude Code and VSCode Inside Docker
Why I decided to ditch Cursor and switch to running Claude Code in an isolated environment + diy guide!
SQL is Agile
Thoughts about why relational databases are not a bad choice when starting a new project.
Does offering ChatGPT a tip cause it to generate better text?
Modern AI rewards being very weird.
Algorithms Interviews: Theory vs. Practice
When I ask people at trendy big tech companies why algorithms quizzes are mandatory, the most common answer I get is something like "we have so much scale, we can't afford to have someone accidentally write an O(n^2) algorithm and bring the site down" 1 . One thing I find funny about this is, even though a decent…
Want a killer product? Become more opinionated
I laugh at this tweet every time I remember it:
“Laws” of software estimation for complex work (2021)
Wrong estimates aren’t your fault, but they are definitely your problem
No strcpy either
Some time ago I mentioned that we went through the curl source code and eventually got rid of all strncpy() calls. strncpy() is a weird function with a crappy API. It might not null terminate the destination and it pads the target buffer with zeroes. Quite frankly, most code bases are probably better off completely ……
Funding Open Source like public infrastructure
To protect the digital foundation of essential government services, governments should invest in Open Source as public infrastructure and shift from consumption to contribution.
The future of software engineering is SRE
When code gets cheap operational excellence wins. Anyone can build a greenfield demo, but it takes engineering to run a service.
Things I don’t want to do to grow my side project
Life is to short to work on things you hate