ESP Wiki is looking for moderators and active contributors!

Difference between revisions of ".NET, C-sharp, and Mono"

(Related pages on {{SITENAME}}: * Campaigns to avoid patented ideas)
(Avoiding Mono)
 
(44 intermediate revisions by 11 users not shown)
Line 1: Line 1:
'''Mono''' and '''Moonlight''' are [[free software]] packages developed with help from [[Microsoft]].  Questions of their legal safety exist because both packages use ideas on which Microsoft holds patents.  Microsoft has given limited reassurances, but they are far from complete.
+
{{navbox}}
 +
'''.Net''' is a development platform, for which the main programming language is '''C#''', both of which were developed by [[Microsoft]].
 +
 
 +
'''Mono''' is a [[free software]] implementation of .Net and C#, developed by [[Novell]] with assistance from Microsoft.
  
 
==Mono==
 
==Mono==
 
===What is it?===
 
===What is it?===
 +
 
Mono is an implementation of the C# programming language and the Common Language Infrastucture as described by [http://www.ecma-international.org/publications/standards/Ecma-334.htm ECMA-334] / [http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=42926 ISO/IEC 23270] and [http://www.ecma-international.org/publications/standards/Ecma-335.htm ECMA-335] / [http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=42927 ISO/IEC 23271].
 
Mono is an implementation of the C# programming language and the Common Language Infrastucture as described by [http://www.ecma-international.org/publications/standards/Ecma-334.htm ECMA-334] / [http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=42926 ISO/IEC 23270] and [http://www.ecma-international.org/publications/standards/Ecma-335.htm ECMA-335] / [http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=42927 ISO/IEC 23271].
  
 
===What reassurances has Microsoft offered?===
 
