Coding Standards: But that will limit my creativity!

At work I have been part of a standards committee with the goal of creating and enforcing a set of standards for .NET development in our organization. Any time I have been involved with the discussion or creation of any kind of developer standards I always hear the same thing, “But that will limit my creativity”.

The standards the committee has put together are a short list of things you should always do, and 3 times as many best practices we wish everyone would do. Many of them are industry standards that are set by default in Visual Studio anyway.

So why do so many developers believe that following a standard for solution, file, and code format will limit their creativity?

writing-musicIn the music industry, if you want to be a song writer you first must learn the language of music. This includes notes; quarter, half and full, as well as, the music staff and how to put the notes on the staff so that people can play the song. I would argue that this adherence to a standard has hardly limited the musician’s creativity. We hear new and different songs on the radio all every day.

I don’t believe that creativity in software development is found in the location of a curly bracket or the structure of an if statement. The creativity in software development comes from how you apply your knowledge of the language and patterns to solve a problem that brings value to your organization.

Even design patterns, which very few have issue with, are a standard approach to solving a problem.  I have never heard someone say implementing a Repository pattern limits their creativity. It more often removes the tedious, mundane task so you can focus on the more interesting parts of the solution, which is where the real creativity exists.

So if you are asked to create, review, or adhere to a standard look at it as a chance to see if you can eliminate time that you would have spent worrying about non-creative menial task of how the code should be written and focus on what code needs to be written to solve the problem at hand.

Calendar

<<  March 2024  >>
MonTueWedThuFriSatSun
26272829123
45678910
11121314151617
18192021222324
25262728293031
1234567

View posts in large calendar

Widget Category list not found.

Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))X

Tag cloud

    Widget Month List not found.

    Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))X

    Widget AuthorList not found.

    Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))X

    Widget TextBox not found.

    Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))X