
The GNOME Foundation executive director, Stormy Peters, recently wrote a bit about why the focus on "the KDE versus GNOME" debate is not the real issue. Many commenters on her post agree (while others actively demonstrate) that it is counterproductive.
Peters says the driving force behind both projects is what matters -- and that is to offer choices between free and proprietary desktop environments. The notion that one desktop environment will ever exist that suits every user is likely a myth. Peters proposes that the goal is to build ever stronger free alternatives, and if the projects compete, it is more along the lines of teammates competing for a "Most Valuable Player" title. She highlights that getting developers from different projects to talk is one of the driving reasons behind GUADEC and Akademy being held simultaneously this year, in the same location, and why they are hosted by the same organizers.
It seems it's difficult for some to picture projects with such a similar scope working together in any capacity. Peters points out that this has happened in the past (she cites d-bus as one such example). I think she's right in that there are certainly components that need to be unified -- components that are specific to desktop environments, but not necessarily a specific desktop environment. Both environments have decent interoperability now, but it would help both projects to improve this further. It doesn't mean one will swallow the other, or that there needs to be only one.
Of course, it's a management (and diplomacy) issue when it comes down to figuring out what development team's code is used for any common bits, and where things should (or must) differ. Again, Peters' emphasis on the team aspect is so relevant here. Individual developer "stats" might get a boost with contributed code, but the team's record for the season makes the franchise -- or in this case, the entire league -- worth following, and supporting, in the end.
Competition among free desktops, for sure, is necessary on some level, but Peters is correct to remind us of the common threads in both projects (and yes, even window managers, and the "hybrid" desktops, like XFCE and the new Enlightenment version in development). Having a preferred environment is one thing, feeling threatened by or wanting to eliminate (or completely assimilate) another is counterproductive. It kills the need to innovate, the desire to revise, rethink, and present software in appealing, useful ways. It makes the product dull for the end user, and damns creative developers into a groundhog day scenario of endless release cycles.