A little programmer's humour.
Neil Roy


Post yours. :)

Eric Johnson

Ha. :) RIP, Dennis Ritchie...

One of my favorites:


Here're a few more good ones:




Gideon Weems
  1. Open vim.

  2. Run :smile

  3. Have a nice day.

Neil Roy

Eric, those are great! ;D

This is definitely me. If it works, and I don't know why...

And this is my most common error...

Yup! :)

Eric Johnson

1. Open vim.
2. Run :smile
3. Have a nice day.



@Neil: I don't get it--there ARE only three apples though... ??? Zero apple, one apple, two apple, three apple! ;)


This has always been my favorite, because it could literally be me:


A programmer's wife says to her husband: "Please go to the store and buy a gallon of milk and if they have eggs, get six." He comes back with 6 gallons of milk. She asks: "Why the hell did you buy six gallons of milk?"

His reply: "They had eggs"


The counting one above makes zero sense. A count is clearly distinct from an index. If you count 3 apples you're going to ignore the 4th!

1#include <iostream> 2 3typedef char apple_t; 4 5int main(int argc, char * argv[]) 6{ 7 apple_t apples[] = {'@', '@', '@', '@'}; 8 9 for(int i=0; i<3; i++) 10 { 11 if(i) std::cout << ' '; 12 std::cout << apples[i]; 13 } 14 15 return 0; 16}


@ @ @

Eric Johnson

Way to ruin the spirit of things, bam. >:(

Here's a joke:




This site appears to be about 2/3 amusing:


Eric Johnson
bamccaig said:

This site appears to be about 2/3 amusing:


That first one gave me a good chuckle ;D


Hide and seek champion...


since 1985

Bob Keane


Not funny. Not because my name is Bob, but because I did something similar recently.


I agree with bamccaig regarding the count vs. index
It also doesn't take a day to find a missing semicolon

Some of these are pretty funny though.

Gideon Weems

As mentioned, the counting apples joke would only be funny to someone with a poor grasp of key concepts. The six-gallons-of-milk joke is classic, though. Here's another:


Here's a problem that sounded impossible... I almost regret posting the story to a wide audience, because it makes a great tale over drinks at a conference. :-) The story is slightly altered in order to protect the guilty, elide over irrelevant and boring details, and generally make the whole thing more entertaining.

I was working in a job running the campus email system some years ago when I got a call from the chairman of the statistics department.

"We're having a problem sending email out of the department."

"What's the problem?" I asked.

"We can't send mail more than 500 miles," the chairman explained.

I choked on my latte. "Come again?"

"We can't send mail farther than 500 miles from here," he repeated. "A little bit more, actually. Call it 520 miles. But no farther."

"Um... Email really doesn't work that way, generally," I said, trying to keep panic out of my voice. One doesn't display panic when speaking to a department chairman, even of a relatively impoverished department like statistics. "What makes you think you can't send mail more than 500 miles?"

"It's not what I think," the chairman replied testily. "You see, when we first noticed this happening, a few days ago--"

"You waited a few DAYS?" I interrupted, a tremor tinging my voice. "And you couldn't send email this whole time?"

"We could send email. Just not more than--"

"--500 miles, yes," I finished for him, "I got that. But why didn't you call earlier?"

"Well, we hadn't collected enough data to be sure of what was going on until just now." Right. This is the chairman of statistics. "Anyway, I asked one of the geostatisticians to look into it--"


"--yes, and she's produced a map showing the radius within which we can send email to be slightly more than 500 miles. There are a number of destinations within that radius that we can't reach, either, or reach sporadically, but we can never email farther than this radius."

"I see," I said, and put my head in my hands. "When did this start? A few days ago, you said, but did anything change in your systems at that time?"

"Well, the consultant came in and patched our server and rebooted it. But I called him, and he said he didn't touch the mail system."

"Okay, let me take a look, and I'll call you back," I said, scarcely believing that I was playing along. It wasn't April Fool's Day. I tried to remember if someone owed me a practical joke.

I logged into their department's server, and sent a few test mails. This was in the Research Triangle of North Carolina, and a test mail to my own account was delivered without a hitch. Ditto for one sent to Richmond, and Atlanta, and Washington. Another to Princeton (400 miles) worked.

But then I tried to send an email to Memphis (600 miles). It failed. Boston, failed. Detroit, failed. I got out my address book and started trying to narrow this down. New York (420 miles) worked, but Providence (580 miles) failed.

I was beginning to wonder if I had lost my sanity. I tried emailing a friend who lived in North Carolina, but whose ISP was in Seattle. Thankfully, it failed. If the problem had had to do with the geography of the human recipient and not his mail server, I think I would have broken down in tears.

Having established that--unbelievably--the problem as reported was true, and repeatable, I took a look at the sendmail.cf file. It looked fairly normal. In fact, it looked familiar.

I diffed it against the sendmail.cf in my home directory. It hadn't been altered--it was a sendmail.cf I had written. And I was fairly certain I hadn't enabled the "FAIL_MAIL_OVER_500_MILES" option. At a loss, I telnetted into the SMTP port. The server happily responded with a SunOS sendmail banner.

Wait a minute... a SunOS sendmail banner? At the time, Sun was still shipping Sendmail 5 with its operating system, even though Sendmail 8 was fairly mature. Being a good system administrator, I had standardized on Sendmail 8. And also being a good system administrator, I had written a sendmail.cf that used the nice long self-documenting option and variable names available in Sendmail 8 rather than the cryptic punctuation-mark codes that had been used in Sendmail 5.

The pieces fell into place, all at once, and I again choked on the dregs of my now-cold latte. When the consultant had "patched the server," he had apparently upgraded the version of SunOS, and in so doing downgraded Sendmail. The upgrade helpfully left the sendmail.cf alone, even though it was now the wrong version.

It so happens that Sendmail 5--at least, the version that Sun shipped, which had some tweaks--could deal with the Sendmail 8 sendmail.cf, as most of the rules had at that point remained unaltered. But the new long configuration options--those it saw as junk, and skipped. And the sendmail binary had no defaults compiled in for most of these, so, finding no suitable settings in the sendmail.cf file, they were set to zero.

One of the settings that was set to zero was the timeout to connect to the remote SMTP server. Some experimentation established that on this particular machine with its typical load, a zero timeout would abort a connect call in slightly over three milliseconds.

An odd feature of our campus network at the time was that it was 100% switched. An outgoing packet wouldn't incur a router delay until hitting the POP and reaching a router on the far side. So time to connect to a lightly-loaded remote host on a nearby network would actually largely be governed by the speed of light distance to the destination rather than by incidental router delays.

Feeling slightly giddy, I typed into my shell:

$ units
1311 units, 63 prefixes

You have: 3 millilightseconds
You want: miles

  • 558.84719

/ 0.0017893979

"500 miles, or a little bit more."


Oh, the ancient times when email worked over local SMTP servers physically close to you...

It reminds me a lot of the story about the engineer who had to fix a car that would break down whenever the owner bought vanilla ice cream instead of chocolate ice cream :)


