Links list - 2026-01-01

Hello, and happy new year. Here’s the first issue of links list for 2026, with lots of links because hopefully you’re still in vacation and you have more time to read! 🙂

What happens if we inline everything? Link to heading

A very fun experiment in pushing the compiler to inline everything, which includes patching LLVM too. A fun read!

What Happens if We Inline Everything?

You’d expect that everything would crash and burn, but it turns out: not quite…

Four billion if statements Link to heading

Another completely crazy but fun experiment in pushing compilers: can you build an if chain with four billion cases?

4 Billion if Statements

I recently stumbled upon this screenshot while researching social media on the train. Of course, it was followed by a cascade of spiteful comments, criticizing this fresh programmer’s attempt to solve a classical problem in computer science. The modulus operation.

Advent of Compiler Optimisations 2025 Link to heading

The amazing Matt Godbolt, creator of Compiler Explorer, has done a fantastic advent series about compiler optimizations. It’s full of unexpected tricks and a very worthwile read, even if you aren’t a C or C++ expert.

AoCO2025 Archive — Matt Godbolt’s Blog

Matt Godbolt is a C++ developer living in Chicago. He works for Hudson River Trading on super fun but secret things. He is one half of the Two’s Complement podcast. Follow him on Mastodon or Bluesky.

Hand-written or generated parsers? Link to heading

An interesting survey about whether popular language implementations use a generated parser with some tool such as lex/yacc, antlr, etc; or have an hand-written parser. Spoiler: most have an hand-written one!

Parser Generators vs. Handwritten Parsers: Surveying Major Language Implementations in 2021 | Notes.eatonphil.com

Parser generators vs. handwritten parsers: surveying major language implementations in 2021

Optimizing String in Java Link to heading

An in-depth article about a complex but powerful optimization done to the String class of Java. It’s really impressive how much engineering has gone, and still goes into the JVM performance optimizations.

Strings Just Got Faster

In JDK 25, Strings used as keys in immutable Maps can be much faster.

The birth of prettier Link to heading

Prettier wasn’t the first code formatter, but it definitely helped pushed the trend that many modern languages such as go or rust are also following: all code committed should be formatted by an automated tool, in the same way. As I have written before, I strongly support this - when I was young, I thought that my personal style was obviously the best one, and that everyone else should just get used it because I would write code my own way. Luckily I outgrew that idea, and now I push for having an automated formatter on every project. It just makes life much easier, and it simplifies code review as well because you aren’t dealing with spurious whitespace changes.

The following article is well written, and goes into some details of the non-trivial algorithm employed by Prettier.

Vjeux » Birth of Prettier

React Conf is around the corner and it’s been almost 10 years since Prettier was released. I figured it would be a good time to recount the journey from its early days to now.

Code interview: fix a bug in this repo Link to heading

A couple of nice articles about an unusual, but IMHO really good style of code interview: “here’s a codebase, go fix a bug/implement a small feature”.

The Best Engineering Interview Question I’ve Ever Gotten, Part 1

It’s been a while since I was on the receiving end of a software engineering interview. But I still remember my favorite interview question. It was at MemSQL circa 2013. (They haven’t even kept their name, so I assume they’re not still relying on this specific interview question. I don’t feel bad for revealing it. It’s a great story that I tell people a lot; I’ve just never blogged it before.)

Why large enterprises have so much bureaucracy Link to heading

A very well written and interesting article that really explains well why large enterprises value processes so much, even if they full well know that they cause a lot of slowdown and cruft.

Seeing Like a Software Company

The big idea of James C. Scott’s Seeing Like A State can be expressed in three points: Modern organizations exert control by maximising “legibility”: by…

Comparing yourself to others Link to heading

A good point of view about how a good way of comparing yourself to others.

Comparing Yourself to Others Is Fine

A common word of advice given to people that want to pursue a passion is to stop comparing themselves to others. The rationale is that you’re only exposed to the strengths of others, and not their weaknesses. Instead of seeing a balanced image of a normal person, you might see a superhuman which can cause you to feel insecure, self-conscious, demotivated or burnt out.

3D printing Warhammer 40,000 miniatures Link to heading

A really fun read about the world of Warhammer 40,000 miniatures and 3D printing. I had a lot of good laughs reading this, because I luckily never got the urge to try it, but I know a few people who did… 😂

Matduggan.com

It’s JSON all the way down

The decoy effect Link to heading

Often, when buying something, you are shown three different versions: A, B, and C, where A is the cheap one, C is the expensive one, and B is a middle one that’s obviously a bad deal. This is intentional, and it’s exploiting a cognitive bias called the “decoy effect”.

Decoy Effect

In 2009, The Economist magazine ran an online pricing page with three options: * Option A: Web – $59 for a one-year subscription to economist.com, o