Most cited
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 6,981 posts.
Monads are like burritos (2009)
From the highly eclectic blog of Mark Dominus
The byte order fallacy
Whenever I see code that asks what the native byte order is, it's almost certain the code is either wrong or misguided. And if the native b...
Quake's Fast Inverse Square Root
I'm no graphics expert, but appreciate why square roots are useful. The Pythagorean theorem computes distance between points, and dividing by distance helps…
The Ethics of Unpaid Labor and the OSS Community
Disclaimer: This post is critical of open source software in the context of unpaid labor and the hiring requirements we've set up around it. It is not a criticism of open source software itself or the people who participate in it, both of which I and anyone who uses software benefits from. This is work that I - and…
Go Data Structures: Interfaces (2009)
Go's interfaces—static, checked at compile time, dynamic when asked for—are, for me, the most exciting part of Go from a language design point of view. If I could export one feature of Go into other languages, it would be interfaces.
Untangling Lifetimes: The Arena Allocator
Making performant dynamic manual memory management in C feel almost like garbage collection.
Yacc is dead: An update
The draft of " Yacc is Dead " that David Darais and I posted on arXiv received some attention, so we'd like to share updates and feedback.
The Art of Unix Programming (2003)
This book and its on-line version are distributed under the terms of the Creative Commons Attribution-NoDerivs 1.0 license, with the additional proviso that the right to publish it on paper for sale or other for-profit use is reserved to Pearson Education, Inc. A reference copy of this license may be found at…
Cdb: a fast, reliable, simple package for creating, reading constant databases
Packages that need to read cdb files should incorporate the necessary portions of the cdb library rather than relying on an external cdb library.
Linux being secure is a common misconception
Linux being secure is a common misconception in the security and privacy realm. Linux is thought to be secure primarily because of its source model, popular usage in servers, small userbase and confusion about its security features. This article is intended to debunk these misunderstandings by demonstrating the lack…
You Don't Want XTS
XTS is the de-facto standard disk encryption mode, which makes it look like a good general-purpose one. It isn't. What disk encryption actually promises, and why XTS's guarantees don't travel.
Maze-generation algorithms, with JS demos
Algorithms, circle mazes, hex grids, masking, weaving, braiding, 3D and 4D grids, spheres, and more!
Differential Synchronization (2009)
Keeping two or more copies of the same document synchronized with each other in real-time is a complex challenge. This paper describes the differential synchronization algorithm. Differential synchronization offers scalability, fault-tolerance, and responsive collaborative editing across an unreliable network.
The Magpie Developer
I’ve often thought that software developers were akin to Magpies, birds notorious for stealing shiny items to decorate their complex nests. Like Magpies, software developers are unusually smart and curious creatures, almost by definition. But we are too easily distracted by shiny new toys and playthings. I no longer
Array
There, that's known as a teaser. You see it in television all the time. "Find out which common household plant devours pets at night... but first ." And then you have to sit through and watch the stuff about Brad and Angelina shacking up / Shaq driving his new Hummer / Hummer's new fragrance before they get to the…
HTTP Archive: jQuery
A recent thread on Github for html5-boilerplate discusses whether there’s a benefit from loading jQuery from Google Hosted Libraries , as opposed to serving it from your local server. They referenced the great article Caching and the Google AJAX Libraries by Steve Webster.
Clean Coder Blog
Peter was showing the relationship between age and reputation on stack overflow. The correlation is unmistakable. The older the programmer, the better the reputation, by far. He also shows, in the following graph, that the reason for this correlation is that the older programmers answer far more questions than the…
Domain Driven Design
Slides and video from my talk "Domain Modeling Made Functional with the F# Type System"
Wizards and warriors, part one
A common problem I see in object-oriented design is: A wizard is a kind of player. A warrior is a kind of player. A staff is a kind of weapon. A sword is a kind of weapon. A player has a weapon. Bu…
Everybody Jump
What would happen if everyone on earth stood as close to each other as they could and jumped, everyone landing on the ground at the same instant?
A Practical Guide to Sous Vide Cooking
My book, Sous Vide for the Home Cook , came out in 2010. You can order the second edition directly from the US publisher. My book has over 200 delicious recipes for beef, pork, lamb, game, chicken, turkey, duck, fish, shellfish, vegetables, fruits, legumes, ice cream bases, sauces, and yogurt. I first cover the basics…
Android | Madaidan's Insecurities
By default, Android has a strong security model and incorporates full system SELinux policies , strong app sandboxing , full verified boot , modern exploit mitigations like fine-grained, forward-edge Control Flow Integrity and ShadowCallStack , widespread use of memory-safe languages (Java / Kotlin) and more. As such…
Bitcoin's Energy Usage Isn't a Problem. Here's Why.
Updated for 2023, this report is a deep dive on Bitcoin's energy usage and long-term scaling approach, with data tables and case studies.
FAA Biographical Assessment
could you pass the FAA's Air Traffic Controller (ATC) biographical assessment?