When Attachmate bought Novell, it seemed for a while as if the open-source version of .NET would be a casualty.
Miguel de Icaza is in charge of the Mono project at Xamarin. Photo credit: James Duncan Davidson/Wikipedia
Laying off the Mono team turned out to be a blessing in disguise, according to Miguel de Icaza, who now runs Xamarin and develops the Mono project, with a perpetual licence from Novell to take care of IP worries.
De Icaza had been planning to set up a company dedicated to Mono, he tells ZDNet UK, but had to put those plans on hold while the acquisition went through. "By laying us off we had a very clean break. The planning processes were actually very fast and we were able to create a company right away. It would have probably taken months if we'd done it from the inside."
Instead of allowing .NET applications to run unchanged on other platforms, the focus is now on letting developers use existing .NET skills and the power of C# on other platforms — especially mobile devices.
You may think of Mono as .NET for Linux, or Silverlight for Linux (Moonlight), but it's also available for Mac OS X, for the PS3 and Wii. More importantly, it's available for the iPhone, iPad and Android, and for HTML developers through MonoTouch, Mono for Android and Manos de Mono.
There are over 2,000 games on the App Store powered by Mono; "about 10 percent of those make it to the top-selling list," says de Icaza, including some big-name titles he can't mention publicly.
"We came from the Linux world and we had some interesting success," de Icaza says, "though I don't think it was as successful as I perhaps hoped it to be. But Mac OS X came out of nowhere and started grabbing market share, the iPhone did the same thing, the iPad did the same thing, Android did the same thing... It's not what we set out to do when we set up the project, but we have thousands of paying customers using Mono on the iPhone and on Android. We have way more developers than we ever had on the desktop."
We believe that we love .NET more than Microsoft does.
What those developers like about Mono varies. "Some people like certain features of the language, some people have cross platform needs, some people have a staff of developers who they want to make productive on multiple platforms," he says.
For de Icaza it's a combination of the inherent advantages of .NET and C# — "The language innovation from the C# language is not matched in the industry," he claims — and letting Windows developers use existing skills on other platforms.
"You can bring a lot of the knowledge that you have on Linq, on System.Data, on System.XML, on C# delegates, anonymous methods and so on to other platforms," he says. "You can reuse the thousands of .NET libraries that have been built and debugged."
De Icaza jokes about Microsoft underestimating the importance of .NET by concentrating on Windows. "We believe that we love .NET more than Microsoft does," he says. "It's like when your girlfriend is in denial about her friends. Microsoft is in denial that the Mac OS exists and the iPad exists and the iPhone exists and Android exists and Chrome OS exists and all of those things.
"Some six, eight, 10 years ago, the world was dominated by Windows and anything Microsoft said, that's really what went. Now we live in this beautiful heterogeneous world. We're going to help Microsoft bring the .NET love to other platforms!"
More seriously, despite the usual suspicions of Microsoft harboured by the open-source community, including worries that Microsoft could assert its IP on some areas of Mono, de Icaza is confident enough in the open-source status of .NET technologies to build a business on it. He says Microsoft has become more supportive than it was a few years ago.
"We're all about bringing .NET to all devices; there's a lot of people at Microsoft that also love that. Microsoft has been doing a lot to help us in terms of open sourcing components of .NET that we were able to reuse in Mono; this eliminated the need to play catch-up on math, the DLR, F#, MVC, Orchard CMS...," he says. De Icaza estimates this saved Mono two or three years of development time.
A future of standards not stigma
"I want to see what happens with WebOS," de Icaza explains. "We were starting work before the Novell acquisition and it was all shelved, so we have to take a new look at that." There's also the possibility of porting Moonlight to Mac OS. "Then you could put Silverlight apps on the App Store. Now you can't have Silverlight on the Mac App Store because it's an external dependency.
We're all about bringing .NET to all devices; there's a lot of people at Microsoft that also love that.
"Probably the most exciting thing coming is the asynchronous programming support in the C# compiler. That's very useful for mobile developers. The compiler work is almost done and I can't wait to see what people can build with this thing," he says.Microsoft has hinted at moving towards web apps for Windows 8. Despite developer angst, it's unlikely that it will abandon .NET; but it could be ironic if open-source Mono becomes the champion of the strengths of the common language runtime on a wide range of platforms. De Icaza is certainly confident. He believes that despite the suspicion of Microsoft, which stops some people from seeing how powerful a development tool .NET can be, it will be widely adopted.
"We believe that, in the future, you really are going to refer to .NET and C# as 'the ECMA virtual machine and C#'; as public standards that are available everywhere, that are not going to be Microsoft-only technologies," he says. "Today, they still have a very strong stigma outside of the Microsoft world — that these are Microsoft technologies and closed technologies — and we want to change that."
Get the latest technology news and analysis, blogs and reviews delivered directly to your inbox with ZDNet UK's newsletters.