Search:
Locator+ Code:
FTPOnline Channels Conferences Resources Hot Topics Partner Sites Magazines About FTP RSS 2.0 Feed

Back to VSLive! San Francisco Show Daily Home

email article
printer friendly
more resources


Preparing for Indigo
What you can do now for a smooth transition to Indigo.
by Tom Barnaby

VSLive! San Francisco, March 23, 2004

Note: Tom Barnaby is presenting "Get Ready for Longhorn: Going Indigo" at VSLive! San Francisco on Friday, March 26. These tips are from that session.

For the past couple years, .NET developers had to decide among several compelling options for building distributed applications. The "Big 4" technologies—remoting, Web services, enterprise services (COM+), and message queuing (MSMQ)—continue to jockey for position in the distributed programming universe. In turn, questions regarding when, where, and how to apply these diverse technologies continue to plague developers and architects of distributed applications.

ADVERTISEMENT

This is about to change. Microsoft recently unveiled an upcoming technology, code-named "Indigo," which unifies the Big 4 distributed technologies into one common programming model. Furthermore, Indigo promises to provide the tools necessary to bring service-oriented architecture (SOA) into the mainstream. This is fantastic news for the future, but it has even further complicated the present. When choosing which of the Big 4 technologies to use, you must consider not only the advantages and disadvantages of each for now, but also whether the code you write today against a particular technology will continue to be useful once Indigo arrives.

Your Application Will Run Post-Indigo
The most important point is that your distributed application will continue to work even after you install Indigo, regardless of what technologies you used to build it. In other words, Indigo will not break your remoting, Web service, enterprise services, or MSMQ code.

However, Indigo does implement the latest Web service standards, protocols, and distributed programming concepts. You'll likely want to port your application to Indigo to take advantage of these features. In this context, the Big 4 technologies are not equal; some are easier to port than others. When evaluating the Indigo friendliness of a technology, consider two important aspects:

  • Can you use the technology to interoperate with Indigo applications without any modifications? For example, will your Web service–based application be able to talk to an Indigo service? (The answer is "yes," by the way.)
  • How difficult is it to change your code to use Indigo rather than remoting, Web services, or MSMQ?

With that in mind, here are some tips to help you prepare for Indigo today.

Tip 1: Swallow the Service-Oriented Kool-Aid
With Indigo, Microsoft has made a major investment in SOA. Unfortunately, the overwhelming blitz of SOA-related articles and discussions are threatening to make it just another buzzword no one can distinctly define. To Microsoft's credit, however, its Indigo developers have a clear SOA definition and have outlined the four principles of service orientation. But you don't have to wait for Indigo to start doing SOA. You can apply these principles today in your own applications. And doing so will provide a smoother path into the world of Indigo.

Tip 2: Develop Services Using Web Services
Of all the current technologies, Web services shares the most in common with Indigo. Therefore, a Web service can interoperate with Indigo services without modification, and you can easily port your Web service to become a full-blown Indigo service. In fact, all you have to do is import a different namespace.

Tip 3: Don't Panic!
In all likelihood, Indigo is still at least a year away from its official release. In the meantime, you can continue what you're doing, read about SOA, and use Web services if they make sense for your application. Remember, every technology you choose to use now will continue to work after you install Indigo. So if you have compelling technical reasons, for example, to use remoting instead of Web services, these reasons do not evaporate just because Indigo is on the horizon.

In conclusion, Indigo presents a different programming model and methodology for building distributed applications. This article's tips, however, will help you prepare for a smooth transition to Indigo in the future.

About the Author
Tom Barnaby is an instructor and architect at Intertech, an enterprise developer training firm. He is the author of several Apress books including Distributed .NET Programming in C# and Distributed .NET Programming in VB .NET, and a coauthor of a forthcoming book titled .NET Attributes. With Intertech, Tom has developed courses on Visual Basic .NET, C#, and distributed .NET programming, and he has delivered training for organizations such as Lockheed Martin, 3M, and Microsoft.

Back to top



Java Pro | Visual Studio Magazine | Windows Server System Magazine
.NET Magazine | Enterprise Architect | XML & Web Services Magazine
VSLive! | Thunder Lizard Events | Discussions | Newsletters | FTP Home