To Err is Human…   ;-)
…it takes a computer to really mess things up.

Programming


Be a Better Programmer Series #1: Be a Writer.

Posted by Collin Cusce
On July 9th, 2008 at 09:07

Permalink | Trackback | Links In |

Comments (2) |
Posted in Programming

“Two wrongs may not make a right, but a thousand wrongs make a writer.” - Dennis Miller

I recently wrote a post called The Reality of Bad Programmers, I made an assessment that so long as a program is to specification and someone is buying it, you’re not a bad programmer. In the discussion and comments that ensued, I had to come to a realization that the statements made may require some revision. That’s not to say I think I was entirely off-base, just that I might have to clarify.

To clarify: I do not believe that good programmers do not exist. I do not believe that bad programmers do not exist. I do not believe that good code does not exist. I do not believe that bad code does not exist. I believe that our measurement for good and bad must be a strong lower-bounded assessment.

(more…)

The Reality of Bad Programmers

Posted by Collin Cusce
On July 4th, 2008 at 22:07

Permalink | Trackback | Links In |

Comments (11) |
Posted in Programming

Science does not promise absolute truth, nor does it consider that such a thing necessarily exists. Science does not even promise that everything in the universe is amenable to the scientific process. - Isaac Asimov

I’ve been reading a lot of articles lately outlining what defines a bad programmer. I find this to be a particularly interesting topic myself as often times I am accusing other programmers of being “bad”. Upon reflection, and after reading these articles, I must admit, this is an unfair term. The term “bad” in this context is completely subjective. By calling someone a “bad programmer,” you’re applying standards to them which aren’t universally true. It would be a fair assumption to say that we’ve all wrote “hacks” in our times, and on many occasions, those hacks were out of the necessity of the situation and not what the developer would like to do.

What I’m getting at here is that there aren’t bad programmers, there are bad programs… and even those often aren’t “bad” if they are taken into context. So what does all this talk of so-called “bad programmers” actually mean? It means we’re frustrated. It means we, as developers, strongly desire some metrics for determining “goodness” or “badness” of not only the code of others, but even our own.

Why is this still a problem? After over fifty years of code, we still cannot figure out what makes a program good?!? That would seem like a problem… on the surface. It’s not. Here’s why:

(more…)