Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 3,821 posts.
Building a panel out of e-ink electronic shelf labels
A blog post on building a panel with multiple electronic shelf labels (ESL).
Just how complicated could it be to register a German company?
Have you heard that it is complicated to start a business in Germany?
‘Return to the office’ rhetoric needs to end
Disclaimer: I know not all jobs can be done from home. This article is aimed at the ones that can be done remotely yet have ‘management…
Boring Python: Code quality
This is the second in a series of posts I intend to write about how to build, deploy, and manage …
How the clipboard works
Reading how copy-paste works from the Wayland specification is non-trivial unless you understand a lot of how desktop computing works and Wayland internal. It took me quite a while to figure it all out, though once you get there, it seems quite obvious.
Your computer is a distributed system
Many have observed that today's computers are distributed systems implementing the abstraction of the shared-memory multiprocessor. The wording in the title is from the 2009 paper " Your computer is already a distributed system. Why isn't your OS? ". Some points from that and other sources:
Time is an illusion, Unix time doubly so
Unix counts time as seconds since the epoch. Seems straight forward. What could possibly go wrong?
tolower() in bulk at speed
DNS servers often have to convert DNS names to their canonical lower case form. BIND has to do so a bit more than most because it tries to preserve the case of DNS names rather than canonicalizing them.
She went to sleep and woke up 30 years later (1998)
The real-life story of Annie Shapiro - who fell into a coma at age 50 in 1963 - is more remarkable than the movie based on her miraculous re-awakening.
Writing systemd units that stop gracefully before shutdown
systemd Shutdown Units
I built a vector map from scratch
How I Built a Vector Map from Scratch
What comes after Git
Git was born from the collaboration problems in the Linux kernel. Nearly a decade later, new problems arose when Kubernetes (the operating system of the cloud) brought open-source collaboration to a new level.
David Rosenthal on cryptocurrencies
I was asked at short notice to fill in for a speaker in Stanford's EE380 course who had to cancel. Below the fold is a hastily updated vers...
The unreasonable effectiveness of one-on-ones
When I started dating my partner, I quickly noticed that grad school was making her very sad. This was shortly after I’d started leading an engineering team at Wave, and so the “obvious” hypothesis to me was that the management (okay, “management”) one gets in graduate school is totally ineffective. Most graduate…
Why read Dostoevsky? A programmer's perspective
fhur's blog
Linux on a 486SX
Linux on a 486SX A year or two ago, I came into posession of a 1993 Compaq Presario 425. It's a Mac-ish all-in-one with a 14" color (S?)VGA screen capable of 800x600 in full 256-color glory. On the inside it features a 25MHz i486SX (the sort without a floating-point unit), paired with 20MB of RAM - a significant…
General guidance when working as a cloud engineer
From the depths of the IT world, there are things that you only learn through experience.
Deep learning on electronic medical records is doomed to fail
A few years ago, I worked on a project to investigate the potential of machine learning to transform healthcare through modeling electronic medical records. I walked away deeply disillusioned with the whole field and I really don’t think that the field needs machine learning right now. What it does need is plenty of…
The FreeBSD/Firecracker Platform
I started working on this on June 20th mainly out of curiosity: I had heard that Firecracker had PVH boot support (which was in fact mistaken!) and I knew that FreeBSD could boot in PVH mode from Xen, so I wondered just how hard it would be to get FreeBSD up and running. Not impossible, as it turned out, but a bit…
Making nice-looking and interactive diagrams for your PCBs
I have always liked pinout diagrams like this: Arduino Nano Pinout. Source: http://www.pighixxx.com/test/wp-content/uploads/2014/11/nano.pngThey work quite well, there is all the information and they look nice. However, they work only when you have pins on two sides of the PCB and once you squeeze too much information…
Java’s Cultural Problem
Java is good by modern standards, from a technical perspective, the platform having received a lot of improvements from Java 8 to 17. Unfortunately, it still stinks, and the problem is its “enterprise” culture.
UML: My Part in Its Downfall
In the last year or two there has been a slow but steady trickle of articles attempting to account for UML ’s lack of long-term success (if you have time for only one, I suggest Hillel Wayne’s article ). As fate would have it, I had some involvement in UML standardisation in the early 2000s, so I saw some of the…
Rewriting my blog in Rust for fun and profit
I’ve used Hakyll as my static site generator for around 9 years now. Before that I think I used Jekyll and also more dynamic pages with Mojolicious in Perl and Kohana in PHP, but I can’t be completely sure as the git history doesn’t go back that far.
Roaring bitmaps: what they are and how they work
A detailed primer on Roaring bitmaps explaining what they are, how they're different from traditional bitmaps, and how they work internally.