Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 1,839 posts.
Infrastructure & DevOps
Any year
AWS in 2025: Stuff you think you know that's now wrong
One of the neat things about AWS is that it's almost twenty years old. One of the unfortunate things about AWS is... that it's almost twenty years old
Monitoring your own infrastructure using Grafana, InfluxDB, and CollectD
Have you ever wondered which node consumes more resources? Managing a bespoke dashboard for your infrastructure. Learn how to create it.
6 Raspberry Pis, 6 SSDs on a Mini ITX Motherboard
A few months ago someone told me about a new Raspberry Pi Compute Module 4 cluster board, the DeskPi Super6c. You may have heard of another Pi CM4 cluster board, the Turing Pi 2, but that board is not yet shipping. It had a very successful Kickstarter campaign, but production has been delayed due to parts shortages…
Continuous reinvention: A brief history of block storage at AWS
Marc Olson, a long-time Amazonian, discusses the evolution of EBS, highlighting hard-won lessons in queueing theory, the importance of comprehensive instrumentation, and the value of incrementalism versus radical changes. It's an insightful look at how one of AWS’s foundational services has evolved to meet the needs…
Flatpak Is Not the Future
Deploying apps for the Linux desktop is hard. A major problem has historically been library compatibility. Different Linux distributions, and even different versions of the same distribution, have had incompatible libraries. Unfortunately, there hasn’t always been a culture of backwards compatibility on the Linux…
Notes on Google's Site Reliability Engineering Book
The book starts with a story about a time Margaret Hamilton brought her young daughter with her to NASA, back in the days of the Apollo program. During a simulation mission, her daughter caused the mission to crash by pressing some keys that caused a prelaunch program to run during the simulated mission. Hamilton…
AWS costs every programmer should know
The title for this blog post is a direct reference to Latency Numbers Every Programmer Should Know. There are several versions of those numbers available now...
4x faster network file sync with rclone (vs rsync) (2025)
For the past couple years, I have transported my 'working set' of video and project data to and from work on an external Thunderbolt NVMe SSD. But it's always been slow when I do the sync. In a typical day, I may generate a new project folder with 500-1000 individual files, and dozens of them may be 1-10 GB in size…
How I use Tailscale
I’ve been using Tailscale for around four years to connect my disparate devices, servers and apps together. I wanted to talk a bit about how I use it, some cool features you might not know about, and some stumbling blocks I encountered.
How to sleep at night having a cloud service: common architecture do's
I like to sleep, but more importantly, I like to sleep while my cloud service is running.
Terraform should have remained stateless
For major providers, Terraform does not really need state. My proposal: add a ’none’ backend that uses the provider APIs as state. Here’s how.
A Practical Guide to SSH Tunnels: Local and Remote Port Forwarding
SSH port forwarding explained in a clean and visual way. How to use local and remote port forwarding. What sshd settings may need to be adjusted. How to memorize the right flags.
Building an LTE Access Point with a Raspberry Pi
In one of my last experiments I replaced my crappy T-Mobile (now Magenta) 4G modem/access point with an OpenWRT-based cheap travel router and a 4G USB LTE modem. That doubled my speed over the wireless (WLAN) network but the setup was limited by the outdated and under-powered travel rooter. So I got myself a cheap…
Goodbye Docker and Thanks for all the Fish
docker, kubernetes, cloud
Operating a large distributed system in a reliable way: practices I learned
For the past few years, I've been building and operating a large distributed system: the payments system at Uber [https://eng.uber.com/payments-platform/]. I've learned a lot about distributed architecture concepts…
Rebuilding My Personal Infrastructure With Alpine Linux and Docker
My story of replacing three servers, across two countries, running two operating systems with a single server running Alpine Linux and Docker.
Kubernetes on Hetzner: cutting my infra bill by 75%
Hi, my name is Bill. I’m a software engineer based in London. This is a blog about software development.
In Pursuit of Production Minimalism
Practicing minimalism with the lofty goal of total ephemeralization to build coherent, stable, and operable stacks.
I migrated to an almost all-EU stack and saved 500€ per year
“Bye bye bye.” It took some time, and a serious amount of research, but I have finally crossed the finish line. I have officially migrated my digital life to pure, EU-hosted solutions.
Blog ran on Ubuntu 16.04 for 10 years. I migrated it to FreeBSD
After a decade on Ubuntu 16.04, I migrated my blog to FreeBSD on Hetzner. Some notes on setting up a VPS with FreeBSD, Jails, Bastille, Caddy reverse proxies, and load testing and benchmarking the blog from four continents.
A tiny Docker image to serve static websites
The smallest Docker image to serve static websites
How to properly manage SSH keys for server access
This article was on the hacker news frontpage. You can find the related discussion here. Every developer needs access to some servers for example to check the application logs. Usually, this is done using public-private key encryption where each developer generates their own public-private key pair. The public keys of…
Using Home Assistant, adguard home and an $8 smart outlet to avoid brain rot
Preamble# The internet is the bane of my existence. Ads, distractions, sponsored content, bad news, bad ideas, more ads, social media, antisocial media, even more ads. Also, I’m a software developer, so the internet is basically indispensable for me, a central pillar of my income and a convenient way to communicate…