Code Design/Structure

Reminds me of an app I helped to support. It was a GUI front end written in tcl/tk. About 20,000 lines of code using variable names like 'vx3' and so on. One or two massive files, IIRC. No comments or documentation at all. No oversight, it was assigned to only one engineer, who developed and managed it for about a year and then moved on. That created quite a snafu, but they found another person to take it on. It was a real bit of job security for both of them.

A second tier of support techs was then required, since the programmer had no time left from maintaining and grappling with it, to actually tailor it to its production demands. Finally, a team in a different part of the company independently wrote almost the same app but completely in Java. The whole tcl/tk mess went in the garbage can within a few days of transitioning. The second support engineer went on to a real job. The Java app was rolled out globally to dozens of factories.

That was the conclusion of an investigation in which the two apps were compared and the Java one came out the clear winner, even though the human interface wasn't as spiffy. Understandably, a high premium was placed on maintainability.