User:Toofishes/Arch Linux Project Guidelines
This page and set of guidelines is mostly taken from some of the lessons presented in the following video: How Open Source Projects Survive Poisonous People. If you haven't seen it already, it is well worth a watch (you can get away with just listening though).
Some of the projects these guidelines should apply to:
Basic Project Requirements
Define a mission statement
Yes, this sounds a bit corny, but it should be done. As presented in the video and on their website, the mission statement for SVN is simple and concise: The goal of the Subversion project is to build a version control system that is a compelling replacement for CVS in the open source community.
Each Arch Linux project should have a mission statement that attempts to encompass what it will accomplish- no more and no less. This will keep development focused on what is important, and keep feature bloat from happening, which is very important if we want to KISS.
Document your projects
This is something that is currently lacking in many of the ongoing Arch Linux Projects.
(TODO - a lot more from here on down)
Design decisions
Major features
Bug fixes
Mistakes
Effectively Managing Projects
Keep a readable ChangeLog
Use commit emails
(maybe an RSS feed of sorts could work for smaller projects without their own ML)
Use branches for large changes
Lower barriers to project entry
Keep names out of source files
Have well-defined processes
Stay focused
look at mission statement, don't be fooled by 'bugs'
Example Projects
Project: pacman
Mission Statement: To be a simple package manager with dependency, provision, and conflict support that is intuitive to use.
Project: AUR
Mission Statement: A site where Arch Linux community members can freely share packages with others.