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:
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!
Keith is a Senior Software Engineer with Falafel Software. He has been developing software since 1999 specializing in web-based solutions primarily using the Microsoft stack. He has been a Microsoft MVP in ASP.NET since 2012.
The opinions expressed herein are my own personal opinions and do not represent
my employer's view in any way.