I am looking for advice for getting an open source project

I currently have several closed source applications that I have developed to learn a specific technology or experiment using programming technology. As a result, I have software that is useful to others, and that I have made freely available, but in a closed source format.

Some software users have asked if I am ready to go open source with software so that they can contribute to this. I’m all for this, but I did not have experience working on open source projects, and even more so from the beginning.

Ideally, I can get my feet wet by contributing to an existing project, but I don’t want the enthusiasm of these volunteers to linger too long. So I'm going a little blind.

What I'm looking for is an open source project management crash course for someone just starting out on this track.

So let me tell you this as a question:

What advice do you have for someone starting your first open-source project?
I’m also interested in recommendations on books / links that you think will be useful

+7
open source
source share
7 answers

You have two important options that you can do initially.

First, which license should you use? There are dozens of open source licenses , but it mostly depends on whether you want copyleft (GPL / AGPL) or non-copyleft (BSD, MIT, Apache), and it depends on your own goals.

Secondly, you need to choose a version control system and, assuming that you will not place it yourself, by the supplier. It is actually a choice between Subversion or one of the distributed version control systems (Git, Mercurial, Bazaar, etc.). DVCS can make it easier for you to manage other people's deposits if you do not want to give them write access to your main repository.

The choice of VCS will affect your host choice and vice versa, since most providers offer only one VCS. A provider who would also host a website and / or wiki for you would be ideal. Most of them will provide some kind of rudimentary tracker and, possibly, mailing lists. You can also receive mailing lists from Librelist .

I would recommend you take a look at GitHub or Launchpad . I'm not particularly keen on Google Code or Sourceforge. Nothing against Subversion, I just don't like their interfaces.

If you want your project to become popular, and this may not be important for you, you will have to promote it. You can register it with Ohloh and Freshmeat . Writing blog articles about your project and posting them to sites like Reddit and DZone will increase your visibility. Remember also that Jeff offers free advertising on StackOverflow for open source projects .

In any case, as long as you have a public source repository and a website for people to download the software, just write the code and the rest will follow.

+5
source share

If you are already familiar with VCS (Version Control System), you should be fine. I recommend www.github.org host the repository, and perhaps at some point on the website talk about the application. Github is good because it’s very easy for people to inject code. This is ridiculously simple, although git has a bit of a learning curve.

And then, a way to communicate! Mailing list .. Maybe googlewave .. Maybe a forum.

+3
source share

Wikinomy http://ecx.images-amazon.com/images/I/51M9MTN5QFL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA240_SH20_OU01_.jpg

Read this book: Wikinomy

In one chapter, for example, the author explains the problems IBM faced when they first joined open source projects on Linux.

+2
source share

I have no personal advice, but I found the following video very interesting. This is a recollection of the experience of some Google employees and the lessons they learned while managing their open source projects.

How poisonous people invoke open source projects (and you too can) https://www.youtube.com/watch?v=Q52kFL8zVoM

+2
source share

Do not miss the excellent e-book by Karl Vogel, Creating open source software for free.

+2
source share

Some code repository sites do a lot of management work for you. They provide licenses, they handle version control (in some cases), and they explicitly handle the repository.

Check out these sites:

+1
source share

The smallest thing you need to do is place the code in zip format with a suitable license file. You can do it in Google Code - it is very simple to use. As for the license, start with an unlimited version, such as MIT (Google code contains all the texts of the licenses) - you can always re-license later if you have not accepted any updates.

For books / links, see Creating open source software is not perfect, but I don't know anything better.

+1
source share

All Articles