Coding Standards

Every development organization should have a set of coding standards they follow. A clearly defined, written set of guidelines their developers follow. Things that will make it easier for one developer to read another’s code.

The fine folks at subMain have scored another hit by releasing their coding standards to the general public. ( On their site they are now giving away in PDF form a copy of their own corporate coding standards.

I really like their document, as it goes far beyond the traditional “use pascal case” type documents. Their standards document gets into advanced topics such as design patters, security, threading, and even code reviews. It’s applicable to both VB.Net and C#.

While no coding guideline will ever be on the best seller list like Vince Flynn or Richard Marcinko, I found this to be well written and organized. It was easy to find what I wanted, each point laid out distinctly. I do wish there was a little more example code, even if was examples of what not to do. However, I consider that a minor nitpick for an otherwise complete document.

If your company has a standard already, you should check it against the subMain one to ensure you didn’t miss anything. And if you don’t, you should seriously consider the adoption of these standards for your own.

Be sure to check back with them in the January / February 2007 time frame, as Serge (subMain’s President) indicates an update will be available with a rewrite of the Control Naming Guidelines, and possibly some updates to the database section as well.

All in all another great contribution to the .Net community for subMain.

Note I last mentioned subMain on November 27th, writing about their Smart Outliner for VS.Net free add-in. (


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s