Thursday, December 01, 2005

Indigo

The Dot NET Framework is focused on unifying all Microsoft application development. It's primary tenets include platform independence and network transparency. Dot NET is Microsoft's strategic initiative for server and desktop development for the next decade. We are now approaching Longhorn era with key products like BizTalk Server, Indigo, MapPoint, Microsoft Business Solutions, SharePoint, SQL Server, Visual Studio, Web Services Enhancements (WSE) and Windows Server 2003. Indigo is one of the biggest steps toward this goal as it provides facility of Communication between all these which is most important thing behind the whole idea.

Recently I attended a Microsoft's MSDN meet at Chennai and got some idea about this great technology- “Windows Communication Foundation – Indigo Architecture”.

I have read some descriptions about Indigo but the one written below is, I think, OK.

“Indigo is a unified programming model that enables developers to build connected systems in a productive manner.”

The most beautiful thing about Indigo is that it allows you to publish your services as ASMX, WSE or .Net Remoting... whatever you like. I mean while coding you need not to worry about the publishing aspect of the application. Learning API has considered more difficult than learning a new language. Now you don't have to look for learning WSE, ASMX, System.Messaging, System.EnterpriseServices, and .NET Remoting as Indigo will bring the best aspects of these together with single API, although with some limitations for COM+ (I don't know what exactly they are).

If you go into details about finding whether indigo is Service Oriented Architecture (SOA, more popularly) or Enterprise Service Bus (ESB or messaging middleware), you are putting yourself in the maze because it is both. You can use Indigo API as SOA as well as ESB. Indigo provides all those facility which should be provided by a basic ESB facility.

You can use this API if you have Microsoft Visual Studio 2005 beta 2 or later (I don't remember exact version of framework and SDK provided with that). Here you don't need IIS server or anything like that. HTTP listener will run on kernel mode and .net framework can use it to provide all those basic services provided by a web server (of course including XML-SOAP).

It seems Microsoft will gain good respect of geeks with this new “open standards” technologies. Dot Net technologies are getting recognized at all levels. Dot Net technologies are GNU DotNET and Mono Project are good example of it, plus all those language which has just got “.net” suffix.

With more advancements, Indigo will be really hot technology similar to idea of “synapse” of the movie “Antitrust”.

Some good links you can refer:

http://msdn.microsoft.com/webservices/indigo/default.aspx

http://www.ftponline.com/vsm/2005_03/magazine/departments/guestop/

http://itmanagement.webopedia.com/TERM/I/Indigo.html

http://www.internetnews.com/ec-news/article.php/3357621