Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Miguel De Icaza: Microsoft promises to never sue anyone regarding Mono. (tirania.org)
80 points by mdasen on July 7, 2009 | hide | past | favorite | 51 comments


Miguel posted about this on proggit. Read the fine print. http://www.reddit.com/r/programming/comments/8yrtt/miguel_de...

.

"The title of this submission is incorrect.

Microsoft promised not to [sue] over the ECMA parts of Mono. They made no declaration about ASP.NET, ADO.NET, Winforms or other "up the stack" APIs.

That is why my blog post talks about splitting Mono's source code in two, the ECMA core and the rest.

I believe that both Debian and Ubuntu do fine-grained packaging and might already have this, but the source split will make it simpler for others."


This is a very important point. The obvious strategy for Microsoft is to open up enough of the platform to allow it to proliferate, but keep enough of it closed to give their implementation the edge. If you were hesitant to invest efforts in the .NET platform before this announcement, and you depend on the high level APIs, you might have more reason to worry now.


And (imo) there's no telling which way a judge might rule. Eg see the email exchange betwen rms & Bruno Haible on why CLISP is under gpl: http://clisp.cvs.sourceforge.net/*checkout*/clisp/clisp/doc/...

"I say this based on discussions I had with our lawyer long ago. The issue first arose when NeXT proposed to distribute a modified GCC in two parts and let the user link them. Jobs asked me whether this was lawful. It seemed to me at the time that it was, following reasoning like what you are using; but since the result was very undesirable for free software, I said I would have to ask the lawyer.

What the lawyer said surprised me; he said that judges would consider such schemes to be "subterfuges" and would be very harsh toward them. He said a judge would ask whether it is "really" one program, rather than how it is labeled."


I think the point here is to protect end developers: if you want to be safe from future patent issues, they are making it easier to opt out of even installing any of .NET besides the ECMA core on your development systems, thus providing a decent guarantee that even if the rug gets pulled out from under Windows.Forms or ADO.NET, your app won't be impacted.


... because you know C# and the CLI are soooo useful without "ASP.NET, ADO.NET, Winforms and others"...

Well... At least those apps that don't touch the poisonous parts are safe. Until Microsoft changes its mind and breaks a promise.


Does that include LINQ?


Seems like this is a pretty critical thing to do.


I don't really see Microsoft as the enemy anymore, but playing in their back yard is still really, really foolish.

It's not like there's a shortage of cross-platform languages or good JIT VMs.


It's amazing how much paranoia and hate gets dumped on the Mono team around this issue. It must be seriously disheartening.

They just can't win. They need to spend so much of their time proving to everybody how open source they are, and how they hate Microsoft like everybody else (honest!), that they end up with pragmatist clowns like me griping at them for dragging their feet. And still there is this vocal part of the open source movement that will always hate them with a passion no matter what they do, because they dare to trust an evil corporation that eats babies and whatever else Microsoft is supposed to be up to these days.

This whole license things seems like such a non-issue to an outsider. It's just readily apparent that it's not in Microsoft's best interest to squash a project like Mono. Here they are saying it again, in the form of a legal contract, and STILL the die hards don't believe them.

Amazing.


Remember, the leader of the pack on this issue is RMS. He's not looking for a world of coexistence with Microsoft -- he wants them to go away and not come back. If you try to get inside of how he'd be approaching this issue you get to, "What about when Microsoft is on the way down? Will they fire back with these things?"

However, RMS is also pretty true to his stated purposes there; he'll welcome things back to the fold when situations change (e.g. the Qt / KDE schism over Qt's licensing), but he's not one to look at things from a good faith perspective when there's no guarantee of followthrough.


If we didn't have this promise until yesterday, does that mean the haters were right all along until yesterday?


This is strange:

"Q: What if I don’t implement the entire specification? Will I still get the protections under the CP? A: The CP applies only if the implementation conforms fully to required portions of the specification. Partial implementations are not covered."


Otherwise you could build an app with a feature that infringes a single patent of theirs, and claim your app is protected because it is an implementation of a tiny one-feature subset of CLI.


The CP is then more or less useless for free and open source software---the freedom to modify and redistribute the software is worthless if any feature you choose to add, remove or modify makes you fair game for a patent lawsuit. The users have no real control over this sort of software, because they can't legally distribute modifications which violate the letter of the specifications.

It sounds like C# and the CLI is still best avoided for open source software.


It is not just a specification, it is a standard. Why would you even want to implement something violating the standard?

