Original programming jokes
Social media timestamp-based attribution 2023-09-26 #programming #humour
Jokes, even more than books and song lyrics, seem to become public domain as soon as they make someone laugh, unfortunately for comedy writers, who rarely get credit for the jokes they write that become memes (in Dawkins’ sense rather than image macros a.k.a. lolcats).
Ever since programmers started using social media, programming jokes have had something new: timestamps and search. The following jokes reappear regularly without credit, but these first sightings on Twitter likely reveal their original authors.
2009
Nicholas Smith’s 2009-05-21 tweet appeared way back when Twitter first started to experience rapid growth:
There are no bugs, just surprise features
For example, Marit van Dijk found a 2022 tweet that copies the original joke without credit.
2010
Leon Bambrick’s 2010-01-01 tweet remains the first and most popular variation on Phil Karlton’s original joke:
The two hardest programming problems are cache invalidation, naming things and off by one errors
2011
Nick Murphy’s 2011-04-27 tweet hasn’t spread as much, but scores points for the pun:
Just started a band called 1023MB.
We haven’t done a gig yet.
Paul Malin’s 2011-11-12 tweet unusually contains compilable code, which makes it hard to tell out loud:
Q: What’s yellow and dangerous?
A:*((int*)rand()) = 0xffff00;
This riffs on the children’s shark-infested custard joke. The C code overwrites a random memory location with a number that represents yellow, and may cause the computer to crash spectacularly, although not necessarily in yellow.
2012
Anthony Steele’s 2012-03-26 tweet (private account) brilliantly upgrades a classic groaner:
There are 10 kinds of programmers: those who understand binary, those who don’t, and those who didn’t expect a base 3 joke.
Raoul du Plessis’ 2012-10-25 tweet ventures successfully into observational humour:
Programmers love computer games because they get to experience performing a task from start to finish without the requirements changing
2014
Phillip Bowden’s 2014-05-20 tweet inevitably became my favourite programming joke, because it references both naming and programming jokes:
There are two hard problems in computer science: we only have one joke and it’s not funny
Bill Sempf’s 2014-09-23 tweet (account now deleted, but the tweet ID reveals the date) has spread even more than the Phil Karlton joke, in an untestable number of variations:
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers. Orders a sfdeljknesv.
2015
Matthias Verraes’ 2015-08-14 tweet takes the Karlton joke to network programming:
There are only two hard problems in distributed systems:
2. Exactly-once delivery
1. Guaranteed order of messages
2. Exactly-once delivery
2016
I Am Devloper’s 2016-02-03 laments the coder condition:
The software development process:
i can’t fix this
crisis of confidence
questions career
questions lifeoh it was a typo, cool
2017
Romeu Moura’s 2017-11-10 tweet established domain-driven design as a real thing, with its first proper joke:
In the culinary bounded context: 🍅 is a vegetable
In the botanic bounded context: 🍅 is a fruit
In 🎭 bounded context: 🍅 is feedback
In hindsight, if you publish a book that single-handedly establishes a new field or discipline, as Eric Evans did with his 2003 book, the second edition’s chapter title pages would ideally introduce the field’s standard jokes. As the importance of programming jokes explains, a book and a Wikipedia page alone do not establish a culture.