"Nice to have" VS "Must Have"

Programmers enjoy writing code. As long as we are not under too much preassure, its always fun to add those features into the system that are "nice to have" rather than critical or "must have" features. We have become "Code Addicts". By adding all these unessesary features it allows us to play with the technology and learn from our mistakes, even if it's not at our own cost.

This is unfortunately a reality. I call to all developers there to fight their code addiction. When it gets to features, LESS IS ALWAYS MORE.

Try to find:

- The solution that involved the least amount of lines of code.

- The solution that leverages the technology in the way it is supposed to be leveraged.

- The soluton that results in a refactored whole.


Complexity results in the following:

1. Longer time periods to train up support programmer who need to support the system.

2. Greater likelihood that there are unforeseen functional bugs in the system.

3. More time is required to fix and find bugs in complex systems.

4. Non-technical staff (including management) becoming skeptical and negative towards the IT industry due to support issues.

I'm not saying that there are not times when I complex problem requires a complex solution, but we must always strive to find the shortest path through the forest.

Billy Hollis, one of my heroes will be giving a talk at the 2008 Patterns and Practices Summit in Seattle this year which I will be attending. The topic is "Drowing in Complexity". Seems like I'm not the only one aware of this problem! :-)

Jean

Published 24 September 2008 17:48 by jean

Comments

No Comments