Why Are Coding Standards Necessary?

A benefit of being a contractor for so many years is getting to experience a lot of code. I used the verb “experience” intentionally. When you’re moving to a new project, you have to understand the application then the code. The process of understanding the code is more than just reading the code. It involves getting a feel for the intent and the style. You have to “experience” the code.

Over the years, I found good code. I also found code that I am sure was working because someone sold their soul. But these two statements are very subjective. What makes one code base better than another? When the code meets the customer needs and is free from deficiencies. Meeting the customer needs is easy to understand and test. Free from deficiencies is harder. It refers to the non-functional attributes that are as essential to software as the function. The software industry generally agrees that these attributes primarily include maintainability, documentation, styling, efficiency, clarity, and well-tested.

Coding Standards are the foundation of the non-functional attributes of quality software. Implementing standards ultimately impacts reliability, security, robustness, maintainability, and profitability.

Coding styles are like dialects. Many dialects can work together, but there are inefficiencies in that paradigm as dialects conflict. A coding standard is a common or chosen dialect to reduce conflicts and increase efficiencies. Of course, there is a ramp-up time for those not familiar with the dialect. But that time is recovered through the increased efficiencies found in the elimination of styling variables.

At many of my projects, we have had various standards that have helped guide the quality of our software. I encourage you to review the standards to ensure that you can contribute to the continued quality of your product. If you do not have standards, you are welcome to use mine.

I have published my standards so that you can make them yours. I hope that you can help produce even higher quality code and ultimately higher-quality software by doing so.

Coding Standards

Do you have standards that you want to share?