Benjamin Otte the one and only GTK full time developer posted a sad but true facts-sheet regarding the Gnome future. While the problems and the different opinions inside Gnome community is not a new phenomenon, they stay mostly in private lists or personal discussions.
I cannot but applause that a senior developer of Gnome talks in public about all “nasty” issues of Gnome in just 5 points, and I will reprint his original post which is fairly short. Otte starts:
I suppose I can’t just leave my last post standing there as-is. I’ll start by listing a bunch of things I consider facts about the GNOME project. I don’t want to talk about solutions here, I just want to list them, because I don’t think they are common knowledge. People certainly don’t seem to talk about them a lot.
And then he makes his first point:
core developers are leaving GNOME development
Emmanuele Bassi quit his job at Intel and this it might have an impact at Clutter development (ebassi is the senior dev there). However Emmanuele doesn’t think this is the case as there are many project that uses Clutter like the rising Tizen and further more he will continue to contribute -for a while longer- in Gnome.
Vincent on the other hand joined SUSE cloud team and he is going to work on OpenStack. As he says he wanted this move since the Gnome 3.0 release after working in desktop programming for ten years.
We wish them both best of luck in their new jobs. Obviously the departure of the two developers cannot bring Gnome down but non the less fresh faces are needed to cover their responsibilities and tasks.
GNOME is understaffed
This is hard to explain in a short and concise way. For anecdotal numbers: GTK has 1 person working full-time on it (me). Glib doesn’t even have that. I think evolution is in a similar situation (a complete email client). We can also try Ohloh’s statistics for GNOME (they include 131 packages, including GStreamer and NetworkManager). You’ll see a sharp drop off of committers on the first page already which suggests around 20 full-time developers at most.
There is nothing new here. Gnome Shell has a more than sufficient number of committees while other more important modules like GTK are left behind. An obvious explanation is that Gnome Shell attracts people because is easy to work with it and is also kinda impressive as project. On the other hand GTK (as many other modules) is a nightmare to begin develop it, because of the vast code and C difficulty factor.
Moreover GTK doesn’t attract commercial projects as it’s considering a poor toolkit to work with in compare to QT (C++) or Java for example. In my opinion as long as GTK lacks a great documentation and a rich-featured IDE isn’t to go nowhere far, no matter how good toolkit will be.
GNOME is a Red Hat project
If you look at the Ohloh statistics again and ignore the 3 people working almost exclusively on GStreamer and the 2 working on translations, you get 10 Red Hat employees and 5 others. (The 2nd page looks like 6 Red Hat employees versus 8 others with 6 translators/documenters.) This gives the GNOME project essentially a bus factor of 1.
A bus factor of 1 on simple terms means that the Gnome projects source code is staying closed to one person. If that person for any reason quit the project, this project would be impossible to be continued by other members as none other than its senior programmer, will have the knowledge to maintain it.
In my opinion this is the No1 problem of Gnome. What’s the solution? DOCUMENTATION! A more radical change would be to drop C programming as it is hard to find contributors, and move to other langs like Vala. But this is not going to happen as we are dealing with hundred of thousand lines of C code.
GNOME has no goals
I first noticed this in 2005 when Jeff Waugh gave his 10×10 talk. Back then, the GNOME project had essentially achieved what it set out to do: a working Free desktop environment. Since then, nobody has managed to set new goals for the project. In fact, these days GNOME describes itself as a “community that makes great software”, which is as nondescript as you can get for software development.
The biggest problem with having no goals is that you can’t measure yourself. Nobody can say if GNOME 3 is better or worse than GNOME 2. There is no recognized metric anywhere. This also leads to frustration in lots of places.
I cannot agree more in this point. I have said so many times that Gnome lacks in communication with public and it also lacks in Marketing terms. I need like 5-6 pages to count just some of the failures in Gnome communication the last years I use Gnome, so I won’t even start it.
Because I often talk with some of the members of Gnome Marketing team is hard to blame them :( But the truth is that they haven’t succeed to push Gnome further. There are some things that are simple to be done and they miss them. Getting some feedback from users, create a Theme Store (even if you don’t support it!), create an online Software Center (with open and commercial Apps), make some videos demonstrations how you can use Gnome3 efficiently and Gnome 3 promotional videos in a Gnome YouTube Channel, run Gnome in weTab and show to users how they can doit, arrange more conferences in Universities and give 20 mins Gnome demonstrations on Schools, etc.
But for doing all these you actually need a Gnome distro. Fedora cannot serve this purpose as it doesn’t ship commercial software by default. It makes no-sense to don’t use proprietary software when there aren’t open source alternatives or when the open alternatives are poor quality. By pushing an open source project just because is open source in a distro, the only thing you achieve is to hurt the quality of the whole product.
For example when you’re using Open JDK and a Java software isn’t running, the response will be: Gnome sucks, Linux sucks! A software is not defined good by being open source and bad by being commercial, but an Operating System is defined (good or bad) from its apps. I used Java as an example because two great open source and super popular products don’t run on Open JDK, WebAdmin and Aptana.
In my opinion would be much better if Gnome would drop a release cycle, and make an Gnome Desktop distribution, with any name, not Gnome OS. You either push a complete OS (with commercial software) or you bury it. Things are quite changed since 5 years ago and there is some hard competition in Open Source desktops which you have to make some comprimises in order to keep up, even if that means that you have to sacrifice some of your original believes. It is for the greater good..
GNOME is losing market- and mindshare
I don’t want to point out Linus’ bashing, but a bunch of very pragmatic facts that all together lead to fewer GNOME users and developers:
- Distros are dropping GNOME for other environments instead of working with GNOME.
- Previous supporters of GNOME are scaling back their involvement or have already dropped GNOME completely.
- Most important desktop applications have not made the switch to GNOME 3. From talking to them, it’s not a priority for most of them.
- The claimed target users for GNOME are leaving desktop computers behind for types of devices GNOME doesn’t work on.
Distros are dropping GNOME: Otte is referring to Ubuntu/Unity and Mint/Cinnamon. But what’s the bad on that? Ubuntu had pure Gnome for seven years, and Gnome didn’t increase his popularity or innovation. The issue here is that Gnome (after Ubuntu) has left out with none good distro to support it. OpenSUSE and Fedora are failing to substitute Ubuntu and Gnome exists only in “testing/hardcore” distributions.
That leads to my previous point, stop Gnome development for 6 months and just make a Ubuntu spin with Gnome and systemd.. It is a bit ironic the fact that Gnome that denies so much the proprietary software to be depended on a distro (Ubuntu) that supports so strong the commercial software.
Mint on the other hand choose to fork Mutter/Shell and make a desktop similar to Gnome2. Which makes perfect sense as many people like the classic metaphor of desktops.
But anyway both Distros are using Gnome, except their Shells, so isn’t big deal.
Previous supporters of GNOME: This goes for Nokia which a partner with Microsoft and OpenSUSE. Nokia dropped GTK for QT but now it seems that is dropping QT also. About OpenSUSE drop support to Gnome I don’t know much.
Desktop Applications: Ok, Gimp, Inkscape, Firefox and Libre Office aren’t using GTK3, but some development on this direction is already taken place.
Tablets: People are moving fast from traditional desktop to tablets. What Gnome can do? Just follow the KDE fan team example and release a Gnome tablet. For two years they are trying to make a tablet interface but they actually don’t care to get a small OEM to have a tablet that officially can run Gnome. How hard this can be?
There is also a nice response from Juan José Sánchez:
Xan López and myself tried to do an analysis of the current status of GNOME (quite aligned with what you say here) yesterday in our “A bright future for GNOME” GUADEC talk. Taking as starting point the good and bad things the project has, and current industry situation and opportunities, we tried to propose some generic and not that generic ideas about how we could move forward and make GNOME more relevant.
The executive summary is that we think that we need an attractive and ambitious plan for the next 2 years, with ‘More GNOME 3′, ‘GNOME targeting new form factors’ and ‘GNOME as an OS or final product/UX’ as the 3 main pillars. The plan would a way to keep resources inside the project and hopefully recover/attract more, and we would need the support of the board, release team, and the main maintainers, developers and specially of the companies currently investing in GNOME to make it feasible.
The idea is to continue this discussion on Monday, during the full-day GNOME OS BoF at GUADEC. It is really a pity that you cannot be here and contribute to the discussion face to face
Thanks for this post, anyway. We need honesty and to acknowledge the situation as the first step before deciding what comes next for the GNOME community.
I would love more post like Otte’s to keep coming because this will make Gnome people to try harder. But is Gnome staring into the abyss? Naah, Gnome is doing fine, but it could do better. A small financial help from Red Hat and a bit more effort in Marketing will be enough. Also clearly defining Gnome goals of the next 1-2 years would be great!
In the end of the day when it comes to technology products none can predict the future.