Helping newcomers become contributors to open projects
Some practical rules I wish projects would follow, from personal experience:* Have a README. At the top of the README, say what the project does. Document how to build and run it.* Make sure every artifact of the project is buildable from source. This includes project websites and binary releases. Document this process.* Have a clear assignment of responsibilities, and respect it. If you let someone take over a task, don't micromanage them.* Document your availability. If you have to step away from the project, put this at the top of the README, even if it's temporary. Don't drip-feed interaction - be either on or off.* Be responsive to issues and pull requests. That doesn't mean accept everything, but answer quickly, even if just to say you need more time to look into it. Don't leave stale reviews open.* Don't close bug reports just because they're old. A bug report is either good or bad - that is, the bug is either reproducible or it isn't. A bad bug report is bad from the start; close it quickly - or else, don't close it just because enough time has passed. (This goes doubly for bug reports with advice.)* On documentation: one example is worth a dozen descriptions. Check if your language offers you a way to combine documentation and unittests; this is of high worth - take full advantage.* Have a style guide. Link it in the README. This saves you time in review.* Set up CI. Nowadays, there's plenty of free services that integrate with Github, so there's really no reason not to.(Combo bonus: CI with style check!)