In the open source software world there has long been the mantra of “Release early, release often.” This served many purposes to the mechanics of the open source way of working. Mainly, it ensured that people were able to keep on top of the codebase when they wanted to contribute.
In some ways, the idea of release early, release often had much to do with the tools of the time. Releasing would help mark a point in time to the development of the codebase by marking a particular revision. These days, the tools make it much easier to pick up the codebase at any moment in time and move forward or revert no matter what changes might have been made.
To that end, the word “Release” seems old to me. It conjures up images of boxed software on shelves. When it comes to other disciplines that can benefit from open source methodologies, it implies a finished product. For these reasons I’ve decided to make a slight change in my usage of the phrase. I’m now saying “Share early, share often.”
When I was still doing tech management, I worked with a friend who was new to the open source world. This friend was quite hesitant about sharing his code. He wanted his work to be at a point where he could be proud of it before sharing it. I understand that feeling: it’s difficult to share if you feel like your best work isn’t yet represented. However, my encouragement to my friend was “if you share from the very first line of code, others have the opportunity to help your best work be even better.” I believe this in code, in writing, in scientific research, music, art, design… in every endeavor. Sharing is the manifesto that announces your intention to take in the ideas of others. Sharing seeks out cooperation.
The heart of open source has always been the power in the community of contributions. More minds cooperating make the end result stronger. If we are brave enough to share from the very first line of work, we allow others to start contributing from the beginning. We encourage exponential growth of the work from the beginning.