Those are fun problems because you logically conclude, this is impossible, the user is an idiot. Those are the most surprising bugs of all. Usually it's still not exactly the way the user described, but still you end up with a paradox to solve.

Andrei Ellman

I find it hard to read the IAQ. It's like, "Oh hey, I didn't know that... What's this [a]... You bastard. >:("

Chris Katko

How do I declare an array of N pointers to functions returning pointers to functions returning pointers to characters?


WTF. Did a C programmer accidentally a LISP?


Lisp would have required spaces. >:(

Chris Katko

C is like 90% more efficient than C. ;)


I don't believe these didn't get posted here:




Neil Roy

And that is why I am afraid to show anyone my code! ;)

Chris Katko

I just realized now I made a typo.. like a month later.

I was joking that C is like 90% more efficient than LISP because it doesn't require spaces.

OICW said:

[xkcd comics]

At this point I feel like xkcd was an elaborate hoax. It has since gone to shit, it seems, and looking back on the use of women and the pushing of Feminist ideals makes me feel betrayed about the entire ordeal. :-/

I was joking that C is like 90% more efficient than LISP because it doesn't require spaces.

Only somebody that didn't know Lisp (and/or C) could imagine that funny. :(

Chris Katko

Yeah, but linking it directly in reply to your preceding comment was the joke.


Regarding Lisp, do you know why programming courses on American universities hand out List tests on laminated paper?

Because they don't want to reprint the test everytime student pukes on it after seeing 30 opening left brackets at the beginning of the question code.

Dizzy Egg

Not really a joke, but a few years back I was working on a music server for my boss, and he asked why I had to keep uploading to the processor - I explained I was fixing bugs, to which he snapped, quite seriously, "can't you just write software without bugs in it?"

Always makes me smile ;D

Gideon Weems

Oh, man. This one got me:

The C Language IFQ said:

Section 6: Memory Allocation

6.1: Why doesn't this fragment work?

  char *answer
  printf("Type something:\n");
  printf("You typed \"%s\"\n", answer);

The semicolon after ``answer'' is missing.

Bruce Perry
bamccaig said:

the use of women and the pushing of Feminist ideals

For example?

I still enjoy xkcd often enough, and no one's perfect, right?


I'm not sure if I can find an example. It might have been a fluke. I haven't been reading it in a year or two. I recall going back months ago after not reading for a couple of years, reading 10 or so comics, thinking they were all stupid and off-topic (i.e., disinteresting and inconsistent), and stopped. It may just be they were out of context or I wasn't feeling it at the time... :-/ The most recent ones seem pretty OK, I guess. But still, it used to be you looked forward to every single comic. I don't think that's the case anymore.

Gideon Weems

Xkcd hasn't lost much of its edge over the years. Like South Park.

The author has always leaned just a bit on the sappy, wubby, boo boo side, though. I mean, the wimpy Superman Ⅱ knock-off gag was on the front page for how many years? You know the one: "Slow the rotation of the earth for a few more seconds with you" or something equally barf-worthy.

The normal strips are usually interesting, though, and there have been a number of entertaining data presentations in the vein of Our World in Data but with more pizazz.

Chris Katko

After 20 years, South Park has held up a thousand times better than Simpsons did (which only lasted season 3 through 8 as the "golden age"). My thing is, they've given us so much good stuff over these TWO DECADES that if they want to try new stuff (that kind of failed in execution) that's their thing. They're welcome to try it. They've been experimenting with season-wide arcs and the last season or two definitely failed at it because the per-episode jokes really suffered.

Just like Nine Inch Nails/Trent Reznor. So many albums lately have been "meh" beep boop beep "copy of a copy of acopy of a copy of acopy of a copy of opy of a copy of a". But at the same time, the guy has done so much great stuff, if he wants to make kids covers of katy perry songs for the rest of his life, he's given us more than any of us could expect or demand from a professional--he doesn't owe us anything.

Thread #616903. Printed from Allegro.cc