Making GNOME 3.0 attractive for developers
5. March 2010
This post is a spin off from the recent foundation-list discussion regarding the future direction of GNOME. It was pointed out that GNOME might not be a very attractive platform for new developers. The reasons was among others that there is nothing like a standard way of developing GNOME applications. Of course, everybody is somehow using automake and autoconf and some editor and bugzilla but not more than that.
Compared to windows, about any new developer will stumble over Visual Studio. On Mac, it is the same with XCode. For these tools there is tons of documentation, tutorial and books available and they are actively promoted with the platform.
For GNOME 3.0 we should also start having something like this. This doesn’t mean than present developers have to change their development model but they should be aware that their personal model might not be suitable for new developers especially those with no Linux/free software experience. As such, we should promote the tools we have to make life of new developers easier and ensure that they work with the workflow of a specific project.
In a perfect world, I would announce a hackfest here now, but I won’t 😉 But I would encourage people to help anyway. I have setup a wiki page to collect ideas. The major points are in my opinion:
- Write good tutorials how to build GNOME applications without touching command-line
- Setup a website (maybe on library.gnome.org) hosting all the information for getting started with GNOME development
Everybody is invited to contribute!
5. March 2010 at 19:07
If you think a hackfest can help (I have no idea), then there’s no reason to not consider organizing one 🙂 We can chat about this if you want.
5. March 2010 at 19:38
Hmm, I hope Gnome will promote Vala/Genie for 3.0.
C is too rusty and Python too slow/bloated and Mono is not possible.
5. March 2010 at 20:37
It would be nice to have a qtcreator like ide for gnome, with FULL support for at least 2 languages (C, javascript). By FULL i mean: editor, api docs (intellisense) debugger, packaging (tar,gz).
And if it was portable (windows, linux, mac) then it would be much better. Maybe ajunta already does this it should just need more marketing.
5. March 2010 at 20:38
I would say the tools ubuntu is using has really been shaping up. For example, Quickly could be modified to quickly create gnome-project instead of ubuntu-project. Ground Control could be used for the gui front-end just modified to work with the proper server. These tools tie in Glade and such together really nicely. I think the nice thing about these tools is that they could work across different distros because its just a matter of creating a template for that distro. This is something that should be address considering windows and mac don’t have to really deal with multiple distros.
5. March 2010 at 20:55
I think the main point here is productivity. I’ve read many linux developers arguing they are productive developing with vim. Really? What about code-completion (intellisense in VS), breakpoints, call stacks, multi-thread support, code generation, integrated version control, macros, integrated code snippets and way, way more… I really can’t believe one can be productive on vim and/or gedit, going back and forth command line. Anyway, I really think you guys should raise this discussion. Presently I devote 100% of my time developing .Net apps but would really, really like to work with OSS. I am learning python and would like to have something as integrated (code and UI editor, compiler and everything else) as VS to develop my new gtk apps… Mono? Anjuta? They’re in right path but need to default… What I know is that it would make a beginner life much easier.
The point here is to say that I really agree with you… you need to bring all this stuff together and make gnome development attractive. For instance, i like the Vala initiative. It’s what prospective developers seek.
5. March 2010 at 20:59
I’m currently working on a patch[0] that could eventually take gtk_builder to a more acceptable level when writing complex applications without convoluted code. Really would like to know your opinion on that.
I think that, with a few improvements, the gtk_builder + anjuta + glade integration can reach a much better status among (new) gnome developers.
[0] https://bugzilla.gnome.org/show_bug.cgi?id=447972