Monthly Archives: December 2006

Web services are not cool anymore

Well, it was bound to happen. No technology can be the cool new new thing forever. After nearly seven years, I guess it’s finally Web services’ turn.
Adoption rates for Web services continue to grow steadily, and a recent survey (which unfortunately sort of seems to mix Web services and SOA) indicates that SOA adoption is growing, and productivity gains are real.
This evidence seems to fly in the face of some of the recent criticism about SOAP.
So what does this all mean? It means that the inevitable criticism is starting to happen that happens when a formerly cool technology goes mainstream. It’s like that indie band everyone liked until they sold a million CDs.
This fits right into the Gartner group’s “hype cycle” – Web services are now past the peak of inflated expectations, through the trough of disillusionment, on the way toward mainstream adoption.
[Note: I could not find a link for the 2006 report that didn’t require Gartner membership, but I can tell you that SOA is right in the trough this year, and advanced Web services are falling toward it very quickly.]
So all this noise we continue to hear about how terrible WS-* is just means that it is going mainstream. 😉
But seriously, once a technology passes the hype cycle and becomes adopted, all its warts and bumps become more obvious as we find out what it is really good for, and what it is not. In that way the criticism is an acknowledgment of fit for purpose (even if it’s expressed in terms of what it isn’t fit for).
Mark Little recently posted an interesting opinion piece asking whether all this sort of backlash against Web services would threaten the acceptance of SOA. He clarified this in a comment, which says that equating Web services to SOA restricts options for using other technologies that may be a better fit for some SOA requirements.
Excellent point – we should no more propose Web services as the right solution for everything than we should propose REST as the right solution for everything.
In fact this kind of argues that Web services are going too mainstream – being used for things maybe they’re not good for. And so the criticism, the backlash, etc. is actually good, if it helps prevent that kind of thing.
We can (and will) fix many of the problems with Web services that are coming to light. Sure, SOAP may be more complex than it needs to be. This whole optional header thing is a bit weird – and how the headers work in combination isn’t clear. And some of the WS-* proposals will end up not getting used at all, or not getting used much.
Certainly many Web services tools take a somewhat limited view of XML and tend to tie it too closely to object oriented technologies.
But we can improve that, we can improve the way XML is used, include dynamic languages more into SOA environments (interesting to note the same survey referenced earlier also mentions the increasing adoption of Ajax), and fit REST-style interactions in where they make sense.
We can continue to separate services from objects, and create new tools that better support the service concept.
What we can’t do is get broad industry agreement on another set of specifications. I can easily remember when it wasn’t at all certain that SOAP would succeed in gaining sufficient adoption.
This is the world we have. It may not be pretty, but it works, and it is definitely better than what we had before.
And now it’s just as uncool, too.

Webcast on Distributed Approach to SOA Infrastructure

Update 1/3: (and apologies for the delay) the archive for this and other Webcasts on open source and AMQP have been posted.
Yesterday Anne and I finally had a chance to catch up and prepare for Tuesday’s Webcast.
We’re trying a new format – more of an interactive style than a straight presentation. Anne is going to introduce the topic of SOA infrastructure and interview me about it, focusing on how the distributed approach is different from the centralized approach typical of most ESBs.
I like Anne’s view of SOA — she draws a clear contrast with application integration. Althought services can be used to integrate applications, that is not their main purpose (reuse is), and software which was designed for application integration (e.g. EAI brokers) is not likely to work well for reusable services.
While it’s true enough that SOA is an approach, not a technology, some technologies are better suited to SOA than others. In particular the distributed approach has many advantages – such as incremental adoption (with reasonable starting price), easier to achieve reuse (which is, after all, the main point of SOA), and greater deployment flexibility.
The distributed approach also creates some challenges around management and governance, and believe me Anne will not be shy about asking the tough questions here…
Hope to see you Tuesday! (Or if you happen to be reading this after Dec. 12, check for the archive link.)
As always, please let us know what you think. Join the Webcast and ask a question, send email, post a comment, etc.

Open Source the Enterprise Way

Four years ago I did the first study for IONA about the importance of open source. It was pretty clear this was something we needed to get involved in.
And so we did, beginning to explore what was going on, and then getting increasingly involved in a variety of projects. Until today, our involvement has been pretty much a peripheral effort.
I am very glad to be able to say that we are taking a huge step forward this week with the announcement of Celtix Enterprise, which is the culmination of some very significant open source efforts we’ve been involved in during the past 18 months or so.
But Celtix Enterprise is certainly not the end of the road. In fact it is a beginning – an important and clear step toward open source the enterprise way – services and support for open source the way we provide them for our commercial products, 24 x 7. Without fail.
Which means you now have a great way to check out the best way to do SOA, the distributed way. The download is free, and the services and support completely optional.
The best way to start your SOA is create some services, connect them together, and evaluate progress. Don’t go out and spend your money on an expensive registry/repository solution before you have a large enough collection of services to require one. Don’t spend your money on an expensive SOA suite – it’s much better to pursue an incremental adoption route, and Celtix Enterprise gives you the perfect way to start.
Celtix Enterprise is new code built around a configurable microkernel architecture, the same approach as Artix, using Java technologies such as Java 5, JAX-WS, and JAXB. The configurable microkernel approach (which is, by the way, one of the major reasons I joined IONA seven years ago) is not unique in the industry, but IONA is its pioneer and has the most expertise.
Of course the adoption of open source in throughout the enterprise isn’t going to happen overnight, or even next year, or the year after that. But open source is already in the enterprise and already is having a significant impact. That’s why it’s important to support open source in conjunction with commercial software, and give it the same treatment.
Most companies have, or are going to have, a mixture of open and closed source software. What is really great is the ability to use open source where it makes sense, commercial software where it makes sense, and have consistent services and support across the two. Today’s applications almost inevitably cross open and closed source boundaries. Open source is in fact inescapable – the question is how to best support it all.