Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 6,943 posts.
Arguing against using protobuffers
I’ve spent a good deal of my professional life arguing against using protobuffers. They’re clearly written by amateurs, unbelievably ad-hoc, mired in gotchas, tricky to compile, and solve a problem that nobody but Google really has. If these problems of protobuffers remained quarantined in serialization abstractions…
Low-Level Optimization with Zig
The power of Zig's comptime code execution
Why did Windows 95 setup use three operating systems?
Simplifying the problem to an earlier problem.
Coroutines in C (2000)
Structuring a large program is always a difficult job. One of the particular problems that often comes up is this: if you have a piece of code producing data, and another piece of code consuming it, which should be the caller and which should be the callee?
Writing a simple pool allocator in C
I found out about pool allocators some time ago, and I really liked its simplicity and high performance, so I decided to write my own. This article was initially inspired by Dmitry Soshnikov’s article . It’s also worth mentioning that this article was discussed in Hacker News .
Scaling Mastodon is impossible
Now that Twitter is dying, what can replace it?
Microservices – architecture nihilism in minimalism's clothes
Some recent backtracking from what we have been calling "Microservices" has sparked anew the debate around that software architecture pattern. It turns out that for increasingly more software people, …
Without the futex, it's futile
Review: It's a history text, not a CS text
Cache invalidation really is one of the hardest problems in computer science
My colleagues recently wrote a great post on the Netflix tech blog about a tough performance issue they wrestled with. They ultimately diagnosed the problem as false sharing, which is a performance…
Clang Format Tanks Performance
Can using clang-format make your code slower? Kind of.
Under the hood: Facebook’s cold storage system
Visit the post for more.
The server chose violence
Hubris's oddest syscall
What's New in CPUs Since the 80s and How Does It Affect Programmers?
My mental model of CPUs is stuck in the 1980s: basically boxes that do arithmetic, logic, bit twiddling and shifting, and loading and storing things in memory. I'm vaguely aware of various newer developments like vector instructions (SIMD) and the idea that newer CPUs have support for virtualization (though I have no…
One Windows Kernel
In this blog post, I will talk about the evolution of the core pieces of the Windows kernel that allows it to transparently scale across a low power NVidia...
Wasmer 3.0
Today we are very excited to launch Wasmer 3.0, following three months of work since our first alpha. So, what’s new in Wasmer? - `wasmer` is now able...
Building a scalable time-series database on PostgreSQL
We just announced the release of TimescaleDB, a new open-source time-series database optimized for fast ingest and complex queries, now available on GitHub.
Improving performance of rav1d video decoder
*on macOS with an M3 chip *slightly more than 1%, on a specific benchmark, without any new unsafe code A while ago, memorysafety.org announced a contest for …
Performant Front-End Architecture
Make your client-side apps load fast and provide a good user experience.
Linux Namespaces Are a Poor Man's Plan 9 Namespaces
A blog about free software and programming
Making Rust as Fast as Go
software engineer in sydney, australia
The Majestic Monolith
Monolith by Rene Aigner Some patterns are just about the code. If your code looks like this, and you need it to do that, here’s what to do. You’d do well to study such patterns, as they give you a …
Implementing simple cooperative threads in C
Using setjmp(), longjmp(), and assembly to implement a simple threading system in C!
Anatomy of a Terminal Emulator
How does a terminal emulator work? What are ANSI escape codes? Understanding terminal internals for development, fun and mischief.
Why is the Rust compiler so slow?
I spent a month repeatedly building my website in Docker, and now have horrors to share.