Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 6,947 posts.
Introduction to TLA+ Model Checking in the Command Line
Otherwise known as “wait, you mean I can use the TLA toolbox from the command line?”
An in-depth look at OCaml’s new “best-fit” garbage collector strategy
An in-depth Look at OCaml’s new "Best-fit" Garbage Collector Strategy The Garbage Collector probably is OCaml’s greatest unsung hero. Its pragmatic approach allows us to allocate without much fear of efficiency loss. In a way, the fact that most OCaml hackers know little about it is a good sign:...
Three kinds of memory leaks
So, you’ve got a program that’s using more and more over time as it runs. Probably you can immediately identify this as a likely symptom of a memory leak. But when we say “memory leak”, what do we actually mean? In my experience, apparent memory leaks divide into three broad categories, each with somewhat different…
Why Castrol Honda Superbike crashes on (most) modern systems
A friend cleaned up and gave me a copy of a game I've not heard about before: Castrol Honda Superbike World Champions , a motorbike racing game for PC, released 1998 by Interactive Entertainment Ltd. and Midas Interactive Entertainment.
Build Doom3 on MacOSX with XCode4
The source code of Doom3 has been released three days ago :) ! I have started to read it and I will probably write a code review if enough people are interested. According to the README.txt the source code is building well with Visual Studio 2010 but it is not building at all on Mac OS X with XCode 4.0 ( it is…
Put an io_uring on it – Exploiting the Linux Kernel (2022)
Put an io_uring on it - Exploiting the Linux Kernel - chompie at the bits
Unpacking Elixir: Observability
Elixir supports the usual supects of observability. Open Telemetry (OTel), log handlers, capturing metrics. And it does it well. This post will mostly focus on the observability you have on the BEAM that is either incredibly rare to see elsewhere or possibly entirely unique.
How LZ4 works (2016)
LZ4 is an exciting algorithm, but unfortunately there is no good explanation on how it works. This blog post tries to explain it in terms that everybody can understand.
Red Hat announces no-cost RHEL for small production environments
Introducing new no-cost RHEL programs for small production deployments and enterprise development teams.
I hate: Programming Wayland applications
If you want to program a graphical application for linux, your primary choices are using either X11 or Wayland. According to Wikipedia, X11 had its first release in 1984. X11 follows a client-server-model. I assume it's because the whole computational environment, was very different back then. If you have a central…
The x86 architecture is the weirdo, part 2
It does everything differently, because of course it does.
Ruby 3.3's YJIT Runs Shopify's Production Code 15% Faster
Ruby 3.2 YJIT has optimized the production workloads of Shopify and other companies. We encourage you to enable YJIT in production. Once Ruby 3.3 is released, it should make your application even faster.
IBM Unveils Next Generation Dual-Architecture Processor for IBM Z and LinuxONE
The new processor is being developed to allow organizations to run Arm-native Linux environments simultaneously with z/OS and Linux on IBM Z, while benefiting from IBM’s established security, reliability, and scale.
The weirdest QNX bug I've encountered (2021)
I am responsible for the reliability of the firmware updates on our devices and this work never gets boring. The thing about firmware updates is that by definition, every bug is caused by the updater because before installing the affected version, the bug was not present. You could say that updates are the cause and…
Isn't WSL2 just a VM?
My take on Windows NT subsystems and the thin line between VMs and subsystems.
How do you know when macOS detects and remediates malware?
macOS may alert you when you’re trying to open or run a file, with an alert informing you that malware was detected. But what about in scans?
What Every Programmer Absolutely, Positively Needs To Know About Encodings (2011)
If you are dealing with text in a computer, you need to know about encodings. Period. Yes, even if you are just sending emails. Even if you are just receiving emails. You don't need to understand every last detail, but you must at least know what this whole "encoding" thing is about. And the good news first: while the…
Serving 200M requests per day with a CGI-bin
In the early 2000s, we used to write a lot of CGI programs. This was the primary way to make websites dynamic at the time. These CGI programs were usually written in Perl, but sometimes in C to increase performance. The CGI mechanism is conceptually simple but powerful. When the web server receives an incoming request…
FreeBSD from a NetBSD developer’s perspective
I’ve been a NetBSD developer for three years and it’s been my primary operating system for a long time too - on everything: routers, laptops, Raspberry Pis, PowerPC mac minis, Vortex86 embedded boards, and servers.
Huge pages are a good idea
Nearly all programs are written to access virtual memory addresses, which the CPU must translate to physical addresses. These translations are usually fast because the mappings are cached in the CPU's Translation Lookaside Buffer (TLB) . Unfortunately, virtual memory on x86 has used a 4 kiB page size since the 386 was…
TCP is harder than it looks
It's easy to write a TCP stack that works with most traffic. It's harder to write one that interoperates properly with every strange or buggy device that's out there.
Mac OS High Sierra automatically checks EFI firmware each week
Every week, Macs running High Sierra will check the integrity of their EFI firmware, in a bid to detect tampering by malware.
Unicode programming, with examples in C
Most programming languages evolved awkwardly during the transition from ASCII to 16-bit UCS-2 to full Unicode. They contain internationalization features that often aren’t portable or don’t suffice.
Unreliability at Scale
Thomas Claiburn's FYI: Today's computer chips are so advanced, they are more 'mercurial' than precise – and here's the proof discusses two ...