Developers overlook risks

If you decide to rebuild a legacy system from scratch, developers are initially very enthusiastic. Of course it is difficult to finish the project on time within budget, but they are confident they can do it.

What programmers especially like is to use exciting new technology; to explore, to learn, to experiment. This is good because without this attitude, they would never become good programmers. But this attitude also has its disadvantages. They will only see the positive aspects of the new technology and underestimate the risks.

Programers only see the advantages
Psychologically it works like this. Programmers have discovered that some old legacy code is outdated and is not pleasant to work with. Let us say they do not like the fixed interfaces. They are right, since they lose a lot of time when adding a field to an interface file. Luckily .Net solves this problem and this is one of the advantages of using Web Services. But programmers will only see the advantages of Web Services, and do not realize that new technology also has its disadvantages. For Web Services the learning curve is performance, and the dynamic character of Web Services. Programmers overlook these disadvantages. You cannot blame them; nobody warns them. The new technology is promoted by the creators of the new technology. Some new technology even reaches the status of hype; there is a stampede to use the new technology and damn the consequences.

Our programmers, unaware of the disadvantages, think they need 100 hours, and plan for 200 hours. Then they are sure they can replace the fixed interface with Web Services. But when implementing the system they face all kinds of unexpected problems – at first interesting, but later frustrating. A task estimated at 100 hours, planned as 200 hours, may eventually take 1000 hours or more. And that is just for one task.

Higher salary
Developers get a financial reward when they overlook risks.

By working with new technology, a programmer increases his standing in the labour market. He is assured of a higher salary, whether in your organization or with another company.

For some programmers a higher salary is not so important They are motivated more by having the freedom to switch jobs and projects. The result is the same; they overlook risks.