Any application can be rewritten as a web based service. Salesforce.com is an excellent example of taking an existing client server application and rewriting it as a web based service. Hotmail is a web based email service. IBM is pushing hard with its "On Demand" software as a service program. Consumer focused web based services are often cited as examples, and there are lots of them. But enterprise applications are where the big money is and entrepreneurs know this.
In the web service model a developer can code a feature or bug fix in the morning, test it in the afternoon, and have it deployed to millions of users by the end of the day. Innovation is instant, and continuous. Contrast this to the traditional software development method that takes years to develop, test, and ship. Then large corporations will only update their application infrastructure once a year. So it can take years to get a feature to the ultimate end user.
Today Google, MSN, Amazon, Yahoo, eBay, Salesforce.com, and hundreds of start-ups are delivering applications as web services. For the purposes of this discussion Web Service will mean any software functionality that does not require a client download.
This web based service tsunami has been building for a long time. Five years ago I was VP of product marketing at Bowstreet, one of the first web services tools companies. We had a great vision for building applications using loosely coupled services. We thought all new applications would be built that way. The direction was right...the timing was wrong.
What has changed? Why will web services be successful this time? Lots of reasons. Broadband is cheap, fast, reliable, and ubiquitous. XML, WSDL, SOAP, and UDDI are all accepted standards. Millions of wireless devices are better suited to web services than large software applications. Faster servers, cheaper disks and memory make large PC based server farms possible. And maybe most importantly, frustration with large expensive software infrastructure for internal development and deployment. The list goes on.
Why aren't all applications moving to web based services? Like most things in life there are trade-offs. User interface, scalability, performance, and integration with other applications sometimes favors client based applications.
The best approach is to take advantage of the best of both the client and web based models by building hybrid applications. Google does this today with its "web" based servcies, although few people realize how much script and code is being downloaded to their PC in the background. It is rumored that Google will team with OpenOffice.org to build a web based service competitor to MS Office.
Ray Ozzie is leading an effort within Microsoft to implement web services across all product lines. I worked directly with Ray for several years as VP of product management at Groove Networks. He is the smartest guy I have ever worked with, a true visionary, and a nice guy too.
Sam Ramji, my colleague on the Emerging Business Team, is focused on this space and writes frequently on this subject in his blog. Sam refers to web service based apps as "Software as a Service" or "SaaS". Sam has an interesting post today entitled "Earning our place...again". Well said.
Microsoft is shipping lots of web service based apps as well. Xbox Live and MSN Blogs are prominent examples. See the Microsoft Web Services Developer Center site for more examples and tools. This is a great start.
Mary Jo Foley of Microsoft Watch wrote an interesting story about planned and rumored web services offerings from Microsoft. These guys watch Microsoft like a hawk and often know about new developments before we do out in the field. I like what I'm hearing.
It can happen to any application...and it is happening right now. The web services tsunami is coming. Get your surfboard ready or be crushed by the wave.
I agree with a lot of what you have written - but ultimately believe that the future of Microsoft products should attempt to balance interaction between smart clients and web services to maximize the innovation on both client and server based devices (both at the hardware and software levels).
Posted by: Paresh | September 30, 2005 at 08:33 AM
Your post sounds like the rantings of a myopic maniac blinded by the Google threat. Sure web services are important but don't make it out to be the panacea for all development. If you want to start competing with Google why don't you start by making your web sites faster especially MSDN which is a *dog*. It's faster to use Google for API searches compared to ether the online or offline version of MSDN. If you can't even get your dev sites decent, what chance do you have competing on others...
jeez
Posted by: unsubscribed | September 30, 2005 at 09:14 AM
To 'unsubscribed'.
Re: MSDN. You are right. We're fixing. Wathc this space v.soon (or http://msdn.microsoft.com to be precise).
Alex.
Posted by: Alex Barnett | September 30, 2005 at 09:51 PM
Coming? I think the web service tsunami started in 2003, and it's finally catching the big players as it slams into shore. Some of the terms that many of us have been familiar with since 1998 (RSS, XML, SOAP) are making their way to the C-level executives and getting pushed back down the tech foodchain to engineers to implement as ideas they likely had half a decade ago.
I'm currently in the hosting field, but work for a well known web design studio, and happen to write web services on a daily basis outside of the office (see: http://www.vobbo.com/ as my latest experiment, live video recording through the web, RSS complete, and capable of providing object/embed code to link the video to any number of large'ish websites (a blog, MySpace, etc). A lot of folks in the web development community are beginning to pick up on cues from Microsoft, Google, and others and see that services through the web are just easier - easier communication protocol, as it's already done in the browser; easier display toolkit, as HTML/CSS/Flash devs are cheap and common; easier to push updates, as changing versions and flushing caches makes pushing updates instant; better protection of assets, as users see only the display and never have binaries they can hexdump and run through decompilers.
I guess my long, drawn out message is: yes, it's coming, but it started long ago, and it should be really, really obvious to anyone who's been in the software field for more than a few months.
Posted by: Jeff | October 01, 2005 at 10:35 PM
Fantastic Read...
Looking forward to more such interactions
Posted by: Akhtar | December 21, 2005 at 07:29 AM