Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Why does man print “gimme gimme gimme” at 00:30? (unix.stackexchange.com)
560 points by isp on Nov 21, 2017 | hide | past | favorite | 159 comments


I think people here need to lighten up. I know we are all programmers, and we are sometimes portrayed as snobby and entitled, but we don't have to live up to those stereotypes.

I understand it's frustrating when a tool you use is expected to work a certain way and it doesn't. I understand it's even more frustrating when the output could change depending on the time of day. That doesn't mean it is our place to gang up on an open source tool that is designed to make our lives easier.

I think we should be allowed to have some fun every once in a while, and this "gimme gimme gimme" easter egg is awesome.

It seems the maintainers didn't realize that this easter egg was affecting a command that was designed to have a predictable output so that is the real issue here. Just a simple bug. If this was output on some help screen or something like that then no one would be complaining.


The exit value is always 0 regardless of what's printed on stderr. If code parses stderr to determine error state instead of looking at the exit code, then it's doing unix wrong.


Yeah, but you may be parsing standard error regardless.


If evaluating stderr, the first step should be determining if a line is of a known format before treating it as an input.

I'm not sure how well that'd work due to the lack of buffering. But I wouldn't want to go anywhere near stderr in production code.


BUT IT IS 12:30 AT NIGHT, THE CLIENT WAS PROMISED DELIVERY OF THIS FEATURE TWO WEEKS AGO, AND I CAN"T FIGURE WHY TF STDERR KEEPS OUTPUTTING GIMME GIMME GIMME!


This is a great example of a time when you should go home, get some sleep, and everything will work in the morning :)


Sometimes your servers are set to UTC.


Grep source code buddy.


"we are sometimes portrayed as snobby and entitled"

Huh? That's not at all the stereotype I see associated with programmers. More like the opposite. In fact, a gag like this is much more in line with the stereotype I'm familiar with.


Exactly what I was thinking when I read the stackexchange post. This is just enforcing the stereotype that programmers can't be taken seriously ("bro culture"?).


I wouldn't accuse them of being "brogrammers" though either. This just sounds like an appreciation for obscure references, play on words, maybe a bit of mild mischief? Not at all what I picture when I hear "bro culture". I'd call it "nerd humour" maybe (being a nerd myself, I feel like I can get away with the insult)?


Maybe command line tools should have a --no-fun flag to disable all easter eggs. I'm only half kidding. It could be undocumented, but at least it gives you a way to ensure consistent output for tests if you stumble into a problem like this.


It could just check if the POSIX_ME_HARDER environment variable is defined. http://wiki.wlug.org.nz/POSIX_ME_HARDER


I just don't see a reason to modify important program functionality for the sake of a joke. There are so many other ways to show a sense of humor without doing that.


The obvious counter to this is to ask what software you've written that many of us use several times a day, every day, and that you refrained from adding any humour to.

Free software almost always has the 'this is provided as is' caveat, and offers access to the source for you to review to ensure it's fit for purpose, so the whole 'This did something I don't approve of' complaint is a bit weak.

Further, the 'important program functionality' may not apply in the case of running the program in an atypical way - that is, without parameters - at a certain time of day.


Indeed and those ways have way less chance of causing accidental issues later down the road.

Same deal with profanity, excessive vulgarity or calling out named persons, etc. in error messages.

It's just unprofessional and it can cause all sorts of unforeseen "upstream" issues.

(Even really surprising things like profane class names can cause issues because of things like reflection, etc.)


Year's ago i was coding a warehouse management system and in this edge case, that required a moon full and blood sacrifice to even have it occur i stuck some debug code/message that was only ever meant for me to try and figure out how it was happening.

5 years later i get a call. "We have a weird error message it says ... How did i even get here! This error is bad and you should feel bad."


As a used-to-be engineering manager for a group of engineers who didn't appreciate how often these "blood sacrifice" errors actually do occur in production, I fully appreciate the kind of "oops" feeling that comes when realizing that your obscure errors messages made it into production. Even something simple like "This has all gone terribly wrong. Call engineering." can make its way to the console of some "customer service" technician talking on the phone with an irate muggle working three companies away, and the error message triggered escalations at all three companies... you start to appreciate that maybe you should take your job seriously, and not make so many assumptions about who is using your software.


