Concise Code is NOT Always Production-level Code !!!

Best Laid Plans of Mice and Men

Just because you want your code to be concise does not always mean that is the code you will be placing into Production !

At the end of the day, once all the defects have been fixed, the code you find in production will probably not resemble the code you began with when you felt it was as concise as possible.

The fact today is that most software developers have no idea what production-level code looks like because they themselves are not responsible for working on production-level code.

Lack of Mentoring from the More Experienced

Even those favored few software developers who are prized by corporate america as being senior talent do not seem to know what production-level code should look like.  They make far too many assumptions about the code they wish to see.  They are far too willing to trust in their assumptions even when their assumptions may be leading to Bugzilla more often than not; but then they almost never get to make the connection between the code they wish to see and the code that produces bugs – others work on their bugs.  Projects are manned by many more developers than might be required otherwise; projects are perceived to be far too complex for individual contributors and there are very few strong individual contributors because… corporate america does not seem to want to grow strong individual contributors – pair programming makes individuals weaker than would be desired – individuals are not being asked to be strong contributors – individuals are not being encouraged to work on their own projects when not at work and quite frankly most individuals who write software on the job have any real interest in becoming strong individual contributors.

Since there are very few strong individual contributors available to teach others, to pass along experience and knowledge, very little is being learned by the army of developers that inhabit corporate america – virtually none of them, that I have met over the years, seem to know what coding patterns lead to Bugzilla versus those that do not.

Those who fail to learn from their mistakes are doomed to repeat them…

Because there are very few developers who know how to avoid the mistakes that lead to Bugzilla the development cost for corporate america is very high.  Millions of dollars are being pumped into code that is becoming increasingly difficult to maintain because there are far too many people working on that code, stirring the pot, turning their code into meaningless goo.

Management, largely in denial, wishes their code to be more maintainable without so much as knowing how to achieve that goal.

Highly maintainable code may not appear to be highly readable code – the two are not always the same.

The Tactical Advantage of not having to waste time on Unit Testing

The greatest threat to corporate america may just come from those few who have maintained their ability to produce working code quickly without the need to waste time on Unit Tests and such.

Unit Tests are only required by those who do not really know how to produce robust code, assuming the reason one wishes to use for producing Unit Tests is to ensure their code is working otherwise Unit Tests are a reason to not produce and maintain adequate documentation for others to read.  Either way, Unit Tests are being sold to software developers as being a requirement when the opposite is more true than not.

Any company that can break free of the shackles of Unit Tests will have a definite advantage in the marketplace.  Shorter time to market.  Shorter less costly development cycles.  Fewer developers on-staff.  Greater profits.

Strong Individual Contributors can produce complete products quickly

I have done this myself.

Coded a complete product rewrite in 30 hours and earned an additional 16 weeks of work for my efforts.

Was this difficult ?

No !

Was it profitable for the sponsoring company ?

Yes !

Is this a threat for corporate america ?

Maybe !

 

Advertisements

About Ray C Horn
See my profile at http://www.linkedin.com/in/raychorn with more than 1286+ connections and growing all the time.

One Response to Concise Code is NOT Always Production-level Code !!!

  1. Pingback: Tweets that mention Concise Code is NOT Always Production-level Code !!! « Agile Developer's Blog -- Topsy.com

%d bloggers like this: