What are the characteristics of a successful open source community?
Have a web site with a forum in which people can post queries and suggestions. Read the posts!
Make your software internationalized. You want those Brazilian and Chinese developers.
Have a quick start kit or roadmap. Make it possible to get your software running in an hour or less, using temporary software if necessary (Example: uPortal).
Set up a structure in which people of all levels can assist (a Wiki for documentation is a useful tool).
Establish the ground rules. State the roadmap for future development, but also make it clear when, and how, changes of direction can take place. Apprentices need both structure and challenges.
Delegate. A community with one leader through whom everything flows is offputting.
Be a good IT citizen. For example, don't take over a standard TCP/IP port from someone else. Don't replicate standard software. People will lose faith in you.
Be sexy: a good name, a good logo, good press-cuttings, T-shirts, etc are not optional extras.
Make sure someone writes a proper book about your software
Some tools for open source developer communities
Web site (and keep your URIs cool).
- Mailing lists, with web archives (and cool URIs). Many projects keep multiple lists for users, developers, version management submissions, etc.
- Subversion or CVS
- Issue tracking system
- Testing tools, validation tools, regression testing framework
- IRC/Jabber or other real-time chat
- RSS/Atom feed
- Project plan/roadmap
(The above is rather sketchy for now... it's intended as a seed for expansion.)