Best of 2022

The blog posts Hacker News loved most in 2022. 1,001 posts.

Software Engineering
361

Oberon (2009)

Steven Frank's essay on the current state of the desktop UI 1 reminded me of Oberon, a delightfully insane system I used back when I was studying computer science at ETH Zürich. The first thing you have to understand about Oberon is that it evolved entirely outside of the normal genealogy of user interfaces…

371

SwiftUI Is Convenient, but Slow

I've been sitting on publishing these notes for a while, because I don't want to diminish the work of the talented people that engineered SwiftUI and plowed through years of AppKit and UIKit code to get to this state. But I'd like to draw attention to some performance limitations, in the hope that a SwiftUI engineer…

373

Considering C99 for Curl

tldr: we stick to C89 for now. The curl project builds on foundations that started in late 1996 with the tool named httpget. ANSI C became known as C89 In 1996 there were not too many good alternatives for making a small and efficient command line tool for doing Internet transfers. I am not saying … Continue reading…

379

Use fast data algorithms (2021)

As an engineer who primarily works with data and databases I spend a lot of time moving data around, hashing it, compressing it, decompressing it and generally trying to shovel it between VMs and blob stores over TLS. I am constantly surprised by how many systems only support slow, inefficient, and expensive ways of…

384

Request bodies in GET requests

12 years ago I asked on Stack Overflow: Are HTTP GET requests allowed to have request bodies? . This got a 2626 upvotes and a whopping 1.6 million views, so clearly it’s something lots of people are still curious about, and in some cases disagree with the accepted answer.

386

C Runtime Overhead (2015)

What do you do when libc is your bottleneck? If the total runtime of your process is under 10ms, most of this time (depending on your hardware) is spent waiting for the linker and C runtime to set things up. If you compare this to the Latency Numbers Every Programmer Should Know , it falls right above "disk seek" and…