Being a Microsoft or Java fanatic may be admirable in some IT roles. IT development management isn't one of them.

When the Microsoft .NET Framework was newââ,¬"well, two years oldââ,¬"a freelancing colleague of mine found himself in a shop where the manager would have nothing else. This particular shop had hired my friend as point man for the rewrite of a static client-server app that was growing by leaps and bounds, and needed to become a scalable distributed app. My friend brought a veritable arsenal of useful skills to the table, particularly in the area of distributed applications architecture, and tried to tout the virtues of Enterprise Java Beans.

Nope, it had to be .NET, my friend was told. Why, he asked? For every reason put forth, my friend raised a concern. The manager brought the discussion to a close with one final justification: "Because," he said, "it's cool!"

It's cool
Don't get me wrong, there are many technologies that I, too, think are cool, and it's fine for an IT manager to hold such opinions. But to make "cool" a reason to conform to a single technology is one of the most dangerous things an IT manager can do.

In today's environment, especially with the advent of service-oriented architecture and rapidly proliferating client technologies, nothing you do today will be intact 36 months from now. The IT manager must cultivate an atmosphere of perpetual change. And the manager who adheres to software brand loyalty blindly runs a terrible risk with a company's most critical assets.

Here are some important considerations
The rate of process evolution in the marketplace is outpacing the rate of development of any single software technology. This is a consequence of having moved the Internet to center-stage. The Internet has created possibilities for achieving coordination and acceleration of business processes that were undreamed of a mere decade ago; it has opened up modes of marketing, and channels of access to products and services that are vastly superior to what existed before; and it is a free-for-the-taking infrastructure available to all, upon which new inter-company infrastructure may be easily constructed.

And since the Internet more or less belongs to everyone, and is so freely available, all of the processes above are evolving at a rate that no single participant can control. It has leveled the playing field, and with more players, there is much more innovation. And since the Internet is technology-agnostic, not even mighty Microsoft can slow the business world down to a rate of growth more in line with its own leviathan plodding.

What does this mean? To begin with, no one technology platform is setting the pace. It's long since ceased to be a Big Blue universe, and Windows aside, it will never be colored Redmond. Instead, innovative new business processes are leap-frogging forward at a speed that leaves even the largest technology sources filling only those gaps that leverage the technology they already have.

Taking your companyââ,¬"and your partner companiesââ,¬"to their own unique leading edge of process development, then, means opening your mind (and your IT shop) to more than one development technology, and putting your creative acumen not into brand loyalty, but into interoperability. In this way, you don't harness your rate of growth to that of a single software company, and you enable possibilities for innovative process improvements that are not achievable with any one platform (andââ,¬"perhaps more importantlyââ,¬"you may greatly increase the speed at which you can develop your systems).

Brand loyalty to a single technology source can cost you your critical edge. When an IT manager has consistently endorsed a single technology source, and equipped the company with that technology for years, then the manager's reputation is to a large degree tied to that infrastructure. Like a politician touting positions, or a scientist seeking follow-on funding, the IT manager's personal stake in that infrastructure can exceed the company's well-being itself in importance. It becomes, unfortunately, an embodiment of the manager's achievements and judgment, which should in theory transcend such details.

When this line is crossed, it becomes anathema to the manager to hear anything bad about the technology. An attack upon an upcoming release of something new from the technology provider becomes an attack upon the manager. A deaf ear develops, and the manager's agenda will be justification, not critical evaluation. This is a terrible position to be in! An IT manager making critical design decisions, who chooses the enabling technology for implementing those decisions, should always greet the next big thing with skepticism, and choose from a carefully-considered array of options for bringing about major system changes and process improvements. Anything less places your company's greatest assets at risk!

Limited thinking
Speaking only one technology language can limit you to one way of thinking. Linguists will tell you that speakers of different languages have diverse styles of conceptualisation. A native German speaker will have a manner of conceptualising that will have subtle differences from that of a native Chinese speaker (plug in any two languages, the idea holds). Similarly, the frameworks behind the major software development technologies carry with them a certain set of conceptual predispositions, and blind adherence to these predispositions can limit a designing manager's thinking considerably.

What this leads to is an environment wherein a developer can come to the manager with an innovative design concept, and even present it in a platform-independent manner; but since the concept itself (something like, say, stateful components) isn't inherently part of the manager's favored platform, the manager never even considers the concept, even if it can be easily implemented within the existing infrastructure. The manager isn't just rejecting technologyââ,¬""Don't say 'Dot Net' to me, I'm Java all the way!"ââ,¬"the manager is rejecting ideas before they even have a chance to be presented. Taken to an extreme, such conversations have the appalling and unproductive tone of religious debates, where one side is gospel and the other side is heresy. And isn't this a foolish way to make business decisions?

What can you do? If you have a brand name zealot in your house, step up the justification process a notch or two. Don't settle for "leveraging our existing assets," or "incompatible with our existing platform" as an answer. These answers aren't answers anymore; the very Internet that set this grand platform competition in motion also has forced interoperability as a mission-critical feature of all software development technologies. Make your manager do more homework, and be relentless in requiring the same justification for a brand-loyal decision that you'd require of a new technology decision.

And go a step further, insisting on a presentation of options for major design decisions and supporting software implementations. The cost of this is some of your zealot manager's time; but the pay-off could be a major leap forward with a hybrid technology solution that opens doors for many others.

Related links

Comments

1

Jason - 17/05/05

Well, it is probably a good thing your friend didn't get his way. We all know that .NET is MUCH more scalable than Java. Besides, having a team that is fluent with one architecture use another because it is recommended by a consultant is just as bad as a zealot.

» Report offensive content

Leave a comment

You must read and type the 6 chars within 0..9 and A..F

* indicates mandatory fields.

1

Jason - 17/05/05

Well, it is probably a good thing your friend didn't get his way. We all know that .NET is MUCH more ... more

Log in


Sign up | Forgot your password?

What's on?

  • Optus Deal

    Broadband + home phone + PlayStation®3 in a single package price!