Programming ⌨


A novice was trying to fix a broken Lisp 🖥 machine by turning the 🔌 power off and on. Knight, seeing what the student was doing, spoke sternly: - "You cannot fix a 🖥 machine by just power-cycling it with no understanding of what is going wrong." Knight turned the 🖥 machine off and on. The machine worked.


You know you have been hacking too long when: - not only do you check your email more often than your paper mail, but you remember your network address faster than your postal one. - you go to balance your checkbook and discover that you’re doing it in octal. - your computers have a higher street value than your car. - in your universe, round numbers are powers of 2, not 10. - more than once, you have woken up recalling a dream in some programming language. - you see the word Oxford and mentally trip over the fact that r is not a hex digit. - you realize you have never seen half of your best friends. - you look for your toothbrush by trying to do a /toothbrush command. - you are trying to recall something and hear in your head: "Parity error at address…" - you’re writing a homework assignment, and get to the end of the line in the middle of a sentence, tack on a \, and continue writing on the next line. - you try to sleep, and think, telnet - you have two books, one on top of another, and think: "No problem. I’ll just click on its title bar to raise the other book to the front.” - you hear a professor lecturing, and think that any question will crash his/her lecture interpreter. - you hit the wrong key on the elevator keypad and you feel frustrated when you see that it has no Undo key. - you think of the lyrics to "Jump! Jump!" by Kris Kross and wonder if they can be assembled... - you start typing semi-colons at the end of sentences instead of full stops; - you see something written on the blackboard and think: "Why don’t I just log on and download it?" - you think you can’t wake up in the morning because you forgot to push a return address on the stack the night before. - you wake up with a woman and you think that she is a PDP-11 and you try to figure out how to boot her. - you think your girlfriend is a VAX, and can’t figure out where to put the floppy. - you plan a hectic day as follows: "My load average seems to be a bit too high, my scheduler might die any moment, and I’m running out of swap space... I’d better kill off some low-priority user processes." - you are reading a book and look for the space bar to get to the next page. - you are working on two SPARC stations, and get confused as to why attempting to move the mouse off one screen doesn’t move it onto the other. - you are watching TV and look for the Info key in the remote control to find out the name of the program. - you want to grep a book. - you want to grep a videocassette. - you want to grep toothbrush /dev/gym_bag. - you want to grep keys /dev/pockets. - you want to grep homework /dev/backpack. - your children do something they shouldn’t, you tell them to stop, and they do it just once more, and you react by thinking: "Well, they prefetched the instruction and are executing it in the delay slot..." - after fooling around all day with routers and other junk, you pick up the phone and start dialing an IP number. - the bell rings ending class while the professor is in the middle of a sentence, and you think, "How in the world is he going to carry that continuation back to his office?" - you watch the temperature display on The Weather Network say that it is -0 degrees outside, and you catch yourself wondering if it is sign-magnitude or 1′s-complement." - you get in an elevator and double-press the button for the floor you want. - you go to the movies and it takes 5 minutes to get used to the flicker (damn low refresh rate...) - you go to the movies and catch yourself wondering what the color depth of the screen image is. - you see a flock of birds, and you sit there and try to figure out the algorithms that determine their movement. - you wonder if you could comment out the code that caused your girlfriend to get pregnant, but then you realize: "you do not have the source to your girlfriend, and even if you did, how would you go about recompiling her, anyway?" - your alarm clock goes off, and you think it is spawning new alarm clock processes and you have to kill them quickly so it doesn’t fill up the process table and prevent you from doing anything about it. The only problem is, there is a monitor process that you can’t kill, and every time you kill off one of the ring_alarm(x) processes, it waits 9 minutes and spawns another one. - you wish you could sleep 24000 &. - you try to bring a window to the front of something, then you realize that the “something” is a post-it on your screen. - in art class, you make a mistake in a drawing and look frantically for the Undo button on the paper. - you’ve been low-level debugging ethernets for a week and when you see two people at a table trying to pick up the same jar of butter you wonder if they are using the correct CSMA/CD algorithm to avoid a re-collision.


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. -David Leinweber


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. -Bjarne Stroustrup


If we’d asked the customers what they wanted, they would have said “faster horses”. -Henry Ford


