Why did I write that mail? First of all, I'm very sorry for doing precisely what I was trying to prevent - alienating people. I wrote that mail in anger, always a bad idea. I owe everyone, and especially the design team, an explanation.
In Gnome we are going through a period where there is a important group of developers that feel disenfranchised. These are not people on the fringe of Gnome, but hackers close to the core. We have been in a similar situation before. Not all of the people to whom I referred indirectly in my other mail were around at that time, so allow me to tell that story. The beginning of the Gnome 2.x series was a very painful time. The major companies involved in Gnome were in vicious competition, with everyone blaming the others for trying to gain control of Gnome. The first rounds of usability testing had happened late in the Gnome 1.x series, and everyone was starting to understand what "easy to use" software really meant. We had to kill or rewrite a lot of code from Gnome 1.x to achieve a simpler and more coherent system. Things just didn't work very well during the first Gnome 2.x releases. A big meme at that time was that software needed to be as simple as possible in its presentation to the user - as few options and commands as possible, and everything simplified so that beginners would not get confused. People wrote very enlightening essays about the virtues of simple user interfaces. We had a rather new Human Interface Guidelines document, which could be used as a reference for keeping things consistent ("12 pixel spacing between widgets; such and such capitalization for menu items"). We made Gnome 2.x work well; it was simple to use, the UI looked clean, and developers successfully internalized many of the ideas that we had struggled to push through earlier. It was a great victory to see that throughout Gnome, instead of random hacking we had people basing every decision on whether the resulting software would be consistent and easy to use. And then, people wanted to take Gnome further: add more functionality to existing software; integrate new things into the core; make things more complex but with good reason. However, the "keep things simple and stable" meme got taken too far. Proposals to add functionality got shot down. Modules couldn't be integrated. In trying to keep things simple and stable, and in trying to polish existing things rather than creating new ones, a loose and small group of people were inadvertently alienating those who wanted to do new kinds of development in Gnome. There was a lot of discomfort because Gnome seemed stagnant. Someone came up with the term "UI Nazis" and it stuck, Godwin's Law and all. Things got near to the breaking point when Nat Friedman gave a keynote address during GUADEC 2004, titled "Swinging the Pendulum". You can see it at http://nat.org/NatFriedman-GUADEC-5-Pendulum.sxi One of the main points of Nat's talk was that we were at a point where Gnome was ignoring innovation for fear of losing simplicity. His presentation had a section called "barriers to hacking", where he had items like "lack of tools", but also items like "lack of community", "embarrassment" (because your work is not seen as good enough), "humiliation" (because you get told that you are not up to Gnome's standards), and "ridicule" ("you think *that* is a good UI? It doesn't even follow the HIG!"). There is a big slide in that talk that says, "We need the cultural freedom to innovate". >From what I've seen happen since the start of Gnome 3, we are at a similar period right now, where groups of Gnome developers are in discomfort because the dynamics of the project are working against them. You could say that in Gnome 2 our meme was, "keep things simple for the user", and in Gnome 3 our meme is, "design first, then develop". BOTH ARE GOOD THINGS TO DO! The problem is when you do too much of each. We tried to keep things *too* simple, so we couldn't innovate. Now that design is at the forefront, we have these happening: * People feel like the design team has to give them permission to write things. * People feel like they can't come up with (visual/interaction) designs on their own because it is the design team that does that. * People write well-reasoned emails explaining things, and apologize at the end with "... but I'm not a designer.". * The feature proposal process is vague. We had a module proposal process that is not ideal for everything (especially "horizontal" changes that involve many modules), but at least there was a clear way to get a new module integrated. And the thing is, THE DESIGN TEAM DID NOT INTEND FOR ANY OF THIS TO HAPPEN! During Gnome 2, we had many of the top-tier hackers simply leave the project, one by one, because they got tired about all the bickering. They now contribute elsewhere where they don't have to bicker as much. I don't want to have situation in Gnome 3 where we lose good hackers due to the current situation. Plase consider this mail my apology and my explanation. I see that Allan already started a thread on how to improve things, so I'll continue there. Federico _______________________________________________ desktop-devel-list mailing list desktop-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/desktop-devel-list