The good news is that Microsoft .NET Framework is installed on a majority of Windows PCs. The bad news is if you are developing an application with the newest version of .NET (3.5), nearly half of Windows PCs cannot run your app.
Alexander McCabe has produced a detailed and thoughtful analysis of the penetration of the various versions of Microsoft .NET Framework installed on Windows PCs. As of October 2009, his study shows the following distribution of .NET versions:
|.NET Version||% Installed||% Compatible|
The middle column shows the percent of Windows computers that have each version of .NET installed. The right column shows the percent of computers running a version of .NET compatible with the version listed in the first column. For example, if an application requires .NET 2.0, it will also run on .NET 3.0 and 3.5. Hence the percent of computers compatible with .NET 2.0 is 11%+7%+52% = 70%.
McCabe also lists a number of issues that may affect his statistics. For example:
- Only Internet Explorer reliably provides .NET version information.
- IE users use MS software and so may be more likely to have .NET installed.
- IE users may be generally less inclined to install new software, and may be less likely to have .NET installed.
Microsoft’s reluctance to include the .NET Framework automatically with Windows has been a pet peeve of mine since .NET 1.0. This failure probably stems from the Sun vs. Microsoft bad blood over Java years ago. Sun and Microsoft got into a legal spat, Microsoft stopped shipping Java with Windows, and so now Java is a separate download for Windows users. As a result, perhaps Microsoft is wary of appearing monopolistic, hence Microsoft maintains the .NET Framework as a separate download too.
This shortsightedness harms .NET developers because it often requires our customers to download the separate 25+ MB package from Microsoft to run our .NET application. This extra hassle puts .NET developers at a distinct disadvantage to other development platforms.
Microsoft should do the right thing and put users first by including both .NET and Java standard in Windows updates to ensure 100% coverage.
Article published on October 14, 2009
|If you like this article, please share it:|