Now that GNOME 2.14 is almost out I would like to propose an overarching goal for GNOME 2.16. Codenames that reflect this goal are:
GNOME 2.16: No New Features.
GNOME 2.16: Polish, polish, polish.
Yes, you heard me. I would like to see six months of GNOME development love going in to fixing bugs and improving the GNOME infrastructure in terms of documentation and web sites. I know that would be boring for many of you, but please: think of the children! Ooops, I mean users.
By "Bug Fixing" I mean not only clearing things out of bugzilla, but also attending to the things that are often talked about as being in need of improvement. I am willing to help where I can. Please bear in mind that I am not a developer, but apart from that, feel free to approach me with tasks. I don't want to be just a complainer ;-)
I was impressed by a comment made at GNOME.conf.au in Dunedin recently. Someone mentioned the how the policy in New York City of "Zero Tolerance" to crime worked so well. Apparently the story is that if even the smallest of crimes (like littering and jaywalking) are not tolerated, there is a corresponding fall in the crime rate for the more major crimes. The reasoning behind this is (IIRC) explained in the book "The Tipping Point".) Please, if I'm getting these details wrong, let me know.)
I am reminded of the situation with TeX, and also LaTeX: there are practically no bugs in these packages. We can argue about why this is, or whether it is possible for GNOME to emulate the acheivements of Donald Knuth, but the point remains that bug-free software is possible, and that feeping creaturism must be resisted.
I, and almost all of my normal user buddies, HATE new features almost as much as we hate bugs. (OK, that's an exaggeration.) But honestly, whenever we hear that our versions of Windows, Office or whatever is going to be upgraded, we groan. Because amongst all the new features there is almost never anything actually useful, and all we get are new bugs. Often we have to learn new ways of doing things that don't seem any better than the existing ways. And most of the old bugs don't go away either. The "upgrade" cycle seems to be driven by the IT department needing new central management functionality rather than the actual users demanding new features.
Adding new features to software is largely driven by commercial imperatives, where common business wisdom goes along the lines of "constant innovation is not just the key for success, but a necessity for survival". We in the GNOME community do not have these imperatives.
Adding features is necessary (as opposed to fun) only when we have a desire to produce a system that is a replacement for other systems. (Getting people to start using GNOME in place of something else.) In that case it is necessary to match a large subset, but by no means all, of the system that you are trying to replace. If we are talking GNOME and GNU/Linux versus Windows XP and Mac OS X, there are a few major areas to achieve parity:
1. Multimedia handling
3. Laptop support
Wouldn't it be great if you could buy a new laptop, pop a CD of the latest version of you favourite distro in the drive and install the sucker with no more hassle than if you were trying to install one of the other systems? (Note I am not saying "with no hassle"!)
And then, imagine you could use your laptop without feeling like a second class citizen in the computing world, because your system can't read/play certain files or plug in to the local corporate infrastructure. Wouldn't that be great?
How much of this simply can't be done because hardware and software manufacturers will not let GNU/Linux and GNOME hackers have access to the relevant information? How much of it could be acheived by simply setting it as a goal? I do not pretend to have these answers.
Having re-read this article before posting I realise that I have been ranting. (Actually, I knew that as I was writing it.) I am hesitant to publish this rant, but I will; if only to find out if anyone shares my pain ;-)
Oh, and before I forget:
Thanks to all you GNOME hackers for making a really good GUI for GNU/Linux (and others). A really good desktop environment that has the potential to be great. If it was crap I would just switch to KDE :-)