8 Factors for Making Open Source Projects Succeed

I'm thinking about the required factors to make a successful open source project for everyone regarding the project, e.g., owner, developer, contributer,power-user, end-user, and etc. Below are what in my mind.

  1. Web Site - I don't think you do not have a web site for your project. It is not necessary to have full domain name. Only subdirectory in a domain would be great enough as long as you don't think to have big project. At the first step, you may just leave your idea on your web site so other people could found it via Google someday.

  2. Version Control - This is a must to have in the first priority. Everyone needs this stuff including end-users to developers. You can start a new project with just a repository to publish your works to the world. If it is what others looking for, your project will be successful someday.

  3. Issue Tracker - After you published your codes through a repository, some might say they found something weird or else would like to have some missing functionalities to the software. You need an issue tracker so that others can leave comments and report bugs there.

  4. Blog - I'm sure everybody would like to see the project progress so they could make sure that it's still alive. One possible methodology to let others know your project progress is to blog something. Remember that your blog must publish RSS feed or Atom feed so ones interested in your project can get the latest news automatically via their favorite feed readers.

  5. Wiki - Lastly, your project must have documentation in any forms. Wiki is the most interesting one since you may let contributor help you to write something useful for the project.

  6. (Optional) Forum - After you have a number of users, forum is a must for off-line communication such that not exactly an issue. For example, they might have some questions regarding to your project. You don't have to answer them by yourself if other users could do that. The hidden agenda to have forum is community. It would be nice to setup a community for your project so it will live forever after you die.

  7. (Optional) Mailing List - If you have so many members in the project, you might need mailing list to minimize response time for communicating in the community.

  8. (Optional) IRC - Forum and mailing list are both off-line channel. The best communication channel to build up community should be on-line and interactive. IRC is the best candidate for this task.

Note that I don't own any big project. Above factors are taken from other big projects.

Tags: ,

Post new comment