Under normal circumstances, the release of Visual Studio 2005, not to mention a long-awaited SQL Server update, would garner most of the attention in the .NET world. But discussion is dominated by two other releases of another kind -- Microsoft's next-generation collaboration tools and leaked internal memos from Bill Gates and Ray Ozzie -- largely because they suggest a shift in Microsoft's strategy for delivering software.
Windows Live and Office Live are Web-based collaboration services that mark a stark departure from Redmond's long tradition of client-based applications. Basic versions of both Live offerings are free, with add-ons available online.
Ozzie said in his memo that situation reflects the reality that any developer -- Microsoft included -- must embrace to deliver software tools to customers. To succeed, products must be featured on sites that combine product marketing, keyword-based advertising, downloads and user forums.
Behind this is the notion that folks won't pay a lot for software, or readily upgrade. Meanwhile, the advent of AJAX style browsers is helping to propel the notion of Web services.
"This model [of advertising-supported services and software] has the potential to fundamentally impact how we and other developers build, deliver and monetize innovations,' Ozzie wrote. (The Gates and Ozzie memos have been posted in their entirety on David Winer's blog.)
AJAX: Web services' next generation
The value of Web services to Microsoft is hard to deny. Gates, in his memo, calls it "the next sea change" and notes that the Internet can "make software far more powerful by incorporating a services model."
"The whole idea is, can we make the whole user browser interface behave as though it was a desktop?" said Ronald Schmelzer, senior analyst, ZapThink LLC. "[AJAX] will change the way people are interacting with Web apps, for sure. It will change the expectations for what web apps should do. It's going to raise the bar for everything."
Jonathan Boutelle, Principal, Uzanto Consulting, recently used a combination of AJAX and Flash to build an interactive survey application called MindCanvas. As he noted in a recent blog entry, Flash has certain advantages over AJAX, such as the ability to incorporate sound and assemble frame-by-frame animation.
When it comes to building enterprise apps, though, those advantages become limitations. And tools usually used in conjunction with Flash, such as Flex and Laszlo, are a "big architectural commitment," Boutelle said. He added, "AJAX is a continuous solution. Folding in just a little bit of optimization into an existing app is much easier with AJAX. It's the kind of thing you can ramp up slowly."
Challenges, but also promise
AJAX also emphasizes complex, client-side coding, whereas the market focus in the last five years has been server-side work, noted Brian Goldfarb, lead product manager, Web platform and tools, Microsoft.
ASP.NET is used principally for its server platform technology, and Atlas is but one front end for ASP.NET. Developers aiming to build flashier applications will still use Windows Presentation Foundation, and those who want a portal interface will stick with Windows Live, Goldfarb suggested.
"It's a presentation-tier decision," Goldfarb said. "It depends on the richness and the reach of the application."
Another company honing in on AJAX development is ICESoft Technologies Inc., based in Calgary. Its ICEfaces tool addresses the issues associated with applying AJAX to an existing application. Starting from scratch with AJAX is one thing, but adding it to an app requires some back-end restructuring.