With all the high profile battles being fought against Microsoft by the US Government, Sun Microsystems, AOL, etc., it comes as a shock when some small, virtually unknown company takes on the mighty, ruthless software giant. This is what Ximian have done!
Ximian, based in Boston, is one of the new generation of software companies entering the market with Open Source Software (OSS) products. In particular Ximian so far is known for a GUI interface for the Linux operating system, based on the Gnome standard. Gnome is the GUI, windows-like, user interface which is needed before office applications can mature to make Linux a competitor to Windows on a desktop or domestic PC. There is a lot of interest in this software from academics and developers, but there are very few commercial examples of Linux on the desktop, despite its growing dominance of the PC servers. It will be interesting to see how the facilities of Gnome stand up to comparison with the new Windows XP GUI. It is actually important because the big future markets, China and India for example, are already committed to Linux and not Windows (it has something to do with cost!), and they will possibly be a major source of applications in the future.
Interesting though this is, Microsoft are not going to loose any sleep over Ximian at this stage. But the OSS movement has been incensed by recent Microsoft activity aimed at controlling the impact of OSS. This they have done by announcing the "shared source" strategy as part of their .NET strategy, claiming to let selected customers have access to the source code of their products. This is something I just can’t understand at all. Why would any company want to plow through millions of lines of code of the typical Microsoft operating systems or applications? Microsoft are well known for shipping unreliable software and the thought of maintaining a modified version is horrifying! If something special is needed, and I am never sure that it should be, then Open Source is the only way forward. In any case Microsoft still retain intellectual rights and a future based on Microsoft’s shared source concept is the thing nightmares are made of.
The bulk of companies and individuals involved with OSS have made their thoughts about Microsoft well known and I have to agree with them (I can’t help but laugh at Microsoft’s description of OSS as a virus, which is a bit rich coming from the company which is plagued by endless breaks in the security and reliability of its own products; Windows is the hackers dream, not OSS. Their claim that OSS halts innovation is pathetic; Microsoft’s monopoly had strangled innovation until OSS appeared). But Ximian have taken another stand. They are supporting the Microsoft model for the future, i.e. .NET, by developing an OSS product which will implement Microsoft compatibility, code named Mono. This is a two-edged sword. On one hand it means that .NET compatible applications can be ported to other operating systems beside Windows. On the other hand it gives the stamp of approval to Microsoft’s Internet control.
The key advantage of this project is to enable the use of Microsoft’s development tools to develop Linux, et al applications. The Microsoft development tools are good, except for the continuing use of that Pascal bastard child, Visual Basic. In particular the new language, C#, looks good, even though we would all have benefited from having just the one new language, Java. Most new .NET applications will be developed in C#.
It is good to see an example of how OSS is already bringing some imagination and creativity back into the IT world. Nevertheless it still a tall order to create a product which is truly compatible with the Microsoft standard, in particular all the problems that surround the use of libraries. All new development tools use libraries of routines. Some are simple, some are embedded, some are dynamically linked, etc. The libraries are sometimes part of the development kit, sometimes part of the run-time, and so on. It is a very complex state of affairs which is difficult to control. As an example many of the crashes so common in Windows stem from memory leaks in the standard libraries, which must raise doubts about the ability to produce reliable cloned products. I wish them luck though.