Grid Watch

Friday, December 09, 2005

Linux rises as a Supercomputer Operating System, but faces hurdles in the Desktop

In Nov 1997, 99.2% of the top 500 supercomputers in the world ran Unix.
8 years afterwards, It's market share has been eaten away by Linux which now runs on 74.4% of the top 500 supercomputers.

In 1998 Linux made it's debut in the Top500 List, an authoritative list of the top 500 supercomputers in the world.
After 1998, it took Linux 7 years to break the magical 50% mark. As of November 2004, it ran on 60.2% of the top 500 supercomputers, in 2005 it nearly reached the 75% mark. I believe that Linux will go all the way to completely take over Unix's user base. Both OS's run on about 94.4% of the top 500 sueprcomputers.

The rise of Linux has come largely at the cost of Unix. Which is understandable as both operating systems are very similar in nature, and they both are operated the same way, thus the cost of switching is minimal. But they have one major difference: A lot of money is flowing into Linux these days, and Linux has a large active community which contribute to it, enhancing and making the OS better. Whereas the money flowing into Unix is stagnant. After the commercialization of Unix, the operating system has been largely in decline, I expect the decline to continue and see it as irreversible.

Linux has made remarkable progress from a hobbyists project in 1991, to the leading OS in Supercomputers and server systems. Linux also has made inroads into the embedded market. Motorola has been very successful marketing Linux based smartphones, like the e680 which I personally use, and have no regrets about buying it.

One area where Linux lacks is the desktop market. Which of course Microsoft rules. I do not think that even with the most user friendly interfaces like KDE, Linux will be able to break into the desktop market. As desktop users think Windows to be synonymous to the PC. Another dificulty Linux faces is that the number of commercial application which have been developed for Windows far exceeds those available for Linux. This leads to an chicken and egg problem, where ISV's refuse to release software for Linux until it has a large user base, and user's won't switch until Linux has a lot of applications. A lot of organizations have made huge investments into building softwares based on the windows platform, investments they would not like to lose easily. There exist a plethora of highly productive software development tools for Windows, which ISV's all across the world use to develop solutions based on Windows. Their exist no such tools for Linux. The Qt toolkit, is the only one I can think of, but it does not come with the best of IDE's (unfortunately), Gambas is another developing project, but is way behind it's main rival in Windows VB.NET. Mono is maturing nicely, but lacks major functionality which deters developers to develop desktop applications on it, or port existing Windows developed applications on it. Java is a solution to the problem, but it is not Open Source, and hardcore Linux enthusiats will never accept Java applicatiosn on their Linux desktops.
Joel lays it down very clearly when he says that the main hurdles Linux faces is because of the "culture" it's developers follow.
PC Hardware support although not a major problem anymore, as many hardware manufacturers provide drivers for Linux, is still a problem. Recently one of my friends wanted to try Slackware 10.2 out, but was unable to do so, as Slackware could not work with his GeForce 5200 Graphic card, I asked him to download the latest nVidia drivers for Linux, he did but it had such a cumbersome installation procedure for him, that he quit Slackware and returned to Windows. I after months tried out Fedora C4 which worked flawlessly on his system.

A lot of readers of this article have pointed out that the rise of Linux in the server and supercomputing space may lead ISV's to port their applications on Linux Desktop. However I do not believe that this is the case, here why:

Windows has 90% or 95% of the desktop market. Linux might not even have 2%. If you're talking about office users, Windows is even more dominant; Linux is used as desktop more at home. What this means is for a ISV developing a software would make more financial sense to develop a Windows version first. Then, the ISV would need to evaluate the cost of doing a Linux version. If that cost is only marginally more, it's worth it. If that cost is something like 50% more, it's not worth it. Because no ISV would spend more than 20% of the cost of developing a software to capture just 2% of the market. They would rather spend the same amount on enhancing existing application.
As most commercial applications are developed on Visual Studio, which is creates applications that are dificult to port to other operating systems, the cost of the port would be more than 10% .
This is an example from Joel's article which deals with cross platform development, it makes a good read.
"If I have a product that cost me $1,000,000 to develop, and 10,000 Windows users are using it, that's $100 per user. Now if I have to make a Mac version, and it's going to cost me $500,000 to port the Windows version, and the product is going to be just as popular among Mac users as Windows users, then I will have about 1000 Mac users. That means that my port cost me $500 per user.
This is not a good proposition. I'd rather spend the money getting more Windows users, because they're cheaper. "

However all is not lost for the Linux desktop: mono might be a solution. As all ISV's would like to jump on the .NET bandwagon, and port their existing application to .NET, mono might provide the cost-effective way for ISV's to port their .NET application to Linux afterall.


Post a Comment

<< Home