Ah, but there's something to be said for the effectiveness of these weird error messages. Typically the conversation would go: "We got an error come fix it", with no further details. It can be really hard to track down from there.

I experienced something similar when troubleshooting some Chrome issues across a Citrix XenApp farm. It was so incredibly useful to be able to ask the users "Did you get a dinosaur or a He's Dead Jim?" One was a connection issue I could disregard, the other was the memory management problem I was trying to track down.

Sometimes I wonder if we should make all our cryptic, developer-only errors absurd and memorable. I've never had a user tell me anything like "java.lang.OutOfMemoryError: Java heap space error". "The lemur jumped the shark again" gets their attention.


A unique error code would accomplish the same thing, but I get your point.

This happens to me all the time with the software project I work on, which is enormous and has been around for a long, long time: the error messages usually aren't very useful. Neither is the log. In fact, the log is often little more than all the debug messages created during development.


A unique error code will accomplish little. It will serve mostly to bewilder and frustrate you after discovering many users can't (or won't) remember so much as two numbers.

What I'm saying is take the unique error code and add an absurd/funny phrase to the number. It's easier for people to remember an odd mental image than it is ERROR CODE -42.


I could see a use for an error code generator that would come up with memorable nonsense sentences sort of like imgur's urls. "Error : Green Exemplary Huemul" rather than "Error : -42"


I think you just gave me an idea for a weekend project :)


You just made my day!


Well, most product managers I've dealt with barely wants to think about error cases and error handing. They mostly care about getting the current feature out, and don't care much for the graceful handling of every possible scenario under the moon.


I’m a big fan of calling non-software people muggles :)


My undergraduate advisor would say that each new user uncovers a new class of bugs.


As an old fart who grew up with 1970s and 1980s music, I didn't even have to read the Stackexchange article to know the answer.


Completely off on a tangent: A good friend of mine, getting on in years, just this weekend told me a story about the time he met one half of the composer-team behind that song, Benny Andersson of ABBA, at the absolute height of his fame somewhere in the mid to late seventies. Pleasant and low-key, almost self-effacing, superstardom or not. Someone tried to pull a fast one on him, and my friend, in a professional capacity, had to intercede. "Nah, let it be", said Benny in a very quiet Swedish way, "I can probably afford it".


Benny owns the Rival Hotel in Stockholm. They mainly play ABBA music in the lounge. I spoke at the Stockholm webperf meetup a few years ago and the organisers put me up at this hotel (side story about how flying from Munich to Boston via a night in Stockholm saved me $400 in airfare). It was a really nice, modern hotel, very comfortable, and stylish, and of course, for a 70s/80s kid, the music was great.


Me neither. I immediately thought "gimme, gimme, gimme" and "00:30 is after midnight" so clearly the answer is somehow Abba.


It's 00:30 and not 00:01 for example because she says "Half past twelve" at the beginning of the song :) (Also, it sounds like Half-assed whale :D)


My mind went to the Black Flag song, so the reference was lost on me.


Same here. "Don't ask what for..."

And I think we have a test case for probing programmer cultural heritage.



Demonstration from https://unix.stackexchange.com/questions/405783/why-does-man...

    $ faketime '00:29:00' man
    What manual page do you want?

    $ faketime '00:30:00' man
    gimme gimme gimme
    What manual page do you want?


Perhaps it makes me a killjoy, but generally if I see things like this in our codebase I think "Great! I get to remove code today!"


Programmer humor is really cringey. I fully expect to be downvoted for this comment (outside of our cringey humor, we tend to be rather humorless and thin skinned), but so be it.


I have to admit, I would never add such a "feature".

But I think it's funny.

Also sad that this kind of culture is dying with the increasing professionalization of the industry.

I often feel a bit like a pioneer, doing this stuff at home when I was young, having fun and later making a living with it.

