Optimizing a lock-free ring buffer
A single-producer single-consumer (SPSC) queue is a great example of how far constraints can take a design. In this post, you will learn how to implement a ring …
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 6,949 posts.
A single-producer single-consumer (SPSC) queue is a great example of how far constraints can take a design. In this post, you will learn how to implement a ring …
In a real world benchmark, the default musl allocator caused a 7x slowdown compared to other allocators. I recommend all Rust projects immediately swap to a different allocator in a musl environment.
We analyzed if AWS’ N. Virginia region remains the least reliable in 2025. Overview of outages, affected services, and the massive October 20 AWS incident, with insights from StatusGator’s real-time monitoring.
And why you should too!
Experienced professional software engineer based in York, UK
Legacy software systems in 2026: why they are still used, myths about legacy and Java, tips from our engineers, and when to upgrade Java.
I've noticed more than once that some programmers are confused about the direction in which the stack grows on x86, and what "top of the stack" and "bottom of the stack" mean. It appears that this confusion is caused by a basic mismatch in the way people are used to thinking about stacks, and in the way the stack on…
We have created the seL4 Foundation! But what is the seL4 Foundation, and why did we create it? In a nutshell, these are the reasons (I’ll expand on them below): Provide for the longevity of …
A post by August Lilleaas, published August 08, 2014.
There is a pattern I’ve learned while using Zig which I’ve never seen used in any other language. It’s an extremely simple trick which - when applied to a data structure - reduces memory usage, reduces memory allocations, speeds up accesses, makes freeing instantaneous, and generally makes everything much, much…
I’ve seen the Mill CPU come up a number of times — maybe because I subscribed to their updates and so I get emails about their talks. They’re getting a bunch of buzz, but every t…
The current structure definition of the ion system heap involves a zero sized array:
A common situation in asyncio Python programs is asynchronous initialization. Some resource must be initialized exactly once before it can be used, but the initialization itself is asynchronous — such as an asyncpg database. Let’s talk about a couple of solutions.
If you like this blog, you should follow it via RSS and read older posts . Here are the recent posts:
Hello Windows Insiders, today we are releasing Windows 11 Insider Preview Build 25905 to the Canary Channel. We are releasing ISOs for this build – they can be downloaded here. Starting with to
PowerPC Macs were produced in huge numbers, and a lot of this hardware is still viable for use today, with professional software such as Photoshop CS2 and Propellerheads Reason. They're still good workstations, with lots of productivity software, and no always-online tracking or distractions. Originally, I got mine…
Fun things to do with big computers
An Upside-Down Backup Strategy I have a strange way of doing backups these days. When I save something, the master copy is in the cloud. If a file exists only on my local drive, it's not safe....
In this excerpt of a Trend Micro Vulnerability Research Service vulnerability report, Guy Lederfein and Quintin Crist of the Trend Micro Research Team detail a recently patched remote code execution vulnerability in the Microsoft Windows operating system, originally discovered and reported by Yuki C
mostly 1990s PC gaming
The cost of thread context switch, including cache invalidation, can reach up to 3 million CPU cycles RTTI can be quite expensive, with dynamic_cast being up...
In this article we will put some light on a lot of tools used in the world of Unix desktop environment customization, particularly regarding wmctrl, wmutils, xev, xtruss, xwininfo, xprop, xdotools, xdo, sxhkd, xbindkeys, speckeysd, xchainkeys, alttab, triggerhappy, gTile, gidmgr, keynav, and more. If those don't make…
It is extremely well worn conventional wisdom that for your “average” programmer, it’s pretty much impossible to beat a good optimizing compiler at writing fast code. For those who skip the “understanding” part, and jump straight into the “application” part, this rule of thumb tends to be grossly misunderstood, and…
More than a billion people now use Facebook Messenger to instantly share text, photos, video, and more. As we have evolved the product and added new functionality, the underlying technologies that …