LWN.net Logo

Easter eggs and free software

Someday, when you feel that you have been sufficiently productive for a while, fire up the OpenOffice.org spreadsheet application. Select a cell, and insert =Game("StarWars") into that cell. Launch missiles at alien creatures until you feel ready to get something useful done again. Yes, the OpenOffice.org developers, evidently feeling that the application [StarWars] had become too small and quick, decided to toss in an easter egg. Judging from the occasional German-language popup window, this feature has been present for quite some time. Others exist as well, happy hunting.

Easter eggs have been present in software - free and proprietary - for many years. Old versions of make used to respond to "make love" with "not war?"; your editor notes with sadness that GNU make does not retain that feature. In general, easter eggs are a way for developers to express themselves, and are generally seen by users as amusing, or harmless at the worst. Recently, however, an OpenOffice user complained about the presence of the StarWars game. Free programs, he says, should not contain hidden features like that. One of the advantages of free software is supposed to be the lack of surprises; if you install an office suite, that is what you should get. The hiding of games, pictures of the developers, and other unrelated features in free software threatens to make the whole enterprise appear to be insufficiently serious.

Others have argued that easter eggs can endanger the use of free software in settings (like schools) where hidden games might not be welcome. This is, they say, one Microsoft feature that we do not need to emulate. To that end, various bug reports have been filed asking for the removal of easter egg features.

As a counterpoint, one could argue that free software is supposed to be fun for both its developers and its users. Those who don't want to play "StarWars" might be well advised to install a sense of humor upgrade and simply not invoke the feature - which, after all, one has to go looking for in the first place. When the code police start going after easter eggs, humorous diagnostics (the kernel still has several variants of the "peripheral is on fire" message), or possibly offensive code comments, some of the developers will start to think that they want to go elsewhere.

As free software development processes mature and the user base increases, it seems likely that many of the easter eggs are likely to disappear, especially in the larger, more mainstream applications. Developers who are interested in code quality and bloat will see an easy way to remove an apparently unnecessary feature. Projects which have their own PR departments (and, yes, such projects exist) will not welcome the sort of attention that easter eggs bring. And those which remain may be excised by the more business-oriented distributors. But, free software developers being what they are, there will always be a surprise or two waiting for those who know where to look.


(Log in to post comments)

Easter eggs and free software

Posted Feb 9, 2006 5:30 UTC (Thu) by roelofs (guest, #2599) [Link]

Judging from the occasional German-language popup window,

...not to mention the title bar...

this feature has been present for quite some time.

10 years would be my guess. ;-)

Greg

Easter eggs and free software

