Programmer’s Jokes Made Easy: Haha
Tags: Computer Science, Programming, Coding, Jokes, Software Development

Programmer’s Life

Programmer’s Jokes Made Easy: Haha

It’s funny only when you understand it ;-)

Photo by Antevasin Nguyen on Unsplash

Either for a programmer or non-programmer, if you find hard to understand some of the programmers joke, this might help you with some

I previously published a list of funny programmer quotes as below. Admittedly, some of them make me wonder a while before a got the “aha” moment, which puts a smile on my face.

Why not let me share the joy, by explaining those that might be a little cryptic, and have fun together with all.

The Programming Life

“Programmer: A machine that turns coffee into code.” (source)

We (programmers) drink coffee often, while we code. Whether the code works or not is another story. 😆

“Computers are fast; programmers keep it slow.” (source)

Ever wonder why the software you use 10 years ago and now still have the same speed, even if you have upgraded your machine to the latest and fastest? Well, the speed is not for you, but for the programmers, so we can less worry about optimizing our code now. You don’t even feel the difference right? 😆

“When I wrote this code, only God and I understood what I did. Now only God knows.” (source)

There are two ways to code, one is code for the machine to read, and the other is code that human can read it too. If we code just for the machine to read, congrats! It will only be machine-readable after that. 😝

“A son asked his father (a programmer) why the sun rises in the east, and sets in the west. His response? It works, don’t touch!” (source)

One of the programming method is called Voodoo Programming. Trial-&-Error until it works. When you finally got it working, don’t touch it anymore. 🤣

“How many programmers does it take to change a light bulb? None, that’s a hardware problem.” (source)

Separation of Concern is a programming principle we practice dearly. When a problem first identified, first verify if it is coming from an external component. If it is, then it’s none of our business then. 😉

“Programming is like sex: One mistake and you have to support it for the rest of your life.” (source)

“You code it, you own it” is a programming philosophy practices by some organizations. If you introduce any bug in it, it’s a life sentence for you to deal with it. 🤓

“Programming can be fun, and so can cryptography; however, they should not be combined.” (source)

Both programming and cryptography requires deep mental thinking and analysis. One has to make it as hard as possible for one to understand, while the other suppose to make it as easy as possible for one to understand. 🤓

“Copy-and-Paste was programmed by programmers for programmers actually.” (source)

A log of programmer instead of coding, they refer to solutions on the Internet (e.g. StackOverflow), and just copy codes over and modify them to fits their work. More codes are copied than typed. 😉

“Always code as if the person who ends up maintaining your code will be a violent psychopath who knows where you live.” (source)

Don’t be a sloppy programmer! Always code to ensure the other person who reads it won’t get annoyed. 😅

“Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.” (source)

When you code, please compile run and test, instead of just code and code a big chunk. Because no matter how good you can code, there are bounce to be error. 🤣

“Algorithm: Word used by programmers when they don’t want to explain what they did.” (source)

The word “Algorithm” is a little dated today. “A.I”. is the word of the decade now, even if the logic is just if-else-then. 🤣

“Software and cathedrals are much the same — first we build them, then we pray.” (source)

No one can really guarantee the quality of a software fully until it is released to the public user to use. Prayer is the best assurance. 😇

“There are two ways to write error-free programs; only the third works.” (source)

There is no way to write error-free programs. Perhaps the only way to write one is not to write one. 😝

“If debugging is the process of removing bugs, then programming must be the process of putting them in.” (source)

Where do bugs come from? It comes from the code we code of course!! 🤪

“99 little bugs in the code. 99 little bugs in the code. Take one down, patch it around. 127 little bugs in the code …” (source)

We remove bugs by code more. And the more we code, the more bugs we introduce.🤪

“Remember that there is no code faster than no code.” (source)

The fastest software is to not have software at all. More lines of code doesn’t guarantee to improve the performance. 😉

“One man’s crappy software is another man’s full-time job.” (source)

Debugging and software maintenance is costly. If the software is not written properly initially, the cost of maintenance will be higher than the cost of writing it properly. 🤓

“No code has zero defects.” (source)

There’re 2 meaning here

All codes have defects.

To not have defects, is to write no code. 😛

“A good programmer is someone who always looks both ways before crossing a one-way street.” (source)

To write software, one has to think of all possible edge cases that not possible in a normal scenario. Like in real life, there are many idiot users out there. 😝

“Deleted code is debugged code.” (source)

Only when the code is gone, then we can guarantee that there’s no more bug in that code. 🤪

“Don’t worry if it doesn’t work right. If everything did, you’d be out of a job.” (source)

Software programming job isn’t finished when the product is shipped. Maintenance of software work is a crucial part of supporting it. Why? It for the job security of Software developers. 😎

