Thursday, April 13, 2006

Back to the tale of two programmers...

Some time back I really stirred the pot by telling a tale about two programmers: one used datasets and flat architecture and one used full architecture and domain models. In that tale, I made it seem like it was easier for the first developer to get something out the door. In this tale, we come back to the developers a year later. Mounds of functionality has been added and many changes have been made. One day the manager comes in and says "We're converting our app from a desktop app to a web app. And the data will all come from Web Services.". The two developers are stunned. But the second developer has a good object architecture and good layer segmentation. The task is a big one but in his/her case, only the UI and the direct db access portion of the DAL are changing. In the case of the first programmer, the task is so big that the current code is almost a complete loss.

There are pros and cons to every development method. But today's developers must be of a different mindset. We must develop with the intent of creating 'living code'. Code that can adapt to today's rapidly changing environments. The only way we can do that is to develop good architectures, good OO skills and patterns and good segmentation. Refactoring is the only way to keep the code alive and growing. 'Write once and live with it' type code is no longer an option. We have to 'write, reuse, refactor, extend'. If we don't write it in such a way that we can reuse, refactor and extend, then we're just wasting time.

0 Comments:

Post a Comment

<< Home