There are some things that you have to keep your mouth shut about, and there are others where you just can’t. I don’t know if someone from work will see this post and get me in trouble as a result, but you just can’t be silent when something you see violates every principle you have. I won’t be referring to the company name or the tyrant in question by name.
What’s really sad about this is that I’m not alone.
We have someone at work who had been with the company for a few years now. The person basically was assigned to rescue the company from outdated software which was struggling under the growth and demand for capability. This person was an accomplished developer in the past who had now seen the world fly by faster than he could adapt and now progress has crawled to a halt as he tries to fit every round peg of a problem through his square hole of a brain.
Now we have to move through hoops to get anything done and to add any feature or improve currently broken or non-existent and those that exist only as an entry on a features list. But here’s the killer : This person wants to do everything as was done (poorly even then) 10 or more years ago.
Bru ha ha
We had to build a “helper” application that will create a UPS shipping label using their web tools (web services basically) and get any responses back. Success, error, modify label etc… This way we can integrate the application directly into the shipment and POS system without anyone having to fire up the browser and manually enter in customer data which can very easily lead to common errors like misspellings etc…
Well, before using the web services we have to build our list of labels and match all ShipFrom and ShipTo and such properties before sending off to UPS. This required knowledge of XML and by extension XSD markup.
The developer samples provided by UPS on this were Java based and I was asked to take a look at it as I had prior experience with the language. Within the first 5 minutes I realised that this is basically your garden variety web services app with encryption for security and a standard schema we can all implement in any language. They’re not going to bind developers to any one language, but I was asked to do this in Java anyway (a sign of things to come).
Any programmer worth his salt can tell you .Net has extensive support which allows not only direct XML manipulation but also object to XML serialization as well as dictionary support for sorting, searching and retrieval. Well, our resident in charge is going to use the Chilkat XML ActiveX component and build the application in VB6 because it’s “easy and it works”.
Read : I don’t know any other way to do this as XML is Klingon to me, so I’m going to use ancient software to make it more convoluted. This way I can keep fixing it when it can’t perform and I’ll be needed for a while. But at least I’m going to admit that Java may not be necessary, although I’m going to do this in VB6.
When I politely tried to suggest using built in XML support in .Net rather than using a third party component which may or may not work and may or may not be supported for the lifetime of the software, I got a War and Peace excerpt on why Microsoft is the devil and will change on you overnight forcing you to adopt a more powerful, more complicated and frustrating tool such as SSRS. A point which has nothing to do with the task at hand, and frankly, is completely false if you know what you’re doing.
So let’s recap…
We had to build an application which this person knew would have trouble with as times have changed and used a language he had no experience with. Any alternative suggestion which may involve something unfamiliar (or pointing out you’re wrong) is sacrilege.
Of course office politics plays into this as well, but by and large project managers are completely ignorant of what’s going on. Or else they feel helpless and at the mercy of tenured developers who, nonetheless, are the only ones who understand legacy systems. Imagine how much money is being lost in productivity that would have also contributed to the current economic debacle.
But don’t be so smug in your ways, you tenured tyrants. The Old Guard will one day be overrun by the Young Turks and the companies that you have held hostage will either wise up or be out of business. There’s nothing keeping the rest of us bound to the decrepit cathedrals built to worship your ego as we’re not afraid to learn new things or challenge obsolete ideas.