“It’s not a bug — it’s an undocumented feature.” (source)

Everything done is behaving as per what is coded, even if it is not per the requirement. Just called it an undocumented feature if it is differing from the feature. 🤪

“It works on my machine.” (source)

Most programmers after code and compile only tested the scenario that he knows and works, and perhaps under the environment of what he works (might be a test environment). But it’s the best excuse to show that, they have done their job. 🤪

“It compiles; ship it.” (source)

Some programmers are so confident in their work, and they don’t even test it after compilation. 99% of the time their confidence fails them. 🤪

Software Engineering

“Measuring programming progress by lines of code is like measuring aircraft building progress by weight.” (source)

Lines of code (LOC) was the way to measure how much has been done. But it is definitely the wrong way to measure productivity and quality. 🤓

“In a room full of top software designers, if two agree on the same thing, that’s a majority.” (source)

Software developers are unique and high opinionated individuals. 😁

“One: Demonstrations always crash. And two: The probability of them crashing goes up exponentially with the number of people watching.” (source)

There is some truth in this Steve Job’s quote somehow. He has done more presentation than many of us, and such a logical guy as him, will never simply quote something he didn’t experience. 🤪

“A program is never less than 90% complete and never more than 95% complete.” (source)

No matter how complete you define a program, there bounce to have areas where it still misses out on something. It will never be completed. We always have a job to do. 😉

“In a software project team of ten, there are probably three people who produce enough defects to make them net-negative producers.” (source)

Get rid of the 3 people, you’ll get perfect software? Nah… the bugs generator is ingrained in all developers, unfortunately. You have to slice them up to get rid of it. 😜

“Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris.” (source)

Because of laziness programmers looks for automation.

Because of impatience, they deliver things out fast

Because of hubris, they dare to explore new innovation

… still want to manage this group of people? 😆

“I’ve finally learned what upward compatible means. It means we get to keep all our old mistakes.” (source)

Bringing what we have to the newer generation of hardware, framework… including the bugs we have. 🤪

“Walking on water and developing software from a specification are easy if both are frozen.” (source)

Specification continue to change, as per agile programming effort. Developing software is never easy, and the world changes. 🤓

“Documentation is like sex: When it is bad, it is better than nothing. When it is good, it is really, really good.” (source)

No matter how bad it is, you still be glad when one is in need. But be careful if it is already old (dated) or wrong (outside of what is legal). 😅

Languages and Logic

“There are only two kinds of programming languages out there. The ones people complain about and the ones no one uses.” (source)

There is no perfect programming languages. Even if there is, the programmer will still find ways to complain about it. 😂

“Programming made the impossible possible. You can have a null object and a constant variable.” (source)

In real life, a null cannot be an object, a constant cannot be a variable. But it exists in the programming world. Programming is to work with something abstract. Everything can be done in the software world. It’s only a matter of time. 🤓

“C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows your whole leg off.” (source)

C++ language is Object-based. Codes can be more tightly related to each other through the relationship of the objects. If not done right, it can get entangled easily. 🤓

“The evolution of languages: FORTRAN is a nontyped language. C is a weakly typed language. Ada is a strongly typed language. C++ is a strongly hyped language.” (source)

From the mid-80s till the 90s, C++ is a super popular language preferred by many. 🤓

“C++: An octopus made by nailing extra legs onto a dog.” (source)

This is an example of object inheritance and polymorphism, where one object (a dog) can be morph into another object (e.g. octopus) by overriding its method (e.g. the legs) 🤓

“C programmers never die. They are just cast into void.” (source)

Casting is an operation of force changing one C programming object to another object, and void is an object of nothing which supposing everything can be cast into. 🤓

“Without C we only have Obol, Pasal, and BASI.” (source)

Just to play around with words, removing C from Cobol, Pascal, and BASIC, which are 3 different types of programming languages. It’s trying to emphasize the superiority of the C language. 🤓

“One of the main causes of the fall of the Roman Empire was that lacking zero, they had no way to indicate successful termination of their C programs.” (source)

In C Program, to exit the program, one has to return a 0. 🤓

“In C we had to code our own bugs. In C++ we can inherit them.” (source)

Inheritance is an attribute of Object-Oriented programming that’s made C++ so different from C. That also means one can inherit the bugs in the code. 🤓

“What’s the object-oriented way to get wealthy? Inheritance.” (source)

Inheritance is an attribute of Object-Oriented programming. 🤓

“C++: Where your friends have access to your private members.” (source)

In Object-Oriented language, the private members of a class cannot be accessed by other classes. However, in C++, we can define a friend class for a class, which enables the friend class to access the private member of the class.🤓

