posted by Eugenia Loli-Queru on Wed 20th Feb 2002 18:45 UTC
"The Implications of .NET"
Operating systems, in the traditional way of sensing and understand them, are DEAD. Microsoft found the perfect way of eliminating any competition. They found the perfect way of specifying the software business, by being something more than an operating system. I give props to whoever at Microsoft had the idea of developing .NET. Ingenious indeed, it caught IBM, AOL, Sun and... the judge by surprise.

So, why do I say that .NET kills all operating systems? Simply because they do not matter anymore. It does not matter if you use a cell phone or a PDA or a PC. The underlying operating system, the piece of software that talks to the hardware directly, will only serve as a host for the .NET platform. There will be a time in the near future that it will make no sense to compile your software in a native binary format that will only run on the platform in question. Everything will be .NET-compliant; this is what the users and most developers will be "seeing". For us geeks, some underlying operating system hacking will still exist, but it won't matter anymore as much to the plain user. A user who would only want just to run his applications transparently on any device, simply because this is what he/she learned. It is like asking a user to use an OS that does not support Internet or Networking as his main OS. This is unthinkable for today's standard, as a non-.NET compliant device will be unthinkable in 10 years from now.

"The OS and application wars are over, because they are quickly becoming irrelevant to a brave new horizon of networked, converged, and wireless applications." O'Reilly writes.

This is the end of an era, my friends. Forget the re-compilations for system to system, forget the long porting efforts. Most user applications will now run transparently on all devices, and young children today who will be the computer users of the near future they will laugh back at us, thinking that we had to re-engineer our own software to run on different platforms. By the way, this is called evolution, not sarcasm.

Some will say, "Hey, this is what Java is all about." The answer is yes and no. Microsoft is taking the idea of "cross-platformness" even further, further than the language-centric platform of Java. With .NET you can have a series of different languages talk to the same objects, while with Java, only Java could access its own objects. Also, in Sun's vision, Java is just a software platform (their JavaONE initiative hasn't gone very far yet). Microsoft takes the vision further, it makes it a reality (VS.NET already published, and MyServices are set for public testing this spring) and understands the needs of this reality. This is why they created the authentication system. With Web Services blending nicely on the .NET virtual machine model, you get a nice idea of what the future will look like. Dan Kusnetzky, IDC's VP of System Software said recently: "With 92% of desktop OS shipments and 41% of server OS shipments in 2000, Microsoft can certainly implement its view of Web application services before anyone else can do much about it." In other words, Microsoft can bulldoze its way in, simply because they have the power, the user base, the drive, and the money. Sun had its chance and they blew it. They now are running to catch the Linux train with the Sun CEO Scott McNealy dressing up like Tux the Penguin and proclaiming "We love Linux" and making him look like a fool. I wish I had a photograph of Bill Gates face when reading what Scott McNealy dressed like with...

