If the GNOME 2 -> GNOME 3 debate has produced more vitriol by volume, I'd say that just reflects GNOME 2 having a much larger user community than GNOME 1 ever did.
Sure, Microsoft and Apple feel like they have to shove a new load of, uh, cr-p onto us on a regular basis and have enough resources to maybe make that work. But Gnome just didn't have the same marketing positioning.
I'm all for modernizing interfaces. But it seems like either Gnome choosing one or Ubuntu choose one and then these being pushed on us isn't really a good way (or an effective way). Because "modern" mean "opinionated" and open source probably won't easily adopt opinionated approach.
I think the lesson here is that the circumstances at times compel platform vendors like KDE and Gnome to make these big next-gen releases, and the market compels them to do them before they're quite ready for end-user primetime, because the alternative is a serious loss of momentum, e.g. in the third-party space that is waiting for that release. And this is likely even more true in the FOSS space, because you're not just bleeding third-party interest by not shipping, but also developer recruitment.
It's a balancing act. Looking back, I don't think we found quite the right balance with KDE 4.0. But realistically, shipping 4.0 only when it had achieved the quality level, of, say KDE 4.5 just wasn't going to happen, either. Because if we hadn't shipped at some point, we'd might not have gotten the influx of contributors and early adopter feedback that we needed to make 4.5 happen.
Really, people are being presumptuous by saying these things happen carelessly. The reality is that there are pressures pulling you into different directions. You sometimes make bad calls under pressure. At other times you make the right call but get to chose between multiple options that each have their own downside attached.
Call it "4.00001" or "3.9999". It seems to me that you could get people's attention and so get test users while still trumpeting the software's "not-completely-finished-ness".
a) It's not all about beta testing. A big thing is developer recruitment. The demographics among FOSS developers ensure a relatively high amount of turnover: Many of them are at an age where their life and/or job situation is likely to change within two-three years, causing them to move on. A steady influx of new talent is needed to keep the show on the road.
At the same time, a project that isn't releasing is less attractive to contributors for a variety of reasons: The time it will take for your handiwork to be delivered into user's hands, the level of information circulating about contribution opportunities (i.e. "what does this even do that I might want to hack on"), et cetera. It's also still true that a lot of FOSS contribution is itch-driven: You start contributing because what you're using isn't doing quite what you need it to. But if you're not using it, if there's no exposure, there's no way for the itch to happen. And usage explodes with a real release vs. a beta.
b) People don't test betas, relatively speaking. The amount of feedback explodes for an actual release. Now you'd think that beta feedback would be of higher quality on average (due to people who actually do test betas being more advanced users), but even expert users often hold back on betas despite knowing better.
An experienced developer should be mature enough to know that he and his kind should not be the target audience of his product. And putting in all those little checkboxes makes a product a horrible experience for the rest of the world.
If you don't pay me, I will still contribute, but then I will work only to scratch my own itch. I will implement features, but only those I want to have myself; I will fix bugs, but only those that annoy me personally; I will write some documentation, sometimes.
If you don't pay me, and your project goals make it impossible for me to scratch my itch, then I will not contribute to it.
And that said, it doesn't need to be so difficult to include all these pesky checkboxes in a way that they don't confuse or hinder usability for n00bish users. This used to work for Gnome 2. Never met anyone who thought Gnome 2 was too hard or counter-intuitive, they were just more or less used to it. Windows XP and Windows 7 have a lot more checkboxes if you look for them.
If there's one thing that Apple and even Microsoft are showing with their window manager and widgets, its that simpler is better, and we've been missing that all these years.
Whether you call Gnome 2 hard or easy, it's main problem was that it's configuration apps and menus were confusingly organized. If the incremental improvements Ubuntu was making could have continued a few more years, things might have been great. The decision to create "Gnome shell" probably forced Canonical's hand but Unity also seems terrible to me.
I like solving problems for other people. But when I'm using open-source software, the only problems I'm really aware of are the ones I'm having.
In a commercial setting, I'm very motivated by user tests or data that demonstrates problems people are having. I've seen a lot of other developers get excited about that, too. Fixing things is fun when you can see that your actions actually help somebody.
But I've never seen an open-source project that makes it easy to get engaged in that fashion. The closest I've seen is users asking support questions on the mailing lists, which is a pretty small slice of users these days. Plugins also seem to provide a nice feedback loop like that: you make something for yourself, you throw it out there, and you see people installing it and commenting.
But broadly it seems like an unsolved problem in consumer-facing open source.
Too bad Gnome developers are so far removed from UX and the desires of the "common user" it isn't funny
They took "removing stuff" as their mission and follow it blindly.
Or for a car analogy: Gnome removes the clutch but it doesn't give a torque converter and automatic transmission.
Open source is very much about scratching one's own itch
Perhaps better questions to ask would be what is Gnome 3? What is Gnome Shell? And what is Gnome? Sorry but it's a bit difficult to comment on Gnome when it's not entirely clear as to what it is.
The thing is, they could switch to a qt based desktop, without touching any unity code.
Personally, I moved away from gnome when 2.4 (or maybe it was 2.6) took out the "launch a terminal" option from the desktop right-click menu.
That to me feels like a very nice hierarchy:
A few basic, common options available in the main UI.
A few more-advanced/less-commonly-desired options available in a part of the UI that's labeled "Advanced". Things that mortals-but-not-noobs would be interested in. Novices actively don't want to hit Advanced but the sort of user that would be interested in these options goes right for it.
Then really exotic options are available through an interface that takes up absolutely no UI space but is easily accessible by most of the kind of people that would want such things.
Where you do see lots of "Advanced…" buttons is in System Preferences…
Security & Privacy
(Displays - Calibrate has an "expert mode")
Mail, Contacts & Calendars - for manual mail accounts
Network - big advanced section
Bluetooth
(Zoom in Accessibility has "More Options...")
So there's a few of them, but I wouldn't say lots.By the same token there's no way to do this for the web. (you can override style sheets willy nilly but don't expect a lot of stuff to work).
I suggest you might need to get used to reading text on backgrounds that aren't a "pleasing greenish" color, write all your own software, or learn to live in a world of pain.
Instead of allowing people to set the default edit field background to magenta (which windows does) Apple spent engineering effort on, say, universal access.
It doesn't have to. The measure of a good product, as far as I'm concerned, is the extent to which it can retain all the power the power-users want, while still keeping things simple enough for the non-power-users. OR, better yet, the extent to which it can help non-power-users become power-users.
Motivation goes beyond money.
Why is sane defaults and hidden options a lousy user experience?
You need an easy way to get as close to vanilla as possible, to make support and faultfinding not awful. But you need to provide some kind of hidden method for tweaking to keep power users happy.
This is the biggest weakness of FOSS in general. It is true that some people work on the stuff that has to get done or isn't "cool" but contrasted to "cool" parts where folks are available in abundance and it means people burn out and there is no one there so replace them. If there isn't someone out there paying someone else to be in that uncool part of the code, chances are bit rot sets in.
But maybe that's just a problem with Unity, instead of a good thing about Gnome. I'm curious to try out this Cinnamon thing for Mint, what's it based on/looks like?
Interestingly, the direction some GNOME developers want to take is to make it even bigger. E.G. Juan José Sánchez and Xan López's proposal for "More GNOME 3, GNOME targeting new form factors and GNOME as an OS or final product/UX".
http://blogs.gnome.org/otte/2012/07/27/staring-into-the-abys...
I recently saw a lawyer for gnome speak, and even she had trouble sticking to 'guh-nome'. What hope do those outside the dev community have?
This is news to me since my colleague, running Ubuntu 12.04 is using Gnome/Unity. Did I miss a memo?
According the Gnome people, you're no longer using Gnome if you're not using the Gnome shell. Whether that's true is open to interpretation.
Popular distros like Ubuntu and Mint have shifted away from it
What do they use instead? Just gnome 2.x?Mint: KDE, Xfce, MATE, or Maya [1]
2. If Gnome really wants to win back the hearts of potential contributors (i.e. power users), they'd better make programs that appeal to that demographic. People who have the skill and motivation to make significant contributions to a free software project often want a lot of room for configuration, including the option to use the desktop in a traditional manner. Taking away those little checkboxes and toolbar buttons is like slamming the door on power users. You might win a billion non-technical users, but none of them will ever submit a single patch.
3. Gnome is too big for its own good. Why does a desktop environment project need to maintain a complete stack of apps and libraries, from GTK to Gnome Shell to a text editor to a bundle of games to a web browser to an email client to a media player to a full-blown spreadsheet app? Why can't they just tell people to get a third-party browser? They should spin off the rest and focus on GTK, the Shell, and a small number of essential utilities. If Epiphany or Gnumeric died a slow and lonely death, how many people would really care? Heck, if you don't have the manpower to maintain anything else, just give me GTK so I can install xfce or lxde on top of it. It's really just Firefox and LibreOffice and VLC that I want, and I don't need Gnome to run them.
Edit: some rephrasing.