“Why do Java programmers have to wear glasses? Because they don’t C#.” (source)

C# is another programming language, that sounds like “See Sharp”. Java and C# programmers often have very different opinions on the programming styles, and often ridicule each other. 🙃

“Q: What did the Java code say to the C code? A: You’ve got no class.” (source)

In C language, there’s no class to define an object, unlike in C++ or Java. So it’s true there’s no class in C. 🙃

“If you put a million monkeys at a million keyboards, one of them will eventually write a Java program. The rest of them will write Perl programs.” (source)

Java language is written in a more structured manner. It is unlikely someone can accidentally code structurally in Java. However, Perl syntax is harder to decrypt especially with the regular expression it has. So by simply typing, you might accidentally type something that looks like a Perl… even if you are a monkey. 😆

“You’ll surely have fun when programming Kotlin, promised.” (source)

In Kotlin, all functions are declared with the keyword fun . 🤓

“There’s no obfuscated Perl contest because it’s pointless.” (source)

The syntax for Perl is already confusing enough, and it doesn’t need obfuscation 🙃

“Perl: The only language that looks the same before and after RSA encryption.” (source)

The syntax for Perl is already confusing enough, that after encryption, it still look as encrypted as before. 🙃

“Some people when confronted with a problem think, “I know, I’ll use regular expressions.” Now they have two problems.” (source)

Regular expression is a scary language for most programmers due to a relatively non-intuitive way of writing it. 😅

“If Java had true garbage collection, most programs would delete themselves upon execution.” (source)

Java language does perform auto garbage collection for unused memory. But as most Java programmers considered garbage, so the garbage collector should collect them as well. 😝

“JavaScript logic: 0 == "0" and 0 == [] ; therefore, "0" != [] . (source)

The flexibility of JavaScript when equating different type of objects, make the logical comparison of logic confusing when we try to associate them. 🧐

“Python: Executable pseudocode. Perl: Executable line noise.” (source)

Python is a programming language that is more English like, but in Perl, the syntax is hard to comprehend. 🙃

“Should one learn Advanced BASIC programming language?” (source)

How can one have an Advanced Basic? Basic is Basic, and Advanced is Advanced. But BASIC is actually “Beginner’s All-Purpose Symbolic Instruction Code.”. Still, it’s supposed to be for Beginner, how can there be Advanced? 🧐

“Saying that Java is good because it works on all platforms is like saying anal sex is good because it works on all genders.” (source)

Java advantage over C is stated that it can be compiled once and work on all OS (e.g. Unix, Windows). But disagreed by the non-Java community that is a good thing. 🤓

“Knock, knock … Who’s there? … *very long pause* … Java.”(source)

When Java is introduced, it’s a compiled bytecode, and not really compiled to fit into the actual instruction code of the processor. Hence it’s much slower than its predecessor language, e.g. C or C++. 🤓

“God is real … unless declared integer.” (source)

This is more for FORTRAN language, whereby default a value is real type unless the variable is declared start with I, J, K, L, M. So God starts with G, hence it is a real number. 🤓

“COBOL programmers understand why women hate periods.” (source)

In COBOL, dot is a source of many hard to debug bugs the programmer has to hunt down. 🧐

“A SQL query goes into a bar, walks up to two tables, and asks, ‘Can I join you?’” (source)

join is an SQL query language that combines two tables of data together. 🧐

“To understand what recursion is, you must first understand recursion.” (source)

Recursive as an operation the recurse itself…. what am I saying? When it’s like saying to understand something, you need to understand that something. Well, that’s what recursion is, keep getting deeper and deeper into something that is the same. 🤓

“Russian roulette: [ $[ $RANDOM % 6 ] == 0 ] && rm -rf / || echo *Click* ” (source)

This is actually a script that produces a random number between 0 and 5. If it generates 1 to 5, it will just show click . If it gets 0 , it will execute rm -rf / which will REMOVE EVERYTHING on the computer. Don’t try it on your computer, please. 😝

“The best thing about a boolean is even if you are wrong, you are only off by a bit.” (source)

Boolean operates in bits (0 or 1). Either you are wrong but a real ONE bit, or a bit (which means a little). 🤓

“Two bytes meet. The first byte asks, ‘Are you ill?’ The second byte replies, ‘No, just feeling a bit off.’” (source)

Boolean operates in bits (0 or 1). When it is off, it is definitely a bit. 🤓

“There are 10 kinds of people in the world: Those who know binary and those who don’t.” (source)

The 10 here is in binary, which is only 2. To only two types of people. 😝

“William Shakespeare’s question 2B OR NOT 2B = FF. (source)

