Portrait of Edd Dumbill, taken by Giles Turnbull

Subscribe to updates

Feed icon Atom or RSS

or get email updates

What I make

expectnation
a conference management web application


XTech Conference
a European web technology conference

GNOME's no fun anymore

It's not just lack of time that's paralysed my GNOME hacking work, it's lack of fun. I make time for things that are fun.

I've been saying for some time that not engaging developers would hurt GNOME, and the problem has come home to roost. Lack of documentation and platform evangelism, which I've complained about previously, are certainly part of the problem.

Wires The bigger issue, however, has been the platform itself. A year or so ago we had the huge controversy about whether it would be Mono, Python, or Java in the form of GNU Classpath that would be the high-level development environment that drives GNOME forward.

Because we're all friends and didn't want to divide the community, nothing happened. And now we're further on and each interest has gone on and done their own thing. Novell have pressed forward with Mono. Others have stuck to C. And Canonical are making great additions to the desktop in Python.

Applications-wise, we're in a good place. The maturity of GNOME 2 plus the finishing touches applied by the vendors makes for a fantastic user environment.

What's a hacker to do?

But where does this leave a developer? Targeting pure GNOME makes no sense any more. It's ridiculous to consider C hacking when there are many more productive environments. There's no clear story as to where the desktop will go, to make developers want to come to GNOME. The platform's being inched forward in C, yet large strides forward are being made in Mono and Python.

What about people like me, who've endeavoured to add parts to the platform that nobody wanted to fund (Bluetooth, in my case.) There's little motivation for me to carry on with platform libraries in C. It's difficult, error-prone, and unrewarding. Clearly Novell and others feel that way too.

This is why the GNOME platform now holds little appeal as a place to develop software. Poor documentation discourages new blood. The frustration of low-level work discourages corporate investment.

Why should this bother me? I'm getting a good user experience through my Ubuntu desktop. There's a good choice of technology to develop with. Mono's cool, PyGTK's fantastic too.

Why it bothers me is that none of PyGTK, Mono or alternatives would rock if it weren't for the work that got us to the GNOME 2 desktop. But because of the uncertainty and lack of direction, the energy and talent that will drive the platform forward are deserting.

Time for change

It seems to me that if the GNOME project cares about existing in the same way it has in the past, it needs to swallow some bitter pills.

Forget about ideological purity at the base of the stack. Find ways to make Mono, Python and even Java work when mixed into the same developer platform. They have good docs and a strong following.

We don't need a grand unifying scheme. Mono and Python just need glue where it counts. Stuff like easy widget reuse is overrated. Really.

Forget also about bloat. It's really not the deal we think it is. Ask any OS X or Windows user. The mass of Mono plus Python is still small. Besides, any distributor is going to want both of these in anyway to get the best applications.

Forget about some grand project to completely replace everything in a big bang in however many years time. Instead, slide new technology in incrementally. The price of making new stuff work with old is worth paying. The alternative may well be that everyone's gone to sleep while we were busy making GNOME 3.

Maybe I'm wrong in this analysis, but it comes down to the fact that GNOME needs a critical mass again to move forward. If it doesn't get it soon, developers will carry on moving to where the fun is.

And, in conclusion, perhaps that's right. The future desktop will be probably forged elsewhere than in the GNOME project as it is now.

blog comments powered by Disqus


You are reading the weblog of Edd Dumbill, writer, programmer, entrepreneur and free software advocate.
Copyright © 2000-2012 Edd Dumbill