Now I meet more and more people who just do it because it pays well.

But what can I say, it still pays to have a passion for your job :)


I would have added this "feature" with a mechanism to detect if it's running inside a TTY. That way, automated tests, pipes or scripts that parse the output wouldn't have this problem.

But seriously, who uses a documentation tool for automated tests every minute? That use case is just insane and out of the scope of man IMHO.


> But seriously, who uses a documentation tool for automated tests every minute?

As someone with a long history of abusing tools and side-effects, I'll defend that. The whole point of the Unix philosophy is small, useful tools that can be composited in ways the creator never anticipated. If it works for them, great. (At least until it isn't.)

But then I also pry with my pocketknife, and you probably don't want to know how about using a mill engine as a come-along...


> But seriously, who uses a documentation tool for automated tests every minute? That use case is just insane and out of the scope of man IMHO.

It seems that it's not being triggered every minute: https://unix.stackexchange.com/questions/405783/why-does-man... . (In fact, I can't find, even in the pre-editing version of the post, any reference to it happening every minute; but probably I'm just missing it.)


They also used it without specifying a page.


There was still a true bug because "gimme gimme gimme" appeared when calling "man -w", and that's the command they were using. But I still don't understand how a test could break because of this.


I don't think it is the professionalization of the industry that is making this culture feel less alive, quite the opposite. A lot of the "fun" of such features, or trivia, of past times is that it reflects the work that went into those projects. Today anyone can code up a small script with a clever name and adore it with funny messages and an edgy readme. The meaning of it all, the hard work, the culture and team behind it, the contrast between being serious and funny, and often the funny part itself is lost. Left is mostly a sort joking cargo cult type culture that might even be a hindrance to people trying to make new achievements that will potentially create new cultures, jokes and all.


"Humorless and thin skinned" is an ironic accusation to throw in a comment consisting entirely of bashing someone else's attempt at humour and whining about downvotes.


>a comment consisting entirely of bashing someone else's attempt at humour

Actually, I was being self-critical. Self-awareness is a good thing.

>whining about downvotes

I have no issue with receiving downvotes in this case. "So be it" is a pretty simple phrase. Maybe you're projecting.

This is the thin skinned backlash I expected. Oh well.


I would suggest the backlash would likely be due to the wording of your original comment.

you stated that "Programmer humor is really cringey."

Cringey is generally a negative sentiment and saying "is" implies that this negative sentiment is a generally accepted fact.

I'd suggest that humour is almost entirely subjective, and therefore attempting to suggest that any form of humour is objectively bad makes no real sense.

If you had said "I find programmer humor to be really cringey" you may well have received fewer negative reactions.


Reminder of what I wrote:

>outside of __our__ cringey humor, __we__ tend to be rather humorless and thin skinned

I appreciate you being constructive, but I thought the pronouns I used made it sufficiently clear that I consider myself as a part of this culture (and thus subject to the characterizations I made about programmer humor). Anyway, I do not mind the negative reactions, even though I may reply in disagreement.


Saying that you're part of the culture doesn't really remove the suggested universal negative, it just implies that you feel that you are part of that demographic.

The point I was going for was that I'd suggest that all humor is so subjective that it's impossible for a universal negative to apply.

In the same way that beauty is in the eye of the beholder, humour is in the ear of the listener.


Prefixing everything with "I think" or "I find it to be" is unreasonable. Of course it's subjective, and of course if someone says something is cringey, that's an opinion and it goes without saying.

Being a part of the group I was characterizing means my comment was not from some perceived position of superiority.

Anyway, I knew what I was getting myself into with that post.


well it's a view of the world that adding two words to a sentence is unreasonable, but (and this is just a suggestion) I think you'll find that you get less negative feedback if you make it clear when something is an opinion rather than a statement of fact.


My downvote is not because of our collective sense of humor, but because I deny the notion of millions of people sharing a certain collective sense of humor.


Subcultures are a real thing.

>I deny the notion of millions of people sharing a certain collective sense of humor.

Comedy shows appeal to more than a handful of people. Most humor only works collectively.