William Shakspeare asked, “To be or not to be?”, without providing an answer. But if we use the 2B OR NOT 2B boolean operation on the 2 hexadecimal number, we get FF. 🤓

“Q: If 1 is true and 0 is false? A: 1.” (source)

To answer the Question, as true, 1 is to represent the true value. 🤓

“Programmer’s partner: ‘Are you going to sit and type in front of that thing all day, or are you going out with me?’ Programmer: ‘Yes.’” (source)

The partner is asking A OR B. In computer, such operation will return true (YES) as long as one of them is true. Don’t try that on your partner, please. 😝

“There are only two hard things in computer science: cache invalidation and naming things.” (source)

Programmers spent a lot of time arguing on what name to use for a class and variable and function. 😛

Platform, Tools, and Administration

“UNIX is simple. It just takes a genius to understand its simplicity.” (source)

UNIX is not that simple. Period. 😝

“UNIX is user friendly. It’s just very particular about who its friends are.” (source)

UNIX is not that user friendly. Period. 😝

“UNIX was not designed to stop people from doing stupid things, because that would also stop them from doing clever things.” (source)

UNIX is powerful for you to fly to the sky or to shoot your own leg. 😛

“Linux is only free if your time has no value.” (source)

Learning Linux takes time. It is not easy. 😝

“A system administrator has two problems: 1. Dumb users. 2. Smart users.” (source)

Most of the time System Admin deal with people problems more than the machine problem. One will screw up the machine due to their lack of knowledge, the other will screw it up due to their hacking capabilities. If everyone follows the given instruction by the admin, the world will be peaceful. 😇

“Potential partners are like internet domain names — the ones I like are already taken.” (source)

All good one is taken. You have to book earlier or buy them over expensively. 😉

“Keyboard Failure. Press F1 to continue.” (source)

When the keyboard has failed, how can you press any key? 🤪

“If the box says, ‘This software requires Windows XP or better,’ does that mean it’ll run on Linux?” (source)

This is true for someone who love Linux more than Windows XP. 😅

“vi vi vi — the editor of the beast.” (source)

VI is a popular text editor for programmers, and the rivalry is EMAC. They fight and call each other evil. 🤪

“ASCII stupid question, get a stupid ANSI.” (source)

It sounds like ASK stupid question, get a stupid ANSWER. While ASCII is the entry key character standard, while ANSI is the standard for video output in the past. 🤓

“Hardware is made to last. Software is made to change. Change is the only thing that lasts. Software wins.” (source)

Software is made to make hardware more customizable. There’s no real way to determine which is more important. But just to boost software developers ego, software wins. 😝

“There’s no place like 127.0.0.1.” (source)

127.0.0.1 is a home IP address for the local computer, or can be called as HOME. 😇

General

“I have always wished that my computer would be as easy to use as my telephone. My wish has come true. I no longer know how to use my telephone.” (source)

The computer is never easy to use. We can make the phone as hard to use as a computer. 😅

“When we had no computers, we had no programming problems either.” (source)

Blame it on the invention of the computer that programmers had so much headache today. But think over it, without it, we would not have a decent occupation that allows us to sit, sip coffee, type with a keyboard, and get paid. 😇

“There is an easy way and a hard way. The hard part is finding the easy way.” (source)

In life, nothing is easy. Even if there is one, finding it will be hard. 🤪

“Computers are good at following instructions but not at reading your mind.” (source)

Translating software requirements into actual software code is a hard problem. Please appreciate the programmers. 😇

“The best way to get accurate information on Usenet is to post something wrong and wait for corrections.” (source)

While it is funny, today this is something so true. Try post fake news out, and you’ll likely to get bombarded. So be good. But it’s okay to get corrected if it is genuine. 😇

“The computer was born to solve problems that did not exist before.” (source)

Life will continue to have problems regardless. We either get new problems or go back to old problems. 🤪

“Q: Is the glass half-full or half-empty? A: The glass is twice as big as it needs to be.” (source)

Programmers always have to look for a win-win condition and optimize all possibilities. Always on a lookout for possibilities of improving the resourcing one has. Thinking out of the box. 😇

“In theory, there ought to be no difference between theory and practice. In practice, there is.” (source)

No theory is perfect though they aim to be. Always expect the reality to what’s plan, and buffer for it. 😇

“There is no Ctrl-Z in life.” (source)

Ctrl-Z is the default command sequent to UNDO an operation. But there’s none in life. 😇

“Whitespace is never white.” (source)

In the past, the background is mostly white. So when one type of space it is white. But nowadays we have dark mode with a black background. So whitespace is not always white. Never be racist okay? 😅

“When all else fails … reboot.” (source)

This is true if you ask most admin or technician. Restarting the computer is one of the better ways to get things back to normal. Same with life. 😇