15 ms·
Why does man print “gimme gimme gimme” at 00:30?
- isp 9y agoDemonstration from https://unix.stackexchange.com/questions/405783/why-does-man-print-gimme-gimme-gimme-at-0030#comment725879_405784 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?
- marchenko 9y agoI 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.
- wiredearp 9y agoOne 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 https://www.youtube.com/watch?v=mUzQv71iVeU.
- deleted 9y ago[deleted]
- reificator 9y ago> This is probably the fewest bits needed to encode a widely-distributed earworm. someBODY
- Noughmad 9y agoI recently wrote a tool that worked on bodies of text in Rust. Had multiple instances of if let Some(body) = ...
- reificator 9y agoYou know that you could use Some(body)
- reificator 9y agoI'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.
- arkades 9y ago...once told me... Damn it, I can hear it in my head!
- holtalanm 9y agooh 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
- majewsky 9y agoCan someone explain this, please?
- Infinitesimus 9y agoIt is a reference to a song by Smash Mouth: https://youtu.be/L_jWHffIx5E https://youtu.be/L_jWHffIx5E (And now it'll be stuck my head for a week)
- reificator 9y agoAt 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 https://en.m.wikipedia.org/wiki/Earworm [2]: https://youtu.be/3wCK6INQcHs https://youtu.be/3wCK6INQcHs [3]: https://youtu.be/L_jWHffIx5E https://youtu.be/L_jWHffIx5E [4]: https://youtu.be/0Iqr0L4bUms https://youtu.be/0Iqr0L4bUms [5]: https://www.youtube.com/results?search_query=all+star+but https://www.youtube.com/results?search_query=all+star+but [6]: http://www.neilcic.com/mouthsounds/ http://www.neilcic.com/mouthsounds/ [7]: http://www.neilcic.com/mouthsilence/ http://www.neilcic.com/mouthsilence/ [8]: http://www.neilcic.com/mouthmoods/ http://www.neilcic.com/mouthmoods/
- Terretta 9y agoHash collision. Somebody (somebody) ooh somebody (somebody) Can anybody find me .... somebody to love? https://youtu.be/kijpcUv-b8M https://youtu.be/kijpcUv-b8M
- reificator 9y agoThat's why I used casing to differentiate
- Kliment 9y agoEven sticking to ABBA, "Waterloo!" is fewer bits and triggers an earworm just as well, but of course waterloo is not a man after midnight.
- marchenko 9y agoPart 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...
- chatmasta 9y agoHere's a list of some other Linux easter eggs: https://www.digitalocean.com/community/tutorials/top-10-linux-easter-eggs https://www.digitalocean.com/community/tutorials/top-10-linu...
- vadimberman 9y agoAs 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.
- interfixus 9y agoCompletely 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".
- bluesmoon 9y agoBenny 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.
- krisives 9y agoLiar. Your not an old fart our memories are garbage.
- jgrahamc 9y agoMe neither. I immediately thought "gimme, gimme, gimme" and "00:30 is after midnight" so clearly the answer is somehow Abba.
- nouveau0 9y agoIt'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)
- snvzz 9y agoThis is a bug and should be fixed.
- seba_dos1 9y agoAlready fixed: https://git.savannah.gnu.org/cgit/man-db.git/commit/?id=84bde8d8a9a357bd372793d25746ac6b49480525 https://git.savannah.gnu.org/cgit/man-db.git/commit/?id=84bd...
- krisives 9y agoThat was a fast hard fork... oh wait
- koolba 9y agoBarring an RFC or spec to code against, I'd say it's a feature that would need to be replicated.
- em3rgent0rdr 9y agoEaster 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.
- waffle_ss 9y agoHow 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?
- matt4077 9y agoNo 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.
- pm215 9y agoNote 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=84bde8d8a9a357bd372793d25746ac6b49480525 https://git.savannah.gnu.org/cgit/man-db.git/commit/?id=84bd... makes sure the easter egg doesn't affect real use cases.
- exikyut 9y ago1. 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?id=f498f1bad6cb5bd154f1a10cbdafad0aa159bfd3#n413 https://git.savannah.gnu.org/cgit/man-db.git/tree/src/man.c?...
- mjw1007 9y agoI 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).
- misnome 9y agoPerhaps 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!"
- mmjaa 9y agoThat 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.
- mercer 9y agoI'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 :).
- mmjaa 9y agoExpect: 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.. ;)
- zulln 9y agohttps://xkcd.com/1172/ https://xkcd.com/1172/
- emodendroket 9y agoAs described it only worked if you run it at exactly half-past midnight.
- ng12 9y ago
- dep_b 9y agoThis is what Rickrolls looked like before Rick Ashley recorded his first big hit.
- donatj 9y agoI’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.
- pdw 9y agoman-db is not a GNU utility. Their URL http://man-db.nongnu.org/ http://man-db.nongnu.org/ should be a clue :)
- Boxxed 9y agoWow. I bet you're really fun at parties.
- donatj 9y agoParties, yes. I’m a riot, lampshade on the head and what not. Scripting however I take very seriously.
- cyberpunk0 9y agoYou should take it less seriously. Life isn't that serious
- strictnein 9y agoScripting the execution of man?
- Omnius 9y agoYear'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."
- bdamm 9y agoAs 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.
- HarryHirsch 9y agoMy undergraduate advisor would say that each new user uncovers a new class of bugs.
- kochthesecond 9y agoWell, 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.
- nulagrithom 9y agoAh, 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.
- craigc 9y agoI 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.
- fhood 9y agoBUT 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!
- bluesmoon 9y agoThe 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.
- Simon_says 9y agoAren't all times after midnight?
- Crespyl 9y agoMidnight is not after midnight.
- aeorgnoieang 9y agoSure it is; the one before it.
- nouveau0 9y agoYes. But, they chose 00:30 because she says "Half past twelve" at the beginning of the song
- Simon_says 9y agoThat makes sense. I wasn't familiar with the song.
- fusiongyro 9y agoI 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...
- JadeNB 9y ago> throw out a random word as a hapax legomenon TIL a new phrase! https://en.wikipedia.org/wiki/Hapax_legomenon https://en.wikipedia.org/wiki/Hapax_legomenon
- gggvvh 9y agoAre you 5? Christ.
- ams6110 9y agoReally 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!"
- fusiongyro 9y agoTrue, but atrocity conveys something extra that 567231 does not. Or at least that's what the humans tell me.
- deleted 9y ago[deleted]
- ghamrick 9y agoI 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
- petdance 9y agoThere's having fun, and then there's violating the Principle of Least Astonishment. https://en.wikipedia.org/wiki/Principle_of_least_astonishment https://en.wikipedia.org/wiki/Principle_of_least_astonishmen...