The Future of GNOME

Having just returned from GUADEC and now having the desktop as my job focus I been thinking about where we are going and what to do next. Benjamin managed to get quite a bit of press for his abysmally negative post, but I think his mis-stated the situation quite badly. As Dave Mason said during the history of GNOME talk, we have more or less always feel threatned and felt at times that we had an insurmountable task competing against systems with a lot more developers available than we do. There are some dark clouds in the skies, no doubt about that, but when hasn’t there been in the 15 years of GNOMEs existence? For instance the current tug of war between the GNOME shell and Unity? We have been there before, with Ximian and Eazel pushing competing visions for the GNOME desktop back in the day. Major corporate backers leaving (Nokia) or being in trouble(Novell)? Eazel and Ximian again. GNOME being perceived as being Red Hat only? That was the exact story that was being pushed before Sun and Ximian came on the scene. GNOME 3 turning away users? Hey, I can tell you that the amount of flames we got for GNOME 2 easily beats the GNOME 3 flames.

But for each of those events in the past we ended up bouncing back stronger afterwards, and I suspect we will come back with a vengance this time too. The thing is a lot of things are actually going very well. First of all the are a lot more shared projects with a healthy amount of resources behind them these days. WebKit is a great example of a project of crucial importance to GNOME, but which we share with a lot of other projects and companies. Take LibreOffice for example, yes LibreOffice do not contribute a lot of git commits to the GNOME git respository statistics, but thanks to LibreOffice we have the best and most full featured Office suite ever available to our users. And thanks to Firefox and Chrome we have browsers available with world known brands. And thanks to GStreamer, which is on freedesktop, we have a world class multimedia framework available. Instead of having our own sound server like we did with ESD, we now share a top notch sound server with all linux systems in the form of Pulse Audio.

Back during the GNOME 2 development cycle the GNOME project took an active decision that we would try to reach out to more of these external projects and try to work with them to integrate them into the GNOME experience. And we have succeeded at that, which of course have the side effect that instead of having all that development happen inside GNOME, we have bigger more active GNOME friendly projects doing these things outside GNOME.

We also made a conscious decision to focus on draining the swamp, which meant that instead of trying to work around issues and come up with funky configuration options on the user interface level to deal with missing features and bugs in the underlaying system, we instead have tried working with and contributing to fixing things in the underlaying levels. This of course moves attention away from ‘GNOME’, because people then commit their new fixes to those underlaying systems instead of implementing 100 000 lines of workaround code to ‘GNOME’, I mean I still consider Lennart Poettering a GNOME hacker even though his current work isn’t on anything in the GNOME git repository. But that does not mean that GNOME does not benefit greatly from these improvements.

So as we have succeeded in all these goals, GNOME should be a leaner setup than it used to be, as we don’t have to do all the heavy lifting inside the GNOME project anymore and that is a good thing.

As for projects such as Unity, well personally I don’t mind them at all. I mean I always saw XFCE as being a strenght and benefit to GNOME as it brought more users and developers to the shared library stack, and there is nothing different with Unity. And yes, there are some unfortunate duplications which seems redundant even in the context of differentiation, like the GNOME Online Accounts and Ubuntu Online accounts split, but hopefully we can work together to resolve such things over time.

And as for taking the desktop to the next level I think the main challenge for GNOME is not inside the GNOME 3 desktop, but instead it is a question of if the open source community can come together around pushing things like the Linux OpenGL support forward and make sure we have a strong foundation for supporting games and improving visual effects in the desktop. I for one really hope that Valve’s decision to support Linux with Steam, and the success of the Humble Bundle games on Linux, will help rally support behind the efforts to get Mesa to support newer iterations of OpenGL and get the open source Nvidia and AMD drivers in shape. Microsoft has long ago abanndoned PC gaming in favour of the Xbox, lets see if we can make Linux fill the gap.

In general I am very optimistic about the future, the strenght of the open source ecosystem is not that we have more developers to assign to a given project at a given time than Windows or Mac, but no matter what they do we keep moving forward on all fronts, so while Apple and Microsoft focus on beating each other in the tablet and phone space, maybe the time is ripe for us to strenghten our positions in the server and desktop markets? I mean tablets and phones might be all the rage atm, and maybe they are bigger markets than the traditional server and desktop market, but the server and desktop markets are still huge and ripe with opportunity if we play our cards right. And if we can deprive Microsoft of things like their Office cash cow, then that levels the playing field all the more when we later take them on again in other areas.