I have been involved in several Open Source projects, some of which have been successful and some... less successful. I really enjoy starting new projects but absolutely hate maintaining and documenting the old ones, to the extent that someone even implied that I am allergic to documentation.
There are a few ingredients that make a project successful, the most important being a good idea. An idea can be a tool or a library that you need and think others might find useful; a new technology innovation; or something you think you could implement better than the existing tools. Extra care has to be taken if you decide to create a new tool to replace an old one. In most cases, these projects end up reinventing the wheel without any added value. A wheel is wheel, right? But of course there are exceptions. One of these exceptions is Magento [1]. It's an e-commerce tool in PHP that
does things differently: PHP5 only, uses a framework (ZF) and the code is nice and clean. A good implementation makes it easier to attract skilled developers to contribute to the project and to build a community around it.
Usually when a project starts to grow, the demand for proper team infrastructure also grows, because different actors in the project need to collaborate fluently. Often, the infrastructure includes tools, such as an IRC channel, a mailing list, a wiki, an issue tracker, online test reports and version control. Nowadays there are plenty of tools that integrate most of the required pieces into one easy-to-install package, like Thoughtworks' Buildix [2].
When the infrastructure is up and running and the product is actually working, the most tedious part begins: documentation and maintenance. If your project does not provide comprehensive documentation, the learning curve for users will be a lot steeper. This seems to be the case with Imagick [3], a PHP extension for image manipulation that I have been working on. The documentation is relatively poor because of time constraints, and this usually shows in the amount of email I get directly from users. Many of these emails include questions that come up very frequently; proper documentation would allow users to find this information straight away without having to contact the people behind the code.
[1]
http://magentocommerce.com
[2]
http://buildix.thoughtworks.com/
[3]
http://www.php.net/imagick