Posted Feb 9, 2006 7:18 UTC (Thu) by ronaldcole (guest, #1462) [Link]

Count me in the "remove it" camp. The last thing I want is to have my system compromised by a buffer overrun in an easter egg. I'd imagine especially more so for the maintainers just from the potential embarassment alone!

Easter eggs and free software

Posted Feb 9, 2006 9:19 UTC (Thu) by k8to (subscriber, #15413) [Link]

Yeah, I correspond with this comment. It's likely poorly reviewed code if it's hidden functionality. Correctness in mainline functionality is hard enough to come by. I have no interest in code that's almost never used, and certainly not well reviewed.

If there's _any_ code that can be cut from a project without sacrificing important functionality, I'd like to see it go. Easter eggs are an obvious candidate.

Easter eggs and free software

Posted Feb 9, 2006 8:46 UTC (Thu) by anselm (subscriber, #2796) [Link]

It appears that what is required is an »--enable-easter-eggs« option to »configure«.

Anselm

Easter eggs and free software

Posted Feb 10, 2006 13:47 UTC (Fri) by pauly (subscriber, #8132) [Link]

yep, and please take the code to a serious security audit
so this really can remain a fun item (never want to crash
on stuff like that either!).

Easter eggs and free software

Posted Feb 9, 2006 9:57 UTC (Thu) by PhilHannent (guest, #1241) [Link]

I don't see what all the fuss is about. Its a way for the developers to code something that isn't just plain old spreadsheet code, they say a change is as good as a rest.

If people are that offended by easter eggs that can always compile their own version.

Easter eggs and free software

Posted Feb 9, 2006 15:53 UTC (Thu) by GreyWizard (guest, #1026) [Link]

Why can't developers who want a break from writing spreadsheets put some effort into a free software game project instead? I agree that there's no need for a squad of crusaders to purge anything "unprofessional", but embedding a game in an unrelated project seems a little much.

Easter eggs and free software

Posted Feb 9, 2006 14:20 UTC (Thu) by KaiRo (subscriber, #1987) [Link]

Welcome to the discussion!

As part of the Mozilla project, I've heard endless "easter egg" discussions. Netscpe 4.x had over-used the about: protocol for numerous such hidden things, most of them just redirecting to some developer's homepage. Most of those were stripped in Mozilla code, though the most important, "about:mozilla" had even be updated and maintained (despite of some people wanting to kill it) and is still present in today's Firefox and SeaMonkey browser versions.
The most extensive discussion about an "easter egg" in our code was for sure the "kitchensink" bug report though. And we still do not ship the kitchen sink yet ;-)

Easter eggs and free software

Posted Feb 9, 2006 14:30 UTC (Thu) by glennc99 (subscriber, #6993) [Link]

I don't think I ever encountered "not war?" as a response to the Unix
"make" command. I did, however, see it (or the similar 'not babies?') in
response to the "make" command on Dec's TOPS-10 operating system, where it
was a command that launched the TECO editor in 'create a file' mode.

A better bug thread is

Posted Feb 9, 2006 17:31 UTC (Thu) by Baylink (subscriber, #755) [Link]

here.

Make

Posted Feb 9, 2006 17:41 UTC (Thu) by rfunk (subscriber, #4054) [Link]

The only way I've encountered the "make love" thing is when someone added it to their makefile:

love:
        @echo "not war?"

Easter eggs and free software

Posted Feb 9, 2006 21:52 UTC (Thu) by mst@mellanox.co.il (guest, #27097) [Link]

> When the code police start going after easter eggs, humorous diagnostics
> (the kernel still has several variants of the "peripheral is on fire"
> message)

This might be historical, not humorous. Look here:

http://marc.theaimsgroup.com/?l=linux-kernel&m=102893...

Also, look here: "Humor In Kernel Code":
http://kerneltrap.org/node/542/

Easter eggs and free software

Posted Feb 9, 2006 22:49 UTC (Thu) by finsko (subscriber, #10117) [Link]

I remember old versions of make responding to "make love"
with "Don't know how to make love".

Easter eggs and free software

Posted Feb 11, 2006 2:24 UTC (Sat) by opalmirror (subscriber, #23465) [Link]

More precisely

$ make love
make: Don't know how to make love. Stop.
$

wasn't OpenOffice commercial when this was done...

Posted Feb 9, 2006 23:22 UTC (Thu) by pflugstad (subscriber, #224) [Link]

Since this is 10+ years old, wasn't OpenOffice (then StarOffice, or some German name) a commercial product at that time?

So any association with this easter egg and "open source" is incidental at best. The failure to remove it is the only real lapse and I'd rather have them working on MS Excel import than removing silly easter eggs.

Easter eggs and free software

Posted Feb 10, 2006 2:37 UTC (Fri) by liamh (subscriber, #4872) [Link]

Funny you should mention the "humorous diagnostics" that sometimes pop up. Having been exposed to the culture for several decades, I know how they are intended to be received when I see them. But not being steeped in the culture, I get perplexed and frustrated. There is an important piece of information I'm looking for, and it is obscured because someone wants to crack a joke.

Humor is very culture-specific and does not scale up. What is funny in a small hacker lab at MIT does not translate well to thousands or millions of users, some maybe using a computer for the first time, many who do not speak English, and so on. Since we do have temperature sensors on our main boards, it is not far-fetched to imagine such sensors in peripherals. Is it that ridiculous that a computer could detect a fire in a peripheral and warn the user? What if someone who doesn't know that this is a joke takes it seriously?

Humor in the kernel (or in any software that users might see) smacks of clubbiness, an "in" joke that only the elite are supposed to get, and that everyone else has no business using the software. This seems antithetical to the philosophy of free software.

Having said this, I really do appreciate humor (like "the OpenOffice.org developers, evidently feeling that the application had become too small and quick, ...") but humor has to be user-tested to make sure it works for all audiences, just like user interface design.

Easter eggs and free software

Posted Feb 10, 2006 19:45 UTC (Fri) by gmaxwell (subscriber, #30048) [Link]

I've generally found the funny error codes useful. For example, they are far more easily remembered by the novice user. Also, they are more easily searched for (both via internet search engines and simple greps of the code) because they are more 'unique' (internet), more likely to be quoted in full (internet), and less likely to be autogenerated from several non-obvious parts (grepping the code).

xdaliclock

Posted Feb 12, 2006 6:58 UTC (Sun) by astrophoenix (guest, #13528) [Link]

on new year's eve, 1999, I had xdaliclock running. when it hit midnight
(2000), the digits all became a mirror image. it was quite cool. I
actually looked in the source code for it, but couldn't find it.

Easter eggs and free software

Posted Feb 13, 2006 12:21 UTC (Mon) by sbergman27 (guest, #10767) [Link]

Hmm. When I try this in the OO.o that ships with CentOS 4.2, I just get a cell with the text: "oh no, not again!" and no game. Should I file this as a bug?

Wanda

Posted Feb 13, 2006 13:59 UTC (Mon) by pm101 (guest, #3011) [Link]

I normally never use Gnome. One time, a few years back, I installed a default Debian install, with desktop and all (I was rushed). At some point, I saw the fish swim across my screen. My intial reaction was to think that my system had probably been broken into, since it was exhibiting behavior which I had not configured. It wasn't until I'd wasted a bit of time (when I was otherwise on deadline) that I found out this was a Gnome easter egg.

apt-get moo

Posted Feb 16, 2006 7:15 UTC (Thu) by rqosa (subscriber, #24136) [Link]

$ apt-get moo  
         (__)  
         (oo)  
   /------\/  
  / |    ||  
 *  /\---/\  
    ~~   ~~  
...."Have you mooed today?"...

more easter-eggs!

Posted Feb 16, 2006 11:04 UTC (Thu) by mcm (guest, #31917) [Link]

# emerge moo


  Gentoo (Linux)

 _______________________
< Have you mooed today? >
 -----------------------
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||


or the amd64 easter-egg
-- i just hope that one is "security audited" (...) etc.
for  all those people in fear of cpuid exploits :|

Copyright © 2006, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds