Open Source
The key to success in open source lies in understanding that it's not just about software, it's about the people (great and clear communication with proper documentation).
Dan has great tips on what it means to be high quality software maintainers.
I also think that to be a good developer, you need to go through "School of contributing to open source projects" where you learn how to communicate with other people, how to express your ideas in pull requests and issues.