Microsoft’s Visual Basic spawned an interesting phenomenon. It has made programming accessible to the masses and possible to create decent looking applications fairly easily. But it enabled “The manager masquerading as a programmer”. For the first time in history, managers obtained the power to use computers and create applications to fill some particular need they have. No longer were they beholden to the IT/programmers. They can now scratch their itch (to quote Eric Raymond). Unfortunately, I have seen this phenomenon cause problems. In this case, there is some truth to mother’s admonition to not scratch the itch, it will make it worse.

The manager has a good idea for a new product and being VB savvy, proceeds to develop the product. It becomes a viable piece of software and is moderately successful. However, little thought has originally been put into the structure of the application. This code now must be maintained and extended. In small shops, the manager (in addition to managing) now assumes both the product management role and the development role. Being human, this can lead to a myopic view of the product, with no back and forth between development & product management. This tend to lead to piecemeal features, now much forethought to product growth or architectural considerations. It also distracts the manager and prevents him from excelling in the managerial role.

Another problem can occur when the manager has a need for software to meet some internal business requirements, tracking employee time for example. Being diligent, he looks around at available commercial software, but nothing out there meets his exact needs. Being empowered by VB, he decides to roll his own software. This results in a product filled with quirks and unfinished features. It again distracts the managers from his real job.

In my experience, this seems to be more prevalent in small companies, where the manager’s job is often loosely defined and where a “time is less expensive than money” attitude sometimes prevail. It also tend to afflict managers that come from a more technical background.

Is this something you have run into or do I simply have a very skewed sample set?