Feeds

Mono and dotGNU: what's the point?

A bit controversial, this one

  • alert
  • submit to reddit

Choosing a cloud hosting partner with confidence

Opinion Neil Davidson is technical director of Red Gate Software. He can be reached at neil.Davidson@red-gate.com

Opinion Two open-source projects, Mono and dotGNU, are aimed at providing alternatives to Microsoft’s .NET framework and developer tools. While providing freedom of choice might be reason enough to justify a project, practical programmers could be asking: What’s the point?

Sure, these projects might be of theoretical or academic use, but only ideologues are going to use them for real work. Microsoft already provides the compilers and the .NET framework for free; you can download them from www.microsoft.com/net.

According to SD Times, one of the goals of dotGNU in 2004 is to “have System.Windows.Forms under XWindows.” Great. Microsoft is working on adding edit-and-continue to VB.NET, generics to C#, embedding the CLR into the next version of SQL Server, and making a stack of improvements to managed C++. In similar timescales, dotGNU will let you put a button on a form.

Last year, Novell bought Ximian, creator of the Mono project. Mono’s roadmap is to implement about five of the Microsoft namespaces in 2004. At a generous estimate, that’s under half of the system class libraries. There will be no remoting; no side-by-side existence of assemblies in the GAC; no code signing of assemblies; and no code access security – despite this being a fundamental piece of the .NET framework. By the time Mono is anywhere near 90 percent of the current functionality of .NET, Microsoft will have released Whidbey, Yukon and probably Longhorn.

Stopping a monopoly?

DotGNU’s motivations include stopping Microsoft from achieving monopolistic control of web services. Getting people to adopt C# probably isn’t a good way of accomplishing this. Every Java devotee that dotGNU converts to the C# cause is actually increasing Microsoft’s stronghold.

Even if Mono or dotGNU gets 99 percent of the way there, that’s not enough. It’s the extra 1 percent that matters. It’s the boring stuff like adding serialization capabilities to classes, implementing good security, and documenting class libraries that makes C# and .NET viable.

Mono has its own C# compiler, written using Microsoft’s C# compiler. I’m familiar with bootstrapping, but this I just don’t get. You take a fully functional C# compiler and use it to create a lower-spec C# compiler. Actually, one of the few applications that Mono claims it can run is its own C# compiler. The major achievement of this project appears to be using somebody else’s compiler to build a compiler that will compile the compiler.

People involved in these projects seem to be convinced that they are working to break Microsoft’s perceived monopoly. But how is porting a Microsoft platform to Linux going to achieve this? How is making C# a standard on Windows and Linux going to hurt Microsoft? Far from being alarmed, Microsoft execs encourage this activity, making a lot of the .NET source code available under the ROTOR program. Their enemies are now working, for free, to extend Microsoft’s monopoly onto new platforms.

Testifying for Microsoft

If, in Microsoft’s wildest dreams, C# on Linux kills Java, and Sun or IBM accuses Microsoft of abusing a monopoly position, all Microsoft will need to do is point at Mono (and hence Novell) and dotGNU. Can you imagine it? Novell executives testifying for Microsoft in some hypothetical anti-trust case?

If the open source versions of .NET start to struggle, then Microsoft will probably just bail Novell out with $150 million or so like it did Apple. Of course, Microsoft can enforce its patents any time if it ever feels really threatened.

Competition is good for the software industry, good for Microsoft in particular (as Adam Smith pointed out, monopoly is a great enemy to good management), and most importantly, good for consumers. It is great for everyone when the open-source movement provides credible competition. At times, however, I do wish that all that passion, energy and skill went into something, well, a bit more useful.

Mono and dotGNU are interesting projects for people who are interested in computer languages, compiler construction and other fairly esoteric, hard-core areas of software engineering. But they have no practical use, and exist only with the patronage of Microsoft. ®

Secure remote control for conventional and virtual desktops

More from The Register

next story
Netscape Navigator - the browser that started it all - turns 20
It was 20 years ago today, Marc Andreeesen taught the band to play
Sway: Microsoft's new Office app doesn't have an Undo function
Content aggregation, meet the workplace ... oh
Sign off my IT project or I’ll PHONE your MUM
Honestly, it’s a piece of piss
Return of the Jedi – Apache reclaims web server crown
.london, .hamburg and .公司 - that's .com in Chinese - storm the web server charts
NetWare sales revive in China thanks to that man Snowden
If it ain't Microsoft, it's in fashion behind the Great Firewall
Chrome 38's new HTML tag support makes fatties FIT and SKINNIER
First browser to protect networks' bandwith using official spec
Admins! Never mind POODLE, there're NEW OpenSSL bugs to splat
Four new patches for open-source crypto libraries
prev story

Whitepapers

Forging a new future with identity relationship management
Learn about ForgeRock's next generation IRM platform and how it is designed to empower CEOS's and enterprises to engage with consumers.
Cloud and hybrid-cloud data protection for VMware
Learn how quick and easy it is to configure backups and perform restores for VMware environments.
Three 1TB solid state scorchers up for grabs
Big SSDs can be expensive but think big and think free because you could be the lucky winner of one of three 1TB Samsung SSD 840 EVO drives that we’re giving away worth over £300 apiece.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.