===What reassurances has Microsoft offered?===
The ECMA-334 and ECMA-335 are covered by the [[Microsoft Open Specification Promise]] and the [[Microsoft Community Promise]].<ref>http://www.microsoft.com/interop/cp/default.mspx</ref>
 
  
===Avoiding Mono===
+
The ECMA-334 and ECMA-335 are covered by the [[Microsoft Open Specification Promise]] and the [[Microsoft Community Promise]], which says:<ref>http://www.microsoft.com/interop/cp/default.mspx</ref>
* For note-taking, or a personal wiki, use [http://live.gnome.org/Gnote GNote].
+
 
* To manage and edit collections of photos, use [http://yorba.org/shotwell/ Shotwell] or [https://savannah.nongnu.org/projects/solang/ Solang] or [http://gqview.sourceforge.net/ GQview].
+
<blockquote>
 +
Microsoft irrevocably promises not to assert any Microsoft Necessary Claims against you for making, using, selling, offering for sale, importing or distributing any implementation, to the extent it conforms to one of the Covered Specifications, and is compliant with all of the required parts of the mandatory provisions of that specification ("Covered Implementation"), subject to the following: [...]
 +
</blockquote>
 +
 
 +
===OIN protection===
 +
 
 +
Mono (version 1.1.10) is one of the software packages that [[OIN]] members promise not to use their patents against.<ref>http://www.openinventionnetwork.com/pat_linuxdefpop.html</ref>  Version 1.1.10 is from 2005.
 +
 
 +
In November 2010, Microsoft bought 882 patents from Novell (as a sub-part of a larger sale in which Attachmate bought most of Novell).  This may have significantly weakened OIN. {{help|The consequences of this are not known.  Information very welcome here: [[Novell#Does_this_weaken_OIN.3F]]}}
  
===Avoiding C#===
+
Microsoft probably didn't acquire any patents that would be dangerous to users of Mono.  Firstly, Microsoft already had .Net patents, so if Novell had any, this would just be a surplus.  Secondly, it seems that Microsoft's patent promise(s) would apply equally to newly acquired patents.  For these two reasons, the newly acquired patents are only as dangerous as the patents that Microsoft already had, so they're just surplus.
Info sought: there is a langauge called "Vala" which aims to have the utility of C# without the patent problems.
 
  
==Moonlight==
+
===Avoiding Mono===
===What is it?===
+
* For note-taking, or a personal wiki, use [http://live.gnome.org/Gnote GNote] instead of Tomboy.
 +
* To manage and edit collections of photos, use [http://yorba.org/shotwell/ Shotwell], [https://savannah.nongnu.org/projects/solang/ Solang] or [http://gqview.sourceforge.net/ GQview].
  
Moonlight is primarily a web-browser plugin which provides animation and interactivity features which can be used to develop web applications.
+
===Avoiding C#: use Vala===
  
===What reassurances has Microsoft offered?===
+
There is a langauge called "Vala" which aims to have the utility of C#, and which was developed without Microsoft's involvement.{{cite web|url=http://live.gnome.org/Vala/Tutorial|title=Vala Tutorial|quote=Vala's syntax is an amalgam heavily based on C#'s.}}</ref>
  
In 2007, Microsoft published a "Covenant to Downstream Recipients of Moonlight".<ref>http://www.microsoft.com/interop/msnovellcollab/moonlight.mspx</ref> A new promise was published in December 2009,<ref>http://www.h-online.com/open/news/item/Microsoft-promises-not-to-press-charges-against-Moonlight-users-892666.html</ref> but it was criticised as being no improvement on the previous promise. The new promise also specifically excludes distributors from any patent protection.<ref>http://thread.gmane.org/gmane.linux.redhat.fedora.devel/126037/focus=126221</ref>
+
However, since Vala is a "partial" implementation of C#/.NET, it is not covered by Microsoft's patent promises. Microsoft's patent promise only applies to "''any implementation [that] is compliant with all of the required parts of the mandatory provisions of that specification''"Some people suggest this makes Vala riskier than Mono.<ref>{{cite web|url=http://linuxpatents.blogspot.com/2010/05/language-envy.html|title=Language Envy|quote=[Note: this article compares Vala features to the '''abstract''' of some Micrsoft patents, but this doesn't imply infringement.  It's the '''claims''' that should be looked at.] A quick look through the patent system reveals Vala is infringing happily left and right on Microsoft property. [...] }}</ref>
  
===Avoiding Moonlight===
+
Vala, and applications written in Vala such as Shotwell, have been added to the Fedora GNU/Linux distribution.<ref>http://mether.wordpress.com/2010/04/13/fedora-13-desktop-features/</ref>  Fedora rejects some package that carry a patent risk, so their acceptance of Vala indicates some confidence in it.
Many features of HTML 5.0 have been designed to provide functionality which is offered by Moonlight. [http://diveintohtml5.org/ Here's] some good info on HTML5.
 
  
 
==Related pages on {{SITENAME}}==
 
==Related pages on {{SITENAME}}==
 +
* [[Comparing Java to .Net and C-sharp]]
 
* [[OOXML]]
 
* [[OOXML]]
 
* [[Harm to standards]]
 
* [[Harm to standards]]
Line 36: Line 47:
  
 
==External links==
 
==External links==
* [http://mono-nono.com/ Mono-nono - a site documenting the problems with Mono]
+
 
 +
* [http://www.iso.org/iso/catalogue_detail.htm?csnumber=36768 The ISO standard defining C#]
 +
* [http://developers.slashdot.org/article.pl?sid=10/08/27/1732219 .Net On Android Is Safe, Says Microsoft], 27 Aug 2010, Slashdot
 +
 
 +
===About Mono===
 +
* [http://www.mono-project.com/Licensing#Patents Mono FAQ: Could patents be used to completely disable Mono?]
 +
* [https://web.archive.org/web/20111110131534/http://mono-nono.com/ Mono-nono - a site documenting the problems with Mono]. Archived from [http://mono-nono.com the original] on November 10, 2011.
 
* [http://nocturn.vsbnet.be/node/152 Mono actually is dangerous]
 
* [http://nocturn.vsbnet.be/node/152 Mono actually is dangerous]
* 2008: [http://boycottnovell.com/2008/03/24/mono-danger-to-linux/ Summary of Mono’s Danger to GNU/Linux and the Free Desktop] Summary and list of many articles by BoycottNovel.com
+
* 2008: [http://boycottnovell.com/2008/03/24/mono-danger-to-linux/ Summary of Mono’s Danger to GNU/Linux and the Free Desktop] Summary and list of many articles by '''BoycottNovel.com'''
* 2009: [http://www.fsf.org/news/dont-depend-on-mono Why free software shouldn't depend on Mono or C#], by [[Richard Stallman]]
+
* 2009: [http://www.fsf.org/news/dont-depend-on-mono Why free software shouldn't depend on Mono or C#], by '''[[Richard Stallman]]'''
 
** (a week later, [http://lwn.net/Articles/341771/ FSF reconfirmed this position], and it was [http://www.groklaw.net/article.php?story=20090717043855128 discussed on Groklaw])
 
** (a week later, [http://lwn.net/Articles/341771/ FSF reconfirmed this position], and it was [http://www.groklaw.net/article.php?story=20090717043855128 discussed on Groklaw])
 
* [http://davidsiegel.org/five-steps-to-vanquish-mono/ "Five straightforward steps to vanquish Mono"]
 
* [http://davidsiegel.org/five-steps-to-vanquish-mono/ "Five straightforward steps to vanquish Mono"]
* [http://www.tuxdeluxe.org/node/299 Monomania], October 2009, Jeremy Allison looks at the patent problems
+
* [http://www.tuxdeluxe.org/node/299 Monomania], October 2009, '''Jeremy Allison''' looks at the patent problems
* [http://blog.ofset.org/ckhung/index.php?post/09ag How to Advocate for/against Mono Convincingly], October 2009, Chao-Kuei Hung challenges mono supporters with a vote, with interesting responses from mono supporters
+
* [http://blog.ofset.org/ckhung/index.php?post/09ag How to Advocate for/against Mono Convincingly], October 2009, '''Chao-Kuei Hung''' challenges mono supporters with a vote, with interesting responses from mono supporters
 +
* [http://redmonk.com/sogrady/2005/03/09/whats-the-problem-on-microsoft-mono-and-patents/ What’s the Problem? On Microsoft, Mono and Patents], '''Stephen O'Grady'''
 +
* [http://www.sdtimes.com/link/34183 Even with its success, .NET causes some consternation], March 2010, quoting Mono's main developer Miguel de Icaza ''"Microsoft has shot the .NET ecosystem in the foot because of the constant threat of patent infringement that they have cast on the ecosystem [...] the .NET world has suffered by this meme spread by [Microsoft CEO Steve Ballmer] that they would come after people that do not license patents from them."''
 +
* [http://www.jprl.com/Blog/archive/development/mono/2009/Jan-19.html How To Defend Against Software Patent FUD] - arguing that patent worries about Mono are baseless, '''Jonathan Pryor'''
  
 
==References==
 
==References==
<references />
+
{{reflist}}
  
  
{{page footer}}
+
{{footer}}
 
[[Category:Free software]]
 
[[Category:Free software]]
 
[[Category:Pages with advice for avoiding patented ideas]]
 
[[Category:Pages with advice for avoiding patented ideas]]

Latest revision as of 19:25, 6 July 2014

.Net is a development platform, for which the main programming language is C#, both of which were developed by Microsoft.

Mono is a free software implementation of .Net and C#, developed by Novell with assistance from Microsoft.

Mono

What is it?

Mono is an implementation of the C# programming language and the Common Language Infrastucture as described by ECMA-334 / ISO/IEC 23270 and ECMA-335 / ISO/IEC 23271.

What reassurances has Microsoft offered?

The ECMA-334 and ECMA-335 are covered by the Microsoft Open Specification Promise and the Microsoft Community Promise, which says:[1]

Microsoft irrevocably promises not to assert any Microsoft Necessary Claims against you for making, using, selling, offering for sale, importing or distributing any implementation, to the extent it conforms to one of the Covered Specifications, and is compliant with all of the required parts of the mandatory provisions of that specification ("Covered Implementation"), subject to the following: [...]

OIN protection

Mono (version 1.1.10) is one of the software packages that OIN members promise not to use their patents against.[2] Version 1.1.10 is from 2005.

In November 2010, Microsoft bought 882 patents from Novell (as a sub-part of a larger sale in which Attachmate bought most of Novell). This may have significantly weakened OIN. Can you help? The consequences of this are not known. Information very welcome here: Novell#Does_this_weaken_OIN.3F


Microsoft probably didn't acquire any patents that would be dangerous to users of Mono. Firstly, Microsoft already had .Net patents, so if Novell had any, this would just be a surplus. Secondly, it seems that Microsoft's patent promise(s) would apply equally to newly acquired patents. For these two reasons, the newly acquired patents are only as dangerous as the patents that Microsoft already had, so they're just surplus.

Avoiding Mono

  • For note-taking, or a personal wiki, use GNote instead of Tomboy.
  • To manage and edit collections of photos, use Shotwell, Solang or GQview.

Avoiding C#: use Vala

There is a langauge called "Vala" which aims to have the utility of C#, and which was developed without Microsoft's involvement."Vala Tutorial". http://live.gnome.org/Vala/Tutorial. "Vala's syntax is an amalgam heavily based on C#'s." </ref>

However, since Vala is a "partial" implementation of C#/.NET, it is not covered by Microsoft's patent promises. Microsoft's patent promise only applies to "any implementation [that] is compliant with all of the required parts of the mandatory provisions of that specification". Some people suggest this makes Vala riskier than Mono.[3]

Vala, and applications written in Vala such as Shotwell, have been added to the Fedora GNU/Linux distribution.[4] Fedora rejects some package that carry a patent risk, so their acceptance of Vala indicates some confidence in it.

Related pages on ESP Wiki

External links

About Mono

References

  1. http://www.microsoft.com/interop/cp/default.mspx
  2. http://www.openinventionnetwork.com/pat_linuxdefpop.html
  3. "Language Envy". http://linuxpatents.blogspot.com/2010/05/language-envy.html. "[Note: this article compares Vala features to the abstract of some Micrsoft patents, but this doesn't imply infringement. It's the claims that should be looked at.] A quick look through the patent system reveals Vala is infringing happily left and right on Microsoft property. [...]" 
  4. http://mether.wordpress.com/2010/04/13/fedora-13-desktop-features/