# Friday, 17 September 2010

Earlier this week I got into a bit of spat with a couple of Tweeps on Twitter.  It started with someone I follow and respect re-tweeting something someone tweeted about him which basically said the tools which he is associated with aid developers in creating bad design.  I responded to this tweet in support of this person whom I respect by saying…

Tools don’t do bad design.  Bad developers do bad design.

Immediately after tweeting this I got multiple reply’s stating that just because you do bad design or write bad code you are not necessarily a bad developer. 

To be blunt…this confused the hell out of me.  If you knowingly create a bad design or write bad code how can you be a good developer?  I guess the key word in that previous statement is *knowingly*.  But if you don’t know what good design/code is in my book you can’t be a good developer.

Don’t get me wrong.  We have all been in the position when due to forces outside of our control we have been forced to write imperfect code or create a less than perfect design.  To me this is one place where you can quantifiably determine the good developer from the bad developer.  A good developer, when writing imperfect code due to factors outside of there control, will do one or more of the following:

  1. Get upset because they know they are writing less than perfect code/design.
  2. Leave a comment stating why the code/design was done in this factor.
  3. Add a ToDo for refactoring later.
  4. Will do the imperfect code/design in such a way that the refactoring effort will require less effort.

This argument of writing bad code does not a bad developer make really rattles me.  That is exactly what it does!

OK…Let me have it!

Friday, 17 September 2010 11:53:12 (Central Daylight Time, UTC-05:00)
You state:
"This argument of writing bad code does not a bad developer make really rattles me. That is exactly what it does!"

I disagree somewhat. I mean, don't we all write some leve of "bad code" every now and then?

What if we think it is good, come back later and realize it's bad and fix it? Where we a bad developer and now we are good?

What about the developers who are always working to better themselves? I can understand saying the 9-5 developers are bad because they don't care about getting better.

I believe you have to look at the circumstances of the written code, what the developer is doing to get better and make your desicion then.

mcwheeler

Name
E-mail
(will show your gravatar icon)
Home page

Comment (Some html is allowed: a@href@title, strike) where the @ means "attribute." For example, you can use <a href="" title=""> or <blockquote cite="Scott">.  

Enter the code shown (prevents robots):

Live Comment Preview