Bob Cancilla’s CNet article is so full of FUD
that I can’t help but making a few more comments and post a few
questions. Unfortunately, his email address isn’t mentioned near the
article … therefore I have to blog it. Mr. Cancilla, feel free to use the
comments feature here, if you find this…
Unlike IBM, Microsoft falls short when it
comes to helping customers use standards in a productive, cost-effective way. […]
Sure, both companies have worked closely to develop and promote a sizable
number of important industry standards that will continue to have a big impact
on the way business is conducted in the foreseeable future. But cool specs are
meaningless to the IT people who must actually assemble all those standards
into real business solutions. That's where the rubber meets the road for Web
services. Redmond's approach to Web services is a dead-end of closed,
Windows-only systems that lock customers into a single computing model.
Customers don't have the freedom to choose the best hardware or operating
system. Where does that leave the millions of users who rely on non-Microsoft
platforms such as mainframes, Unix or Linux?
First of all, Mr. Cancilla, you haven’t understood Web Services, at
all. Web Services are about connecting systems, irrespective of operating
system, application platform or programming model. Redmond’s approach to
web services is just like IBM’s and BEA’s and Sun’s and Oracle’s
approach to Web Services. All of them think they have a superior application
platform and their embrace of Web Services serves to make that platform the hub
of communication for their and all other systems that are (for them: unfortunately)
running on other platforms in the reality of today’s heterogeneous IT landscape.
It’s about opening services for access by other platforms. I wish I would
know how you get the idea that “lock-in” and “Web Services”
belong in the same sentence?
Secondly, show me an environment that enables the average programmer to be
more productive and hence more cost effective when developing XML and Web
Services solutions than Microsoft’s Visual Studio .NET – to a
degree that it backs up your “falls short” claim.
Third, I wonder how someone who has dedicated his career to one of the most monopolistic,
locked-down and proprietary platforms in existence, that is IBM’s
midrange and mainframe platforms, feels qualified to discredit Microsoft for
their platform strategy. In fact, I can run Windows on pretty much any AMD and Intel-based
server or desktop from any vendor – how’s that with your AS/400 and
mainframe apps?
Ultimately, .Net defeats the purpose of open
standards because Microsoft products are open only as long as you develop
applications on the Windows platform. To me, this doesn't say open, it says
welcome to yet another Microsoft environment that is anything but open.
Likewise, IBM’s full Web Services stack is only open as long as you
write applications for their WebSphere environment. WebSphere is IBM’s
application server and Microsoft’s application server is Windows Server
2003. Every vendor who makes money from software tries to build a superior
platform, resulting in features that aren’t covered by standards and
therefore cause vendor lock-in. That’s a direct result from market
economy. However, this still doesn’t have anything to do with Web
Services, because these are “on-the-wire” XML message exchange
standards that primarily exist for the purpose of cross-platform interaction.
Proprietary environments deny businesses the
flexibility to chose best-of-breed solutions that are fine-tuned to their
industry's unique environment.
… like OS/400 and OS/390 ?
Additionally, Microsoft's claim that .Net's
Web services platform saves customers money is misleading. Sure, the initial
investment is enticing, but how much will it cost when the hard work begins? A
recent Gartner report said companies planning to move their old programs to
.Net can expect to pay 40 percent to 60 percent of the cost of developing the
programs in the first place.
A recent discussion with my 9 year old niece has shown that moving “old
programs” from anywhere to anywhere isn’t free and that anyone who’d
make that claim shouldn’t be working in this industry.
Building your company's Web services platform
on .Net is fine if you don't mind throwing away decades of investment in
existing applications. For instance, on any given day, businesses use CICS
systems to process about 30 billion transactions, to the tune of $1 trillion.
They can't afford to rip out that kind of processing power. Instead, they're
looking for ways to exploit it within other applications. But if they were to
buy into .Net, they'd better be prepared to stack it on the shelf because
Microsoft's Host Integration Server provides limited access to CICS on mainframes.
Ok … here we have it. CICS is a lock-in, proprietary IBM product,
right? So, what’s better than Host Integration Server? I suspect it’s
an IBM product, correct? So if you were to replace that all so powerful IBM mainframe
with any other technology (including Linux), of course using a different
approach to architecture (which is entirely possible), how would you have not to
throw away that investment?
What seems to be promoted here is “stay with IBM , use their stack”.
I have all respect for the power of the IBM mainframe platforms, but using “openness”
as an argument in this context and for the conclusions the author is making, is
nothing less than perverse.