- Steve Ballmer was an underrated CEO
- How good can you be at Codenames without knowing any words?
- A discussion of discussions on AI bias
- What the FTC got wrong in the Google antitrust investigation
- How web bloat impacts users with slow devices
- Diseconomies of scale in fraud, spam, support, and moderation
- Why it's impossible to agree on what's allowed
- Notes on Cruise's pedestrian accident
- Why do people post on [bad platform] instead of [good platform]?
- How bad are search results? Let's compare Google, Bing, Marginalia, Kagi, Mwmbl, and ChatGPT
- Futurist prediction methods and accuracy
- In defense of simple architectures
- Why is it so hard to buy things that work well?
- Misidentifying talent
- A decade of major cache incidents at Twitter
- Cocktail party ideas
- The container throttling problem
- Some thoughts on writing
- Some latency measurement pitfalls
- Major errors on this blog (and their corrections)
- Individuals matter
- Culture matters
- Willingness to look stupid
- What to learn
- Some reasons to work on productivity and velocity
- The value of in-house expertise
- Measurement, benchmarking, and data analysis are underrated
- Against essential and accidental complexity
- How do cars do in out-of-sample crash testing?
- A simple way to get more value from tracing
- A simple way to get more value from metrics
- How (some) good corporate engineering blogs are written
- The growth of command line options, 1979-Present
- Suspicious discontinuities
- 95%-ile isn't that good
- Algorithms interviews: theory vs. practice
- Files are fraught with peril
- Randomized trial on gender in Overwatch
- Computer latency: 1977-2017
- How good are decisions? Evaluating decision quality in domains where evaluation is easy
- How out of date are Android devices?
- UI backwards compatibility
- Filesystem error handling
- Keyboard latency
- Branch prediction
- Sattolo's algorithm
- Terminal latency
- The widely cited studies on mouse vs. keyboard efficiency are completely bogus
- Startup options v. cash
- How web bloat impacts users with slow connections
- HN: the good parts
- Programming book recommendations and anti-recommendations
- Hiring and the market for lemons
- I could do that in a weekend!
- Is dev compensation bimodal?
- How I learned to program
- Notes on concurrency bugs
- Some programming blogs to consider reading
- Google SRE book
- We only hire the trendiest
- Sampling v. tracing
- We saw some really bad Intel CPU bugs in 2015 and we should expect to see more in the future
- Normalization of deviance
- Big companies v. startups
- Files are hard
- Why use ECC?
- What's worked in Computer Science: 1999 v. 2015
- Infinite disk
- Why Intel added cache partitioning
- Slowlock
- Steve Yegge's prediction record
- Reading postmortems
- Slashdot and Sourceforge
- The googlebot monopoly
- A defense of boring languages
- Advantages of monorepos
- We used to build steel mills near cheap power. Now that's where we build datacenters
- Reading citations is easier than most people think
- Given that we spend little on testing, how should we test software?
- What happens when you load a URL?
- Goodhearting IQ, cholesterol, and tail latency
- AI doesn't have to be very good to displace humans
- CPU backdoors
- Blog monetization
- What's new in CPUs since the 80s?
- A review of the Julia language
- Integer overflow checking cost
- Malloc tutorial
- Markets, discrimination, and "lowering the bar"
- TF-IDF linux commits
- One week of bugs
- Speeding up this site by 50x
- How often is the build broken?
- Literature review on the benefits of static types
- CLWB and PCOMMIT
- Caches: LRU v. random
- Testing v. informal reasoning
- Assembly v. intrinsics
- Data-driven bug finding
- Editing binaries
- That bogus gender gap article
- That time Oracle tried to have a professor fired for benchmarking their database
- Why don't schools teach debugging?
- Do programmers need math?
- Data alignment and caches
- PCA is not a panacea
- Why hardware development is hard
- How to discourage open source contributions
- Randomize HN
- Writing safe Verilog
- Verilog is weird