Juan Carlos Perez

Subscribe to Juan Carlos Perez: eMailAlertsEmail Alerts
Get Juan Carlos Perez: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


What Ximian's trying to accomplish with Mono

Ximian cofounders Nat Friedman and Miguel de Icaza say they hope to test Microsoft's commitment to keeping .NET open

(LinuxWorld) -- Few announcements in the open source world have set off such controversy as Ximian's Mono project. Some members of the Linux community fear Ximian is falling into a trap, that Microsoft will change the rules once Mono gets started and leaves Ximian holding an empty bag. Others think the project was fine, but wished another firm was taking the lead, fearing Ximian will follow Eazel into the land of failed dot-coms, since both firms' business models are based on free software for the desktop. Friend, mentor, and InfoWorld columnist Nicholas Petreley leaped into the fray, firing a pair of salvos against the project. Petreley posits Mono will help Microsoft and hurt Java.

I talked to Nat Friedman, Ximian co-founder and vice president of product development, to learn about Ximian's motives, plans and ambitions for Mono. I also exchanged e-mail with Miguel de Icaza, Ximian CTO and other co-founder.


Before we get to those conversations, it's important to understand how Mono fits in Microsoft's worldview. Start with Microsoft's .NET. In a word, .NET is a strategy. It's a plan to shift the underlying platform for Microsoft's products from the desktop to network devices, which range from massive servers to tiny appliances. That strategy is being implemented across Microsoft's entire product line, including development tools, services, applications and operating systems. Microsoft says no one firm will dominate the Internet, so .NET will be an open standard. Microsoft's sincerity about .NET staying that way remains to be seen.

When the Free Software Foundation announced Mono and DotGNU, the implication was the two projects were intertwined closely. Not true. DotGNU will provide a free version of Hailstorm, the most controversial part of Microsoft's .NET strategy. Hailstorm is Microsoft's dream of holding everyone's cyber purse when they go shopping on the Internet. Mono is primarily concerned with cloning .NET development tools, including the C# language. Neither DotGNU nor Mono depend on the success of the other.

The GNOME project has already started putting an infrastructure in place. Earlier this year GNOME released SOUP, a free software implementation of SOAP (Simple Object Access Protocol). SOUP includes a WSDL (Web Service Definition Language) to C compiler, since SOUP, like GNOME, is written in C. de Icaza has also been hard at work cloning C#. It is C# that some fear will replace Java and thus relinquish even more control of the Internet to Microsoft.

Tres razones de usar Mono

If you accept the premise that .NET will advance the Windows world, you're left with the question, "So what?" Friedman cited two benefits immediately -- interoperability and superior development tools -- and concluded with a third later in our conversation.

"If Microsoft's vision of the world is correct, or even remotely correct," Friedman said, "and there will be lots of Web services (and lots of .NET technologies) out there in the next two to five years, then one of the benefits of the Mono project is that Linux machines will be able to run them and be able to interoperate with them."

About development tools he said, "With Microsoft's huge group of ISVs, the software developers that they almost control, a lot of people are going to be learning to use the .NET framework, and learning to develop software from it, and there is the opportunity for us to simultaneously upgrade the development platform of an open source system and make it something that these developers can more easily transition to."

What about Microsoft's penchant for not delivering on promises of interoperability and open standards? Kerberos is a good example. "I hope it doesn't happen," he said. "I think that if there is an open source version which is well developed and as ubiquitous as possible, then that will reduce the chance that Microsoft will be able to do that."

Is Ximian the right choice to lead Mono's development? Some voices in the open source community debating Mono suggest Ximian has no viable business plan and that in a year Ximian will be gone, just like Eazel.

"Our business plan is not identical to Eazel's," Friedman said. "Eazel disappeared because they spent too much money too fast, and had a really pathetic business model, which was totally consumer oriented. And there weren't really that many consumers. Not enough, certainly, to get Dell or other companies to keep Eazel afloat... But there is an enormous amount of interest in the corporate market in the Linux desktop, in the open source desktop. And the corporations are where the money is, where the real problems are that can be addressed. So we are developing products we will be announcing soon that address the corporate market. We have customers. We haven't announced them yet, but we have them signing up, large corporations."

Both Friedman and de Icaza say the technology is better than just okay. It is the reason they believe Mono will bring good things to the Linux world. Friedman revealed the third reason for the project when he said, "This is good technology... (.NET) is really top-notch in terms of advancing the state of the way software applications are built."

Is Ximian enamored of Microsoft? Hardly. "I believe that Microsoft has behaved criminally, has stifled competition." Friedman said, "I think we are calling Microsoft's bluff here. They are saying that .NET is an open system... We're going to implement an open version of it, and see how they react."

de Icaza said, ".NET is the next step towards language unification, but you have to look at this technology with cold eyes, and not let your passions be in the middle (against Microsoft, for Linux, for KDE, against GNOME, etc) or you will live a life of bitterness."

Is Mono a good idea or a disaster? I think it is a worthwhile endeavor, that choice is good, and that we need a free alternative to .NET. Free software development is ruthlessly efficient -- good ideas survive, lame ideas don't. Developers need to find Mono worthy of the sweat of their brow and users need to weigh the results. As always, the community decides.

More Stories By Joe Barr

Joe Barr is a freelance journalist covering Linux, open source and network security. His 'Version Control' column has been a regular feature of Linux.SYS-CON.com since its inception. As far as we know, he is the only living journalist whose works have appeared both in phrack, the legendary underground zine, and IBM Personal Systems Magazine.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.