What (else) I learned about programmers by reading 200+ programming jokes (part 2)
The overwhelming loneliness of being a rational creature in a changing, inconsistent world is the key driver and constant theme of programmer humor."
Today’s post is a continuation of this article. I’d recommend reading it first if you haven’t already.
A short summary of part 1
In the preceding half of this article I talked about some interesting patterns I found while reading more than 200 jokes about programmers.
First, we can say with some confidence that the entirety of programmer jokes naturally fit into four categories:
1) Programming mindset
2) Programmer social skills
3) Programmers vs. non-programmers
4) Programmer fears
Second, even a superficial analysis of the first two categories (mindset and social skills) is enough to see that the jokes in each tend to follow a basic construct.
The group of jokes about the programming mindset sees the comic effect coming as a result of programmers interacting with the world as they would with a computer.
The jokes about programmer social skills mostly tee off on how programmers relate to women. They find their humor by assuming that programmers are so wrapped up in computing that real life as a whole and romance/sex as its most telling particular do not interest them. It would only be a small stretch to say that computers take the place of sexual partners.
I also took the time in part 1 to describe my approach to selecting jokes for analysis and, specifically, why I excluded those related to programming languages, platforms, and techniques.
You can read all about that in part 1, because for now I would like to move on to the next two categories of jokes:
- Programmers vs. non-programmers
- Programmer fears
Just like in part 1, I will give you some examples of jokes from both categories and also share my observations about what is common to them all and what they use for their comic effect.
3. Jokes about programmers vs non-programmers
This group includes jokes in which programmers interact with their professional environment: non-programmer colleagues, HR managers, users, and so on.
3.1. Presentation joke
On the way to a sales call, a salesman, a project manager, and a programmer were kidnapped. When their employer refused to pay the ransom, the kidnappers granted each a last wish before killing them. The salesman said, "I still want to make the pitch I prepared for today. It’s awesome and will only take an hour." The project manager said, "I still want to present my Powerpoint for this project. It’s only 92 slides." The programmer said, "Kill me first."
3.2. Train ticket
A group of programmers and marketers were traveling to a trade show on a train. Each of the marketers had bought a ticket, but the programmers had only bought one ticket for the lot of them.
One of the programmers was keeping a lookout, and when the conductor neared their car he called out "The conductor’s coming!" and all of the programmers piled into the train’s lavatory and closed the door. The conductor took the tickets of all of the marketers, and then knocked on the lavatory door and called “Ticket please.” The programmers slid their ticket under the door, and the conductor took it and left.
The programmers were laughing at the marketers for the rest of the trip, and the marketers felt like idiots.
On the way back, the marketers decided they would use the same trick and only bought one ticket for them. But this time, the programmers didn’t buy a single ticket! Again, one of the programmers kept a lookout for the conductor. When he called "Conductor coming!" all of the programmers piled into one lavatory, and all of the marketers shut themselves into another lavatory.
One programmer came back out of his lavatory, knocked on the other door, and said "Ticket please!"
3.3. Kiss & slap
A young Programmer and his Project Manager board a train headed through the mountains on its way to Wichita. They can find no place to sit except for two seats right across the aisle from a young woman and her grandmother. After a while, it is obvious that the young woman and the young programmer are interested in each other, because they are giving each other looks. Soon the train passes into a tunnel and it is pitch black. There is a sound of a kiss followed by the sound of a slap.
When the train emerges from the tunnel, the four sit there without saying a word. The grandmother is thinking to herself, “It was very brash for that young man to kiss my granddaughter, but I’m glad she slapped him.”
The Project manager is sitting there thinking, “I didn’t know the young tech was brave enough to kiss the girl, but I sure wish she hadn’t missed him when she slapped me!”
The young woman was sitting and thinking, “I’m glad the guy kissed me, but I wish my grandmother had not slapped him!”
The young programmer sat there with a satisfied smile on his face. He thought to himself, “Life is good. How often does a guy have the chance to kiss a beautiful girl and slap his Project manager all at the same time!”
3.4. Air balloon
A man flying in a hot air balloon suddenly realizes he’s lost. He reduces height and spots a man down below. He lowers the balloon further and shouts to get directions, "Excuse me, can you tell me where I am?"
The man below says: "Yes. You’re in a hot air balloon, hovering 30 feet above this field."
"You must work in Information Technology," says the balloonist.
"I do" replies the man. "How did you know?"
"Well," says the balloonist, "everything you have told me is technically correct, but It’s of no use to anyone."
The man below replies, "You must work in management."
"I do," replies the balloonist, "But how’d you know?"
"Well", says the man, "you don’t know where you are or where you’re going, but you expect me to be able to help. You’re in the same position you were before we met, but now it’s my fault."
3.5. The magic lamp
A programmer is walking along a beach and finds a lamp. He rubs the lamp, and a genie appears. “I am the most powerful genie in the world. I can grant you any wish, but only one wish.”
The programmer pulls out a map, points to it and says, “I’d want peace in the Middle East.”
The genie responds, “Gee, I don’t know. Those people have been fighting for millenia. I can do just about anything, but this is likely beyond my limits.”
The programmer then says, “Well, I am a programmer, and my programs have lots of users. Please make all my users satisfied with my software and let them ask for sensible changes.”
At which point the genie responds, “Um, let me see that map again.”
3.6. The Universe
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
3.7. Three monkeys
A man walks into a pet shop and sees 3 monkeys, each in a cage, each with a computer. The man is curious and walks up to the clerk and asks - what is the story with the moneys?
"They are programming monkeys - for example this one here can complete 100 lines of C++ in an hour - only 100$" The first monkey was busy typing away, and sure enough it was flawless code. They moved onto the second monkey who was typing even faster.
"This monkey knows Java, C++ and helped develop Julia - 1000$ for this one".
"What about that last monkey in the biggest cage?" the man asked. "well he is 10000$’s..."
"That’s must be an amazing monkey! What does he do?", the man asked.
"Well, when he was brought in all he did was sit there while the other monkeys worked, so we figured he must be executive management."
3.8. If carpenters were hired like programmers
Interviewer: So, you’re a carpenter, are you?
Carpenter: That’s right, that’s what I do.
I: How long have you been doing it?
C: Ten years.
I: Great, that’s good. Now, I have a few technical questions to ask you to see if you’re a fit for our team. OK?
C: Sure, that’d be fine.
I: First of all, we’re working in a subdivision building a lot of brown houses. Have you built a lot of brown houses before?
C: Well, I’m a carpenter, so I build houses, and people pretty much paint them the way they want.
I: Yes, I understand that, but can you give me an idea of how much experience you have with brown? Roughly.
C: Gosh, I really don’t know. Once they’re built I don’t care what color they get painted. Maybe six months?
I: Six months? Well, we were looking for someone with a lot more brown experience, but let me ask you some more questions.
C: Well, OK, but paint is paint, you know.
I: Yes, well. What about walnut?
C: What about it?
I: Have you worked much with walnut?
C: Sure, walnut, pine, oak, mahogony — you name it.
I: But how many years of walnut do you have?
C: Gosh, I really don’t know — was I supposed to be counting the walnut?
I: Well, estimate for me.
C: OK, I’d say I have a year and a half of walnut.
I: Would you say you’re an entry level walnut guy or a walnut guru?
C: A walnut guru? What’s a walnut guru? Sure, I’ve used walnut.
I: But you’re not a walnut guru?
C: Well, I’m a carpenter, so I’ve worked with all kinds of wood, you know, and there are some differences, but I think if you’re a good carpenter …
I: Yes, yes, but we’re using Walnut, is that OK?
C: Walnut is fine! Whatever you want. I’m a carpenter.
I: What about black walnut?
C: What about it?
I: Well we’ve had some walnut carpenters in here, but come to find out they weren’t black walnut carpenters. Do you have black walnut experience?
C: Sure, a little. It’d be good to have more for my resume, I suppose.
Interviewer: OK. Hang on let me check off the box…
C: Go right ahead.
I: OK, one more thing for today. We’re using Rock 5.1 to bang nails with. Have you used Rock 5.1?
C: [Turning white...] Well, I know a lot of carpenters are starting to use rocks to bang nails with since Craftsman bought a quarry, but you know, to be honest I’ve had more luck with my nailgun. Or a hammer, for that matter. I find I hit my fingers too much with the rock, and my other hand hurts because the rock is so big.
I: But other companies are using rocks. Are you saying rocks don’t work?
C: No, I’m not saying rocks don’t work, exactly, it’s just that I think nail guns work better.
I: Well, our architects have all started using rocks, and they like it.
C: Well, sure they do, but I bang nails all day, and — well, look, I need the work, so I’m definitely willing to use rocks if you want. I try to keep an open mind.
I: OK, well we have a few other candidates we’re looking at, so we’ll let you know.
C: Well, thanks for your time. I enjoyed meeting you.
NEXT DAY:
Ring…
I: Hello?
C: Hello. Remember me, I’m the carpenter you interviewed for the black walnut job. Just wanted to touch base to see if you’ve made a decision.
I: Actually, we have. We liked your experience overall, but we decided to go with someone who has done a lot of work with brown.
C: Really, is that it? So I lost the job because I didn’t have enough brown?
I: Well, it was partly that, but partly we got the other fellow a lot cheaper.
C: Really — how much experience does he have?
I: Well, he’s not really a carpenter, he’s a car salesman — but he’s sold a lot of brown cars and he’s worked with walnut interiors.
C: [click]
These jokes find programmers in open or more subtle conflict with people who think differently. Here we can point out at least two patterns:
1) The programmers in the jokes have two types of opponents:
- Corporate (managers, salespeople/marketers, HR specialists)
- Software users
The programmer vs. user conflict is more passive (the user doesn’t do something or doesn’t do what they’re supposed to do, is passive, and is only mentioned in passing), while programmers are in open conflict with corporate. They are the ones programmers have to deal and interact with.
Incidentally, that is some interesting food for thought about how the industry works overall. If the jokes are true, the user does not exist in the programmer’s conception as an active or independent player. But they, rather that managers, are the ones programmers are working for. I wonder how software would change if the user was a more prominent figure in the programming landscape.
2) The sharp-witted programmer notches yet another intellectual victory over their opponent
The main jist of these jokes is the programmer’s obvious intellectual superiority. They can see several steps ahead in the context of the situation they’re in, unlike their opponent, and therein lies the humor. That is represented formally by the fact that the programmer almost always has the last word. Note, for example, that [click] at the end of the joke about the carpenter and the interviewer: the carpenter doesn’t get the job, though it’s important that theirs is the last rejoinder (even if it isn’t technically a last word).
4. Jokes about programmer’s fears
Jokes about programmer fears tend to be sad, and almost always end badly. At the same time, this is the second most popular category by quantity: programmers joke about their fears and frustrations almost as much as they joke about the programming mindset.
4.1. No programmers in heaven
A programmer dies and finds himself in front of the Judgement Seat. God says to him:
“Well, my friend, you certainly aren’t getting into heaven.”
“Why not??”
“Just think about it,” answers God. “How many glitchy programs did you write? How stable were they? How hard did they make life for your users? How much pain did you cause?”
“But I tried my hardest!” says the programmer in an attempt to justify himself. “I released patches regularly, I made new releases. And how about this: did you make everything without glitches? Would you say the world you made is perfect? And you didn’t even release a single patch!”
“I would be happy to, but I can’t…” says God.
“All that time, and there wasn’t a single new version or update,” the programmer presses on.
“I would, but I can’t…” again says God.
Pause.
The programmer looks closer into that heavenly face and suddenly exclaims, “You’re kidding me! You lost the source code!”
4.2. Jesus and satan
Jesus and Satan have an argument as to who is the better programmer. This goes on for a few hours until they come to an agreement to hold a contest with God as the judge. They set themselves before their computers and begin. They type furiously, lines of code streaming up the screen, for several hours straight. Seconds before the end of the competition, a bolt of lightning strikes, taking out the electricity. Moments later, the power is restored, and God announces that the contest is over. He asks Satan to show his work. Visibly upset, Satan cries and says, “I have nothing. I lost it all when the power went out.” “Very well,” says God, “let us see if Jesus has fared any better.” Jesus presses a key, and the screen comes to life in vivid display, the voices of an angelic choir pour forth from the speakers. Satan is astonished. He stutters, “B-b-but how?! I lost everything, yet Jesus’ program is intact! How did he do it?” God chuckles, “Everybody knows… Jesus saves.”
4.3. Heaven and hell joke No1
A programmer finds himself in front of a committee that decides whether he should go to Heaven or Hell.The committee tells the programmer he has a say in the matter and asks him if he wants to see either Heaven or Hell before stating his preference.
“Sure,” the programmer replies.“I have a pretty good idea what Heaven is like, so let’s see Hell.”
So an angel takes the programmer to a sunny beach, full of beautiful women in skimpy bikinis playing volleyball, listening to music and having a great time.
“Wow!” he exclaims, “Hell looks great! I’ll take Hell!”
Instantly the programmer finds himself in red-hot lava with demons tearing at his flesh.
“Where’s the beach? The music? The women?” he screams frantically to the angel.
“That was the demo,” the angel replies as she vanishes.
4.4. Heaven and hell joke No2
A developer dreams about heaven for programmers: everyone is sitting at their computers downing coffee with bloodshot eyes…deadlines are looming… The developer wakes up and then falls back asleep only to dream about hell for programmers: everyone is typing away at their computers (the deadline is looming, after all) gulping down coffee with bloodshot eyes as they curse the client. The sleeping developer asks an angel who happens to glide by: “So what’s the difference between heaven and hell for programmers?” “The difference,” answers the angel, “is that the ones in heaven will FINISH ON TIME.”
4.5. Verse
99 little bugs in the code
99 bugs in the code
patch one down, compile it around
117 bugs in the code
4.6. Building cathedrals
Software and cathedrals are much the same. First we build them, then we pray.
4.7. Working on a project
The first thing to learn about programing is that the first half of the project usually takes 95% of the total effort. Unfortunately, the second half of the project also takes 95% of the total effort.
4.8. Frustration
If you give someone a program, you will frustrate them for a day; if you teach them how to program, you will frustrate them for a lifetime.
4.9. Made to bug
Computers have enabled people to make more mistakes faster than almost any invention in history, with the possible exception of tequila and hand guns.
4.10. Computer as a gender issue
Computers don’t listen to me. They do what they want when they want.... THEY MUST BE FEMALES!
4.11. The plane
A group of ten top software engineers is sent to a class for aspiring managers. The teacher walks in and asks this question:
"You work for a software company which develops avionics (software that controls the instruments of an airplane). One day you are taking a business trip. As you get on the plane you see a plaque that says this plane is using a beta of the software your team developed. Who would get off?"
Nine developers raised their hands. The teacher looked at the tenth and asked, "Why would you stay on?"
The tenth said, "if my team wrote the software, the plane would not get off the ground, much less crash.»
4.12. Gaming addiction explained
The fantastic element that explains the appeal of games to many developers is neither the fire-breathing monsters nor the milky-skinned, semi-clad sirens; it is the experience of carrying out a task from start to finish without any change in the user requirements.
It took me a while to grasp the thread tying these jokes together, although I couldn’t shake the feeling that there was one. Finally, I got it: they are stories about how programmers have to work in the context of uncertainty, fickleness, unpredictability, and a lack of control. Changing user requirements, errors in the code coming from heaven knows where, computers that behave unpredictably, power outages, missed deadlines… They are jokes about how programmers, who are trained to be rational and think logically, are constantly met with chaos and irrationality. The knock-out blow is delivered when it is found that the virus of irrationality has infected the most rational thing there is: the machine, the computer. Even it betrays the programmer. These jokes are little tragedies in which chaos triumphs over reason, and the ideal of submitting everything and everyone to the laws of logic proves unattainable. This is the main frustration that comes with being a programmer.
***
If we imagine that programmer humor is like chapters in a book rather than a random selection of isolated incidents, the main issues are these:
Programmers think differently and are exceptionally logical, seeing as how dealing with computers demands exactly that.
The world is illogical.
People are irrational.
But the main paradox is that even computers are irrational.
The overwhelming loneliness of being a rational creature in a changing, inconsistent world is the key driver and constant theme of programmer humor.
Well, at least that’s our takeaway after reading 200 programmer jokes.
Have something to add to the post? PM me on Twitter.