Allure of open-source

Recently I have come to the realization that open-source software, because it can be free of commercial considerations, aligns with software craftsmanship. My epiphany is probably due to recent experiences of, pressure to release combined with a low likelihood of returning to clean-up and refactor later.

I’m a pragmatist when it comes to commercial considerations. It is an important part of professional development to deliver on time and to budget, yet this sometimes conflicts with the motivation of the craftsman to perfect and refine their work. That is where open-source can excel. Without the pressure of commercial considerations, experiments and refactors can take place, and be thrown away or restarted as the authors determine are best for the codebase.

Once upon at time, not so long ago, I had an open-source contribution that garnered 100K+ downloads. What I learned from that is, that level of use also comes with support requests and backward compatibility considerations that you don’t have before it is being used. Yet I was able to make changes that improved the internal-quality* of the code and release new features with ease, notwithstanding these considerations.

Martin Fowler*, in his 2015 Oscon keynote makes the distinction between external and internal-quality toward the end of the 15 minute presentation. I’d encourage you to watch it if you can spare the time. You can find the link to the video and more information on software architecture from Martin’s site here.

0 comments… add one

Leave a Comment