A defense of boring languages
An essay arguing that 'boring' programming languages are superior for complex, interesting work, contrary to popular tech industry advice.
DanLuu.com is the personal blog of Dan Luu, known for long-form essays that mix systems thinking with careful measurement and clear writing. The topics range from computer latency and input lag, testing versus informal reasoning, and concurrency bugs, to industry pieces on developer compensation and curated lists of programming blogs worth reading. Many posts include data, historical context, and reproducible reasoning, which is why the site is often cited in courses and shared across the developer community. The design is intentionally minimal, which puts all attention on the ideas.
128 articles from this blog
An essay arguing that 'boring' programming languages are superior for complex, interesting work, contrary to popular tech industry advice.
The article explains the benefits of using a single, large repository (monorepo) for code, citing simplified organization and dependency management.
Explains why power efficiency is critical for datacenters, detailing the significant costs of power delivery and cooling infrastructure.
The article debunks common misinterpretations of the Dunning-Kruger effect by analyzing the original study's data and findings.
An analysis of software testing methodologies, comparing manual and automated approaches, and advocating for smarter random test generation.
A deep technical exploration of the complex chain of events, from a keypress to network requests, that occurs when you load a URL in a browser.
Explores the challenge of measuring long-term success, using the Perry Preschool Study and Head Start program as examples of initial vs. lasting outcomes.
Argues that AI doesn't need to be perfect to replace humans in jobs, as cost savings often outweigh quality for businesses.
Explores the feasibility of CPU backdoors, how they could be implemented, and the security risks they pose.
A blogger weighs the pros and cons of running ads, using their own traffic stats to analyze potential revenue and user experience impact.
An overview of major CPU developments since the 1980s, focusing on features programmers can leverage for performance.
A critical review of the Julia programming language, highlighting performance and numerous bugs encountered by the author.
Analyzes the performance overhead of enabling integer overflow checks in compiled code, estimating a small penalty for most applications.
A tutorial on how to write your own malloc memory allocator in C, explaining core concepts and providing sample code.
The article argues against the idea that market forces prevent discrimination, using historical examples from finance to challenge this common tech industry belief.
Analyzing Linux commit messages using TF-IDF to identify what individual developers work on, beyond common stop words.
A developer logs a week's worth of software bugs they encountered, from Ubuntu to GitHub, and discusses the need for better testing practices.
A developer details how they dramatically improved their static blog's load time by optimizing JavaScript and CSS loading.
Analysis of build failure rates in open source projects vs. corporate work, using Travis CI data to compare reliability.
A literature review examining empirical studies on the impact of static vs. dynamic typing on software quality, finding mostly small effects.