DistributedComputing using MicrosoftDotNet is expected to have significant impact to legacyDotNet setups once WindowsXpSP2 (Aug04) is rolled out. This is because RPC, DCOM are all changed under SP2
I don't think there's a question that .NET is innovative. They're trying to fill a perceived market need with a unique set of technologies. Whether that market will congeal together remains to be seen, but Microsoft should be commended for putting the full force of its weight behind it.
The problem I have is: we've been here before. With other big vendors. What makes this time different?
.NET really is about creating web services. Dave Winer calls it a "two way web", but I think he's more deep into the philosophy of SOAP than MS is. But what are web services but a sea of distributed objects that we can call, query, poke at, juggle, share, modify, and collaborate on? The idea of sponanteous, compositional computing -- the death of the application. The beginnings of emergent software systems.... It's been a software holy grail for over a decade. See http://www.distributedcoalition.org/ for archives of the dist-obj list dating back to 1996, dreaming about this sort of thing.
Yet there's always something missing. A political agreement here, a technical nit there.
We tried in the 80's with DCE RPC. We tried in the 90's with CORBA. Microsoft tried in the mid 90's with COM. Sun tried with Jini for embedded services, and EJB for enterprise services.
None of these reached what one would call "critical mass". Why? Technical complexity for one -- distributed computing is hard, no matter what veneer you use. Lack of available infrastructure, for another -- the web only really became ubiquitous in the mid 90's. And often it was political reasons (language or platform issues).
Some thought it was mainly technical problem and invented their own solutions: object mobility frameworks like ObjectSpace Voyager, Linda spinoffs like JavaSpaces or TSpaces, group communication systems like ISIS, Horus, iBus.
Sun thought it was a political problem and tried to fix it with political or marketing solutions like J2EE and the Jini Community Process. Microsoft tried by selling "DNA".
Apr2004 note: MicrosoftCorporation nolonger markets DNA, which is DistributedInternetArchitecture. How would the uninitiated tell what information is current, and what is there because of apathy, or kept for historical interest? -- dl
It hasn't worked yet. Will it ever work? .NET's innovations -- a clear text data representation, a ubiquitous wire protocol that hops over firewalls, a common language runtime and library, and a common IDE for all languages -- are these the missing pieces to the puzzle? Will average programmers and their tools, en masse, become sophisticated enough to design and implement distributed systems? Surely, .NET is ambitious. But we've run at this fence a lot, and I think many of us are tired of seeing a group of programmers discover the "distributed objects holy grail", and yet again, run into that brick wall labelled "the path to ubiquity".
-- StuCharlton
.NET really is about creating WebServices.
No, .NET is about reducing the burden and difficulty of software creation. In the process it will certainly help developers produce web services, and that is very cool, but that's not absolutely what it exists for (although Microsoft could be charged with mistakenly giving that impression at times, I think) -- DanGreen
I don't completely agree with the above for the general case. Perhaps .NET is about reducing the burden and difficulty of software creation when using Microsoft technologies. It certainly is a godsend compared to the days of MFC, pre-ATL COM, and C++.
Microsoft's efforts lately seem to be confined to its core developer base, and don't seem to grow many converts outside of that base (their excellent Java Virtual Machine, for instance, had very innovative features that were only useful if you were a pure-Windows or COM developer). .NET is surely an attempt to try to "win the hearts" of developers again, something that hasn't really happened since the Windows 95 peak. -- StuCharlton
See: IsDotNetInnovative
Remarks unrelated to DotNet moved to DistributedComputing
Marketing hand waving about how DotNet helps with reading a stream from an URL and parsing it with regular expressions (facility provided by countless other languages and platform), have been deleted. See WebLinkListExample.