The Clarity of Open Source
More than just transparency, open source provides reflection.
Transparency and Reflection
Transparency is a benefit that is often touted about open source software. You can see the code and know exactly what it does and doesn’t do. From a consumer perspective, there are no surprises. You can read the code and like it and use it, cringe and avoid it, or maybe the code is good enough to start with and you choose to get involved and help improve it. The transparency of open source helps make your decision making process clearer.
Transparency is only one aspect of clarity that open source provides. Another aspect is reflection. You can learn a lot about the developers who contribute to an open source project based on their contributions. You can learn about the culture of a project and its community. The contributions members of an open source project make are clear reflections of the members of that community. The reflection comes not just from what is contributed, but how contributions are received and how the project engages with the community of contributors. How a project community conducts itself should be covered by a published Code of Conduct. A Code of Conduct of a project community is as important as the the code itself.
Seen and Unseen
I commend developers who have the courage to make themselves seen in the open source projects that they contribute to. I encourage developers to understand the benefits of reflecting themselves in the software that they use by also becoming a contributor.
The benefits may not be financial, at least at first. As someone who has hired software developers, I can tell you that the reflections you leave in the projects you contribute to and the evidence of how you conduct yourself in the community are potentially more valuable as a first impression to me than any opaque claims you make on your resume. If I can’t see your reflection in open source contributions and the way you conduct yourself in the community, I will need to rely on other verification mechanisms to validate any claims of awesomeness.
Developers whose contributions remain unseen and locked up in private repos and proprietary software may face tougher recruiting challenges in the long run. Of course, this may not concern you if you work on amazing proprietary software that is well known, profitable, and that you can substantiate any claims about contributions you have made.
Can you see yourself now?
The projects we work on for hundreds or thousands of hours are reflections of ourselves. They often reflect our abilities, our challenges, our great ideas, our hopes, our failures, and our triumphs. Most of the code and blogs I am most proud of, I will never see again. Neither will anyone else. If someone does still see the private contributions I made, they will probably never have met or known the person who originally made them. The proprietary code and blogs I wrote for the first 30 years of my career are locked up in the internal systems of my current or former employers. All current employers will eventually become former employers, no matter how much you enjoy working for them. None of us will work and live forever.
Open source is a more than just a mirror reflecting a temporary image. An open source project is a community portrait that evolves over time, and has embedded in it, the memory all of the artists that have contributed. The portraits may survive all of the original contributors. If you want to remain in the picture, well past the time when you made your contributions, and not be locked up and forgotten in some company’s private repositories, then open source is an answer to potential contribution immortality. The Arctic Code Vault Contributor badge is something I did not expect to see when I started contributing to open source projects on GitHub. Do I think anyone will ever see the millions of portraits stored in this code time capsule? Probably not, but the knowledge that it exists is oddly satisfying and comforting. The thought that something I contributed was important enough to be stored somewhere safe for a thousand years makes me smile. I enjoy having this badge on my GitHub profile.
The great things that are built in open source are a reflection of the community of contributors that build them. Each person that contributes something to a project can see a bit of themselves in the picture. Every line of code, test, documentation, code review, and issue is a valuable contribution to a project.
I hope this blog sparks a little self-reflection, and motivates a few folks to cast a reflection or two as they begin their open source journey. Amazing problems are solved by ordinary people doing extraordinary things together in open source. There are many projects looking for more contributors.
I also hope this blog reminds the users of open source software, that there are many individual contributors out there who have given their time and energy to build the amazing free software that they are using. Open source is more than just source code that can be seen. It is the reflection of all of the contributors who invested their time in building it. Star a repo, or say thank you in a blog or tweet or perhaps in person to a contributor you know.
To all the open source contributors out there. I see you. Thank you for your contributions. 🙏