Most cited
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 3,470 posts.
How often people copy and paste from Stack Overflow
April Fool's may be over, but once we set up a system to react every time someone typed Command+C, we realized there was also an opportunity to learn about how people use our site. Here’s what we found.
Windows Timer Resolution: The Great Rule Change
The behavior of the Windows scheduler changed significantly in Windows 10 2004 (aka, the April 2020 version of Windows), in a way that will break a few applications, and there appears to have been …
Python 3.11.0 Released
The official home of the Python Programming Language
Monads in JavaScript
Monad is a design pattern used to describe computations as a series of steps. They manage side effects in pure functional languages but can also be used in other languages to control complexity.
Solving Tetris in C
Exactly one of the following statements is true. In Tetris, you can always get at least one line before losing. In Tetris, a sufficiently evil AI can always force you to lose without getting a single line, by providing bad pieces. Which one? Prove it. The setup I crea...
DBLog: A Change-Data-Capture Framework
Andreas Andreakis, Ioannis Papapanagiotou
A whirlwind introduction to dataflow graphs
While in the middle of writing “Reading bits in far too many ways, part 3”, I realized that I had written a lot of background material that had absolutely nothing to do with bit I/O and…
What I Learned from Watching Notch Code
Ludum Dare coding secrets: continuous, thorough testing for better user experience. Learn how to level up your game development process!
Gap Buffers Are Not Optimized for Multiple Cursors
Gap buffers are a common data structure for representing a text buffer in a text editor. Emacs famously uses gap buffers — long-standing proof that gap buffers are a perfectly sufficient way to represent a text buffer.
How Python 3 Should Have Worked (2012)
As a workaday Python developer, it’s hard to shake the feeling that the Python 2 to 3 transition isn’t working. I get occasional requests to make my libraries work in 3 but it’s far from clear how to and when I try to look it up I find all sorts of conflicting advice, none of which sounds very practical.
Practicing Programming (2005)
Practicing Programming Stevey's Drunken Blog Rants™ Back in October I wrote an essay in which I compared programming to other professions. In it, I made the unsubstantiated claim that programming is unusual, in that most programmers don't practice their craft -- at least, not in any disciplined
Understanding lvalues and rvalues in C and C++
The terms lvalue and rvalue are not something one runs into often in C/C++ programming, but when one does, it's usually not immediately clear what they mean. The most common place to run into these terms are in compiler error & warning messages. For example, compiling the following with gcc :
Implementing VisiCalc (2003)
I'm writing this in preparation for the Computer History Museum's The Origins and Impact of VisiCalc panel on April 8th 2003. This is basically a draft and I hope to do some more editing as time permits and you should expect many typos until then. I'm also going to continue to edit and change this as I remember…
High Quality Ruby on Rails Example Applications
a digital agency
P vs. NP for Dummies
A reader named Darren commented on my last post: I have this feeling that this whole P and NP thing is not only a profound problem that needs solving, but something that can be infinitely curious t…
Ravelry - a very successful deployment of Ruby and Rails
Possibly you’ve never heard of it. But if you know anyone who knits or crochets, ask him or (more likely) her about Ravelry and chances are you’re talking to an active member. It’s big. This is an interview with Casey Forbes , who constitutes the whole engineering staff.
Slides and notes from my three hour Redis tutorial
These slides and notes were originally written to accompany a three hour Redis tutorial I gave at the NoSQL Europe conference on the 22nd of April 2010.
Extreme Pair Programming - Guy Steele and Richard Stallman
"We sat down one morning," recalls Steele. "I was at the keyboard, and he was at my elbow," says Steele. "He was perfectly willing to let me...
WebKit gets a new JavaScript profiler courtesy of 280 North (YC W08)
New Profiling and Debugging Tools in WebKit