A Portion of Buff

Everybody else had one, so...

Do, or do not. There is no try

Keith writes:

"I believe that it is not possible to ‘Do your best’ when it comes to developing an application. I think this because as developers we are constantly evolving in our skill sets. Even within the scope of a small, say 4-6 week project; we have learned things by the end of the 6 weeks that make us better than when we started. Thus, to do our best we would need to re-code the things done at the project outset and then at the end of the re-write we would once again be in the same boat."

 

Some random thoughts in response:

I think "your best" is the wrong metric by which to judge performance.  You don't need to do your best, you need to get your code accepted by the customer.  As long as refactoring your code helps you pass their tests more quickly, with less effort, and more reliably, then keep refactoring it, but when you reach a point where the changes to your code have little or no impact on your application's ability to pass its tests, stop.

Also, why wait until the end of the project to rewrite your software?  Continuous refactoring (test, code, refactor, test, code, refactor...) allows you to instantly apply the things you have learned as you code, not six weeks later.  It's not as if you'll get to the end of the project and suddenly become aware of all the things you have learned, so why not (with the above caveat) apply that knowledge immediately?

And if your customer is judging the quality of your software solely on the effort put into it, or your skill as a developer, well...I don't have an answer for that :-)

Cheers.

Comments

No Comments

Leave a Comment

(required) 

(required) 

(optional)

(required)