GNOME Annual Report 2007 - GNOME's First Ten Years
Author: Federico Meña Quintero
Do you remember ten years ago?
"We want to develop a free and complete set of user friendly applications and desktop tools, similar to CDE and KDE but based entirely on free software [...]" http://www.krugle.com/examples/p-8PspKxKyrNVEfC9Q/proposal.html
So, let's see. Free desktop? Check. Complete desktop? Check. Applications and desktop tools? Check, check!
We have completed our original goal.
Ten years ago, GNU/Linux distributions did not include a free and usable web browser. Ten years ago, using only free software, you could not do graphic design and illustration, you could not balance your checkbook, you could not download pictures from your camera to the computer, you could not do phone calls over the Internet, you could not create a spreadsheet with pie charts, and you could not plug a USB drive into your computer and expect it to "just work". Okay, USB sticks didn't exist ten years ago, but you get the idea.
I hereby thank all the people that hacked, translated, documented, decorated, and marketed all of this, making it a reality. You have given us freedom, good jobs, and a priceless group of friends.
Sure, our desktop still has bugs here and there, and some things don't yet work as smoothly as they should (printing and other ugly swamps), but the basic goal is done: we have a free-as-in-freedom, easy to use, stable desktop with a number of utilities and applications. We have a few million non-technical users, a few thousand technical ones, and many people and companies using GNOME.
A couple of years ago, people were becoming concerned that GNOME lacked direction. We were beginning to realize that the original goal was done, so now what? If anything, GNOME is in a healthy transition, similar to that of a teenage crisis, where it doesn't quite know how to grow up and changes its mind all the time.
It's about home users! It's about mobile devices! It's about big deployments! It's about corporate desktops!
Dan Winship, one of the long-time GNOME hackers, made a beautiful observation:
The problem is that the community doesn't know what direction it wants GNOME to move in, and so some people are pulling one way, and some are pulling another way, and the vectors all sum to zero. http://mail.gnome.org/archives/desktop-devel-list/2007-February/msg00105.html
Gradually, we are recognizing that we must let GNOME grow in different directions, without requiring everyone to do the same thing or letting a new direction become a distraction.
Back when GNOME was small, it was easy to create new directions for it.
We said, office applications? Sure, go ahead and write them. We had grandiose plans for a spreadsheet written in the Scheme programming language. I started writing a "sheet" object with a linked list, and then I realized that I knew nothing about spreadsheets. Fortunately there were saner people who did the right thing: Miguel de Icaza wrote the basic spreadsheet engine while I wrote the display engine, and later Jody Goldberg and Morten Welinder came about with *real* knowledge of spreadsheets, and they made Gnumeric beautiful.
We also said, "Flashy desktop? Go ahead!" Carsten "Rasterman" Haitzler wrote the original theming architecture for GTK+, and taught us how to make windows and widgets look incredible. One day I was having dinner with Rasterman in a pizza place a block away from our apartments when we lived next to each other. He told me, "You know, the future is to draw everything with 3D acceleration." This was back in 1998! I said, "No way, <N semi-plausible technical reasons why it couldn't be done>, it's never going to happen." Of course what happened is that two or three years ago Apple started doing it, and now we are playing catch-up. Raster was quite the visionary, and I wish we had listened to him more.
Once we said, "Usability? Sure!" MIT, Sun, and others did usability tests and beat us in the head with the results. There's nothing like people telling you, "Users can't log out because they think this icon looks like a fried egg". People even figured out how to fit a usability lab in a backpack.
A few years ago, we were either working on many vertical, self-contained problems; or, if we worked on horizontal ones which touched the whole desktop, GNOME was small enough that we could change *all* of it quickly. But not anymore --- GNOME is big, and integrating all the different parts together can be a major piece of work.
That is why people are afraid to have a part of GNOME diverge: what if someone comes up with a super-cool idea that means changes in *all* of GNOME? Who is going to write that!? Why, the people who are interested in it! It's the same way it has always been, just bigger. Bring it on.
We are changing the world, one patch at a time.
Happy hacking to all of my GNOME colleagues, friends, and users!
Design notes
See sketch here.