> I deny the notion of millions of people sharing a certain collective sense of humor

You don't think there's any such thing as nerd culture?


> You don't think there's any such thing as nerd culture?

Nothing is ever black or white. I'm most certainly a nerd, but that doesn't mean I have the same sense of humor as every other nerd. Think of it like inheritance vs composition. Just because I'm a nerd, doesn't mean I inherit everything other nerds have. I only have some components. And while I appreciate Sci-Fi movies, I don't participate in wars between Star Wars and Star Trek (I think Stargate SG1 was better anyway).


> that doesn't mean I have the same sense of humor as every other nerd

Of course not. Think statistically significant rather than about absolutes.


There is plenty of cringey non-programmer humor.


Of course!

I merely believe that the kind of humor associated with any given group or subculture has its own characteristics (which often reflect the values & norms of the group); and I believe "cringeyness" is characteristic of programmer humor.

Overlaps are possible.

I would argue that I didn't make an especially bold proposition when I said programmer humor was cringey. I knew some would construe it as a verbal application of negative space, as if implying all other humor was strictly superior; but this is not the case.


That would be an appropriate response if you're reviewing newly-checked in code from junior developers, but this has been there for years and if you remove it, you're probably going to break things downstream .. there'd literally be nobody there to hear your prayer.


I'm curious... how would you imagine this might break things downstream?

FWIW I love this kind of stuff and if properly documented would rather work around it than remove it, but nobody relies on my code so what do I know :).


Expect: a tool (from tcl/tk) used to write tests, whether we like it or not.

Expect that "gimme gimme gimme" is a cheap way to determine if the tests are running after midnight, nor not. If so, do more extensive tests; if not, do less burdensome tests.

I know - its lame. But, you cannot predict these things.

If you don't want people to use your Easter egg for something, don't include it in the release.. ;)


As described it only worked if you run it at exactly half-past midnight.



Because dozens of junior engineers have encountered this error before. However, instead of posting on SE about it they added a branch to the test case if it was running after midnight, and at least one of them added an assert to verify the output was "gimme gimme gimme".


I think if you're relying on the presence of an easter-egg in something you're using in production, you probably have bigger problems.


Don't forget the first rule of SW development. If a change results in user programs breaking, it's a bug. We never EVER blame the user programs.

/s

https://lkml.org/lkml/2012/12/23/75


I might suggest that man and the kernel have a different relationship to user programs.


There is no reason the philosophy can't be the same.


No, but there also isn't any particular reason to think it should be.



I really worry when people voice glee about removing code, in particular code they themselves have not put in and may not know the full history off.

It suggests to me that the person is perhaps not the best curator of the code base under their custody.


Removing code is awesome and makes me happy. Sometimes it's hard to know for certain if it's OK to remove, but that illustrates the point.

BTW I like to remove my own code too, assuming it's become obsolete or replaced. My joy in having a clean and performant present-day product trumps any feelings about past efforts and old code.


From context it seemed that the kind of code we're talking about obviously served no real purpose. Most codebases where everyone is afraid to delete anything are unmanageable messes only comprehensible to people who have been working on them for years.


We have invented that really useful thing named version control to know about the history of code.

If yours has commit messages not good enough to properly understand its history, fix that.


Yeah, I have never really felt like it was a good idea to commit stuff like that, or comments with profanity or jokes, or any of that stuff. Who wants to be in the position of explaining that if it breaks or your company gets sued or something?


At the very least it's neither a hotpocket ad, doesn't load an entire dictionary to show the definition of a single word or contains a high resolution picture of guy fiery.


I had a coworker who would often just throw out a random word as a hapax legomenon if he thought an edge case was unreachable, to make it easy to search the source code. One day we got a call from an analyst: "The program says 'atrocity' and I don't know what I did wrong!"

He also thought it would be funny in another edge case to have the program print out "SB no es bueno." I thought it was funny too...


Really not much different from using a unique "error" number, and certainly easier to communicate without transposition or other unintentional errors:

Compare:

"The program says 'atrocity' and I don't know what I did wrong!"

vs.

"The program says 'error 567231' and I don't know what I did wrong!"


True, but atrocity conveys something extra that 567231 does not. Or at least that's what the humans tell me.


> throw out a random word as a hapax legomenon

TIL a new phrase!

https://en.wikipedia.org/wiki/Hapax_legomenon


Note in particular the comment from the man-db maintainer: "Oops! It was never meant to affect non-error cases" -- and this upstream commit https://git.savannah.gnu.org/cgit/man-db.git/commit/?id=84bd... makes sure the easter egg doesn't affect real use cases.


1. I really really like how they kept the easter egg in by figuring out how to permanently sweep it out of the way. I can imagine some environments that would stumble on something like this and tensely rm -rf the whole thing with forced smiles.

2. "print_where" is set by the option parsing code when it sees "-w". https://git.savannah.gnu.org/cgit/man-db.git/tree/src/man.c?...


I think the impressive thing here is how quickly both upstream and the distros have fixed this once the problem was reported (even though the report was via an unofficial channel).


I’m beyond irritated by the presence of an output breaking easteregg in a GNU utility under standard usage. I should be able to depend on my outputs being repeatable.

Honestly, the fact that this got into the codebase makes me question the code review process of GNU and what else is potentially hiding in there.


Like the OP and maintainer said, no one ran into this for 6 years—that's a darn long time in the lifetime of a program. And, as the maintainer said, "it was never meant to affect non-error cases." He pushed a change to fix that [1] and this won't break any builds in the future.

Personally, I really appreciate that a little whimsy was added into a terminal command that's literally built for reading manuals for command-line programs. IMO, this was a net-positive for humanity.

[1]: https://git.savannah.gnu.org/cgit/man-db.git/commit/?id=84bd...



This makes me sad.


It's probably more correct to say "Nobody complained in a public forum for 6 years."


I understand what you are saying, but keep in mind, you are also bitching about software you didn't pay for, probably didn't spend time coding, yet get to use for free that probably made your career and livelihood, AND you get the source code for.

Maybe if you took a step back, you wouldn't feel so irritated. You could be stuck working on an AS400.


Not that I think it has much relevance as an argument, but my employer pays for Ubuntu. Which in turn seems to be this developers employer. Presumably this is part of his job there, since the commit was made during the day.

As I said, not that I think it matters. But "no one pays for open source" frequently just isn't correct these days.


>But "no one pays for open source" frequently just isn't correct these days.

I understand it's paid for one way or the other, but to use it, it is free. I'm comparing it to before, if you wanted to try a Microsoft product or something, you had to buy it and once you broke the seal, you owned it* (or the little plastic disk and box).

Also, if the OP was a maintainer, I can see where he would get frustrated. I assume he was just some overzealous user.

Anyway, the fact that open source even exists is probably the best thing to happen to computing since it's invention (and I'm not even much of an open source user).

*No refunds.


0_0

I remember the days of batch creating UPC barcodes on an AS400


Seriously, you expect a command meant for users to navigate manuals to be a dependable part of a pipeline?! (it was being run once a minute at that!)

People need to realize this isn't some mission-critical tool, this is a manual reader.


Is it not part of a standard set of utilities with standard, expected behavior? You can't really complain if you create some public API and people use it in a way you did not entirely anticipate.


> The string "gimme gimme gimme" can be found in RHEL, OpenSUSE, Fedora, Debian and probably more, so it's not really distro specific. You can grep your man binary to verify.

Technically the behavior is standard, for some definition of standard.


> I should be able to depend on my outputs being repeatable.

The output of man is repeatable, and you may depend on that.

Regardless of TZ, dom, dow, etc -- if it's 00:30 local you get this (additional) output. If it's not, you don't.


I know it can be tedious, but if you don't trust a piece of free software you have the opportunity to analyze its source code and decide for yourself if it's ok for your use case.

