Is This the Death of the Easter Egg?
An anonymous reader writes: The BBC reports that more and more companies are cracking down on the practice of hiding harmless snippets of code in their products. Known as "Easter eggs," they can be anything from the names of the developers, to pictures, to games like pinball, to a flight simulator. Is this simply professionalism, or is it stifling programmers' quirky, playful side? (Have you created any Easter eggs yourself? If so, what did they do?)
They can try all they want. There's still going to be easter eggs.
Happy Easter!
let's be real, man.
Put yourself in a project manager's shoes. What would you say if one of your programmers was working on a cool Easter Egg instead of being productive and working on the actual product? I wouldn't want to be the project manager who had to tell higher management that the product will be late but have some cool Easter Eggs.
I want to think this is unintentional, but it could go either way.
PlanetVulkan.com
Just got through boiling a couple of dozen, and now we're going to decorate them. Come tomorrow we'll be hiding them all over the yard. Wanna help look for them?
I once worked on a government project codenamed "Bullfrog" back when I worked at Rockwell-Collins. I won't go into too much details (we were told that it was "sensitive" but not classified), but I'll just mention that part of the project involved a radio turner that could scan through frequencies. One of my tasks was to implement the frequency sweeper, which was supposed to have a dot that would show what frequency was currently being scanned. I also as part of a different task had to implement a subwindow that could be opened or closed, which showed snapshots of the past several sweeps. The easter egg would occur if you clicked on the open/close button for the snapshot window precisely 42 times: the dot would change into a hopping frog animation ;)
Nothing huge, but nothing evil either, and something that was easy to implement and easy to sneak into the code unnoticed.
Trump's plan to get rid of Mueller appears to be 'be so guilty of so many things that Mueller works himself to death.'
At times struggling to give adequate names to local functions, I once named one
void $(that_asshole)_does_not_exist();
$that_asshole being one particularly unhelpful idiot because of whom an otherwise very productive period of employment came to a premature end.
I once managed a department website - back in the mid 90s - and anytime you added someone named Fred to the administrative directory, it set their photo to Fred Sanford and started playing the theme to Sanford & Son.
Mid 90s PHP was fun...
Easter eggs were "par for the course" back in the day. It was a way for us to blow off some steam for the very long crunch. i.e. Our physics guy added a machine easter egg.
Context: The high score screen only allowed N characters. My last name of course had N+1 characters so I made the code detect it and append the last character. :-)
Harmless, but fun.
Years later, the younger brother of my best friend was doing QA for the company and was testing a port. He came across this easter egg and told his older brother that "I had hacked the game!"
He didn't realize I had worked on the original game and _wrote_ that easter egg. :-)
Easter Eggs, when they are small cosmetic things, are harmless.
The unstated assumption is that you are still delivering a good product on time.
What's the oldest known form? I'll start with the HP 3314A Function Generator.
"A person is smart. People are dumb, panicky dangerous animals and you know it." - K
We include "easter eggs" in our games, but never anything that we kept secret from the team. The practice of not crediting developers ended in the games industry ages ago; games companies still like easter eggs, but they're usually planned features inserted for the hardcore fans, not something done by bored coders. I've noticed that LDs and artists hide easter eggs a little more often since it's easier for them to get away with it (and causes fewer problems).
A few years ago I wrote a package to help a fellow managing a boatyard. Put an Easter Egg in there. There are 3 dates affecting a boat that comes into the yard on one of the screens. Haul date (when it got there), Maybe date (when it might relaunch) and Launch date (when it actually relaunched). If you click on the 'L' in the Launch date prompt, a betting pool pops up to allow folks to bet on the number of days between Maybe and Launch dates. Yard owner I wrote the package for loved the idea.
While it was a real pain to get to (in Excel I think), and I never tried it, I thought it was a cool Idea and a break from the stick up the rear attitude they showed at the time.
http://www.gamesfaq.com/ has a large list of eggs one can find located with the game itself.
I once wrote a program with an animal as image in the spash screen. When the program took longer than expected to start up (there were some network connections being established), when you pressed the ctrl-alt, the animal yawned ...
Does hiding some ASCII art and the names of the developers in the ROM of a communication ASIC count?
Or at least one can only hope
If you enter "about device" and click on one of the listings 7 times you will then have a developers mode as an option in the settings. - at about the third click it does start a count down of how many clicks are left.
The closest I came to an Easter Egg was putting the string "EREIAMJH" in code some place. I don't recall exactly. Perhaps it was off the end of the simple help text in a CLI app or something. There were a few times I'd stick that in code. It'd only be visible to somebody running strings on the code or something. It's very few bytes. No additional execution is involved. It's a Brazil reference in case you're wondering.
For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
I'm guessing they are referring unauthorized Easter eggs?
Since it was my understanding that the original Easter eggs used purposefully to sidestep the code registration process. Since software patents only required the first X number of lines of code to be submitted. As such they assured that the first X lines were worthless Easter egg code. Which if it hasn't been outlawed, in my opinion should be.
Glad to see that management has all the real problems solved so they can worry about nonsense crap like easter eggs.
Hi -
dBASE IV 1.0 had a "who" command where if you set the system date to 01/02/2034 (1234) and typed the command: who you would see a screenful of developer names.
In version 1.1 it simply became a secret command and did not need the date to be set. As a result, if anyone was running code that contained a variable named "who" it would often crash the code.
TWR
There's a corporate website I worked on that (still, years later) sets a cookie named "Flavor" with a value of "chocolateyChip." It passed code review without objection, so why not? Things like that are harmless and I don't really think they're unprofessional. A lot of companies could probably stand to lighten up a little.
Thanks to the War on Drugs, it's easier to buy meth than it is to buy cold medicine!
... then you haven't hidden it well enough.
Real Programmers' Easter eggs can undergo code inspections without being noticed by any of the other developers. (Do it well enough and you might get talent-scouted by the NSA! ;))
I don't care if it's 90,000 hectares. That lake was not my doing.
I created a easter egg in a piece of software i wrote for a client after they hired me to fix a backend problem. It causes a pie symbol to appear on their webpage and when you click on it and enter in some special key strokes it allows entry into the system by passing their 'Gatekeeper' authentication system. Problem is now I'm on the run and the FBI is hunting me.
Question comes down to, "Do you have a working environment where the Team can work together or is it going to be micro-managed?"
Key is proper management and support is needed. If it is done correctly everyone wins. When done the wrong way you will find your goals are met but at a future cost.
So should you allow or deny Easter Eggs in projects? Key is you work with them in a positive manner they will add a little item which if done correctly everyone can enjoy. When done incorrectly and deny people to do any mini-project like this, you may find people deliver what you request but do not go the extra mile.
So let them add an Easter Egg or two in the code. Just make sure it is properly tested and vented for Security and other issues. Also it should be a little project which all can participate. Though it should not be a project of any magnitude.
How you work with your team will be how they work with you.
Easter eggs add unnecessary code and that code could potentially increase the attack surface and add new attack vectors to a software product. Unauthorized easter eggs are a thing of the past and should stay that way. There are quite a few easter eggs in something as popular as Facebook or Google but these are obviously done with explicit permission.
I wouldn't want my car to have the initials of its makers written all over the car body. And I doubt anybody buying software products wants it to have unnecessary security risks.
It's called taking pride in what you do and having the passion to do it. When dumb shits in management crack down on these kinds of things it's time to find another company to work for.
Harrison's Postulate - "For every action there is an equal and opposite criticism"
"Trusted computing" anyone?
If you feed it a -m command line switch, one of my applications informs you that Martian Mode is not yet implemented.
Lame, huh?
...laura
I don't put "real" Easter Eggs in my code, the kind that the end user will see. I do sometimes leave little notes or joking comments in my code in case someone else comes along. It doesn't affect the end product, but it's a way to blow off steam and maybe make the next developer who looks at the code smile. Seems like harmless fun.
Dev's are even putting ASCII art easter eggs in HTML. This is the easter egg hidden in the free-to-play pay-to-win Warframe MMO website.
Posting as a pic: http://i.imgur.com/eJz6qbd.png
Since /.'s ecode completely broken. e.g.
Such foolishness is not becoming a company or corporation. It shows only one thing - immaturity among programmers.
My test cases almost always have either personalized or joke data. But I make sure to keep it cleanm
That product had a few Easter eggs, a picture of the dev team in a dinner party that could be access by typing a correct sequence in the about box, also in a couple of releases, on Christmas a Santa's hat would appear on one of the icons (we had to remove that one, since it was perceived politically incorrect). Even one version that never got released, had a simulation function for a business process where work items moving through the process diagram would be rendered as Lemmings, with music and everything.
Only twice that I can recall have I put in what I would consider true Easter Eggs. The first one was in a program I wrote for the TI-86 graphing calculator that would plot on a world map the exact location of latitude and longitude coordinates entered by the user. There was an Easter Egg where entering a specific combination of button presses on the map screen would make the program plot the coordinates of my hometown that I lived in at the time.
The second Easter Egg was in a very quick Visual Basic program I wrote where you could pop virtual bubble wrap by clicking on the bubbles. It had an option to "tear off a new sheet" whenever all the bubbles had been popped. The Easter Egg is triggered after popping and tearing off a ridiculously high number of sheets consecutively, at which point a message box would appear suggesting the user may wish to seek professional help for their severe stress.
If I were a manager I would be ecstatic that a developer cared enough to attach something so personal to a project. It speaks to a higher level of effort across the whole system, over someone who is just implementing feature points.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
My new music player (SubFire - a player for Subsonic servers) has an easter egg in it, but only because i don't have time to give it the care it would need to actually make it a "useful" feature to anybody but me. Triple-clicking in the copyright footer will bring up a search box, and that can only happen on the Chrome version.
Basically, I needed a quick search to get to song titles, for my own purposes, but if I were to properly implement search, it would need to be very different...I know what it should be, and I don't have time to build that. So I now have one undocumented feature that does what I want the way I want for the purpose I need it for.
"But remember, most lynch mobs aren't this nice." (H.Simpson)
-- Joe
Makes employees go Postal.
Companies these days want hot-swappable cogs in their machines. Anyone who has enough sense of individuality left to go to the effort of creating an easter egg is not a desirable employee. It's not hard to slip one in, even if they have code reviews. Really, the challenge just makes it more spicy.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
I have noticed, for years, that there seems to be a corporate effort to stomp all creativity and expression out of IT.
There seems to be this thought that if IT can be turned into the new accounting, that IT professionals will be as interchangeable as accountants.
LK
"Hi. This is my friend, Jack Shit, and you don't know him." - Lord Kano
Way back in the golden age of CGI software development, those of us on the cutting edge always marveled at the amazing work John Knoll (of Photoshop and ILM fame) did and we all wanted a button in our 3D programs that made everything look as good as his work. Never happened, of course, because you can't code real talent. But, in one of my plugins, I put in an Easter egg which was a giant button that said "Create award-winning animation"
... for putting in any unauthorized code, this tends to dissuade the programmers from independently putting any such code into the product.
File under 'M' for 'Manic ranting'
Boss wanted me to put one in. Nothing big, nothing obvious. Just a way so that, if anyone tried to claim ownership over the code, we could present them with a "feature" they knew nothing about.
Back in the mid-1990s I was involved with a group that was developing a game for the Sega Model 2B arcade system. We had tentatively named it "Hummer" but it was eventually named "Behind Enemy Lines"; my understanding is that it was released (I played it at an arcade in San Jose) but it didn't do very well and faded quickly. Such is life.
Anyway, we were spending one weekend at work fiddling with the game and cleaning up some code when the art guy accidentally put in the wrong sized model for the heads of the bad guys. Suddenly instead of being normal baddies in camo they all had GIANT HEADS and we couldn't stop laughing at how silly they all looked. It was (for us anyway) hilarious.
So of course we had to put this in as an Easter Egg. We added a bright red crate to the first level (I think it was hanging from a helicopter) and if you blew it up (it took extra hits) then on the next level (which was mostly a warehouse) all of the bad guys had this giant head. It got to where we'd almost always trigger it just because it looked so ridiculous, though of course we never did while our bosses were in the area.
We were scared to death the Sega folks would find it during their final audit, and the game shipped with this "extra". I was so pleased, though I doubt anybody ever actually found it.
Fun stuff.
Ferret
Sic gorgiamus allos subjectatos nunc
We just finished a chip that has a coworker's picture cut into the top three metal layers, because he died suddenly and we wanted some sort of commemoration. Since it's a flipchip, if you have an unmounted chip you can actually see it without having to decap it. We regularly put stuff in the gutters that our voltage rules require for insulation between the chip and the leadframe. Why not? It takes ten minutes to put into the artwork, at the very end of tapeout, and it costs nothing since it's on useless silicon.
My dad left an easter egg in one of the function generators he designed, that played a fugue in four-part harmony. It became a sales demo that sold a lot of units, because it showed off the machine's arbitrary waveform generation capabilities so spectacularly at trade shows. A good easter egg can be a better advertisement for something than the official demos because it shows an unexpected use, and the designers can do a better job of demonstrating the system's ability than a marketing person who is setting up some demo on a piece of equipment that s/he only knows enough about to sell.
Nostalgia's not what it used to be.
It's not in production yet, but our old PM knew about it. I work on mobile apps for universities, and we recently got the contract for the university I went to/my home town. When you click on something in a settings screen a few times, it brings up a dialog with an image playing on one of our sayings "Bulldog Bred" that people often write out as "Bulldog Bread."
The real easter eggs come from thousands of years ago cult would worship the sungod and they would sacrifice babies and die eggs in the babies blood. That's were it comes from. One church kept that alive all this time. Look up Michael Rood and easter.
Or you could look at it as your employees doing [long list]
Tell management it's a "watermark" to detect copied code. (It's obviously not an open-source project. B-) )
Seriously: Suppressing easter-egg hiding means the best programmers are likely to look for a happier shop and move on, leaving the anal manager with the cream skimmed off his pool of talent.
On the other hand, a professional programmer will not spend substantial time on such things.
(An easy way to do it without substantial cost is to build it initially as part of a scaffold or a test suite component - with the easter-eggyness being a way to make it obviously a side issue and not corrupt the mission-critical output. Then the incremental labor cost of building it in as an easter egg is small - or may even be negative, by not taking it OUT of the version to be shipped as the product. B-) )
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
This is the last Easter Egg I "worked" on (as a manager):
http://nfs.wikia.com/wiki/Fair...
This was not very much work, but generated a lot of positive reactions and everyone on the team liked it, so I think the ROI was there.
It's like any software feature, if it justifies the work (and you have the resource) then go for it :)
A compromise is for management to allow and vet something fun and harmless. It helps morale.
Table-ized A.I.
So once I did the accounting system for a car dealership..... in short:
if ((firstname == EASTER_FIRST) && (lastname == EASTER_LAST))
discount = EASTER_DISCOUNT;
and hey presto, if I bought a car there, instant 15% discount.
Bad news: It was a GM dealership. In other words.... it was *still* better to buy a Honda.
After all, the old user=ID10T was there to benefit other techs who worked on somebody's computer.
CAPTCHA=Redneck. How fitting.
A multispectral data processing program I wrote back in my college days: Part of launching it was giving it the date the data was collected. This was sanity checked against the system clock. Dates like before the construction of the scanners we usually used had a reasonable error message, asking if you were sure and giving a chance to reenter.
The message for a data collection date later than the data processing date was: "WONKITY! [name of institute] processes TOMORROW'S data TODAY!"
This was a reference to an incident in a humorous science fiction novel: _Bill the Galactic Hero_. The protagonists are sneaking around and are discovered by a cleaning robot and challenged as security breaching interlopers. One of them "bashes the robot on the braincase with a spanner", causing it to say "WONKITY!" and stagger away, rather than reporting them to security.
= = = =
When I was working on a typesetting system for newspaper publication, I heroically refrained from having it very occasionally insert "fnord" into the text. (See _The Illuminatus Trilogy_ for the joke, which is FAR to complex to explain here.)
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
This is why Emacs documents its Easter eggs in the manual, even the one that's a knockoff of a famous video game by some Russian guy.
I placed a Easter Egg in Win95. It stayed alive in 98, XT, Vista, Wins 7&8. Now I still see it in Windows X. A couple of times a year someone discovers it and sends me a WTF message. I feel so good about this and the fact the the great and powerful Microsoft has not found it. Perhaps this will be my shot at immortalility.
At one place I worked every new file would contain a constant variable with the value "RCS_filename_rev_no".
filename and rev_no were generated by RCS on a checkout.
That way whenever we looked at old executables we could generate them from source by looking in the executable and getting the right version of everything.
While working at a company that makes an online real estate listing and search platform, I added a Simpsons easter egg. If you searched for 742 Evergreen Terrace in any town named Springfield, the app would load a Simpsons-esque webfont, all text would be rendered in it, and the color scheme would change to yellow, orangered, and blue.
Considering that most Easter eggs are now halal, yes, this is the death of Easter eggs.
I put an easter egg in Caveman (http://mobile1up.com/caveman/) where every day there is a unique unlock code that actually lets you play the first seven levels of Lemmings - complete with music, artwork and sound effects.. it changes on a daily basis - i used to post the unlock codes occasionally on twitter ... if anyone ever reported it to SCEE; they would have a hard time reproducing it, the code wouldn't work by the time they tried it.
If you think the Easter egg is dead, go and play with Google Maps today.
It's pretty crap, but you can still use it: go to my antique site at http://www.sodwork.com/funnies... and "Search the funnies" for "pussy" or "nuts". Please bear in mind the last time the site was updated was 10 years ago.
Easter egg are a security and a quality risk. Easter egg are not tested, are not known. So somebody outside can find them, exploit them or destabilize inadvertently the software. I hate easter egg in my project because of that. If that was not present, then programmer can be as quirky as they want. For example easter egg *comments* are fine. They are not runnable code. I saw pics and poem in comments ascii art, and i smiled and showed a thumb up. But I made very very clear that I would consider any coded easter egg malicious, even in variable code name : having fun at work is OK as long as it respects the maintenance and coding practice and security/stability of the software.
C. Sagan : A demon haunted world:
http://www.amazon.com/gp/product/0345409469/
visit randi.org
The terrorists used the excel flight simulator to train! .... or was it some other M$ product?
I *always* squeeze out one or more easter eggs.
My latest: The application, which is free, is software defined radio. It's loaded with features, and everything is documented in detail. Radios have something called an "S Meter", which in a "real" radio is often an actual meter. I offer, and fully document, quite a few different s meter types you can switch by simply clicking on the currently displayed meter. Left click gets you the next model, right click the previous model. Some are classic looking meters, some are digits, some are graphs, some have audio dB meters incorporated as well, some read S, some read S+AGC, some read S+noise reduction, some read S+microvolts at the antenna input, some graphs are vertical, some are horizontal... and there are various combinations of the foregoing. Quite a variety.
So, if you follow the directions, you get exactly what the docs tell you you'll get.
But if, when you reach the last s-meter model, you left click again, you get an s-meter with some of the above information packed into it... in Klingon. :)
If you click one more time, you get the same set of information again, but this time... predator.
Both meter styles are quite dynamic. As they should be, since they're driven by actual data and displaying it. Albeit not in the usual fashion.
My only regret is that Alien's aliens were not written language users. I suppose it was alien to them. And perhaps that's why they were so mean... because they were... alienated.
Ok, I'll stop now. :)
I've fallen off your lawn, and I can't get up.
The first versions of Windows where easter eggs hidden inside DOS...
It seems sense of humor, common sense and being technologically knowledgeable is out of fashion nowadays. Some head of devs on this thread show perfectly not being able to understand both their people and their technology. It is sad to have idiots as bosses that dictate rules without understanding nothing. Often as I say, more dangerous or sad than having a boss that understands nothing about the business is having one that thinks he understands something and just gets on the way of doing things. People being people, it is justly normal that easter eggs crop up. Hell, I am a sysadmin and in the training server I included pinguins saying fortune jokes and telneting it from the localhost got a cat running in ascii art. And then? It was just the training server, and I showed a couple of concepts to junior devs while doing it. Understand the concept? Stop being a damn PHB, an easter egg can be productive. It maybe a test case, or else used in training. You have stringent rules for the production system? Good, then reach a compromise and allow it in beta. Allow people to be people. You are developing some app for local business people? Than having an easter egg may not make any difference... The amount of douchbagness here really are up to a new level.
I don't do easter, eggs or not.
It ought to be called for what it is "Ishtar Egg".
They stole the body. Roman guards commit constructive suicide. You're all to damn educated to believe testimony.
This message was brought to you by Karl Martell. EDUCATE YOURSELF.
I created an easter egg in a product called Fourth Shift Edition for SAP Business One (http://findaccountingsoftware.com/directory/softbrands/fourth-shift-edition-for-sap-business-one/) maybe 5 years ago that rendered an interesting sequence of John Conway's game of Life (starting from the acorn state) while displaying names of developers in a marquee. Trying to remember how to access it... I think it was just typing "LIFE!" while looking at the about dialog. I work pretty efficiently so it was hard to keep me busy at times. The easter egg was a (self-inspired) way to do something interesting related to the software I was working on for a couple hours while waiting to see what came next... and I thought it might someday briefly amuse someone too accustomed to nothing but business all day long. (The software is for ERP.) I showed it to my boss and a few coworkers who, if I recall, all had positive reactions... or at least no negative reactions I'm aware of. I'm not sure if anyone would have expressed a negative reaction to me if they had one because I feel pretty well respected there. I'm not sure anyone who knew about it is still with the company. Maybe I should tell a couple support people about it in case they feel like using it as a diversion while researching a solution to someone's inquiry, especially since it's Easter time. :)
Once when I was a grad student/university IT worker I had to write an inventory app for IT support purposes. I made it so that if you typed "filet o fish" in the search box, it would open a popup with "billy bass" who would sing the filet 'o fish song from the McDonalds commercial (popular at the time). As far as I'm aware, it's still being used 5 years later :-D
I developed a virtual reality controller glove years ago. We sold it with demo software showing some simple gesture recognition.
Couldn't resist adding a secret "middle finger gesture" which would cause the software to quit immediately.
Back in 2000 I was responsible for compressing the very first release of the human genome so that it could fit on CD. I put a secret message on the disk.
In one late-90s build of our award-winning e-commerce product, under the settings panel, there were a group of hidden settings accessible through a convoluted keyboard combo. It included a checkbox (checked by default) that "Output garbage", another (checked by default) that assumed "User is an idiot", and another (unchecked by default) that made "Everything work correctly", among other things. Unfortunately, even though we all enjoyed this egg, it was removed before the next release of the software.
Programmamres can't produce bug free code going though the devement process. If the Easter eggs are better code w/ no bugs we need to Change the way we write code.
If crap we write does't work why add more crap that doesn't work?
An old Cowboy programmer
My all-time favorite easter egg was when I was at a demo of the first MacOS X machine put on by Apple reps, and I said to the computer:
"Computer. Are there any easter eggs?"
And the icon opened its eyes, and said in the default female voice:
"If there were any, do you think that I would tell you?"
I almost fell over laughing.
Most of their history was out. The Adventure one may have been the first game Easter Egg but it certainly wasn't the first by any stretch.
I want a list of atrocities done in your name - Recoil
from a kind of Art requiring creativity it has become, in large parts, to pure engineering.An easter egg is unspecified behaviour, so it's dangerous in anything besides games.
There's the "We don't approve no G-D frivolous features" way. And then there's the right way.
Take a look at how popular Easter Eggs are. People love them! There are articles and web sites devoted to them, this /. article among the many.
Can they be abused, excessive, or inappropriate? Well duh! However a smile in the middle of a dull subject can make a person's day. Why take that away? Are you really so cramped and spiteful that you cannot see the value in a positive moment?
Back when I was writing stuff that distributed as compiled Windows executables, I'd throw a little window into the About of programs that had GUIs - if you held Ctrl-Alt-Shift and clicked the app icon the About text would change to include the names of the team and (depending on space) possibly a `fortune` style pithy saying.
Pretty mild, and if anyone had complained about the waste of time to implement changing the text of a few fields in an existing screen it would have served as a good person filter.
fencepost
just a little off
I used to hide little waldo images in old maps for Day of Defeat. It was a lot of fun to do. Kinda had to stop once it went all commercial and such.
I had this exact conversation with someone from a large IT company who shall remain nameless, bemoaning the death of the Easter egg. He said that internally they've stopped the devs adding them because as they're undocumented, they don't get included in test and security scenarios, so there's potential for them to cause issues - and of course a documented, signed-off Easter egg isn't an Easter egg at all.
These days I understand it, but it's still a bit sad
E
We once had an in-house bug tracking software, which split items into "Issues" (bugs) or "Enhancements" (new feature suggestions). Our manager was very clear that we should use the term "issues" not "bugs", so the common quote was "it's an issue, not a bug". Amusingly though, the icon we used for the "issues" section was an insect. So, in a little menu screen used to switch between categories, I made it so that the bug icon would move if you double-clicked it, and if you kept clicking enough, it would pop up text next to the insect icon saying, "It's a bug, not an issue!"
I eventually told the boss about it - when visiting a couple of years after I had left the company. However, by that point, someone had changed the menu screen so my little "feature" no longer existed. He found it kind of funny, though was a little shocked I had put something in that he didn't know about - but, it was an internal product only, so we weren't so worried about finish.
However, my personal favourite easter egg was actually in hardware: Our old Amiga 500 had an expansion unit you could plug in the side that included a hard drive (30 whole megabytes, wooh!) and RAM expansion slots. There was a little jumper you'd use to set how much RAM you had added, with the settings labelled: "2MB", "1MB", "512K", and "Amnesia". Also, the LEDs on the front were labelled "Fred" and "Wilma". So, humour used to exist in hardware as well, but I think that died long before it did in software.
Our small software company had a customer that would often complain, "The computer is sticking it's tongue out at me again!" For a custom module, I installed an error dialog for one particular error that displayed an animated face sticking it's tongue out. When she finally ran into this error, she was so tongue tied, she for the first time did *not* say "The computer is sticking it's tongue out at me!"
I've hidden Easter Eggs in all the Intellivision games I've sold, and in at least one program I've written for internal use at work.
I don't get to touch the software my company sells. At least not the software that would lend itself to Easter eggs.
But for my Intellivision game work, I've hidden a rendition of my face, a modified "hot pepper" version of a menu, entire other games, and dedications to family. I don't intend to stop.
Program Intellivision!
I only once added an Easter Egg. It was a financial app used in the London stock market and in the About screen, a certain key combination brought up a photo of me giving a thumbs up. Ok, lame, I know. A few years later, I was working in Microsoft developer support and someone called asking how to do a particular thing with grids as he had seen a cool app that did it. I recognised that as some custom behavior from my app so I explained how it did it. The guy said that the app had to be doing it a simpler way. I showed him the easter egg as proof :)
They were first commonplace, then frowned upon. But of late newer companies established in 21st century realized that they can retain non-trivial percentage of top developers by letting them have their fun. In games, it's even a much appreciated secondary objective to find all of them.