Motivations for .NET.NET provides profound benefits to Microsoft. .NET provides Microsoft with its next generation of products, services, and subscriptions. It brings together a variety of products under a single brand and thus reinforces the perception of interoperability. Most importantly it addresses challenges by competitive technologies.
Neutralizing JavaMicrosoft has used the introduction of the CLR and C# to address and neutralize the challenge of Java and the sector of back office enterprise services that Java enabled. When Java was adopted to perform back-end server functions in the form of J2EE it was a powerful, scalable, and inexpensive means of providing web services. J2EE was a powerful enabling technology for many of Microsoft’s key competitors such as Sun, Oracle, Novell, IBM, and Linux to name just a few. Providing a better alternative to J2EE was of great strategic importance to Microsoft. To leave the back-end server market vulnerable to J2EE was to leave the door open to a classically disruptive technology that could continue to grow and displace its products. Microsoft had to respond.
Dominating All Web Services.NET was also very important as a means of keeping customers on various Windows platforms, whether on the Windows desktop, Windows Server, or Windows Compact Edition (CE) platforms. Linux was threatening to emerge as a cheap desktop alternative. Linux and Solaris were both alternative server platforms taking business away from Windows Server products, Linux at the low end, and Solaris at high end. Palm dominated the PDA platform, and Symbian and Java competed with WinCE for the remaining PDA market. Microsoft needed a significant value proposition to prevent the erosion of all segments of its valuable Windows platform. If its various Windows market shares were compromised, Microsoft would also loose market share for its Office, applications, and services profit centers. .Net was a means of protecting Windows.
The Key Value Proposition.NET made all the respective .NET technologies available on all versions of Windows using any of the CLR tools. Web services running on Windows Server could now be available on Windows XP as well as PDAs running WinCE. .NET was the means of providing a barrier to exit and further locking customers into Windows.
Better Security.NET significantly improved the value proposition to customers. The proliferation of internet viruses, worms, and security exploits showed the need for better overall security. The managed code framework of .NET provided a means of writing more secure applications free from the exploits found in the previous generation of Microsoft products.
"DLL Hell" Solved.NET also solved the problem of “DLL hell”. This is the problem created when an application installs a DLL library with the same name as a previous DLL library but with different functions. Over time it is almost guaranteed that an application, Microsoft or 3rd party, will overwrite an existing DLL in use by some application. This inevitably leads to crashes, instability, and general chaos. .NET applications are written to prevent this nightmare scenario and will be of great benefit and peace of mind to future Windows users. This feature alone was a major selling point.
Next-Generation Development ToolsA benefit not inherent in .NET but certainly related is Microsoft’s creation of a set of powerful, next-generation .NET development tools. Microsoft has long been the leader in developing powerful, usable, and consistent integrated development environments (IDEs) for Visual Basic, Visual C++, and Visual J++. Microsoft declared that its .NET tools would “Streamline the programmable surface area of Windows, and enrich the user experience.”
It is widely acknowledged that Microsoft’s tools are superior to its competitors’ offerings in both learning curve and productivity. Microsoft made a prolonged and concerted effort to extend its IDE’s so developers could have access to core .NET features. Microsoft also opened access to the CLR so that 3rd party developers could create their own .NET development tools. In this way .NET benefited greatly from a wide variety of next-generation of development tools. By opening its interface Microsoft was able to deflect criticism from the growing open source movement about the proprietary nature of .NET.