Also, it's debatable whether `man -w` without further arguments is standard usage, since it's clearly an incomplete command (that should return nonzero, but that's another story).


Oh please. It's man with no parameters for one minute and the exit code is perfectly fine.

There's humor all over every technical discipline. Lighten up.

The question isn't believable. Your position is hardly believable.


Wow. I bet you're really fun at parties.


Parties, yes. I’m a riot, lampshade on the head and what not.

Scripting however I take very seriously.


Scripting the execution of man?


That makes them sound like some sort of supervillain.


Sure... Like Lars von Trier wrote Dancer in the Dark.


Being "beyond irritated" by a harmless easter egg in a developer facing tool which hasn't even been found in 6 years, is some pretty serious pedantry. Maybe the kind of pedantry you see in people who work with safety related embedded software like aircrafts or automobile software.

Unless you're someone who write that kind of embedded software, and depends on the stderr output of man to control some critical parts of that system (which would be insane) your level of pedantry is unwarranted.

Man is an UI for people. Complaining about its output is like complaining about the GUI of a PDF reader. Sure, you could take snapshots of it, parse it in your system, and be slightly annoyed once by a small easter egg, but it would be kind of stupid because that's not what it was build for.


I don't think it is that irritating as such. But it's the principle. It much easier to convince people that they should be prudent than at which moments jokes are appropriate. I recently found out that some mplayer developer thought it was funny to include "Core dumped ;)" as the last line when you dump a stream. I'm sure that it was funny to them, but less so when you are just trying to figure out if it works after battling deceptive copyright protection, and learning all the settings of different tools, for a couple of hours. Now try and convince the developers that this, or other jokes, isn't funny.

> Man is an UI for people.

Even the man page includes a couple of examples where it isn't.


You should take it less seriously. Life isn't that serious


Wow, great comeback


Come on he sounds like an aspie kid hahaha!


man-db is not a GNU utility. Their URL http://man-db.nongnu.org/ should be a clue :)


It was a mistake, has been fixed and wasn't causing problems for six years.


You're welcome to write your own version of coreutils, then, if it's that a big deal for you (you may want to take the opportunity to raise the size of buffers everywhere to fit your machines resources realistically).


That's why you use return codes not stout?!!?!


There's having fun, and then there's violating the Principle of Least Astonishment. https://en.wikipedia.org/wiki/Principle_of_least_astonishmen...


Here's a list of some other Linux easter eggs: https://www.digitalocean.com/community/tutorials/top-10-linu...


This is what Rickrolls looked like before Rick Ashley recorded his first big hit.


I bet it is a reference to the ABBA song "Gimme Gimme Gimme (a man after midnight)"

Edit: I see that is the explanation given on StackOverflow. This is probably the fewest bits needed to encode a widely-distributed earworm.


> This is probably the fewest bits needed to encode a widely-distributed earworm.

someBODY


I recently wrote a tool that worked on bodies of text in Rust. Had multiple instances of

    if let Some(body) = ...


I'm working on a game engine in Rust in my spare time, I'll probably end up with that same code in the physics side.


You know that you could use Some(body)


...once told me...

Damn it, I can hear it in my head!


oh god, it won't stop playing in my head. I know there's a pause button somewhere. reaches for hammer see you in a few hours. thwack


Can someone explain this, please?


At the risk of being a serious weirdo and way overexplaining: gladly!

An earworm[1] is a (part of a) song that gets stuck in your head.

The GP was wondering if "gimmie gimmie gimmie"[2] was the fewest bytes required to put one in someone's head.

I shaved 12 bytes off by using All-Star[3] by Smash Mouth. It was a very popular song in its day, it's newer than ABBA, and lately it's become a meme[4] of its own[5], partly on the back of being featured in Shrek. It's even the basis for a trilogy[6] of mash-up[7] albums[8].

[1]: https://en.m.wikipedia.org/wiki/Earworm

[2]: https://youtu.be/3wCK6INQcHs

[3]: https://youtu.be/L_jWHffIx5E

[4]: https://youtu.be/0Iqr0L4bUms

[5]: https://www.youtube.com/results?search_query=all+star+but

[6]: http://www.neilcic.com/mouthsounds/

[7]: http://www.neilcic.com/mouthsilence/

[8]: http://www.neilcic.com/mouthmoods/


Hash collision.

    Somebody (somebody) ooh somebody (somebody) 
    Can anybody find me .... somebody to love?
https://youtu.be/kijpcUv-b8M


That's why I used casing to differentiate


It is a reference to a song by Smash Mouth:

https://youtu.be/L_jWHffIx5E

(And now it'll be stuck my head for a week)


Even sticking to ABBA, "Waterloo!" is fewer bits and triggers an earworm just as well, but of course waterloo is not a man after midnight.


Part of the challenge is finding some plausible reason to have the string come up in the context of operating a Unix system.

Maybe Rihanna will come out with a song called "Grep". Heck, maybe the Black-Eyed Peas already did...


One could speculate further and propose that it refers to Narada Michael Walden's "Gimme Gimme Gimme" from 1985: https://www.youtube.com/watch?v=mUzQv71iVeU.


I worked on an (now obscure) OS named CTOS back in the 80's. In an error message file, the error message that would be delivered in the unlikely event that the correct error message could not be found was "Pressed Rat and Warthog closed down their shop". This was an even more obscure reference to a Cream song that Ginger Baker sang lead on


Aren't all times after midnight?


Yes. But, they chose 00:30 because she says "Half past twelve" at the beginning of the song


That makes sense. I wasn't familiar with the song.


Midnight is not after midnight.


Sure it is; the one before it.


This is a bug and should be fixed.


Easter eggs remind us we're human and bring us joy when we least suspect and might need it the most.

Obviously don't want easter eggs in things like security code.


There are 1000 packages on my Ubuntu. Imagine each one of those having an easter egg on a random day of the year.

Each one by itself maybe is cute and "makes you feel human", but not the aggregate behavior.


Clearly, we need a standard --noeaster flag. ;)


maybe could simply detect is running inside a displayed shell terminal.


How much joy do you think the SO questioner had when their CI was breaking at (seemingly) random times of the day due to this idiotic flourish?


No need to speculate:

> @MarnanelThurman No problem, at least there was some fun ;-)

