views:

176

answers:

3

As Mono plans to soon implement ASP.NET MVC, Linq to SQL and other nice .NET stuff, I'm considering to start an open source project based on these technologies.

The problem is, there have been concerns on Mono's future; there is an article by RMS stating that "free software shouldn't depend on Mono or C#".

I've heard many comments, ranging from "RMS is absolutely right, Mono is too dangerous" to "RMS is paranoic, Mono is ok".

What do you think? Or, rather: what are you doing? Are you writing open source C# projects without worrying? Are you choosing different technologies to be sure?

+3  A: 

If you have an idea, just start the project. We can't worry about what may happen with a language. For example, mono may get embroiled in patent issues from MS, but that would just mean that project has to change to a different language.

There are many open source projects that use java, and now the future of java is cloudy with Sun having been bought by Oracle.

So, just go for it. :)

James Black
+10  A: 

The fact that the article was written by Stallman alone means it should be taken with more than a few grains of salt.

Microsoft has applied the "Community Promise" to c# and .NET, which is a license that legally prevents Microsoft from asserting patent rights against anyone who uses or provides alternative implementations to that technology. It cannot be reversed. It is a permanent, binding commitment from Microsoft to cooperate (or at the very least, be completely hands-off) with any OSS initiatives around .NET and c#.

Therefore, as of July 2009, there is no question with regard to Mono's future.

Rex M
I can't stand that Stallman guy. Ugh.
Finglas
What's wrong with him ?
ZeroCool
+5  A: 

Somewhat like this has been question before, and I answered

A great thing happened. Microsoft placed the C# and the CLI spec under the "Community Promise", this means, roughly said, they promise they will never sue you from using or implementing this standard.

Linq is a different thing. It's partly a C# language feature using the functional programming framework subset System.Linq. The C# side is safe, but I don't know about System.Linq.

I'm a happy Mono user, and even if Microsoft sues about some parts of the framework, the OSS world will quickly write a new framework on top of the CLI spec, which is now free of danger.

Microsoft places CLI and C# ECMA Standard under Community Promise

Miguel de Icaza commented on this on his blog: From Microsoft: C# and CLI under the Community Promise

Update: If you still worry about the parts of .NET called ADO.NET, ASP.NET and WinForms, Jon Pryor has written an in depth article about why one should not refuse from using the Mono implementation because of patent dangers: How To Defend Against Software Patent FUD

To be more specific concerning your plans, not all parts of dotNet are under this promise. And some parts are open source already, take the DLR. But I shouldn't care too much, as long as your code is modular. This because if Microsoft does sue for example Mono's implementation of ADO.Net, you can switch to a different provider.

Dykam