Slashdot Mirror


Would You Add Easter Eggs To Software Produced At Work?

Mr. Leinad writes "Do you add Easter Eggs to the software that is produced at the office? I mean, if you have complete control over the final product, do you spice it up with that little personal touch, which, as unlikely as it is that anyone will see, carries with it an 'I was here' signature? I've just finished the development of a large software product, and I have a couple of days left to try to add my own personal Easter Egg code, but given that the software is quite professional, I don't know if I should. What do you think? Should we developers sign our creations?"

133 of 747 comments (clear)

  1. I would by malkir · · Score: 5, Insightful

    Subtlety is key, even if it's for something like proving the program was coded by you if some asshole attempts to take credit...

    1. Re:I would by jawtheshark · · Score: 5, Interesting

      I already did... Long time ago, in an e-Banking application. If you pressed ctrl-alt and clicked on the bank logo, you got a picture of the development team. It was innocent stuff, but I know as a fact that they have removed it by now. It was simple code, a bit of JavaScript and a picture named as if it was an advertisement banner.

      Ah, the good old days when I was young and foolish.

      --
      Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)
    2. Re:I would by Walpurgiss · · Score: 3, Interesting

      And keep it useful and not potentially offensive, i.e. don't put in an Easter Egg like the one originally in SimCopter (some speedo wearing dudes that made out with eachother, swarmed the chopper and then had to go to hospital..)

      Easter Egg Link

    3. Re:I would by supaneko · · Score: 5, Funny

      Does a rooted backdoor count as an easter egg? :D

    4. Re:I would by eosp · · Score: 5, Interesting

      I've seen that before. I believe that it was on The Daily WTF. Someone was demoing a piece of software, and the guy who wrote a similar product was in the audience. He realized then that the software was very similar to his, although the splash screen had been removed. Eventually, he just accused the author of stealing it, in front of the whole group. Needless to say, he tried to deny it, only to be told to press a certain keyboard shortcut. He did, and sure enough, the accuser's face appeared on screen.

    5. Re:I would by iduno · · Score: 5, Interesting

      Thats kinda scary really if it got through an inspection process.
      Just think it could be a bit of JavaScript sending bank and user details to someone. I would think that banks would be pretty strict on the code being written since their customers rely on it.
      Especially when things like a major bank like Commonwealth Bank of Australia takes out a withdrawal twice, and keep the second withdrawal themselves. http://www.news.com.au/story/0,,24703544-2,00.html

    6. Re:I would by Anonymous Coward · · Score: 2, Insightful

      Link or it didn't happen.

      (And no, I'm not implying that links are a sufficient condition for truth, just a necessary condition of truth)

    7. Re:I would by joseph978 · · Score: 2, Informative

      If that pix was part of the "security" design then it's NOT an Easter Egg. We're talking about adding something NOT part of the requirements - NOT a good idea, and never is. If it not part of the requirements, it never gets into the test plan, and is never evaluated. Two people died from radiation burns in a Texas hospital cancer treatment center during the early 1990's because engineers added an undocumented shortcut so they could simplify their personal unit tests. (Therac-25 Radiation Deaths linked to AECL Computer Errors So no Easter Eggs from me (unless it's a requirement).

      --
      Never be afraid to try something new, remember ametures built the arc, professionals built the Titanic.
    8. Re:I would by mysidia · · Score: 3, Insightful

      The inspection process may have found it but just considered it an innocent footnote/program info page.

      Surely there isn't something malicious about having a buried feature to display some info about the software's developer(s)?

    9. Re:I would by igny · · Score: 4, Funny

      Subtlety is indeed a key. There was a Russian developing team working on games for a big American company. So the manager demanded that the coders would not put the word "dick" (in Russian it is as offensive as "fuck") anywhere in the game. He stressed that repeatedly saying that Russians are notorious for mentioning the dick somewhere on the wall or something. He pleaded and begged, saying the game is for children and he would fire everyone before getting fired himself.

      So they released a game, and only few noticed that if you look at some plane drawing smoke pictures in the sky from a certain angle, you would see that it writes the infamous "dick".

      --
      In theory there is no difference between theory and practice. In practice there is. - Yogi Berra
    10. Re:I would by lysergic.acid · · Score: 3, Insightful

      what's offensive is very subjective. and as history has shown, people can get offended by just about anything. the SimCopter easter egg sounds like it was meant to be more humorous than offensive. but i guess some people are offended by the sight of homosexuals, or perhaps just think that video games should not acknowledge the existence of homosexuality (after all, it might turn our children gay!).

      for those interested, the guy responsible for the SimCopter easter egg is now a member of the culture jamming activist group, the yes men. but be warned, if you're offended by the sight of pixelated men in kissing in a video game, you might want not want to click on that link.

    11. Re:I would by mseidl · · Score: 3, Funny

      All programmers leave back doors in their systems that like to play "Tic Tac Toe" and "Global Thermonuclear Warfare"

    12. Re:I would by burlingk · · Score: 3, Insightful

      So, things that are not likely to be put on a web page require links for proof. :P I know that in this day and age it is far fetched, but there are a lot of things that will never have links that did happen.

    13. Re:I would by geekmux · · Score: 2, Interesting

      Does a rooted backdoor count as an easter egg? :D

      To anyone else, yes. According to Sony, well, not really...

    14. Re:I would by maxume · · Score: 2, Insightful

      So I had to look up "culture jamming" and it appears to be justifying being an asshole by being arrogant. Is that about right?

      --
      Nerd rage is the funniest rage.
    15. Re:I would by Rary · · Score: 4, Insightful

      Surely there isn't something malicious about having a buried feature to display some info about the software's developer(s)?

      No, but it raises the question: what else is buried in there?

      In fact, if I were trying to bury something malicious in code, I might consider hiding it in a seemingly harmless easter egg.

      --

      "You cannot simultaneously prevent and prepare for war." -- Albert Einstein

    16. Re:I would by someone1234 · · Score: 2, Insightful

      Yes, but you generally don't remove something known to be innocuous just because you suspect there is something buried deeper.
      You keep looking into the code, or ask the developer.
      Removing stuff that you don't know isn't a good solution, it might break the code too.
      If you don't trust your programmer, better you write your own code.

      --
      Patents Drive Free Software as Hurricanes Drive Construction Industry
  2. Of course! by ohxten · · Score: 5, Insightful

    Of course! Doing so in an unobtrusive, unharmful way only adds charm to the product.

    --
    Need an automatic screenshot taker? Try here.
    1. Re:Of course! by TheRaven64 · · Score: 4, Funny

      What if you are the goatsx guy?

      --
      I am TheRaven on Soylent News
    2. Re:Of course! by fastest+fascist · · Score: 4, Funny

      Then you might want to consider taking a photo of the OTHER end for once.

    3. Re:Of course! by sp3d2orbit · · Score: 4, Funny

      I worked with a text editor in college where upon triggering an unlikely error the user was prompted with the message:

      "Are you A) Blind or B) Stupid?"

      The user had to pick one to continue.

    4. Re:Of course! by Anonymous Coward · · Score: 3, Funny

      Please tell me you made Stupid the activated control.

    5. Re:Of course! by rtconner · · Score: 2, Insightful

      what if the zero and one are your only family? did you ever think of that?

      --
      023AD01("Child", "Evil");
    6. Re:Of course! by Ihmhi · · Score: 3, Funny

      "You have chosen STUPID. Please enter your social security number and bank account number in the provided fields so we can, uh... register your software. Yeah."

  3. Professional easter eggs by phorm · · Score: 2, Interesting

    Several large software companies have left easter-eggs in "Professional" products. Microsoft office had pinball and a flight simulator, I seem to remember.

    1. Re:Professional easter eggs by casualsax3 · · Score: 5, Funny

      Don't forget the Windows95 Easter Egg where a simple series of actions on the desktop would get you a blue screen with a special message from the OS.

    2. Re:Professional easter eggs by ZerdZerd · · Score: 5, Funny

      Hey, it still works in Vista!

      --
      I'm not insane! My mother had me tested.
    3. Re:Professional easter eggs by Anonymous Coward · · Score: 5, Funny

      Aren't easter eggs supposed to be hard to find?

    4. Re:Professional easter eggs by ChameleonDave · · Score: 5, Interesting

      Yes, and it seems very unprofessional of them.

      I find it a little annoying that OpenOffice has an entire Space Invaders game in it (put =GAME("StarWars") in any Calc cell) when the suite is so slow and bloated. It makes the statement that they they don't care about streamlining.

    5. Re:Professional easter eggs by EkriirkE · · Score: 2, Informative

      That's only because its Java, had it been an executable such a game could take up 10K or less incl graphics

      --
      from 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
      to 45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F
    6. Re:Professional easter eggs by 8ball629 · · Score: 2, Funny

      I thought getting Windows95 to work was the Easter egg and the blue screen was the normal UI.

      Huh... you learn something new everyday.

    7. Re:Professional easter eggs by DahGhostfacedFiddlah · · Score: 2, Funny

      Why do people think 'professional' equals 'unfun'?

      Don't worry - "unprofessional" can equal "unfun" too. Just type "=GAME("Star Wars")" into any cell in OpenOffice and you'll see what I mean.

      (I mean, I appreciate the effort, but I played better Space Invaders clones in DOS with ASCII graphics in '86)

    8. Re:Professional easter eggs by supernova_hq · · Score: 2, Funny

      X Y Z Z Y [Enter] [Shift+Enter]

      That's from memory. In college I would open minesweeper, set it to the most difficult (custom largest with only 9 non-mines), then proceed to beet it. I actually had a kid I babysat convinced I was psychic. The best part about it is that it is so subtle you can do it will lots of people watching and they can't tell!

      Let's just say I was known as the king of minesweeper for a couple days ;)

  4. What is this "would" you speak of? by mrmeval · · Score: 4, Funny

    Getting such things past the pointy heads is just good fun. Getting the doomsday code past them is a riot.

    --
    I'd go on a Vegan diet but the delivery time from Vega is too long. --brownkitty
    1. Re:What is this "would" you speak of? by cvd6262 · · Score: 2, Funny

      I worked as a graduate assistant in a lab that produced foreign language materials. We were *very* early at producing our own DVDs (back when you had to ship a DLT to the replicator) and won a bid to move some PBS language programs to DVD. Of course, each disc had a credits menu that mentioned our university, but not our lab.

      So, late one night the four main people working on the project (getting paid a pittance BTW) created a hidden menu with our pictures and the names of the other students who had given their time. We hid the menu in a place where virtually no one would be able to find it: On the credits menu, the menu buttons are organized horizontally. With the "credits" option highlighted, you push up-up-down-down-left-right-left-right (Contra's 30-lives code) and the hidden menu is revealed.

      The hidden menu was created with the same style guides as the other menus, so it doesn't look like "we wuz h3r3!"

      We didn't show our boss until *after* the DVD was shipped. When we showed it to him, he just laughed. He was a former programmer and understood us completely. But he did add, "It's a good thing you didn't tell me earlier. I would have had to tell you to take it out."

      --

      I'd rather have someone respond than be modded up.

  5. Well.. by thermian · · Score: 5, Funny

    Easter Eggs? No, funny comments/error messages, and bizarre variable names, absolutely.

    I will never forget the day a student who was using my software for a project asked during a meeting what an 'out of cheese' error was. The poor kid was so confused :)

    --
    A learning experience is one of those things that say, 'You know that thing you just did? Don't do that.' - D. Adams
    1. Re:Well.. by Clueless+Moron · · Score: 4, Interesting

      Easter Eggs? No, funny comments/error messages, and bizarre variable names, absolutely.

      At one place I worked, the guy who wrote up the coding standard explicitly prohibited jokes in comments and humorous variable names. I'm not kidding.

      Presumably he will be reincarnated as a worker ant in his next life.

    2. Re:Well.. by ScrewMaster · · Score: 2, Insightful

      Easter Eggs? No, funny comments/error messages, and bizarre variable names, absolutely.

      I will never forget the day a student who was using my software for a project asked during a meeting what an 'out of cheese' error was. The poor kid was so confused :)

      Nothing really tops the Amiga's "Guru Meditation Error".

      --
      The higher the technology, the sharper that two-edged sword.
    3. Re:Well.. by EkriirkE · · Score: 2, Insightful

      only stuff that appears in compiled code should count. Unless you are talking scripts

      --
      from 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
      to 45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F
    4. Re:Well.. by Splab · · Score: 2, Insightful

      Wrong approach, hand him a Terry Pratchett book and tell him to look for the answer, his life will be better.

    5. Re:Well.. by jonaskoelker · · Score: 3, Funny

      Find all the copy constructors he wrote and rename the argument "dolly". Find all the operator < (const T&); methods he wrote and rename the argument "dicksize".

    6. Re:Well.. by dkf · · Score: 2, Funny

      At one place I worked, the guy who wrote up the coding standard explicitly prohibited jokes in comments and humorous variable names.

      Add a comment to the code against the most business-critical part of the code something like "Hmm, I hope SOX-compliance never looks at this." and sign it with his name. The beauty is it's both not at all funny and hilarious, depending on your point of view.

      --
      "Little does he know, but there is no 'I' in 'Idiot'!"
    7. Re:Well.. by Blakey+Rat · · Score: 2, Insightful

      Yeah, but as a former elementary school computer lab volunteer, please, do not code error dialogs like, "out of fucking memory" or "something fucked up" in your otherwise kid-friendly game. I can guarantee, no matter how unlikely you think the error is, it WILL come up in a classroom setting.

  6. Add something useful instead by Clueless+Moron · · Score: 4, Interesting
    Anywhere I've worked, we've always tended to add potentially useful but undocumented experimental features to our programs.

    Quite often they end up being useful and get cleaned up and documented in subsequent releases.

    1. Re:Add something useful instead by dujenwook · · Score: 2, Interesting

      You do have to be careful with this sort of thing, depending on the customer and your revenue model. I find that giving functional freebies, especially in commissioned/ongoing projects, spoils the customer causing them to expect such extras in future mods. You also lose out on the chance to charge them for the feature. Of course on the other hand it could also work in your favor if they understand, appreciate and don't take the extra work for granted.

  7. Shit happens by gmuslera · · Score: 4, Insightful

    Is a pending accident waiting to happen. Maybe because the change adding the Easter Egg the application have a problem (security, speed, space, whatever), maybe people find or know about your easter egg, do every possible misuse of the application to try to find another, and something breaks somewhere. And adding something not requested/approved by your company is a bad precedent, another way to put an "i was here" message is called "backdoor".

  8. Rick roll in the Code. by Anonymous Coward · · Score: 2, Funny

    Something like

    You know the Rules, and so do I...
    We're never going to give you up,
    We're never going to let you down,
    We'll never run around and desert you....

  9. Sure. But you had better be careful. by Anonymous Coward · · Score: 5, Insightful

    If your "easter egg" causes bugs that end up costing the company money, your ass is grass.

  10. Professionally Signed by no1home · · Score: 5, Interesting

    My personal take on this is to go ahead. First, the world NEEDS to step back from the super-serious attitude, but still be polite. Second, coding is as much art as science and I think your paintings, songs, code, engineering, etc should all have your personal mark, something to make it identifiably yours. Third (kinda goes with the first) doing so can be a moral booster for you AND those who discover it.

    However, there are issues to keep in mind. You must keep it professional, so no vulgarity, rudeness, or jokes about loss of data. Certainly, you should avoid all the '-isms' like the plague. And, just as important, it should be clear that the Easter Eggs do not break security in any way.

    In short, make it secure, polite, fun and it should be cool.

    --
    I hope this comment is well received... I could have moderated instead!

    Persecutors will be violated!
    1. Re:Professionally Signed by Burnhard · · Score: 5, Insightful

      Speaking as a Software Engineer (I consider myself a professional); you are undermining the customer's trust in your product simply to massage your own ego. Customers are naturally concerned about integrity and security (more so today than ever before). Once you've demonstrated a desire to hide "secret features" in their products, they may start to wonder what other (perhaps malign functionality) is lurking in the code.

    2. Re:Professionally Signed by ScrewMaster · · Score: 4, Insightful

      Speaking as a Software Engineer (I consider myself a professional); you are undermining the customer's trust in your product simply to massage your own ego. Customers are naturally concerned about integrity and security (more so today than ever before). Once you've demonstrated a desire to hide "secret features" in their products, they may start to wonder what other (perhaps malign functionality) is lurking in the code.

      Thank you. I was starting to think that attitude was entirely missing from the Slashdot crowd. "Easter Eggs", bah. Programmers and engineers should make their mark in the world by designing and implementing quality products and not, as you say, massaging their obviously-inflated egos.

      --
      The higher the technology, the sharper that two-edged sword.
    3. Re:Professionally Signed by EkriirkE · · Score: 5, Funny

      I am a robot. I do only as instructed. Beep beep. Bloop Bloop.

      --
      from 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
      to 45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F
    4. Re:Professionally Signed by ScrewMaster · · Score: 5, Insightful

      I am a robot. I do only as instructed. Beep beep. Bloop Bloop.

      Be insulting if you wish. If you're a programmer or a software engineer, one day you may get involved with a project that has a serious penalty for failure (and no, I don't mean a bank or e-commerce Web site or something equally safe.) Believe me, when that happens you'll change your tune and get pretty damn serious. "Easter Eggs" and other irrelevancies suddenly become significant liabilities, and you don't even think about them anymore.

      I'm happy when a customer notices that the software functions well, is easy to work with, and is solid. In other words, if get noticed it's because I did my job right, not because of some childish desire for attention.

      Still, if you work on trivial applications it's okay to treat them like toys, I suppose. I don't, on either score. In any event, I agree with Burnhard. It boils down to whether you want to satisfy some psychological need, or want to earn the trust of both your employer and your customers. The latter is usually more satisfying.

      You decide.

      --
      The higher the technology, the sharper that two-edged sword.
    5. Re:Professionally Signed by Burnhard · · Score: 2, Interesting

      You don't expect a "jack in the box" pop-up doll on a spring to jump out at you when you open the hood on your new car, do you? And if such a thing were to happen, would you say to yourself, "wow, those guys at Aston Martin, don't they have a great sense of humour!"? Frankly, I suspect you'd see it as being a bit weird.

    6. Re:Professionally Signed by camperdave · · Score: 3, Insightful

      No, I wouldn't expect that. But I would not be very surprised if a "Kilroy was here" showed up on the firewall, or someone's name was written underneath the trunk upholstery. People have been doing stuff like that since the Egyptian Pharoahs played Dungeon Draggin' with thousands of slaves.

      --
      When our name is on the back of your car, we're behind you all the way!
    7. Re:Professionally Signed by neomunk · · Score: 4, Insightful

      But that's not the choice you're being given. I'd say a better analogy is choosing between a doctor who gives you an EEG with regular white pads and a doctor who gives you an EEG with pads that are colored like nipples (or polka-dots at a family doctor). You're getting the same quality of work (or at least the quality is unaffected by this particular variable) with only slight change in aesthetic.

      I'm not disagreeing with your main point about software integrity, but your analogy struck me as disingenuous.

  11. Comment removed by account_deleted · · Score: 3, Interesting

    Comment removed based on user account deletion

  12. Well, yes by girlintraining · · Score: 4, Interesting

    Yes, you should. Just do so in good taste. I once put The Story of Mordac(tm) into a script that I made and distributed around the office, which described in a humorous and epic way the reason for its invention: All it did was send F5 to a window with a specified name.

    We were running HP Service Desk and the admins, in their infinite idiocy, disabled the auto-refresh of the views. This was because they seriously under-spec'd the server and were looking for any way possible to cut the load down. It crashed every few hours; Which is what you get for using Citrix for over five thousand workstations in six different countries for "security" purposes. And then using RAID10 on the database... oh god, the write times, they buuuurnses us. *snickers* In either event, after distributing it to our techs and letting it bounce around the working grunts in our various offices for awhile, I let it slip to a few friends about the story of Mordac, Preventer of Information Services (thank you Dilbert), who I credited with the debacle.

    Two weeks later, the auto-refresh got turned back on. Many queries were made and security operations attempted to track down who had made the "unauthorized script". To this day, whenever a feature gets turned off on a server that the users liked, or some dumb "security" policy goes into place... People chalk it up to Mordac. Many of them aren't familiar enough with the strip to know of the little-known Dilbert character. ;)

    Easter egg away my friend, but remember thy audience!

    --
    #fuckbeta #iamslashdot #dicemustdie
    1. Re:Well, yes by Anonymous Coward · · Score: 2, Interesting

      There are three potential problems that you mention. a) "unauthorized script"; b)"a feature that gets turned off...that the users liked"; and c) "some dumb security policy".

      It seems there is a common thread there. And it all seems to point to retaliation towards those making security decisions or (in general people 'higher up' making decisions). a) You said it yourself "unauthorized script". This is not an easter egg, this is an unauthorized script. b) the users are users, not security experts, and just because they liked something doesn't mean it was good. Writing a script to distribute some funny message in response is not (IMO) the right answer. c) "dumb security policy". This seems related to item b. If the policy is so dumb, then there are usually correct ways to get it changed. Writing a script (IMO) is not the correct way.

      I understood what you did may have been a lot of fun, but it doesn't seem to be what is generally described as an easter egg.

    2. Re:Well, yes by Free+the+Cowards · · Score: 4, Insightful

      Authority is never worth respecting merely because it's authority.

      --
      If you mod me Overrated, you are admitting that you have no penis.
    3. Re:Well, yes by imsabbel · · Score: 5, Informative

      [ ] You know what Raid 10 is
      [X] Your original post was talking out of your ass

      --
      HI O WISE PRINCE. WHT TOOK U SO DAM LONG?
    4. Re:Well, yes by girlintraining · · Score: 2, Funny
      --
      #fuckbeta #iamslashdot #dicemustdie
    5. Re:Well, yes by Splab · · Score: 4, Insightful

      Uhm, RAID 10 on databases has for a very long time been the defacto way of doing things (mirror and stripe everything). And your comment below about it being a raid 5 raided over 5 makes little sense - to me it seems like you have no idea what you are talking about.

      Granted these days you would most likely opt for RAID 60 if you got the money for it, but RAID 10 is still the best price/performance for databases.

    6. Re:Well, yes by Oligonicella · · Score: 2, Insightful

      Yeah, I'm a level seventy. So what?

      ... anyone who's worked in this industry knows that management can be ignorant, paranoid, and unwilling to change.

      You bet. Anyone who's working in this industry also knows that some programmers think they're God's gift and know more the the entirety of the rest of the organization.

      I care about keeping the business running. ... Many queries were made and security operations attempted to track down who had made the "unauthorized script".

      Kinda contradictory.

    7. Re:Well, yes by Free+the+Cowards · · Score: 2, Insightful

      If you had said "most of the time", I would agree. But I cannot accept that it is always in my best interest.

      --
      If you mod me Overrated, you are admitting that you have no penis.
    8. Re:Well, yes by MoreDruid · · Score: 2, Funny
      Well, if some script I write is sufficiently long enough and I need to catch an error I'll sometimes have it display the following:

      echo '[q]sa[ln0=aln256%Pln256/snlbx]sb3135071790101768542287578439snlbxq'|dc

      Looks intelligent enough to not get caught, but gets smiles and sniffles if the error pops up :-)

      --
      The best weapon of a dictatorship is secrecy, but the best weapon of a democracy should be the weapon of openness.
  13. God, no by eddy+the+lip · · Score: 4, Insightful

    These make for great legends, but as much as I hate to admit it, I've gotten very serious about my work. Easter eggs are not generally appreciated by the Powers That Be, or by clients paying big cash for a product. My personal reputation, and producing a quality product have become important to me.

    There's also the fact that that more code == more bugs. You can't get around that. Why open up a professional product and your reputation as a developer by making it more likely that you'll screw up?

    I can see certain exceptions to this - for instance, games with easter eggs (approved, of course) can add to the charm of a product. An easter in egg in Quicken would be less cool.

    --

    This is the voice of World Control. I bring you Peace.

    1. Re:God, no by Krishnoid · · Score: 4, Informative

      These make for great legends, but as much as I hate to admit it, I've gotten very serious about my work. Easter eggs are not generally appreciated by the Powers That Be, or by clients paying big cash for a product. My personal reputation, and producing a quality product have become important to me.

      Here's one of those legends where a well-executed easter egg of sorts served to corroborate one's professional reputation:

      My old boss spent some time writing statistical analysis packages for the Archimedes. One of them got fairly popular for Archie software, and he started a small business selling it. For those who don't know, Archie software usually came as source code and was executed through an interpreter.

      One day at a scientific meeting, he noticed that another company was showing Archie software with remarkably similar functionality to his own, so he wandered over. The longer he watched, the more familiar it looked. Eventually, when the sales representative had gathered a good crowd, he asked in a loud voice:

      • My Boss: "Are you using my copyrighted code for this?"
      • Sales Representative: "Of course not."
      • My Boss: "So what happens if you press [key combination]?"
      • Sales Representative: "Nothing."
      • My Boss: "Do it for me."
      • Sales Representative: "Ok sir, but I can assure you it does--"

      The screen displayed my boss' copyright notice. All they'd done was remove the front end.

      It widely accepted as the biggest laugh of the show.

  14. Comments. by LostCluster · · Score: 3, Insightful

    Your name should be all over the code you write... In the comments/remarks as defined by whatever language you're using.

  15. This might answer the other thread's discussion... by The+Living+Fractal · · Score: 2, Interesting

    Short answer: If Google can do it, then why can't you?

    But about the Subject... There was a discussion about "moral" vs. "ethical". Here is a case that might help answer the question of "what is the difference"?

    Adding an easter egg to your product, one that doesn't add value to the product, could be spending company resources, and getting paid, to do something that was never your job. So, it's not ethical.

    But to say it's not moral? I don't think anyone would go that far.

    --
    I do not respond to cowards. Especially anonymous ones.
  16. No, never, stop thinking about it. by Veggiesama · · Score: 5, Funny

    One of Microsoft's head programmers tried a little stunt like the one you're suggesting. It cost him his career... his dignity... and if the suicide note was of any indication, even his life.

    His name was Andrew B. Clippy, and his "personal touch" tore him asunder.

    1. Re:No, never, stop thinking about it. by Anonymous Coward · · Score: 4, Funny

      Did this Andrew B. Clippy receive any help writing his suicide note?

    2. Re:No, never, stop thinking about it. by the_B0fh · · Score: 2, Funny

      Nah. Clippy was descended from Microsoft Bob. Microsoft Bob's creator married Bill Gates and produced 2 little sprogs. So I'm not sure how this is supposed to show us failure.

  17. Yes. Do it. DO IT NOW! by moniker127 · · Score: 2, Interesting

    Eastereggs are the sign that a company is proud of its software. Add something in that only people who had heard of it and were looking for it would find. If people are looking for it, they probably arent the starch shirted old people who would be opposed to a little bit of humor at work.

  18. Maybe - Maybe Not... by Dolphinzilla · · Score: 3, Interesting

    I would say if it is done in unquestionable good taste it is OK - I have a friend who was nearly fired over a log message that contained profanity and was written to some obscure text file - a government official was randomly looking at files and found it and alerted his superiors - it was a BIG mess...did I mention this was on a major DoD weapons system.... It is not an Easter Egg but it certainly shows the pitfalls of "personalizing software"

    1. Re:Maybe - Maybe Not... by SJrX · · Score: 3, Interesting

      About a month ago I was in the middle of writing proof of Concept code, that may perhaps later be used in production code, after a full rewrite. As opposed to properly handling Exceptions, (especially some generated from SSL problems), for the interm I decided to quash them and just print out unique messages each time one was quashed. Now as everyone knows quashing exceptions is VERY bad practice, and the comments reflected that. "I really shouldn't have done this", "What kind of newb programmer does this","I'm a moron, I should know better than to do this", "You must be getting very frustrated", "Why do I even have a job?". While demoing the product, they encountered a problem, and my manager ended up having to go look at the log (The problem was external to this). The log ended up looking something like this: Recieved Request ID=34 (Params a=...,b=...)
      Why do I even have a job?
      Why do I even have a job?
      Why do I even have a job?
      Recieved Request ID=35 (Params a=...,b=...)
      Why do I even have a job?
      Why do I even have a job?
      Why do I even have a job?
      ... It ended up being resulting in two really awkward meetings, where people wanted to reassure me that I had job security. Needless to say, I was told that perhaps I should write something else in my code.

  19. Bar code scanner to say "Hello Joost" by Proto23 · · Score: 2, Funny

    I have programmed an in shop bar code scanner meant to display the price information to customers in the store to say "Hello Joost" for one particular of the shelve product. For those in the Netherlands it was at XL Paris a shop with a lot of perfumes and stuff. I never ever heard about it from any manager, but have shown a number of friends and my girl friend the "Hello Joost". As far as I know they still use the same bar code scanners, but I am not sure whether my code is still in.

  20. Re:No by Windows_NT · · Score: 2

    must not code fast enough .. Real programs only spend two hours a day programming .. then rest is spent sleeping, getting coffee, or posting on /.

    --
    Go go Gadget Nailgun!
  21. Re:Been there done that by Linker3000 · · Score: 5, Funny

    I used to work in the visuals department for a flight sim company and it was common practice for the image database devs to sign their names and leave each other messages at something like -10m below the airport's primary runway.

    This was all well and good until we had some sort of glitch on a sim under test and the customer's chief pilot managed to land through the runway and the entire cockpit view was filled with something like "Fuck off Dave!"

    Management were not pleased!

    --
    AT&ROFLMAO
  22. You tell me. by Ihlosi · · Score: 4, Interesting

    I write firmware for medical devices. You want some easter eggs in your ECG?

    1. Re:You tell me. by EkriirkE · · Score: 5, Funny

      Yes, I want it to reverse current and shock me so my heart pulses out jingle bells! Whilst the readout shows vectored pine trees!!!

      --
      from 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
      to 45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F
  23. Re:More for the Testers by Beardo+the+Bearded · · Score: 4, Insightful

    That's just good practice. You should put in a handful of bugs and see how many your QA department finds.

    If you put in 10 and they find 8 of those plus 24 other bugs, then you can roughly estimate that there are about 30 bugs in the code that you have to fix.

    Test your testers.

    --

    ---
    ECHELON is a government program to find words like bomb, jihad, plutonium, assassinate, and anarchy.
  24. Ask yourself one thing. by khasim · · Score: 5, Insightful

    How are your going to be able to explain NOT fixing a bug that got through in your code when you had time to include an un-spec'ed Easter egg?

    This isn't about charm. This is about having to explain to management why a customer is unhappy.

    1. Re:Ask yourself one thing. by ohxten · · Score: 5, Funny

      How are your going to be able to explain NOT fixing a bug that got through in your code when you had time to include an un-spec'ed Easter egg?

      Blame the intern.

      --
      Need an automatic screenshot taker? Try here.
    2. Re:Ask yourself one thing. by EkriirkE · · Score: 3, Insightful

      An easter egg is not something that is written inline with a product, it is a subroutine. A new thread. Completely stand-alone and non integral, simply built-in and called from within. It should only be accessible through a highly unlikely or "no reason to have done that" sequence of events.

      If your application broke because of an easter egg, you did everything wrong. If your application is buggy it should never be because of the egg, even if the egg itself is buggy.

      --
      from 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
      to 45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F
    3. Re:Ask yourself one thing. by BigZaphod · · Score: 4, Insightful

      Ugh. I've seen this comment (more or less) all over this thread and I just have to say: Why are so many of you living with such FEAR of your management? It can't be healthy! Lighten up, people! How can you even work for your management if you can't even think of them as *humans* who might like a joke as much as the next guy? Geesh. </rant>

    4. Re:Ask yourself one thing. by EkriirkE · · Score: 3, Insightful

      Sometimes I need to break away from whatever project I'm working on and do something else before I go insane. Read /., read a forum, code something else - like an easter egg (something light, maybe silly) for said mind-numbing project.

      --
      from 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0
      to 45 2F 6E 40 3C DF 10 71 4E 41 DF AA 25 7D 31 3F
    5. Re:Ask yourself one thing. by smilindog2000 · · Score: 5, Funny

      Any good software company should allow easter eggs. Back in the good-old days at QuickLogic, we had an awesome movie-like credit's screen with something funny about every contributer. At the new company I founded, I've lost control over our easter-egg policy, and they've been removed :-(

      There was one funny episode at QuickLogic. Bill Falk was the manager, and he just about had a heart attack any time there were show-stopper bugs found late in a software release process. So, after we already bought something like 4,000 copies of our release on floppies, a very special easter egg went off. It detected if your name was Bill Falk and if it were a specific date, and then invoked some of the worst possible crashes - the stuff that's random each time, and depends on debug mode vs compiled. We all laughed so hard when Bill went ballistic, we never dreamed our easter egg would work so well. After seeing how hard it was on him, we decided never to do that to him again. The next release came around, and this time there was a real show-stopper late-stage bug, and Bill was convinced we'd planted another easter egg. It got pretty ugly.

      --
      Beer is proof that God loves us, and wants us to be happy.
    6. Re:Ask yourself one thing. by Splab · · Score: 4, Informative

      It's called a roof, it stops rain from falling on your loved ones.

      It's called food, it stops hunger.

      Having a job and being secure in said job helps with this. Pushing easter eggs into the code when you should have fixed #00314224 Critical could end up costing your ability to supply roof and food.

    7. Re:Ask yourself one thing. by bill_mcgonigle · · Score: 4, Insightful

      could end up costing your ability to supply roof and food.

      in theory. Even if he got fired, he'd almost certainly find a new, and probably better job.

      However the effects of stress are real and demonstrated. Humans tend to overly guard their immediate downside risk at the cost of the long-term downside risk.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    8. Re:Ask yourself one thing. by Lumpy · · Score: 4, Insightful

      Both of which can be had with a walmart job. So your excuse has no merit.

      Quit treating your management like they are your lord and king and treat them like the people that should be thankful you are working for them.

      Cripes. Grow a pair.

      --
      Do not look at laser with remaining good eye.
    9. Re:Ask yourself one thing. by mysidia · · Score: 2, Insightful

      The best way is to have written solid code with no bugs or very very few bugs.

      Perhaps you included the easter egg as a "hook" to test other code.. I.E. Your easter egg hooks an API procedure, allowing you to more easily test a specific portion of it or troubleshoot any problem that might arise, than otherwise.

      The easter egg might display some general info about the application primarily of interest to developers or support people, hence the reason it is hidden.

    10. Re:Ask yourself one thing. by Rob+the+Bold · · Score: 2, Funny

      How are your going to be able to explain NOT fixing a bug that got through in your code when you had time to include an un-spec'ed Easter egg?

      Blame the intern.

      I included an easter egg that popped up an error message with the boss's home phone number. He told me that that error would never occur, so I felt confident (wink, wink) that no one would ever see the message. Of course, it did occur. And when it did, the boss blamed the temp!

      --
      I am not a crackpot.
    11. Re:Ask yourself one thing. by drerwk · · Score: 2, Insightful

      Even if he got fired, he'd almost certainly find a new, and probably better job.

      Maybe. When I hiring software engineers at Razorfish San Francisco, we interviewed http://en.wikipedia.org/wiki/Jacques_Servin around 1998 I think. Google was fairly new to me, and I checked his name. We did not hire him.
      No doubt he found a much better job.

    12. Re:Ask yourself one thing. by QuantumG · · Score: 3, Insightful

      Then you're a slave.

      You set the conditions of your employment, your employment does not set conditions on you.

      --
      How we know is more important than what we know.
    13. Re:Ask yourself one thing. by BigZaphod · · Score: 2, Insightful

      Sadly, I think point (b) is a significant cause of point (a) in the first place. :/

  25. My Easter Eggs are comments and error messages. by FatSean · · Score: 3, Insightful

    A humorous error message often brightens the day of the poor guy in operations who has to report back to the developer.

    --
    Blar.
    1. Re:My Easter Eggs are comments and error messages. by Coriolis · · Score: 5, Interesting

      At my current place of employment, all the code we write belongs to the client (which is pretty much SOP in the field). Our clients sometimes do not share our sense of humour. As the technical lead, if I find it, you can be damn sure you're taking it out again. And I am looking :)

      I'd discourage actual functionality easter eggs too, in most programs. The industry average is estimated to be 10-20 defects per 1000 lines of code. Every non-essential line of code you write risks introducing a bug.

      --
      Rgasuya aata! : I have been coding Perl and cannot tell where my fingers are now!
    2. Re:My Easter Eggs are comments and error messages. by Coriolis · · Score: 2, Insightful

      The reason people post these statistics is they're true and they're useful. If we're starting a project, and I've got a rough idea how many lines of code or how many hours it'll take to implement, how do I work out how much time to allocate to defect fixing? If it's a new team, and a new technology, and I don't have any historical figures to go on, all I've got is industry average figures and some careful weighting. It's either that or gut feel, and most people's gut feel is terrible.

      The links you posted refer to lines of code per unit of functionality, not defects per line of code. The defect rate of a language is not the inverse of its expressive power. That's because the majority of programmer-introduced defects are from one of three sources:

      1. Programmers not understanding the requirements (usually not their fault, the requirements themselves are usually to blame).
      2. Programmers not understanding the technology they're using.
      3. Programmers not concentrating.

      These are all independent of what language you're using, and they're all just functions of time (see below). That's why defects/KLOC or defects/hr are useful metrics.

      Yes, of course the language you choose affects your productivity, and probably your defect rate too; consider that the move away from C++ to Java and C# probably eliminated 80% of the memory leak defects at a stroke. Of course, that still leaves the unchecked null reference defects...grrr.

      I would, however sound a note of caution about that study. It's not at all clear that their productivity measure includes defect-fixing time. Remember, code's not done until it's done and working. Over the years, I've come to believe that in the hands of a talented programmer, dynamically typed, dynamically structured, interpreted languages can be orders of magnitude more productive. The only problem is, there aren't that many programmers of that caliber. Most programmers need all the help that the compiler can give them.

      When I say they're all functions of time, consider:

      • If you don't understand the requirements, the more of them you implement, the more damage you'll do.
      • If you don't understand the technology, the more code you write with it, the more damage you'll do.
      • The longer you code, the lower your concentration drops. The longer you code with poor concentration, the more damage you'll do.
      --
      Rgasuya aata! : I have been coding Perl and cannot tell where my fingers are now!
    3. Re:My Easter Eggs are comments and error messages. by TrekkieGod · · Score: 2, Interesting

      I'd discourage actual functionality easter eggs too, in most programs. The industry average is estimated to be 10-20 defects per 1000 lines of code. Every non-essential line of code you write risks introducing a bug.

      You're a moron for not understanding statistics. That may be true for a random sample, but if you're adding extremely simple code that just displays some type of notice or picture, and doesn't interact with any other aspect of the software (why would it?), then the chances of introducing a bug is just over zero.

      When was the last time that you tracked down a bug in your software to the About box?

      --

      Warning: Opinions known to be heavily biased.

    4. Re:My Easter Eggs are comments and error messages. by warsql · · Score: 3, Informative
      Because it makes the conversation hard to read.

      Why shouldn't I top post?

      --
      878659 - yep its prime.
    5. Re:My Easter Eggs are comments and error messages. by beakerMeep · · Score: 2, Interesting

      Don't take this too personally ( I don't even know you) but your comment kind of makes you sound like a terrible boss. You should be defending your developers to the client. Is it really so hard to explain to a client that letting your devs blow off steam for 5 minutes gets them a better product overall? This should be a opportunity for you to show them what they are getting that's so good. A chance to point out the benefits of working with you. And if your client relationship is really so fragile as to make an easter egg put it in jeopardy then you have bigger problems to worry about.

      *Unless this is some kind of health care or military or other critical safety related application

      --
      meep
  26. The best one ever by nhtshot · · Score: 4, Interesting

    I used to be the lead programmer for a Big Company (tm). We'd just completed a several year project to build and roll out an in-house ERP system. It was mid-October.

    I decided we needed a little fun break. I whipped up a quick piece of code that recolored all the application screens in orange and black. Through it on the update server.

    When everyone logged in on Halloween, they were greeted with orange and black screens. Everybody laughed. Even the PHB thought it was pretty funny.

    If your work is so serious that you can't have a little fun, it's probably time to find a new job.

  27. No problem if it's small and unobtrusive. by nozzo · · Score: 2, Insightful

    I normally put one in that if you hold down CTRL and click a certain area of the screen it'll say something like "Programmed by x, y and z". Just so I know I'll always have a little bit of me in there.

  28. here's what I did... by marhar · · Score: 5, Interesting

    It's only an easter egg for true geeks, but I used this value as an encryption seed:

    long encrypt_seed[]={1263681869,1381122376,1313821513};

    Hexdumping the executable shows:

    00000130 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
    00000140 00 00 00 00 4d 41 52 4b 48 41 52 52 49 53 4f 4e ....MARKHARRISON
    00000150 01 00 00 00 0f 02 00 00 00 00 00 00 00 00 78 00 ..............x.

    Since it's the file encryption seed, nobody can ever change it without destroying the program's ability to decrypt old files!

    1. Re:here's what I did... by Anonymous Coward · · Score: 2, Informative

      So, you compromised the security of a piece of software to put your name in it?

  29. No every product deserves one... by parabyte · · Score: 2, Insightful

    but if you are proud of what you have achieved, go ahead, it is a human right. I did it a couple of times when it seemed appropriate, and it was never a problem. If you are in a position where you are responsible for creating the system, it is just your decision.

    If you need a rational argument for doing it: It might make the team more proud of the product, more productive for future releases, projects or products. A company is about people, and it is a people issue.

    And when even weapon designers can put easter eggs into missiles, I can't imagine anything to be too serious to pull it off; a product just may be too boring or suck too much to deserve an easter egg.

    An easter egg is just a sign that the people who made the product did care about it, and are proud of it. An easter egg is like a medal or decoration for the product.

    p.

    --
    Without order, nothing can exist. Without chaos, nothing can be created.
  30. Professional ego's? by wimmi · · Score: 2, Interesting

    Do you spit on the onion rings before you serve the burgers?

    I'm going to side with the professionals here (and those are not Microsofties and their stupid flight-sims):
    Leave the smart-ass thingies for good code and decent documentation. When the project's done, wrap it up, check the patches in, write documentary and go on to the next project. Don't waste time on funny shit.

    Jeff Atwood was right when quoting "the best code is no code at all".

    Leave the funny eggs for your MySpace website.

  31. Re:EasterEggs to Website by ShinmaWa · · Score: 2, Informative

    Why are you assuming the question is in regards to a website? The text mentions the project as a "large software product". There's not even an implication that this is product a website.

    Time to broaden your horizons methinks.

    --
    The /. Effect: Thousands of users simultaneously accessing a site to not read its content.
  32. static strings in code by sprior · · Score: 3, Funny

    Back in the mid 80's (the dark days of DOS) I had a habit of looking through executable code with the Norton hex editor. One day I came across the string "Nosey, aren't you." I thought it was pretty funny. In terms of the code I write, sometimes just something cute in the comments. Once when looping through some records I put a comment "these aren't the recORDIDS you're looking for, move along!" Probably nobody got a chuckle but me...

  33. You should already know by richtaur · · Score: 2, Insightful

    It sounds like you shouldn't do it, at least in this particular case. You say that "the software is quite professional," which makes it sound inappropriate. When you work on a fun product whose target audience would appreciate such things, you'll already know that Easter Eggs are fine.

    Pass for now, and perhaps look for more fun projects in the future.

  34. Compiler directives by plopez · · Score: 2, Funny

    How about inserting compiler directives so that if the time zone during the build is detected to have changed by about 12 hours, all text boxes are immediately translated to Hindi or pidgin Chinese? But only in the release build and only after detecting the time zone has returned to within Eastern to West Coast time zones after deployment.

    --
    putting the 'B' in LGBTQ+
  35. Re:No. by D4MO · · Score: 2, Insightful

    how the hell is this modded down? the best code is no code, adding random crap will only have your customers wondering what other random crap is floating in there.

    --

    Rocket science is easy. Neurosurgery, now *that's* difficult.
  36. Re:Initial release? by ScrewMaster · · Score: 2, Interesting

    I think we're talking a difference in definitions here. To me, an Easter Egg is hidden functionality in a software product which is placed there by development staff without the foreknowledge or approval of management. I put plenty of finishing touches in my software, and sometimes there are hidden features that end users aren't told about until they need them. I see nothing wrong with that. Furthermore, such features always relate to the primary purpose of the application (diagnostics, auto-repair functions, etc.) and are not just a way for me to put my stamp on the product. As the senior engineer on the job, the product itself does that.

    Also (and this is important) I'm totally up front about everything that I'm designing into the software, management is aware of what I'm doing and approves it, and there are no surprises. So yes, I do believe a developer placing unauthorized code into an application not owned by him or her is suffering from an ethical lapse, regardless of how "harmless" that code is claimed to be. Depending upon the application, the mere existence of such code can cause problems. I guess you don't work on anything that would qualify as "mission critical", that's all I can say.

    And furthermore, it's not up to the individual developer to make the judgment about "harmlessness" either, not when it comes to potential legal liability, corporate PR or customer satisfaction. Just do your job to the best of your ability, and live with the knowledge of a job well done. If that's not enough for you, maybe a career change is in order.

    --
    The higher the technology, the sharper that two-edged sword.
  37. Yes I would :) by krow · · Score: 2, Funny

    telnet slashdot.org 80

    Take a look at the headers :)

    The ones in MySQL are much harder to find.

    --
    You can't grep a dead tree.
    1. Re:Yes I would :) by P-Nuts · · Score: 2, Informative

      I can't seem to find it - would someone mind posting it?

      Turn in your geek card!

      Try this (run it a few times; the output should be different each time):

      echo -e "HEAD http://slashdot.org/ HTTP/1.0\n" | nc slashdot.org 80 | grep -v ^X-Powered-By: | grep ^X- | sed -e "s/^X-//"

      (Apologies for the rather messy use of grep and sed.)

  38. Yes, but keep it simple! by kalislashdot · · Score: 4, Insightful

    I was working on a Web App that has date fields. There is an example of how to format the date next to it and I put my wedding day. The spec did not call for any certain date. I can look at it years from now and see where I left my mark.

    I do not get any more adventurous then that. Once were were going to make a database table called WEGAS, which stood for Who Else Gives A Shit, it was a list of people who wanted to be notified when the issue/ticket was updated. We chickened out and called it Notification.

    Also if you have a small shop, then it is fun, but in a larger shop it is usually frowned upon. then you also may have to explain it in a code review. So just stay light like I do.

    Once I wrote in the document about paging I put "Example page 7 of 9". to me this is an Easter egg. I could have but page 3 or 10, but that means nothing, and 7 of 9 works just as well.

  39. Absolutely - It saved my company's ass once! by Anonymous Coward · · Score: 5, Interesting

    I hid a secret dialog box in an application I did for a call-center project my employer was working on back in 1999. The software was to manage a call center of untrained temps calling various suppliers of a Very Large Company surveying their Y2K compliance. We were a small company run by an ex-employee (laid off and rehired as a consultant) of the Very Large Company. I hid the egg just as a joke, not really thinking about it. To hide it from the other programmer on the project, I obfuscated the code that created the egg and hid it across several modules. Anyway, about two weeks before we were to ship (and get paid), our salesguy decided to give the customer a preview of the software, which was feature complete and in final testing. He decided that rather than ask me for a demo version, it would be faster to simply send the customer a copy of the folder on my desktop. (This is when I learned to be paranoid about locking my screen when unattended!) All of a sudden the Very Large Company called us and told us they no longer needed us or our software, as they had "repurposed a software used for a previous project". The salesguy threw a fit, talking about how he had "gone above and beyond" to make the sale and "even done a demo". When asked about the demo, he admitted what he had done.

    So a week later, my boss and I paid the Very Large Company a visit to meet with the manager who was our contact. He and his boss very proudly showed us his call floor with about 60 people working at workstations running a very familiar-looking piece of software, talking about how they had this "just lying around" and "forgot they had it" and were "really very sorry".

    So I asked if I could see the "software that beat us". Before he could say anything, his boss said "Sure, go ahead!", and he didn't argue. So I sat down at a workstation, opened the about box on the software, and noted that the text strings had changed but not the layout. So I clicked where my hidden button should be, and sure enough, there was the hidden dialog box with my name, the date, the company's name, and a large picture of Sailor Moon and Chibi-Usa.

    My boss was livid. The manager turned white as a sheet. All of a sudden he didn't want to talk to us anymore! He called security to show us to the door, but the damage was done. Both he and his boss had seen what I did. His boss was not pleased. Apparently he had claimed "finding" the software as an expense. After some discussion between them and our lawyer, it was decided that in exchange for us not suing them and not telling anyone about it they would pay us four times our original contract value. The manager responsible was fired by the Very Large Company, and we fired the salesguy for exposing the company to such liability.

    So yes, absolutely, I hide some sort of identifying mark in everything I do. You never know when you might need to prove you worked on something.

  40. Re:No. by DaveV1.0 · · Score: 2, Insightful

    You are just upset because you know in your heart that he is correct.

    --
    There is no "-1 offended" or "-1 you don't agree with me" mod options for a reason.
  41. Re:More for the Testers by Oligonicella · · Score: 2, Insightful

    My take would be the bogus waste of time for the testers. Each known, introduced bug consumes resources that would go to actual testing. Add to that, it's not the programmer's responsibility to test QA, it's theirs to test him/her and if they find a shit load of bugs, he/her might start seeking employment for being a crappy programmer. And I sincerely doubt anyone will believe or be humored by the revelation they were purposefully introduced.

  42. here is the story you are looking for by Yaur · · Score: 5, Informative
  43. I'm currently writing a traffic lights controller by SharpFang · · Score: 3, Funny

    ...and with the other guy who does the code with me, we agreed to include "disco mode". We're still thinking what set of conditions to pick to trigger it.

    --
    45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
  44. Re:No. by the_B0fh · · Score: 2, Insightful

    *WRONG* You guys are the reasons why software sucks in general, the damned cowboy attitudes. Professional developers leave the need to "leave their mark" at home. You're not a fucking dog needing to pee on a tree to show "your mark".

  45. "I'm sorry Dave..." by quacking+duck · · Score: 2, Funny

    This was all well and good until we had some sort of glitch on a sim under test and the customer's chief pilot managed to land through the runway and the entire cockpit view was filled with something like "Fuck off Dave!"

    Management were not pleased!

    I trust the developers learned their lesson and are using more politely-worded easter eggs when designing HAL?

  46. Easter Eggs are unprofessional by kaladorn · · Score: 5, Insightful

    Some of the responses in this thread make me think a lot of the folks responding either don't do contract software development for a customer, don't work on any sort of mission critical software, or aren't terribly mature.

    An easter egg is: a) extra code that could introduce a new bug (accidents happen, even in easter eggs - I've seen a screwed up easter egg crash a program and leave the machine locked up)
    b) something that is not part of requirements and if caught during client code reviews or after installation, would put your employer in a complicated position since your spending time on such an unallocated task could basically be considered a form of fraud if the client is paying for your services
    c) a sign of vanity - professionals do the job, do it well, and move on, not write silly-ass amateur crap just to amuse themselves and stroke their egos
    d) something some other poor software engineer might have to fix or remove and they might not find so darn funny

    A professional should take satisfaction in a job done well.

    Do civil or mechanical engineers leave easter eggs? Do nurses? Do doctors? Grow the hell up... people bitch about software folks never being given the same respect as other engineering fields and it is the attitude of the average programmer that has a sizable part in explaining this.

    Would you want your doctor leaving an easter egg? Would you want your dentist? Or would you find it funny if your phone dialed random numbers on some developers birthday? Or if your traffic light flashed all green every summer solstice? I think not.

    I suspect the gulf here between those respondents who manage programmers and deal with clients or who work in any form of mission critical software or professional services and those who write shrink-wrapped software or less critical applications when it comes to easter eggs is probably sizable. All it takes is seeing a co-worker having his ass kicked because a manager had his chewed off by an angry client to understand that, in professional environments, this kind of stuff doesn't fly (and shouldn't).

    You're not paid to be an artist. If you were, they'd cut one copy of your code and display it up in a museum. You're paid to implement requirements as defined by your employer and possibly your customer. When you aren't doing that, you're basically screwing the pooch and exploiting your employer. Some may feel justified doing this, but that's a crock. If you don't like the job, GTFO. If you do like the job, be a professional and leave the high-school hijinks behind.

    (And yes, I've worked for 15 years in mission critical software for the police, the military, air navigation training systems, cell phone portals, VOIP and call processors, HR systems, and so on, so it does colour my view on easter eggs...)

    --
    -- Mal: "Well they tell you: never hit a man with a closed fist. But it is, on occasion, hilarious."
    1. Re:Easter Eggs are unprofessional by amorsen · · Score: 3, Funny

      Do civil or mechanical engineers leave easter eggs?

      The fact that you can't find them doesn't mean they aren't there.

      --
      Finally! A year of moderation! Ready for 2019?
    2. Re:Easter Eggs are unprofessional by Facegarden · · Score: 4, Interesting

      Your examples are horrible: Do i want a doctor leaving anything abnormal behind in my body? Fuck no. Do i care if a piece of software i use has an easter egg that shows the dev team when i hold Shift+F8 and click on some logo? No, i don't care at all, they are completely different things!

      Now i know you say you worked on mission-critical software for the police, etc, and if there was a place i might omit an egg, it would be there, but that doesn't mean that easter eggs are universally horrible, and you don't seem to get that.

      And i get paid on salary, which means i get paid to get my work done. I already work over 8hrs every day, and if i have already gotten my work done and I decide to stay an extra half hour and screw around, that's MY decision, on MY time. That's not "screwing the pooch and exploiting [my] employer" as you put it (which i would say borders on stupidity, given the possible situation i just described). Of course i know someone else is paying for the software and i know that my screwing around would never be okay if it was detrimental to the final work, but i don't consider easter eggs detrimental, if they are simple and harmless.

      Simple and harmless may seem like an innocent and uniformed concept, but honestly, unlike what another commenter said, i just don't agree that software is infinitely complex. It's SOFTWARE for christ's sake, it's made to run on a machine that only understands two states, 0 or 1. Software is absolute, and it is one of the simplest things you can encounter, when correctly designed. If i write code that checks for keypresses by running some function in every portion of my program just to have an egg, that could very well lead problem, but if there is a reasonable place to deal with keypresses and i am already using that input for legitimate things, adding one more case is is in most situations going to be completely harmless. I would never encourage a novice to add an egg, but i can't say it's horrible if you know it won't cause damage.

      And ultimately, yes, it is unprofessional, in the sense that the ideal professional never has fun, and only does their job, but don't you think you should lighten up just a bit? I do.
      -Taylor

      --
      Worldwide Military budgets: $2100 billion. Worldwide Space Exploration budgets: $38 billion. Really, world? Really?
    3. Re:Easter Eggs are unprofessional by ralph.corderoy · · Score: 2, Interesting

      I was working on Air Traffic Control software at a sub-contractor and dismayed at how the company had recruited Ada/VMS programmers to program C with X Windows/Motif on Unix, since they had no knowledge of common C programming flaws, or even handling pointers. Together with being given the "dead wood" employees of a sister company sharing the same site to save on redundancy costs it wasn't a good start. Coupled with this was the shoddy quality control practices that management were complicit with.

      A contractor who Barked out hundreds of SLOC in a short time, thanks to poorly structured code that needed re-factoring, would be praised and given a rise and the next piece of work. That his was some of the most buggy code and didn't meet the spec. in many ways was ignored. Others would be given his crap to fix when a week later the problems came to light in testing; management wouldn't pull him off the new piece to do it. Time and time again this was repeated.

      Fagan Inspections were mandatory. But few programmers put much effort into them; as long as they could find a spelling mistake or two in a comment to validate their "claimed" one hour preperation time management was happy.

      The testing tested only the positive outcomes; did X happen when Y occurred? Good. Did X happen at any other times? Who cares.

      So I added a new image to the existing set. I called it "ignored". It was a plane buried nose-first in the ground, smoke rising from it, with a little parachutist floating above. You'd think that might stand out in ATC software. I added code to display it under certain conditions; all the relevant variable names followed the rest of the code but with "ignored" instead of "foo". The image went, with all the others, through Fagan Inspection and was, theoretically, checked against a spec. picture that didn't exist. The code was inspected a line at a time, including, theoretically, against the spec. that gave the logic for when the picture should appear. And the end result went through run-time testing by a large test team against test plans.

      It wasn't discovered. Ever.

      Finally, after many months, when I was about to leave I pointed out it was there. It was removed and no one complained that I'd done it. They all knew too well that it showed my verbal complaints about the process were valid; they just wanted it swept under the carpet.

      Today, that ATC system is controlling the airspace in and out of a major Western country with some of the busiest airways in the world. Oh, and we had a project football team. It was called "Go By Boat".

  47. Other Engineers leave Easter Eggs of sorts as well by jotaeleemeese · · Score: 4, Insightful

    Although I agree with the general gist of your post (not the tone mind you) this need to leave something personal in a major work is not a new thing.

    Workers in cathedrals of all times always took a bit of time to leave personal marks, from signatures to most complex features (faces, figures, etc) to sign a piece of work well done.

    Electronics Engineers nowadays make minuscule engravings in the circuits they design.

    Civil Engineers and Architects very often leave an small sculpture, signature, aesthetic feature that is not in the specifications but that adds a final personal touch.

    I can't imagine that a client paying for a service that is delivered in time and budget would object in the terms you are putting to a silly joke, but I tend to agree that in the case of software, unlike an added feature to a bridge or a building, a joke can always bring a system to its knees (even if it is coded carefully and cleanly, software is exponentially complex, so it is almost impossible to foresee all the possible conditions under which an Easter Egg could cause havoc).

    --
    IANAL but write like a drunk one.
  48. Oh for bunnies sakes. by jotaeleemeese · · Score: 2, Insightful

    In civilized countries only junkies and alcoholics don't eat or have a roof over their heads (if the US is civilized is open to discussion, they don't even have socialized health care).

    If you live in Somalia, Ethiopia or Sudan then yeah, your are fucked if you lose your job, but an British, German or Japanese person worrying about going hungry or homeless is frankly ridiculous, I don't know about the US, but I did not see any shanty towns the few times I was there (although it seems some are goring outside some towns in Texas....)

    --
    IANAL but write like a drunk one.
  49. Re:More for the Testers by Hatta · · Score: 2, Informative

    That only works if you assume all bugs are equally likely to be found. Clever idea though.

    --
    Give me Classic Slashdot or give me death!
  50. Re: A WORK FOR HIRE by Douglas+Goodall · · Score: 2, Insightful

    As much as we would all like our names on our work, many of us work under contract to create software that then belongs to the client. Unless you have it in the contact, and/or it is in the specification that an about dialog displays the programmer's name, doing this may be actionable. Many companies where the owners are developers themselves are ok with this because they understand. Some companies feel they need plausible deniability in case a developer runs afoul of the law, like that file system guy. Did IBM really want everyone to know Easywriter was written by Captain Crunch? Not really. In fact that was quite a lapse of judgement. Support people just hate hearing from users that unknown functions exist when undocumented keystrokes are entered. I suspect this kind of thing originated in game software mostly. In retrospect, people would be surprised at all the software I have written, and I wish I had the ability to have my name displayed when people are at an ATM machine, or use a SCSI hard drive...