New
The latest blog posts to take off on Hacker News. 3,710 posts.
Willingness to look stupid
Looking foolish is underrated.
Linux Internals: How /proc/self/mem writes to unwritable memory (2021)
Introduction An obscure quirk of the /proc/*/mem pseudofile is its “punch through” semantics. Writes performed through this file will succeed even if the destination virtual memory is marked unwritable. In fact, this behavior is intentional and actively used by projects such as the Julia JIT compiler and rr debugger…
Lil Finder Guy
Who is it? What is it? Is it friend or foe? Has it arrived in peace, or is it plotting to corrupt our SSDs and fray our USB-C cables?
We should revisit literate programming in the agent era
Literate programming is the idea that code should be intermingled with prose such that an uninformed reader could read a code base as a narrative, and come away with an understanding of how it works and what it does. Although I have long been intrigued by this idea, and have found uses for it in a couple1 of different…
I made a programming language with M&Ms
I built a tiny programming language where programs are candy grids, complete with a renderer, photo decoder, AST tree, and execution trace.
The changing goalposts of AGI and timelines
Based on its own charter, OpenAI should surrender the race
My Homelab Setup
How I repurposed my old gaming PC to set up a home server for data storage, backups, and self-hosted apps.
Tested: How Many Times Can a DVD±RW Be Rewritten? Methodology and Results
Now that we’ve covered the contenders for this test, I will cover how this test will be performed and go through the results. It was a long time for me, but for you, it’ll just be a few…
Will Claude Code ruin our team?
AI coding is blurring the lines between engineers, PMs, and designers. In the short-term, it's going to cause havoc. What happens long-term?
Pushing and Pulling: Three reactivity algorithms
It’s looking like I’m going to need to build a reactive engine for work, so I’m going to prepare for that by writing down what I know about them. I want to look at three ways of building reactive engines: push reactivity, pull reactivity, and the hybrid push/pull combination that is used in a bunch of web frameworks…
Cloud VM benchmarks 2026
NOTE June 2026: Hetzner announced over 100% increases in prices. They will honour old prices for instances built before June 15th 2026, but for new instances the performance/price ratios show below are no longer valid.
I don't know if my job will still exist in ten years
In 2021, being a good software engineer felt great. The world was full of software, with more companies arriving every year who needed to employ engineers to…
Building a TB-303 from Scratch
Code music in the browser.
The stagnancy of publishing and the disappearance of the midlist
How did we get here? And how do we get back?
Verification debt: the hidden cost of AI-generated code
I’ve forgotten how to write code, or at least I think I have. Hard to be sure, I haven’t done it for a while. But then, I start to muse…
Graphing how the 10k* most common English words define each other
The words are a subset of the 10,000 most common words from Google's Trillion Word Corpus , with definitions sourced from Open English Wordnet .
The Gervais Principle, or the Office According to “The Office” (2009)
My neighbor introduced me to The Office back in 2005. Since then, I've watched every episode of both the British and American versions. I've watched the show…
Files are the interface humans and agents interact with
a digital garden by daniel phiri
Boy I was wrong about the Fediverse
I have never been an "online community first" person. The internet is how I stay in touch with people I met in real life. I'm not a "tweet comments at celebrities" guy. I was never funny enough to be the funniest person on Twitter. So when Twitter was accidentally
TCXO Failure Analysis
Back in January, the ThunderScope team sent me a PCIe card version of their prototype open hardware oscilloscope.
Some Words on WigglyPaint
In early December 2023, I wrote a drawing program called WigglyPaint and published it on Itch.io.
C# strings silently kill your SQL Server indexes in Dapper
If you're using Dapper with anonymous objects to query varchar columns, you're probably sending nvarchar(4000) parameters — causing CONVERT_IMPLICIT on every row and defeating your indexes. Here's the fix.
The window chrome of our discontent
In a WWDC 2011 session, Dan Schimpf explained some of the goals of the refreshed design for Aqua in Mac OS X Lion were “meant to focus the user attention on the active window content”. This sentiment was echoed by John Siracusa in his review of Lion for Ars Technica: Apple says that its goal […]
this css proves me human
Posts on software engineering – engineering culture, system legibility, and performance.
The shady world of IP leasing
The IPv4 "exhaustion" is not real. The addresses got hoarded and the market devolved into a wild sub-leasing economy where anyone can choose where their IPs appear from, who owns them on paper, and scrub them clean of any history.
The worst acquisition in history, again
Warner Bros.
macOS Tahoe windows have different corner radiuses
I’m sometimes late to notice new and terrible things about macOS 26 Tahoe, because I use it only for testing, on a secondary Mac. My main Mac remains on Sequoia, as enforced by Little Snitch . I was of course aware that app windows on Tahoe have exaggerated corner radiuses, but I was unaware until now that the window…