Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 14,538 posts.
Announcing .NET Jupyter Notebooks
Jupyter Notebooks has been the significant player in the interactive ...
Text Editor Data Structures
Text editors can be an interesting challenge to program. The types of problems that text editors need to solve can range from trivial to mind-bogglingly difficult. Recently, I have been on something of a spiritual journey to rework some internal data structures in an editor I have been building, specifically the most…
Breaking the fourth wall with Minecraft
Update 23/11/2015 - I’ve got many requests about the WiFi bulbs. You can find them on dx.com. Enjoy! Recently I started playing Minecraft, again. I find vanilla Minecraft somewhat boring, so I always look out for modpacks. After searching for new modpacks, I stumpled upon FTB Horizons: Daybreaker. Looking at the…
Remastering Colin McRae Rally 3 with SilentPatch
A fresh take on the classic rally game with widescreen support, high definition UI, and countless bug fixes.
There’s No Such Thing as Clean Code
Everyone seems to be striving for ‘clean’ code at the moment. You can’t read a blog post without the author telling you how clean their approach is. Engineering teams get together and discuss which of the possible solutions is the cleanest. Other developers assure you that they practice ‘clean code’.
Myths Programmers Believe about CPU Caches (2018)
As a computer engineer who has spent half a decade working with caches at Intel and Sun, I’ve learnt a thing or two about cache-coherency. This was one of the hardest concepts to learn back in coll…
Why "Structure and Interpretation of Computer Programs" matters (2011)
In 2011, to celebrate the 150th anniversary of MIT, the Boston Globe made a list of the most important innovations developed there. They asked me to explain the importance of SICP, and this is what I sent them:
Microsoft Office migration from Source Depot to Git
Part 7 of my software journey, getting to know developer experience.
SQLite should have (Rust-style) editions
Date: 2026-07-15 Git: https://gitlab.com/mort96/blog/blob/published/content/00000-home/00017-sqlite-editions.md
Even more batteries included with Emacs
Emacs features have a discoverability problem, and we’re chipping away at it one demo at a time. The years since I wrote the last one of these have yielded more surprising and useful finds, so it’s time again for a “batteries included” report. Note This is the third in a series of articles highlighting useful but…
Zero Cost Abstractions
Rust claims to enable abstraction without overhead. How does that claim hold up in practice?
Zelda Screen Transitions Are Undefined Behaviour
The vertical scrolling effect in the original “The Legend of Zelda” relies on manipulating the NES graphics hardware in a manner that was likely unintended by its designers.
Let's Create a Simple Load Balancer with Go
Load Balancers plays a key role in Web Architecture. In this post we are going to develop a simple load balancer with power of Go
A Visual Intro to NumPy and Data Representation
Discussions: Hacker News (366 points, 21 comments), Reddit r/MachineLearning (256 points, 18 comments) Translations: Chinese 1, Chinese 2, Japanese, Korean The NumPy package is the workhorse of data analysis, machine learning, and scientific computing in the python ecosystem. It vastly simplifies manipulating and…
Scala – 1 Star – Would Not Program Again
With Scala you feel smart having just got something to work in a beautiful way but when you look around the room to tell your clojure colleague how clever you are, you notice he left 3 hours ago and there is a post-it saying use a Map. Daniel Worthington-Bodart
The Bulk of Software Engineering in 2018 Is Just Plumbing
I read a post online recently about how some software engineer was asked to complete a technically complex, jargon-filled coding challenge over the...
Notes by djb on using Fil-C
I'm impressed with the level of compatibility of the new memory-safe C/C++ compiler Fil-C (filcc, fil++). Many libraries and applications that I've tried work under Fil-C without changes, and the exceptions haven't been hard to get working.
My failed attempt to shrink all NPM packages by 5%
It seemed like a great idea at first.
Clear is better than clever
This article is based on my GopherCon Singapore 2019 presentation. In the presentation I referenced material from my post on declaring variables and my GolangUK 2017 presentation on SOLID design . For brevity those parts of the talk have been elided from this article. If you prefer, you can watch the recording of the…
Erase your darlings: immutable infrastructure for mutable systems
Over time, a system collects state on its root partition. This state lives in assorted directories like /etc and /var , and represents every under-documented or out-of-order step in bringing up the services.
PHP 7 Virtual Machine
This article aims to provide an overview of the Zend Virtual Machine, as it is found in PHP 7. This is not a comprehensive description, but I try to cover most of the important parts, as well as some of the finer details.
A tiny static full-text search engine using Rust and WebAssembly (2019)
I wrote a basic search m…
Embedded in Rust: Brave new I/O
A blog about Rust and embedded stuff