You may remember Mono, the open-source implementation of Microsoft's .Net platform spearheaded by Miguel de Icaza of Gnome fame. It's been a controversial project since its inception. Detractors among the open-source community have variously described it as a trap, a kludge, or simply a waste of effort.
Then again, even .Net itself has been controversial among certain factions of developers, who see it as yet another attempt by Microsoft to "embrace and extend" the work of others. The CLR (Common Language Runtime) does nothing that Java hasn't done for years, they say, and the C# language syntax is essentially just Java with a few wrinkles ironed out.
So what's wrong with ironing out wrinkles
In 2006, I predicted that when Java was released under an open-source license, Mono would collapse under the weight of its associations with Microsoft and essentially just blow away.
I was wrong. Mono is still very much alive and well, and far from being "just" a clone of .Net for Linux -- as if that in itself were easy -- it has been gradually expanding its presence into exciting and unexpected new niches.
The De Icaza heresy: Mono's central affront
Miguel de Icaza is himself something of a controversial figure these days. He's a heavyweight among open-source developers, yet he works for Novell, the company that soured the Linux community by signing a patent-licensing agreement with Microsoft. Worst of all, he seems to have all but dedicated himself to projects related to Mono -- in other words, to copying Microsoft technologies.
To some in the open-source community, that makes de Icaza a literal heretic. He's guilty of espousing an almost unutterable belief: that not only is Microsoft an innovative company that continues to produce valuable new technologies, but Linux users would be better off if they could use Microsoft technologies, too.
Why De Icaza, and Mono, deserve a second look
Collaboration, more than competition, is what floats de Icaza's boat. At the end of the day, he just wants everyone to be able to get their work done in the best way possible. For him, that means using open-source software, but he recognizes that Microsoft and Windows are likely to remain permanent fixtures in the computing ecosystem. The Mono Project is his working prototype of a world in which it might actually be possible for us to all just get along.