You lose all credibility right there. C# is far from the worst language ever, and a pretty decent one among mainstream object oriented languages.
You lose all credibility right there. C# is far from the worst language ever, and a pretty decent one among mainstream object oriented languages.
C# isn't half bad now, but back then, I agree it was fairly crummy.
I would choose Python over C# for my own projects any day. However, I can't comprehend the senseless hatred that people have for C#. It is a nicer language than Java (imo) and it has very good performance. Furthermore, due to Mono, C# is no longer a closed platform.
Microsoft is not suing Google for patents on operating systems but instead pressures the handset manufacturers using Android.
Is there a guarantee that a customer can use Mono for commercial applications, without a shake down from Microsoft?
* From the Mono Licensing FAQ [1]: "Microsoft has announced that the ECMA standards for C# and the CLI are covered under the Community Promise patent license. Basically a grant is given to anyone who want to implement those components for free and for any purpose."
* The Novell-Microsoft agreements provide further protection for companies that choose to use Mono. [1]
* Many companies are using Mono for commercial purposes. There is a list at http://www.mono-project.com/Companies_Using_Mono
* Notably, Linden Studios uses Mono for Second Life servers. (See http://wiki.secondlife.com/wiki/Mono)
http://techrights.org/2009/07/09/community-promise-sham/
and
http://www.fsf.org/news/2009-07-mscp-mono
and of Mono in general:
That's where I stopped reading, but I'll say this: Nowhere in the FSF's critique of the MCP is it mentioned whether or not the promise itself is legally binding. From a bunch of people who are supposed to be legal experts. What does that tell you?
But, as far as that particular issue is concerned, as the techrights article points out,
"It may become legally binding ... if used as a challenge in court. But of course it does actually need to be tested in court /first/."
In any case, you might want to look up the legal term estoppel.
So please stop repeating estoppel meme, it is nonsense. Also, attacking all people who show the world truth about Mono shows you have no arguments. Reddit was spammed by Mono pushers who were impersonating other people.
In any case, sorry, but I'm not going to argue this issue with the likes of you. You may have a point somewhere, perhaps, but anyone associated with that blog has about as much credibility vis-a-vis Mono as Rush Limbaugh does when he talks about... well, anything. I bid you adieu sir. Good luck.
I don't know who "gnosis" is, first saw that nick.
Anyways, if you need to attack people and make this kind of nonsense, it means you have no arguments whatsoever, so you just do what rabid Mono pushers always do: character assassination and libeling of every critic, with heavy use of all kind of fallacies.
http://en.wikipedia.org/wiki/Association_fallacy http://en.wikipedia.org/wiki/Ad_hominem
C ya
Email: miguel@gnome.org
Twitter: @migueldeicaza (http://twitter.com/#!/migueldeicaza)
An ad Hominem attack would be calling you stupid for linking the biased source. That didn't happen.
I didn't even make an argument. I just linked to a few articles that criticized Microsoft's "Promise".
Did tsz address the substance of techrights' argument? No. He just smeared them by implying that merely citing an article by them would make me lose credibility.
That is a perfect example of an ad hominem.
Attacking me was more of a case of shooting the messenger.
If you do a Google site search on that blog you'll see that the term 'smear' is used endlessly and quite carelessly by the author. It's interesting to see that you use it in the same way - and like the author I don't think you understand very well what the term means. I sure hope "gnosis" isn't one of the various aliases the guy allegedly uses across the internet, including on Slashdot where he became a bit of a legend for maintaining dozens of them.
But, be that as it may, I'll just say that yesterday was the first day I've even heard of techrights, when I found their site through a google search.
And, honestly, I don't even care much about Mono. I'm just very suspicious of anything originating from Microsoft, and the techrights and FSF articles support these (well founded) suspicions.
Instead of dancing in circles, please look at the contact information I posted above. Miguel de Icaza is a good guy. I am certain he will answer any questions you might have.
Citing Boycott Novell about software (or about anything, actually) is about equivalent of citing your Astrologer in a science argument.
Why don't you actually address what they wrote in their article?
...The danger is that Microsoft is probably planning to force all free C# implementations underground some day using software patents. ... This is a serious danger, and only fools would ignore it...
It seems as if they are passing off wild speculation as inevitable fact. What is to prevent MS from using its portfolio of patents on any given project? Is a free C# implementation infringing on more patents? The supporting links just looked like general anti-patent pages.
1. There is stuff covered by the ECMA/ISO standards. This is covered by the Microsoft Community Promise, which is legally binding. This stuff is safe from Microsoft.
2. There is a lot of .NET stuff that Microsoft has released under the Apache 2 license, which includes a patent pledge. If any of this stuff is implemented in Mono, it is safe.
3. There is stuff in .NET that is not covered by the standards, and has not been released by Microsoft under a license that includes a patent pledge. Mono has independent implementations of the interfaces of some of these things. There is no Microsoft patent pledge covering these parts, and Microsoft may have patents on their own implementations. These patents would cover specific methods used in the implementation, not the interface.
The risk from #3 is small. Most important, it is about the same as the risk if you use that functionality in a non-Mono system. For example, I believe that there is an XML parsing library included in category #3. If Microsoft has a patent covering some particular technique of implementing an XML parser, there is no reason to believe that the people who implemented Mono's XML handling are any more likely to have infringed it than the people who implemented Java's XML handling, or Ruby's XML handling, or Python's XML handling, and so on.
Also, most of the things in #3 are things specifically related to Windows programming, so you'll only find them in .NET programs that were written for Windows. If you are writing for Linux, you don't need those things. Even if you want your programs to run on both Windows and Linux, you can do that without using the category #3 stuff. For instance, instead of using WinForms, use GTK#.
If Microsoft did decide to sue someone over their patents that cover the category #3 items that aren't Windows-specific, it is doubtful they would go after Mono. Microsoft has done enough to support and encourage the development of Mono that they would have a big estoppel problem to surmount if they wanted to sue over Mono. It would make a lot more sense to sue over Java or Python, where they would not face the estoppel issues. Remember, as I noted earlier, the category #3 patents are as likely to be infringed by those as Mono.
I think that it's only natural that MS would target Mono if they felt it was a threat. Right now it is in their interest to support Mono because it introduces more people to C# and MS feels that this is good for the long-term health of their platforms. They are also able to iterate quickly enough that Mono (and Moonlight, the Mono-based Silverlight implementation) is always playing "catch-up" and the cool kids are all going to want to use the official implementations with the Cool New Stuff before it makes it into Mono two years later.
Mono developers can easily become Windows developers, and the likelihood of that happening is not that low if a given hacker falls on hard times and needs a job. This hacker will then buy Windows and Visual Studio (or get his company to buy them, either way works), probably multiple times. Hence, supporting Mono makes sense for now.
If Mono ever becomes a threat to Windows' dominance instead of a help, MS is going to go after it hard and try to kill it, just as they go after anything else perceived to threaten Windows or Office. Mono will be targeted because it makes things that used to be Windows-specific accessible on other platforms, destroying Microsoft's lock-in, leveling the playing field and making Microsoft an undesirable option. This is not something MS likes, and they will do everything possible, including patent suits if possible, to get Mono out of the way if they have to. They have already postured for it with their indemnification deals for Novell customers.
The same applies to WINE, although Microsoft for the moment just never mentions this because they're never asked about it, and they don't want people to find out about it and discover that they don't need Windows to run Windows applications. There is no benefit to promoting WINE like there is with promoting C# and other MS-centric languages.
However, there are too many developers who would riot (i.e. advise their boss not to go MS) if MS started playing too dirty.
Microsoft has tried to underhandedly support efforts to kill Linux (like buying tons of crap from SCO after its suit was filed), but they haven't gone "all out" yet. I don't think that means that they won't ever do that. Again, the deal with Novell is posturing; by offering customers the guarantee that they won't get sued for using Linux by MS, they are essentially saying they may sue non-customers as they feel appropriate.
Microsoft's cash cow has always been in the desktop -- desktop OS and office productivity suites. This is the market they'll fight to the death to protect. Bringing legal action against Linux now would only serve as a distraction and a big PR help to things like Ubuntu, exactly what MS doesn't want. They seem to understand the Streisand Effect. There's no point attacking an enemy that is struggling for traction.
And that is only thing that is remotely safe. All other is murky. But unfortunately, even that can be unsafe if Microsoft sell patents to CPTN (like they did with Novell patents) and let them sue even for ECMA parts.
Moreover, ECMA parts are unusable on their own. Eevery single mono app also depends on non-ECMA parts and Mono is always shipped with non-ECMA parts: http://www.the-source.com/2010/12/on-mono-packaging/
As for Estoppel, they didn't promise anything for non-ECMA. It doesn't work the way you think it works. In fact, they even promised to sue:
"If someone implemented a product that conforms to the specification, we believe we have a patent or one pending that’s essential to implementing the specification."
or
"The .NET framework contains the latest developer platform for the future, and it must be licensed like Windows. Subsets have gone about as far as they should go in the standards bodies, but we need a compact subset for phones and TVs. It was noted that we have to be careful because once the horses are out, they are out forever. At the right royalty, we can have discussions around technology beyond this."
The author's qualm, coming from a Lisp POV, is most likely that if you are a consumer of C# 1.1 you can't just build C# 2.0 or 3.0 or 4.0 features. Using Lisp, he had access to everything that would eventually become C# features and then some, because if you want a fancy new language feature in Lisp you just add it. You don't have to touch the compiler (you write functions, macros, or a micro-compiler at the limit).
So there's some hyperbole there, but it's true that C# 2.0 or 1.1 was really not anything special and felt a lot like "Microsoft's Java" at the time.