Developers get an early working glimpse into Microsoft’s latest Web-services technology.
The world we live in is more connected now than ever before. Internet connections have skyrocketed to more than 500 million, there are millions of commercial Web sites, and B2B electronic commerce has surged from less than US$100 million in annual sales to over $1.3 billion, according to a July 2004 study by Pyramid Research.
This unprecedented connectivity, combined with the ongoing need to integrate software platforms, has driven the adoption of Web services to a tipping point. New connected-software systems are appearing within and between organizations, across vertical industries and, increasingly, in the consumer market.
Yet as much as the industry and demand for connected software applications has grown, today's Web-services technologies still represent only the first step in realizing the true potential of such "connected systems." While basic Web services provide the foundation for interoperability and integration, connected systems also require secure and reliable communication, which can be costly and difficult to implement with the development technologies available today.
As part of its efforts to help developers deal with those complexities and create leading-edge connected systems and Web services applications, Microsoft today released the first community technology preview (CTP) for "Indigo," the code name for the company's next-generation Web-services technology. Microsoft also made available the second CTP of "Avalon," the code name for Microsoft's unified graphics-presentation subsystem for Windows, as well as the latest version of the .NET Framework and a WinFX SDK, which provides a collection of documentation, samples and tools to support application development with "Indigo" and "Avalon."
The "Indigo" CTP will provide developers with a highly productive framework for building secure, reliable and interoperable applications. To explain this pre-beta release and how "Indigo" will help transform the face of Web services development, PressPass sat down with Ari Bixhorn, lead product manager of Web services strategy for Microsoft, to connect the dots.
PressPass: What is Microsoft hoping to accomplish with "Indigo"?
Bixhorn: There has been a huge uptake in customers building Web services and using them to connect their businesses over the past four or five years. They love the ability of Web services to integrate software from just about any platform. Our goal with "Indigo" is to provide a framework for building Web services that goes far beyond what today's technologies offer. For example, to implement secure, reliable Web services today, it requires a great deal of manual coding. It can take hundreds or even thousands of lines of code. Another challenge is that companies want these connected systems and software to evolve over time as the needs of the business change.
"Indigo" provides a framework for building connected systems that addresses these challenges we are hearing about from customers. It radically simplifies the development of secure, reliable, transacted Web services that interoperate with other platforms and that can evolve with the needs of the business over time.
PressPass: What do you mean when you say these Web services will "evolve over time?"
Bixhorn: "Indigo" helps developers work efficiently and be more productive, but it's about more than that. It's also about service-oriented design -- applying best practices to building software as Web services, so that the software is flexible enough to be adapted over time. Business requirements are ever-changing, and ideally, the software that supports the business will reflect this reality by evolving along with those requirements. "Indigo" is the first framework built from the ground up to facilitate the development of service-oriented applications. It represents a huge step forward in terms of our customers' ability to maintain software over time.
PressPass: What other benefits can "Indigo" provide for developers?
Bixhorn: One of the big benefits of "Indigo" is productivity. With "Indigo," security functionality that formerly took hundreds of lines of code can be implemented in one line of code. So it's a huge productivity gain in that it allows developers focus on the business problem at hand, rather than on the intricacies of how two applications communicate with one another.
"Indigo" also reduces complexity in building connected systems through its unified programming model. Today developers have different technologies for building different types of connected systems. These include ASMX, Enterprise Services, .NET Remoting, WSE and System.Messaging. Each of these technologies has a different focus for a specific type of connected system. "Indigo" provides a unified programming model for building any type of connected system.
"Indigo" also implements a broad range of Web services specifications, known as the WS-* specifications, enabling developers to build applications that interoperate with Web services built on other platforms. Through this extensive support for WS-*, we expect "Indigo" to be the most interoperable framework for building Web services.
PressPass: How does "Indigo" fit into Microsoft's overall Web-services vision?
Bixhorn: Microsoft has been making a significant investment in Web services over the past four or five years, to the point where Web services are really woven into the fabric of the Microsoft platform. It starts with developer tools such as Microsoft Visual Studio .NET, the .NET Framework, and now "Indigo," but it goes far beyond that. The Microsoft Office System supports Web services. We have Web-services support in MapPoint. Microsoft Windows Server 2003 ships with the .NET Framework for built-in Web-services support. BizTalk Server supports Web services, as does Microsoft SQL Server.
"Indigo" is the technology that developers will use to build Web services based applications moving forward. To create Web-services applications, developers need an enabling technology, and "Indigo" is going to be that technology. So "Indigo" will really be at the heart of Microsoft's vision for Web services. It's a big deal for us.
PressPass: What is a Community Technology Preview, and why is today's release important?
Bixhorn: A CTP provides developers with an early look at a product that has yet to be released. The benefit is that it provides developers with early and frequent access to Microsoft technologies, which allows them to plan their own technology roadmap. Development organizations tell us all the time that it helps them greatly if they know ahead of time the direction of Microsoft, so they can plan their own direction, and the CTP is designed to help them with that.
The other advantage of the CTP is that it sets a great feedback loop between our customers and Microsoft, so that Microsoft can start getting feedback from a large developer community very early in the product cycle. This allows us to incorporate that feedback throughout the remainder of our product cycle so that, when we ship the RTM (release to manufacturing) version of "Indigo" and "Avalon," they not only meet but exceed the expectations of our developer partners.
As for today's release, this is the first time that a broad community of developers will be able to get their hands on "Indigo" and start coming up to speed on how it works. This is important because, according to our research, there are more than 6 million professional developers worldwide who build software using the .NET Framework and Visual Studio .NET. So with this release of the CTP, those developers can start seeing how "Indigo" and the other technologies will help them do their jobs more efficiently.
PressPass: What is the benefit of using "Indigo" in conjunction with "Avalon"?
Bixhorn: "Avalon" and "Indigo" extend the .NET Framework with classes for building new user-interface experiences and advanced Web services. Together, "Indigo" and "Avalon" enable developers to build connected systems that take advantage of the processing power of the smart client, incorporate cutting-edge media and graphics, and communicate both securely and reliably with other applications regardless of their underlying platform.
PressPass: How will "Indigo" work with existing technologies?
Bixhorn: One of the big questions that we get any time we introduce a new technology is, how is it going to interact with my existing applications? From day one, a key design goal for "Indigo" was to protect the existing investments of our developer community. We do this in several ways. First, "Indigo" enables developers to use their existing skills in Visual Basic, C#, Visual C++, etcetera when building "Indigo" services. Second, existing applications built on ASMX, Enterprise Services, WSE3, and System.Messaging will be able to communicate with new Web services built on "Indigo." Finally, for developers who decide to incrementally upgrade existing code to "Indigo," we'll be providing simple mechanical guidance for doing so.
PressPass: What existing Microsoft operating systems will "Indigo" support?
Bixhorn: When we first started talking about "Indigo" at the 2003 Professional Developers Conference, we talked about it being one of the core pillars of "Longhorn," the codename for the next version of Windows. That is still true today. "Indigo" is going to be built in as a core subsystem of "Longhorn." "Indigo" is also going to run on Windows XP and Windows Server 2003. So developers can build and run "Indigo"-based web services on any of those three operating systems. The benefit to developers is that it provides a consistent programming experience across our various operating systems. So regardless of whether I'm using Windows XP today or if tomorrow I'm using "Longhorn," I get the same great, consistent development experience for building "Indigo"-based Web services.
PressPass: How can developers begin working with the CTP?
Bixhorn: The CTP is available as a free download for MSDN universal subscribers (http://msdn.microsoft.com/subscriptions/ ). We'll soon be offering the CTP to the broader public. This will allow developers to install this pre-beta release of "Indigo" and "Avalon," and start getting up to speed on all of the great capabilities that these technologies offer.