A history of branch prediction from 1500000 BC to 1995
Why does Sattolo's algorithm produce a permutation with exactly one cycle?
Terminal and shell performance
Is the keyboard faster than the mouse?
Options vs. cash
How web bloat affects people with slow connections
HN: the good parts
Programming books you might want to consider reading
Developer hiring and the market for lemons
Why's that company so big? I could do that in a weekend
Is developer compensation becoming bimodal?
How I learned to program
Notes on concurrency bugs
Modest list of programming blogs
Notes on Google's Site Reliability Engineering book
We only hire the best means we only hire the trendiest
Sampling vs. tracing profilers
We saw some really bad Intel CPU bugs in 2015, and we should expect to see more in the future
Normalization of deviance in software: how broken practices become standard
Big company vs. startup work and pay
File crash consistency and filesystems are hard
Does ECC memory matter?
What's worked in computer science
Why Intel added cache partitioning in Broadwell
Distributed systems: when limping hardware is worse than dead hardware
Reviewing Steve Yegge's prediction record
Lessons learned from reading postmortems
Slashdot and Sourceforge
Please don't block everything but Googlebot in robots.txt
The dominance of boring languages for large scale systems (and some other areas)
Advantages of monolithic version control
A breakdown of power, servers, and other costs of running a modern datacenter
Dunning-Kruger and other bogus memes
What's up with Chinese DDoS astroturfing?
Combining AFL and QuickCheck for directed fuzzing
What happens when you navigate to a URL?
The dangers of intermediate targets: IQ, cholesterol, and 99%-ile latency
AI doesn't have to be good to replace humans, it just has to be slightly less terrible than humans
Is running ads on a programming blog worth it?
What's new in CPUs since the 80s and how does it affect programmers?
A review of the Julia programming language
The performance cost of integer overflow checking
A quick tutorial on implementing and debugging malloc, free, calloc, and realloc
The effect of markets on discrimination is more nuanced than Marc Andreessen claims
What do linux developers say in commit messages?
Why is software so buggy?
Speeding up this blog by 25x-50x
Please stop breaking the build
Static vs. dynamic languages: a literature review
Why Intel added the CLWB and PCOMMIT instructions
Cache eviction: when are randomized algorithms better than LRU?
Testing v. informal reasoning
Read along: the Chubby lock service for loosely-coupled distributed systems
Hand coded assembly beats intrinsics in speed and simplicity
Automated bug detection with analytics
Editing binaries: easier than it sounds
There is a gender gap in tech salaries
Anonymous benchmark markets
Why don't schools teach debugging?
How much math do programmers need?
How misaligning data can increase performance 12x by reducing cache misses
PCA is not a panacea
Why hardware development is hard, part 2: the physical world is unforgiving
How to discourage open source contributions
Why HN should use randomized algorithms
How to write safe Verilog: become a PL troll
Why hardware development is hard, part 1: Verilog is weird