>It sounds like C# and the CLI is still best avoided for open source software.

Why? How does the language or compiler matter for writing open source or not? I think the sentence should read:

It sounds like Mono is still best avoided if you are paranoid

And moreover this news is about microsoft promising not to sue mono. It has nothing to do with microsoft suing or not suing you for writing code.


My kernel is pure .NET, but it will most likely never be a complete implementation. Why? Because many parts of it (e.g. the file stream APIs) are completely extraneous with my design. It may eventually have the unimplemented parts as wrappers for other components, but I find it highly unlikely it'll ever be a completely standards-compliant implementation.


Sounds like a way to enforce a standard, for compatibility, so that (eg) a C# program will run on any C# implementation. Java has similar with its runtime redistribution policy, and licensees.


Which Microsoft famously tried to circumvent with J++.


You have to remember that Java sucks. Sun was very closed to suggestions and improvements, and until C# came along wasn't really doing much with the language. J++ with improvements eventually turned into C# which is far superior to Java.


No company in the world has a technology comparable to .net/WPF on any platform, let alone all major platforms. Microsoft is giving it away. Show me the evil.

Google et al are taking your data and I defy you to reach a human being on the phone or by e-mail. It's already plain this approach will prevail, at the expense of the entirety of human discourse being 20% paid-for. This is really nothing against Google but it is a far more serious phenomenon than anything of the Microsoft/Stallman era in terms of individual liberty, and of reality not sucking.


I'm not quite sure why Mono is so important. Technically, it's an interesting accomplishment to be sure, but I don't see that it gives you anything you can't get elsewhere. Particularly on the web front, MS is certainly not leading edge anymore.

On the desktop application front, this is certainly better than coding GTK apps in C, but other alternatives to that already existed (namely the Ruby and Python bindings for GTK).

The bottom line is that while C# and the .NET framework are certainly better than MS's previous development offerings, it still offers very little of interest in my opinion. Ruby, Scala, Clojure, and Python have much more compelling features for most problems.


Yes. Anyone care to give a short explanation of what exactly is so promising about Mono that it's worth all the worrying? Whether or not these fears pan out to anything, they're substantial enough that there should be a pretty good motivation for not just switching to another development platform.


The only thing I've ever heard is that some people _like_ programming in C# and refuse to learn other languages.


I hate do do it (no, not really), but I told you so. :-)

Mono _is_ a patent minefield and trusting Microsoft not to sue based on a promise of good behaviour is ludicrously optimistic, at best.


Does anyone else think that trusting Microsoft (or any other corporation/business for that matter) with a PROMISE is a bad idea?


Maybe... Are these sort of "promises" legally binding?


Remember when Microsoft promised an open document standard for the next Office -- and it was many thousands of pages that was less than trivial to implement?

(Without looking, I assume that to add maiming to injury, the standard allowed variations, so non-Microsoft documents could be made incompatible between versions of Office?)

I haven't played the game, but the idiom these days seems to be "the cake is a lie".


Did you really expect the document standard to be 10 (or even 100) pages long and trivial to implement?

How long is the full spec for HTML, or PDF? Are either of those "trivial" to implement? Both of those formats are, IMNSHO, inherently simpler than the sum total of complexity of all the Office document formats. (Even if you just include Word and Excel)

Microsoft can't win here. Either they document the simple middle-of-the-road, 90% of Word docs conform, case, and get skewered for not being open enough. Or they release the full spec and get skewered for "Wow, writing a competitor to the most common word processing and spreadsheet application is actually harder than creating hotornot or million-dollar-homepage."


A competing standard, which didn't have to do dirty tricks to get ISO certified, was a fraction (tenth?) of the size.

Also, claims of innocence is extra absurd here:

http://en.wikinews.org/wiki/Microsoft_offers_to_pay_blogger_...


The file formats for other competing formats (like say, .txt or .csv) are also very simple.

They also don't fully interoperate with Word or Excel.


