ESP Wiki is looking for moderators and active contributors!

Difference between revisions of "Comparing Java to .Net and C-sharp"

(typo)
(the table format wasn't good)
Line 1: Line 1:
With [[Oracle]]'s patent attack on [[Google]]'s Java-like Dalvik, many people asked if Java's patent risk is similar or higher than that of [[Microsoft]]'s [[Mono and Moonlight|Mono / C#]].
+
{{navbox}}
 +
With [[Oracle]]'s patent attack on [[Google]]'s Java-like Dalvik, many people asked if Java's patent risk is similar or higher than that of [[Microsoft]]'s [[Mono and Moonlight|C# / Mono]].
 +
 
 +
==Who owns related patents?==
 +
 
 +
For both languages, there is only one patent holder which asserts that it has patents on the language and is willing to take developers to court.  For C#, that's Microsoft, and for Java, that's Oracle.
 +
 
 +
For Java there is also a patent which was owned by SCO until recently.<ref>http://www.groklaw.net/article.php?story=20100329223904478</ref><ref>http://www.groklaw.net/article.php?story=20100416203304695</ref>  The current owner isn't known, but this patent has never been mentioned in relation to enforcement.
 +
 
 +
==What forms of aggression have the patent holders shown?==
 +
 
 +
[[Oracle v. Google (2010, USA)|Oracle sued Google in 2010]].
 +
 
 +
Microsoft has long history of using their patents against software projects and companies, including [[free software]] projects.
 +
 
 +
==What reassurances have the patent holders offered?==
 +
 
 +
===Java===
 +
 
 +
* Oracle (holder of all the worrying patents) has distributed a version of Java, called OpenJDK, under the terms of the [[GPLv2]].  In doing so, it has given an implicit grant to everyone that distributes and develops software based on that code, including modified versions, subsets, and supersets.
 +
* Oracle is a licensee of [[Open Invention Network]], which means it has promised not to enforce its patents against the list of [[free software]] packages.
 +
* Oracle makes a promise, in the Java Language Specification, not to use its patents against compliant implementations of that specification.  However, this is possibly the least important of the promises since it doesn't apply to supersets, subsets, or any implementation that doesn't exactly comply with the Java Language Specification.
 +
 
 +
===C#===
 +
 
 +
Microsoft gives the [[Microsoft Community Promise]], which says:<br />''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: [...]''
  
{| class="sortable" style="border:1px solid silver;"
 
|- style="background-color:#eee;"
 
! style="border:1px solid silver;" | 
 
! style="border:1px solid silver;" | Java
 
! style="border:1px solid silver;" | C#
 
|-
 
| Who owns related patents? || Oracle is the only company claiming to have relevant patents and showing aggression.<br />(There was also a Java patent owned by SCO, and probably sold to [[AST]], but no holder of this patent ever showed intentions to enforce it.) || Microsoft is the only company claiming to have relevant patents and showing aggression.
 
|-
 
| What forms of aggression have the patent holders shown? || [[Oracle v. Google (2010, USA)|Oracle sued Google in 2010]] || Microsoft has long history of using their patents against software projects and companies, including [[free software]] projects.
 
|-
 
| What reassurances have the patent holders offered? || Oracle distributes OpenJDK under [[GPLv2]], is a licensee of [[OIN]], and the Java Language Specification includes a patent grant for fully compliant implementations (no supersetting or subsetting allowed)  || Microsoft gives the [[Microsoft Community Promise]], which says:<br />''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: [...]''
 
|-
 
|}
 
<div style="float:right">{{navbox}}</div>
 
  
 
{{footer}}
 
{{footer}}
 
[[Category:Microsoft]]
 
[[Category:Microsoft]]

Revision as of 14:25, 18 August 2010

With Oracle's patent attack on Google's Java-like Dalvik, many people asked if Java's patent risk is similar or higher than that of Microsoft's C# / Mono.

Who owns related patents?

For both languages, there is only one patent holder which asserts that it has patents on the language and is willing to take developers to court. For C#, that's Microsoft, and for Java, that's Oracle.

For Java there is also a patent which was owned by SCO until recently.[1][2] The current owner isn't known, but this patent has never been mentioned in relation to enforcement.

What forms of aggression have the patent holders shown?

Oracle sued Google in 2010.

Microsoft has long history of using their patents against software projects and companies, including free software projects.

What reassurances have the patent holders offered?

Java

  • Oracle (holder of all the worrying patents) has distributed a version of Java, called OpenJDK, under the terms of the GPLv2. In doing so, it has given an implicit grant to everyone that distributes and develops software based on that code, including modified versions, subsets, and supersets.
  • Oracle is a licensee of Open Invention Network, which means it has promised not to enforce its patents against the list of free software packages.
  • Oracle makes a promise, in the Java Language Specification, not to use its patents against compliant implementations of that specification. However, this is possibly the least important of the promises since it doesn't apply to supersets, subsets, or any implementation that doesn't exactly comply with the Java Language Specification.

C#

Microsoft gives the Microsoft Community Promise, which says:
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: [...]