So I'd say the answer to your question is: "some". Some being more than none, I'm almost tempted to think they enjoyed this little episode.

You'd also have to add the joy of all the people encountering this. Since it's somewhat likely that someone typing "man" after midnight and forgetting the parameter is somewhat frustrated, I'd venture a guess and say this easter egg is a net positive for humanity. Since happy people working after midnight are better than unhappy people working after midnight, I'd even go so far as to say that it improves productivity. And productivity is my professionalism.


It's extremely common for CI to break for no good reason. My bet is that they launched their suite again and only bothered mentioning it because how unexpected the fail was.


I personally like to stumble on extraordinarily stupid bugs. Bonus points, if the author works with us (or is myself), we get to laugh at his expense forever after.


About as much fun as they had using free software they did not pay for of which they were free to browse the source code to their hearts content.


So you're saying that free software is not reliable and you can't have any sort of expectations from it, so it shouldn't be used for "serious business" (enterprise, government, ...)


Yes, I believe that's exactly what they're saying.


Their CI script is not adequate to deal with the standard output of a man after midnight.


The one who was working at 00:30? Go to sleep dude!


Only if he didn’t get laid enough.


It can be fixed without getting rid of the easter egg (which is exactly what was done: https://git.savannah.gnu.org/cgit/man-db.git/commit/?id=84bd...).


I was once tasked with fixing a bug around an easter egg - but it was because the easter egg stopped working.

Search for more cowbell (in a search field that's geared towards finding installs of an app), get a gif with more cowbell.

Sometimes, it's the little things that matter, that make you smile when you're in the middle of a crisis. I think the world needs more of these instead of less.



That was a fast hard fork... oh wait


Barring an RFC or spec to code against, I'd say it's a feature that would need to be replicated.


It's an important feature and should be documented.

There's probably someone somewhere using this as part of a mission-critical timing proceedure.


Or a feature that needs adding to the specification ;)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: