Five Reasons Why Open Source Software Code Quality is Important

Enterprise Open Source Journal's Sept/Oct 2006 issue has an article on Spotting Low Quality Open Source Code. Their top ten list includes no-no's such as poor commenting, inconsistent naming conventions, bad code style (poor indentation), missing error checks etc. Now I've read a lot of source code and many of the guidelines listed in the article can be generalized to Spotting Low Quality Software Code - not just open source. But it is super critical for open source for a couple of reasons:

1) If software is truly 'open' to lots of developers, then the code must be maintainable by them. This is really feasible only if the code is readable, simple, adheres to standard conventions, etc.

2) Part of the lure of using open source in the enterprise is the option of an inhouse development team to read, understand and possibly modify or extend the open source code. Again, this is only feasible if the project's code is of good quality.

3) There are many many many open source projects out there and so it's critical for the project to achieve a critical mass of usage in production environments in order for it to survive. This implies that the project is needed and is useful by a large number of development teams and hopefully enterprises. General software systems typically need clean designs and high quality code so that they can be applied and extended for multiple needs.

4) Poor software code quality and buggy software usually go hand in hand. If the code is buggy, it will never sustain a critical mass of users.

5) What's harder; building an application that utilizes an open source system or upgrading the application with a new version of the open source system? Upgrades can be very complex especially if the new version of open source software is not backwards compatible with previous versions in significant ways, or, when upgrades also require upgrading many dependent systems. So with that in mind, if the software code quality of the open source system is poor, how clean or easy will it be to install upgrades?

No comments:

Post a Comment

Comments on this blog are moderated and we do not accept comments that have links to other websites.

Share

About Isaac Sacolick

Isaac Sacolick is President of StarCIO, a technology leadership company that guides organizations on building digital transformation core competencies. He is the author of Digital Trailblazer and the Amazon bestseller Driving Digital and speaks about agile planning, devops, data science, product management, and other digital transformation best practices. Sacolick is a recognized top social CIO, a digital transformation influencer, and has over 900 articles published at InfoWorld, CIO.com, his blog Social, Agile, and Transformation, and other sites. You can find him sharing new insights @NYIke on Twitter, his Driving Digital Standup YouTube channel, or during the Coffee with Digital Trailblazers.