I have recently had the opportunity to muse about process and how we maintain a system. One of the things in particular that I have been thinking about the most is onboarding new people into your project.
In my ideal situation, a developer being able to have a local copy of code up and running should only be limited by the speed of their internet connection. The best way to ensure this is the case is to regularly delete your dev environment and clone a fresh copy down. This gives you a great opportunity to ask some questions:
- How long does it take for you to get set up?
- Is the documentation correct and easily accessible?
- Is it clear who can be contacted if there are questions?
- What is the process for contributing?
- How can someone report an issue?
A lot of these questions are typically answered in a README file, and many projects have multiple files to instruct for how to help out. I highly recommend that you go ahead, delete your dev setup today, and document the steps it takes to get it up and running. Future you, and future contributors will thank you. A lot. Seriously.