There is no one to stop Microsoft from making .NET a reality. Especially with all these clueless lawyers still arguing if the inclusion of Internet Explorer in the operating system was the right thing or not. Microsoft needed to be researched about its dirty business practices, and instead, the States are still fighting about the browser (personally, I agree with IE's inclusion in Windows, the same way as other OSes include other browsers by default). The thing is, years after the lawsuit began, they are still fighting over it, while Microsoft is plotting the "Next Big Thing" that will give them real power. By the time people realize what .NET can truly do for Microsoft's benefit, it will be too late.

So, what about Mono and dotGNU? I hope Mr. Ganesh Prasad does not mind me quoting two paragraphs from his editorial on .NET regarding Ximian's Mono and GNU's dotGNU efforts:

"Ximian can certainly implement large parts of .NET, including most web services, but the implementation of the identity service raises many interesting questions. It is not clear at the present time how compatible Mono will be to .NET without a seamless Passport interface. It's instructive to note that the specification of the Passport service is not open. Hiding crucial APIs, of course, is textbook Microsoft. Users of Mono will probably not be able to use Microsoft-oriented web services in the absence of Passport access. Since Passport is one of the most controversial pieces of the .NET architecture, Mono will either be an unwilling assistant to its acceptance, or it will simply not work. It is unlikely that Microsoft will let a crucial part of its planned web domination be diluted through the existence of rival identity services. Besides, even if Passport is reverse-engineered and cloned, there is a certain "winner-takes-all" attribute of a centralized identity service. The more subscribers Passport has, the more it will attract. Having multiple centralized identity services is a contradiction in terms. That's why Mono is a bad idea that is better abandoned. Ximian will either be dead or undead, in that they may have to push the evil Passport scheme in order to survive. Either way, Mono will be of no use to Open Source."

"The other Open Source initiative, "dotGNU", is a different kettle of fish. DotGNU is explicitly designed to overcome the potential privacy violations in .NET. It allows for services to run locally on a user's PC as well as remotely, so as to let users keep their personal data confidential. It is also in the process of designing a distributed identity service called "Virtual Identities" (in contrast to the centralized Passport) which is explicitly oriented towards protecting users' personal data. DotGNU even supports multiple IL formats, not just the one specified by Microsoft. Certainly, dotGNU is a commendable effort, both technically and from the viewpoint of freedom. However, it suffers from a perception problem. It appears to legitimize .NET, even though its stated purpose is to fight it. The casual observer is easily misled into thinking that .NET is receiving support from Open Source. More importantly, dotGNU has an unintended side-effect. It weakens the appeal of J2EE, the primary opponent to .NET. By weakening J2EE, dotGNU is strengthening the very enemy it seeks to destroy. Often, in elections, minority groups resort to "tactical voting" to secure their interests. Rather than vote for the candidate they like, they vote for the candidate who is most likely to defeat the one they don't like."

Another thing to consider here is that .NET is pretty much an "operating environment". Porting .NET to Linux, or anywhere else, is like porting Windows to Linux. Bingo for Microsoft!

One company, though, has not been heard at all: Apple. Today, Apple is the only viable rival for Microsoft. They hold a little less than 3% of the desktop market, a market .NET is relying upon to spread quickly. I am sure Apple realizes that we are talking about evolution of computing, but if they give in and port a virtual machine for .NET, they are also giving up on their operating system business (in the future, where most apps will be .NET based, there won't be a real reason why you'd need to run .NET under MacOSX/PPC or under the.. JoeUserOS/myCPU). And if they do not give in, they are out of the game anyway. So, what Apple has done is wait - wait until they can see where the whole .NET hype goes and then decide what to do.

So .NET: a bad thing or not? In my view, it is a step to the future, it is the natural evolution. Technology, by default, is not evil. People can be evil though, technology itself can't. The specific technology comes from the largest software corporation on Earth, which... happens to have some trouble with the law lately. On the other hand, parts of the .NET are an ECMA Open Standard, so, if it was not Microsoft, it would have been someone else. The only trouble is the authentication system, which is not "open" and Liberty Alliance clashes with .NET MyServices as to which driving force will control our money...

Another concern is, of course, security. To be clear about it: there is no system that cannot be hacked. It is simply impossible to have a hack-proof system. The point is to have a system that is not easily hacked and misused. Microsoft should take precautions about it and this is exactly what Gates was saying a few weeks back when his internal memo was "leaked": the next step for Microsoft is to insure security at all levels in their products.

There are other concerns too: the people who have access to "The Information" will know who you are. Your profile will be created by your browsing habits, by the software you are subscribed to or renting, by what you buy and don't buy. Today such "spy software" exists, but the companies that collect that data only have a partial idea as to who you are. With .NET, all this information regarding your computing habits will be stored in one place. Guess how easy it will be to track you down if, for some reason, they are after you?! .NET works both ways, you GET information (through offers/subscription/renting/sale, for free or for a fee), and you GIVE information.

There are other hazards as well, having to do with the liability of the information received, or when the company to which you are subscribing is going under and locks out specific information you need, etc. However, we are still in 2002, and analysts say that while the first .NET applications will be available widely by the end of the year, people will only start to further realize .NET by 2004. By 2005, .NET will be the premiere software platform on this planet.

You just can't hide from .NET. You will be able to get away from it for the next 3-4 years, but you will eventually have to give in to it. It is simply because it is evolutionary. You will, however, have to find who will be your spanking master: Microsoft or Sun? Take your pick, because you simply can't get away with none.

Table of contents
  1. "What .NET is"
  2. "The Implications of .NET"
e p (0)    90 Comment(s)

Related Articles

posted by Thom Holwerda on Fri 13th Jun 2008 18:09, submitted by wakeupneo
posted by Thom Holwerda on Fri 22nd Feb 2008 09:16, submitted by obsethryl