This is one of the reasons Lisp doesn’t get anywhere. The trend to promote features so clever that you stop thinking about your problem and start thinking about the clever features. CL’s loop is so powerful that people invented functional programming so that they’d never have to use it. -G_Morgan


Compatibility means deliberately repeating other people’s mistakes. -David Wheeler


Old programs read like quiet conversations between a well-spoken research worker and a well-studied mechanical colleague, not as a debate with a compiler. Who’d have guessed sophistication bought such noise? -Dick Gabriel


Every language has an optimization operator. In C++ that operator is ‘//’.


Theory is when you know something, but it doesn’t work. Practice is when something works, but you don’t know why. Programmers combine theory and practice: "Nothing works and they don’t know why."


The X server has to be the biggest program I’ve ever seen that doesn’t do anything for you. -Ken Thompson


Programming graphics in X is like finding the square root of PI using Roman numerals. -Henry Spencer


The essence of XML is this: "The problem it solves is not hard, and it does not solve the problem well." -Phil Wadler, POPL 2003


And folks, let’s be honest. Sturgeon was an optimist. Way more than 90% of code is crap. -viro


When in doubt, use brute force. -Ken Thompson


The cheapest, fastest, and most reliable components are those that aren’t there. -Gordon Bell


There are two ways of constructing a software design: "One way is to make it so simple that there are obviously no deficiencies and the other way is to make it so complicated that there are no obvious deficiencies." - C.A.R. Hoare, The 1980 ACM Turing Award Lecture


A good programmer is someone who always looks both ways before crossing a one-way street. -Doug Linder


I write all my numbers in base 10.


A programmer puts two glasses on his bedside table before going to sleep. A full one, in case he gets thirsty, and an empty one, in case he doesn’t.


What's the best thing thing about UDP jokes? I don't care if you get them.


"Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration." -Stan Kelly-Bootle


A man and a woman are attending a computer science lecture. After the teacher leaves the man touches the woman's boobs. - "Hey! That's private!" said the woman. The man responds: - "But I thought we were in the same class!"


Laws of computer programming: - Any given program, when running, is obsolete. - Any given program costs more and takes longer. - If a program is useful, it will have to be changed. - If a program is useless, it will have to be documented. - Any program will expand to fill available memory. - The value of a program is proportional to the weight of its output. - Program complexity grows until it exceeds the capabilities of the programmer who must maintain it. - Any non-trivial program contains at least one bug. - Undetectable errors are infinite in variety, in contrast to detectable errors, which by definition are limited. - Adding manpower to a late software project makes it later.


Why computers are like women: - No one but the Creator understands their internal logic. - The native language they use to communicate with other computers is incomprehensible to everyone else. - Even your smallest mistakes are stored in long-term memory for later retrieval. - As soon as you make a commitment to one, you find yourself spending half your paycheck on accessories for it.


Why computers are like men: - In order to get their attention, you have to turn them on. - They have a lot of data, but are still clueless. - They are supposed to help you solve problems, but half the time they are the problem. - As soon as you commit to one, you realize that if you had waited a little longer, you could have had a better model.


Programming is 10% science, 20% ingenuity and 70% getting the ingenuity to work with the science.


🎲 The generation of random numbers is too important to be left to chance.


Have you heard about the new Cray super computer? It's so fast, it executes an infinite loop in 4 seconds.


Unix is user friendly. It's just very particular about who its friends are.


There are three kinds of lies: lies, damned lies, and benchmarks.


God is real... unless declared integer.


The three most dangerous things in the 🗺 world are: - A programmer with a soldering iron. - A hardware type with a program patch. - A user with an idea.


One day, the prince goes to the 🐉 dragon lair in order to kill the 🐉 dragon. When the 🐉 dragon shows up, the prince cuts off his 🐲 head but two new 🐲 heads appear. The prince cuts off the two 🐲 heads and four appear. The prince cuts off the four 🐲 heads and 16 appear... The prince cuts off the 128 🐲 heads and the 🐉 dragon dies. Why? It was an 8 bit 🐉 dragon.


When Shakespeare asked, “To be, or not to be?”, he did not provide the answer. But programming can. Well the answer is FF. 2B | ~2B = FF


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.” - 😐 “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.” - 🤔 “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.” - 😶 “Um, let me see that map again.”


XML is like 👊 violence. If it doesn't solve your problem, you're not using enough of it.


