This article has caught my attention, mainly because it appeared both on Planet KDE and on Slashdot. The comment section of Slashdot was particularly fun to read, because it sort of reminded me what i have seen back in the day of KDE 4.0 release.
Basically, we have loads of users whining about how GNOME changes things in a way that they aren't where they used to be any more. And then there's Unity. Unity is another topic altogether, and while it may seem that its arrival was completely uncalled for (what? another Linux DE choice?!), that is actually not true. The real reason for Unity to appear is that GNOME2 sucked and the GNOME dev team is a bunch of assholes. Mark Shuttleworth embraced the coming of netbooks and understood that the touch-enabled desktop devices' arrival is inevitable, and he simply didn't want to wait for GNOME developers to pull their head out of their asses and look into the future, not into the past. So while Unity may or may not suck (earlier versions of Unity definitely sucked, didn't try later ones), it may or may not look like Mac OS X (latest versions definitely do share a lot of similarities), it may or may not be necessary after the GNOME Shell arrival, it was necessary in order for those GNOME dumb fucks to realize that backwards compatibility is not the only thing that matters.
And finally - thank God! - GNOME guys started thinking, and they pulled their heads out of each others' asses, and they started moving, and they released GNOME 3 and GNOME Shell. I didn't get my hands on them yet, but from what i see on the screenshots, they look pretty cool. No more Windows 98-ish look, GNOME 3 looks more like a mashup of Mac OS X and MeeGo. Which is good, because these are the interfaces people consider both beautiful and usable.
But what is it? Why GNOME users are whining? Aaaah, the desktop behaves differently from they are used to. Welcome to KDE 4.0 guys, now it's your turn. Pull your heads out of your asses (i like this phrase!), change is necessary. Face it - GNOME 2 has all but stagnated. It wasn't fun, it wasn't configurable. Some people confuse GNOME 2 limitations for minimalism, but whatever. Man up, idiots, if even GNOME dipshits decided that it's time to change - that's for your own good. Remember, GNOME knows exactly what every user needs. That's why they leave out so many configuration options, isn't it?
The problem here is that people are not against GNOME 3. They are against the change. Back in the day when KDE4 was introduced, it changed everything. It was practically rewritten from scratch. Why? So we could enjoy so many great software today. I think the real KDE 4 will be KDE 5. KDE 4, while being a major rewrite, has only laid the foundations. Hell, KDE PIM got Akonadi support only on KDE 4.6/4.7 - that's more than halfway through the development cycle. Despite it being a rewrite, it's still pretty much a long ass transition to the integrated, semantic future. GNOME guys are finally moving that way too with their Zeitgeist thingie. So essentially, things change. And people don't like it.
Look, here's one for ya. You know why GTK and GNOME sucks? Look how much time it took to write Unity. After two years it's finally usable. How long did it take for KDE guys to write two (!) releases of Plasma Active? Three months? Five? Moreover, Plasma Active is practically a project of a couple of weekend hackers. Unity has corporate backing of Canonical. Plasma, KDE and Qt in general are far superior in terms of getting working (and fast!) code as quickly as possible. KDE architecture enabled writing Plasma Active in so little time. KDE architecture enabled Calligra guys to write a backend, on top of which interfaces for both desktop and mobile can be built very quickly. GNOME doesn't have nearly as much power both from user and developer point of view, and because GNOME developers are idiots, GTK will never have that power.
But as much as i despise GNOME, i have to give credit for finally growing some balls and doing GNOME 3. Also, Vala is a terrific idea. Having a real object-oriented language which translates itself into native C code? Brilliant. Now developers can have the speed of native C and experience the full glory of ass-backwards GTK and GNOME architecture. The only thing i'm not sure of is how to debug this thing if it translates to C code? It sorta reminds me of Google Dart, only in case of Vala it actually tries to solve a real world problem of trying to write object-oriented code in a language that is more suitable for low-level system programming than for GUI stuff. Time will tell though.