Every since we announced the start of the third Linux Experiment I’ve been trying to think of a way in which I could contribute that would be different from the excellent ideas the others have come up with so far. After batting around some ideas over the past week I think I’ve finally come up with how I want to contribute back to the community. But first a little back story.
During the day I develop commercial software. An unfortunate result of this is that my personal hobby projects often get put on the back burner because in all honesty when I get home I’d rather be doing something else. As a result I’ve developed, pun intended, quite a catalogue of projects which are currently on hold until I can find time/motivation to actually make something of them. These projects run the gamut of little helper scripts, written to make my life more convenient, all the way up to desktop applications, designed to take on bigger tasks. The sad thing is that while a lot of these projects have potential I simply haven’t been able to finish them, and I know that if I just could they would be of use to others as well. So for this Experiment I’ve decided to finally do something with them.
Open source software is made up of many different components. It is simultaneously one part idea, perhaps a different way to accomplish X would be better, one part ideal, belief that sometimes it is best to give code away for free, one part execution, often times a developer just â€œscratching an itchâ€ or trying a new technology, and one part delivery, someone enthusiastically giving it away and building a community around it. In fact that’s the wonderful thing about all of the projects we all know and love; they all started because someone somewhere thought they had something to share with the world. And that’s what I plan to do. For this Linux Experiment I plan on giving back by setting one of my hobby projects free.
Now obviously this is not only ambitious but perhaps quite naive as well especially given the framework of The Linux Experiment – I fully recognize that I have quite a bit of work ahead of me before any of my hobby code is ready to be viewed, let alone be used, by anyone else. I also understand that, given my own personal commitments and available time, it may be quite a while before anything actually comes of this plan. All of this isn’t exactly well suited for something like The Linux Experiment, which thrives on fresh content; there’s no point in me taking part in the Experiment if I won’t be ready to make a new post until months from now. That is why for my Experiment contributions I won’t be only relying on the open sourcing of my code, but rather I will be posting about the thought process and research that I am doing in order to start an open source project.
Topics that I intend to cover are things relevant to people wishing to free their own creations and will include things such as:
- weighing the pros and cons as well as discussing the differences between the various open source licenses
- the best place to host code
- how to structure the project in order to (hopefully) get good community involvement
An interesting side effect of this approach will be somewhat of a new look into the process of open sourcing a project as it is written piece by piece, step by step, rather than in retrospect.
Coincidentally as I write this post the excellent website tuxmachines.org has put together a group of links discussing the pros of starting open source projects. I’ll be sure to read up on those after I first commit to this 😉
I hope that by the end of this Experiment I’ll have at least provided enough information for others to take their own back burner projects to the point where they too can share their ideas and creations with the world… even if I never actually get to that point myself.
P.S. If anyone out there has experience in starting an open source project from scratch or has any helpful insights or suggestions please post in the comments below, I would really love to hear them.
Nope sorry, at the time gnome was created there where several viable, open source desktops around. WindowMaker IceWM come to mind right away. What did happen was a desktop called KDE. Based on QT, which, at that time, did not have a proper OSS approved license. (This has been properly address long ago)
Because KDE was so advanced (largely in tools and features) over the other WM’s at the time, and so windows like, it was gaining in popularity. Red Hat and others however were uncomfortable with the licensing. So the Gnome project was born. Gnome was based on the OSS licensed Gimp Tool Kit (GTK) and competed eventually feature wise with KDE.
Gnome was not the first open source WM on Linux. Just one of the most popular.
BTW Gnome got a big boost when it took over the code base of the (by then) defunct Nautilus Company. All that is left now is pretty much the name of the file manager, but Gnome got a huge usability boost when the Nautilus code base was incorporated into Gnome.
Of course you are right but I think you’re glossing over the history a little bit. It wasn’t until 2000 that Qt was fully re-licensed under under GPLv2 (the first time its ‘free’ license was compatible with the FSF). See more at https://en.wikipedia.org/wiki/Qt_%28toolkit%29#Licensing
As for the other desktop environments, I specifically used the phrase “good open source alternative” because, as you just wrote, in the opinion of Red Hat and others the available open source ones such as WindowMaker and IceWM weren’t “good enough”. Finally I never claimed that GNOME was the first open source WM on Linux. 🙂