99 little 🐛 bugs in the code, 99 🐛 bugs in the code, fix one 🐛 bug, compile again, 100 little 🐛 bugs in the code. 100 little 🐛 bugs in the code, … … continue until 0 bugs reached.


In theory, there ought to be no difference between theory and practice. In practice, there is.


Java programming is like teenage sex: - Everyone 🗣 talks about it all of the time (but they don't really know what they're talking about); - Everyone claims to be doing it; - Everyone thinks everyone else is doing it; - Those few who are actually doing it: + Are not practicing it safely; + Are doing it poorly, and + Are sure it will be better next time.


If Java is the answer, it must have been a really verbose question.


A programmer is sent to the grocery store with instructions to "buy butter and see whether they have eggs, if they do, then buy 10." Returning with 10 butters, the programmer says, "they had eggs."


The C language combines all the power of assembly language with all the ease-of-use of assembly language.


Three 👩 women sat discussing their husbands and their sex lives: - 😊 "My husband's a wrestler," said the first. "He's really 💪 strong and aggressive in 🛏 bed." - 😍 "My husband's an 🎨 artist," said the second. "He's really gentle and sensitive." - 😑 "My husband's an IBM salesman," said the third. "He sits on the edge of the 🛏 bed and tells me how good it's going to be when I finally get it."


🔁 To understand what recursion is, you must first understand recursion.


How many Prolog programmers does it take to change a 💡 light bulb? Yes.


Programming is like sex: one mistake and you have to support it for the rest of your life.


Whats the object-oriented way to become 💸 wealthy? Inheritance.


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.


Two bytes meet. The first byte asks: - 😟 “Are you ill?” - ☺ “No, just feeling a bit off.”


A computer science 🎓 student is studying under a 🌳 tree and another pulls up on a flashy new 🚲 bike. The first 🎓 student asks: - 😮 “Where’d you get that?” - 😊 “While I was studying outside, a beautiful 👧 girl pulled up on her 🚲 bike. She took off all her 👚 clothes and said, ‘You can have anything you want’.” - 😉 “Good choice! Her 👚 clothes probably wouldn’t have fit you.”


When your 🔨 hammer is C++, everything begins to look like a 👍 thumb.


A physicist, an engineer and a programmer were in a 🚗 car driving over a steep alpine pass when the brakes failed. The 🚗 car was getting faster and faster, they were struggling to get round the corners and once or twice only the feeble crash barrier saved them from crashing down the side of the ⛰ mountain. They were sure they were all going to die, when suddenly they spotted an escape lane. They pulled into the escape lane, and came safely to a halt. The physicist said: - 🤔 "We need to model the friction in the brake pads and the resultant 🌡 temperature rise, see if we can work out why they failed". The engineer said: - 🤔 "I think I've got a few 🔧 spanners in the back. I'll take a look and see if I can work out what's wrong." The programmer said: - 🤔 "Why don't we get going again and see if it's reproducible?"


How many programmers does it take to change a 💡 light bulb? None, that's a hardware problem.


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?" - 😄 "Yes. You're in a 🎈 hot air balloon, hovering 📏 9 meters above this field." - 😑 "You must work in Information Technology," says the balloonist. - 😮 "I do. 🤔 How did you know?" - 😏 "Well, everything you have told me is technically correct, but It's of no use to anyone." - 😔 "You must work in management." - 🙂 "I do, 😮 but how'd you know?" - 😤 "Well, 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."


🤔 Saying that Java is nice because it works on every OS is like saying that anal sex is nice because it works on every gender.


🚪 “Knock, knock.” ❓ “Who's there?” ⌛⌛⌛ **very long pause...** “Java.”


Command line Russian roulette 😩: [ $[$RANDOM % 6 ] == 0 ] && rm -rf / || echo *Click*


A physicist, an engineer, and a computer scientist were discussing the nature of God: - 😔 “Surely a Physicist,” said the physicist, “because early in the creation, God made 💡 light; and you know, Maxwell's equations, the dual nature of electromagnetic waves, the relativistic consequences...” - 😤 “An Engineer!,” said the engineer, “because before making 💡 light, God split the Chaos into land and water; it takes a hell of an engineer to handle that big amount of mud, and orderly separation of solids from liquids...” The computer scientist shouted: - 😏 “And the Chaos, where do you think it was coming from, hmm?”