The Myers diff algorithm: part 1
If you enjoy this article, I have published a book explaining the internals of Git through implementation: Building Git .
Topics /
The most popular blog posts about software engineering on Hacker News. 14,540 posts.
If you enjoy this article, I have published a book explaining the internals of Git through implementation: Building Git .
Updated in 2025-09. The ELF object file format is adopted by many UNIX-like operating systems. While I've previously delved into the control structures of ELF and its predecessors, tracing the historical evolution of ELF and its relationship with the System V ABI can be interesting in itself. The format consists of…
Hi. I think math is really cool, but, most people (sadly) don't think so. This includes many programmers who in fact enjoy many of the sam...
When receiving bytes from the network, we often assume that they are unicode strings, encoded using something called UTF-8. Sadly, not all streams of bytes are valid UTF-8. So we need to check the strings. It is probably a good idea to optimize this problem as much as possible. In earlier work, we showed that ……
Today sees the announcement of the latest additions to Raspberry Pi's microcontroller line-up - the RP2350 family. I've had prototype units for a while, and you can run Rust code on it today. To my knowledge this is the first ever microcontroller launch with Rust support out-of-the-box.
In the past, walking the uneasy borderline of academia, I used to managed compute servers for my research group. New hardware was a rare godsend, configuring it by hand was natural. At 99designs, I’ve been privy to the opposite approach: machines should be disposable. This requires the entire setup of a new machine to…
You probably know how to use async/await. But have you ever wondered how it works under the hood?
mvc-updates 1.0 announcement post
Front-end antics and typographic mischievousness
Experienced professional software engineer based in York, UK
Warning: another technical post.I wrote this cover letter many years ago, when I wanted to get accepted to the Matzov unit of the Israeli Defense Force (in Israeli, every male is conscripted…
You have probably all heard the following story about Jobs meeting Knuth for the first time in 1983. Steve had managed to get Don Knuth, the legendary Stanford professor of computer science, to give a lunchtime lecture to the Mac team. Knuth is the author of at least a dozen books, including the massive and somewhat...
Recently I found myself needing to process and visualize both point clouds and meshes in an iOS application utilizing ARKit, with the point cloud being gathered using the 2020 iPad “LiDAR” sensor. To enable maximum performance and content creation convenience I thought it would be nice to have both custom shaders and…
Yes, I am aware that I am interrupting our self-hosting PL/0 compiler series but I think it will be worth it. Earlier today, I got the J language system running on OpenBSD . I find it important to write these up, because it helps me preserve my own knowledge of what I did and hopefully it will help others porting…
Personal homepage and blog of Nicola Paolucci aka @durdn
Need to write a README, but running blank on words? If that bothers you frequently, consider generating diagrams.
I’m pleased to report that Hyperscan, the regular expression matcher that ate my life from 2008 through 2018, finally has a paper (pdf) – it’s being presented this week at NSDI &#…
In the words of its authors Bubble Tea is a “powerful little TUI framework” for Go. It may be little but I found it had a steep learning curve before I could get truly comfortable with its power. I spent many a late night wrangling with broken layouts and unresponsive keys before learning the hard way where I had gone…
Uli’s blog on programming, game development, pop culture and other boring things.
Wolfram's Version 13.3 includes a subsystem around LLMs plus new functionality in integrals, special functions, finite fields, computational geometry, live highlighting in visualizations, AR & VR deployment. See examples for those and dozens of other enhancements.
A crossword puzzle designed for geeks, every single clue is a regular expression.
A blog about programming and modern web development, particularly Node.js and React
Last week's article discussed how the Super Nintendo's Video system feeds the TV's CRT. Today I'll summarize what I understand of the hardware generating these graphics.
Update! I tested more hash functions in a follow-up post. See More Hash Function Tests .
Small, scoped areas within a graphical interface that allow users to read and write simple programmes
I’m having a lot of fun with reverse engineering lately, so when I was looking over the service manual for my guitar amp, a Yamaha THR10c, and saw references to a UART header in the schematic, I got excited. I wondered if anything cool was hiding in there. Next to it was a JTAG header. I knew next to nothing about…