You have a point, I guess it would be impossible to define a better format for use with the Office package. (Sadly, that wasn't a joke.)

I talked about compatibility in another comment: http://news.ycombinator.com/item?id=691268


Last I heard Microsoft's format didn't even fully adhere to their own standard (although that may have been due to really bad standard authoring rather than anything intentional).


Does anyone here know if their promise will cover future versions? Or if they can sue an implementation of an older version of ECMA 334 and 335 if they chose to extend it?

And how much ECMA standards are worth if Microsoft decides to extend them in their implementations? It seems to me whatever comes with the latest Visual Studio is the de-facto standard, not whatever ECMA publishes.


If a "promise" holds any weight in court, why do contracts ever have to be written and signed?


Because they're much easier to pin down and enforce than spoken promises: or even publicly published ones. Note that they often have clauses indicating that they supersede any prior agreements [read - the salesman's "promise" isn't enforceable].


note this isn't for everything, but only some parts.


That's excellent news.


Yes it is :) But unfortunately it won't put a stop to all the flames. Many people just like being anti-something.


Many people just like being anti-something.

People weren't anti-Microsoft without reasons.


Giving logical arguments that are anti-Microsoft is perfectly reasonable. Dedicating your life to being anti-Microsoft and blaming people for their choices, yelling "wolf" every time someone does something cool (and starting a blog in the process that explains on a weekly basis how free-software is at peril) ... is just insane.

Unfortunately I've been there ... back in the day I posted a couple emails on mono-list about how Gnome is poisoned (with all the bells and whistles of an anti-MS propaganda, GNU/Linux and all that crap). I ignited flame-wars that probably ruined the day for some people.

In retrospect I really regret that.

Young people want to be a part of something. If that something promises to save the world from evil, it's even more alluring.

For me the day came when I got married :) Since I believe in "doing what you love" it can be unbearable at times while working hard for an income to support your family, to still work on cool shit, and to still have valid arguments for a religion that promotes and even requires "free as in speech" for products of essentially very hard work.


Oh, everything in moderation. But personally, I don't buy stuff from criminal monopolists.

In some situations, I assume I might buy from criminals -- but I avoid monopolists like the plague.

The problem with monopolists is that they have business reasons to not be compatible. That means they have to keep their systems so complex that they can't easily be cloned -- and also to be a bit incompatible between versions.

That damages my life quality, if I worked with their stuff.

That was a logical argument. After someone damaged my life quality, I will be pissed off. That is human nature.

Edit: The ending was too harsh, I do believe you didn't intend an ad hominem... you just think that it is meaningless to be upset about Microsoft. I hope you're right.


Like Microsoft being anti-anything-non-Microsoft?


I can think of plenty of reasons to not use C#. I cannot, however think of good reasons not to use or distribute applications written in C# with this promise in place.


thats a good news.


Bwhahahahahaha.

You want to trust Microsoft to keep their words? Really? When has that ever happened in the past, ever.

You can trust them to do everything in their power to screw you over and nothing short.

This isn't a fanboy hate post either. From a purely business perspective aligning with Microsoft is toxic.


You don't have to trust Microsoft. If trust was required for collaboration, contracts would've been useless.

You can trust the legal system though ... what you're looking for it's called "estoppel": http://en.wikipedia.org/wiki/Estoppel


Interesting, but I don't think that this concept applies to the "civil law" countries.


You sir, have balls of brass.

I am not a risk taker and will follow after you succeed.


I really wonder if this is anything other than a fanboy hate post. I am not going to dissect your comment and explain it why it is a fanboy post, you can do it when you are free.

I know its fashionable to hate Microsoft, but sometimes it creates a narrow-mindedness which results in, we Entrepreneurs or Hackers to miss out on good opportunities if we are going to be this religious.

This isn't a fanboy hate post either. From a purely business perspective aligning with Microsoft is toxic.

I don't know what you mean by toxic, there are 1000's of companies like Adobe, Autodesk, id Softwares, EA etc which went on to make Millions and Billions of Dollars because they aligned with Microsoft and built over their platform. If maybe John Carmack was religious enough to hate Microsoft or not build over their platform, he wouldn't have created one of the best game developing company. Maybe he would have spent his time discussing what color the next version of Macbook would be, on discussions.apple.com.


Doesn't your last line completely undermine your argument and your moral authority to comment on fanboys?


Also, historical note from MacUser, Jan 1997:

"For the last word I'll hand over to John Carmack, Technical Director of ID Software, who used NeXTSTEP to develop Doom and parts of Quake (that's right!): "We developed lots of products under dos (mostly borland c++), and never want to again. We went through five major iterations of our tools under DOS, and they are all junk below our first iteration of NS tools. You can't really just point at specific things and claim superiority. It is the complete package that has the appeal. NS is the best tool I have found for MY development work."

from http://www.paullynch.org/NeXTSTEP/NeXTSTEP.TechReview.html




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: