The Legacy Programmer Boss

by Krishna on October 8, 2009

Daniel Auger defines a new term:

The Legacy Programmer Boss is the manager who had a successful programming career in the past but sees many modern concepts as language baubles, academics, and anti-patterns because they are out of the loop. The fact that they once had a high degree of expertise gives them confidence in making mis-judgements.

This is a problem for every programmer who gets promoted to a role where they have to spend some portion of their time managing other programmers. Usually, the point is that the senior programmers is more experienced and knowledgeable than the other programmers. And so, it is a better use of their time to take on higher-level tasks (architecture, design) and provide guidance to the others.

So far, so good. But as time goes by, the other programmers also gain expertise. And they spend more time exploring and experimenting than the senior programmer. Partly because the latter has to be focused and specialized (though not always). The junior programmers also tend to be more receptive of newer ideas and possibilities.

When the senior programmer is faced with choices involving newer technologies, they find it difficult to understand its value. First, because they don’t know anything about them. Second, they have already finished successful projects without using them.

To take an extreme example, take a programmer back in the good old days when they used tape to record programs. She did not have the luxury of an IDE, multiple compile-run cycles, testing and so on. She had to get the program right on the first try because it would be hours or days before she could run it again. So, she would wonder why modern programmers need so many sophisticated tools when they could design the code before they start writing a line?

Or take an experienced C/C++ programmer wondering what the big deal is with programmers complaining about pointers, memory management and multiple inheritance. Or a Java programmer amazed at why some developers are obsessed with syntactic sugar. And on and on — take your pick in newer languages, tools, methodologies, components, etc.

Everyone is prone to this syndrome. Something worked for you in the past. So without even thinking, you tend to dismiss newer developments. The only antidote is to keep up with the new stuff through software communities (real and virtual), reading books and blogs and so on. More variety and more exposure will reduce incidences of acting like a legacy programmer boss.

Comments on this entry are closed.

Previous post:

Next post: