Talk:Comparison of the Java and .NET platforms

Move GPL and alledged GPL problems to another article
The GPL discussion on the deal between Microsoft and Novell should be moved to another article. It concludes without evidence, without completed litegation between FSF and Microsoft or an agreement between them that Microsoft has somehow run into problems with GPL. This is speculative at best and should be removed.

Comments about Microsoft's shared source license versus GPL should be moved elsewhere also. —Preceding unsigned comment added by 24.149.211.131 (talk) 19:09, 9 June 2009 (UTC)

New article
This page was created, after much discussion, to take some of the heat off the Comparison of C Sharp and Java pages. The idea was to take some of the contentious, ancillary material (like licensing issues, availability, etc.) which had been generating much debate and a disproportionated amount of edits, and move it into a separate article, thereby lightening the load on the original article. The original article retains brief references to some of this material (as I felt it genuinely was useful to have some outline of 'related matters' to the language syntax) but the detail has been relocated here. Some sections in this article, notably "History" and "Popular Integrated Development Environments", need further .Net detail added.  JavaKid 13:39, 19 April 2007 (UTC)


 * Good work, albeit a little premature, given we were still discussing the name of this new article ;) I suppose we can move it when we have some consensus on the name, but we'll at least have to change .Net into .NET, and probably put it first with the '.' or 'dot' coming before the 'J'. – Chip Zero 14:26, 19 April 2007 (UTC)


 * It's difficult to know when to take the plunge and do something like split an article. There appeared a strong consensus about how it should be split (even though this wasn't the way I personally suggested) to make a start.  As you hinted, now we have concrete articles to work with we can begin the process of molding each into shape.  I agree, the title probably needs correcting, but I personally don't want to change too much too rapidly -- let the dust settle and everyone else pick over what has been done thus far, then all interested parties can begin the process of filling in the gaps and smoothing the rough edges.   JavaKid 16:38, 19 April 2007 (UTC)


 * I've gone ahead and moved the article, making no edits to the content while it was in my hands (other than splitting the 'See also' links). I think it's important to leave the content in tact during the move so that any edits you want to make will leave a clear record for other editors to see.  Also, picking and choosing which non-language topics to move based on whether you find them to be a weak point for Java is POV and serves no quality or informational purpose.  I've moved everything but the actual language comparisons, which conveniently was the entire lower portion of the article and could be moved in one sweep without editing or rearranging anything.  I think that this approach will leave the previous article as nothing but a language comparison, which is what 3 of the 4 people (one being me) discussing the move seemed to want, and also, it doesn't involve any difficult-to-monitor and difficult-to-reverse special access to the content of the person moving the article while they also perform massive edits in the process. 24.65.79.192 17:08, 19 April 2007 (UTC)


 * I've re-written the text to refer to .NET and not C# (again!) In the majority of places this was as simple as switching the names.  Some places needed edits to fix the grammar.  A tiny bit of the text needed removing (including two cites) because they related only to C# and could not be rewritten.  Two substantial section which related only to the language of Java and C# have been moved back to the original C#/Java article.  The stuff on Mac OS X and plugins is back in, and I've reinstated the introductions.  I've moved the two links to the languages up to the top in the links section -- it seemed to make sense to have them before a link to an article which compares them (which means Criticism of Java is now at the bottom... no doubt someone will read Machiavellian intent into that! :)  PLEASE DO NOT WHOLESALE DELETE/REVERT THESE CHANGES -- try editing the bits you don't like instead!  JavaKid 16:57, 20 April 2007 (UTC)


 * I've reverted for a number of reasons. One is that you stated you're not making further edits for now, and you therefore won't be available to address any issues if made known to you (and there are many issues).  Another is that I don't consider it a valid expectation that I would be forced to re-add facts over and over as they're removed, I think it makes more sense to simply reverse edits that remove facts if that's a good portion of the change, and then allow the editor to address the problems and redo some of their changes according to consensus in talk.  Also, the parts that are discussing languages aren't actually discussing syntax and so-on, so they have no place in the original article per the talk.  I think that discussing the origins and popularity of the languages most commonly used with the runtimes might be pertinent here.  Maybe some discussion of VB popularity and history should be added, and that Java-like language that microsoft offers.  Or, maybe anything that seems truly useless to a discussion of the runtimes, but that isn't about the actual language standards or specifications should simply be removed.  I do see what you mean about some parts referring to C#/Java in a context when you'd want them to refer to the runtime now, though, and I wasn't trying to revert that particular edit, because I think it is a contribution.  I won't revert it if you restore it. 24.65.79.192 17:44, 20 April 2007 (UTC)


 * I've put the version back to how it was. I REALLY HATE REVERTING STUFF (I prefer to constructively edit, than delete wholesale) but, with deep regret, I had no choice.  I'm also going to refer the matter up to administration when I get a chance -- probably later this evening or tomorrow.  It is clear that the problems here are in danger of boiling over into something serious, and a cool head from outside will help.
 * When I originally split the article I reworked it (with as minimal change as possible) so that it truely reflected Java / .NET (rather than Java / C#.) I did add some introduction text, to make it work as an article, and added new facts into one section.  I went back to the original article and tidied up the hole, in a manner I thought everyone would be okay with (the format was mentioned by others, not me.)  This took quite some time to do.
 * Rather than fix the bits you didn't like -- or merely cut/paste over those bits you coinsidered missing from the original article, you did what you always seemed to do: REVERT, REVERT, REVERT.
 * This article is yet a day old, and already you have two large scale reverts to your name. My contribution to this 'problem' was to create a new article, copy material over from one to the other, painstakingly rework the original material so the detail was now merely an outline (while trying to keep it balanced), rework all of the copied stuff in the article so it reflected the new subject of "Java/.NET" instead of "Java/C#", write material to lead into each section when necessary, add all the various headers, footer, reference tags, etc...
 * YOUR CONTRIBUTION THUS FAR: three revert and a sloppy cut/paste (leaving the material totally off topic in its new home.)
 * I don't expect you to like my changes. You could have clicked EDIT and made a positive modification, instead of treating them like vandalism and just REVERT, REVERT, REVERT...
 * Please, by all means, edit the text -- but please please please (!!!) do not do wholesale reverts any more.  If you're patient, I will bring these issues to the attention of those better placed to decide how to move this problem forward when I can afford a little time.  Thank you for cooperation... JavaKid 19:46, 20 April 2007 (UTC)
 * There's a context that you're not considering here. For one, I deeply object to the idea that because you were the one pasting the material, you also have some special right to make sweeping edits that leave no normal edit history.  There's no reason why you can't copy verbatim and then fix anything that needs to be fixed.  Also, in general, there's no reason why you need to make sweeping changes at all.  It puts people in a difficult position when you do something like rephrase every fact that you feel reflects badly on Java but also rename C# to .NET in some places (maybe a legit edit), which creates unnecessary work for other editors if they feel it's necessary to revert some of the changes, but not others.  Also, your assertion that you only edited to make the information fit with the new subject of comparing runtimes is simply false.  There's a permanent record here, and the fact that you made sweeping article-wide changes to impose this reflecting-well-on-Java agenda is carved in stone, you can't erase the record.  Also, on the subject of moving the sections from this article that seem to discuss language comparisons, they are sections on history, user base, etc.. things that I believe the consensus in the article was to remove.  If they really don't belong here, then maybe they should simply be removed, but I think that a discussion of different languages (C#, C++/CLI, VB, Haskell, and those supporting the Java VM) that support these runtimes may be pertinent here.  Anyway, personally, I'm not infuriated here, I'm not angry, I'm not bent on imposing any particular change on the content of the article as it existed before this conflict.  I do have general practices of reversing changes that seem to damage informational quality or comprehensibility, and no matter how many damaging (in my opinion) edits you make, that doesn't change.  I do also agree that mediation would be a good idea here.  For now, I don't know what else to do but to reverse any changes that seem to serve no purpose in terms of wikipedia's mission and rules. 24.65.79.192 20:02, 20 April 2007 (UTC)


 * The edits to existing content was not substancial, and were largely necessary because the new article has a totally different subject, so extended passages about C# are off topic. You could have checked out all the changes easily with a diff, before you reverted.  Did you bother to do that?  Right now we have a .NET article which refers throughout to C#.  (Twice I've had to correct this, and your latest revert means someone will have to do it a third time!)  Perhaps can you enumerate which facts you intend allow into this article?  I'm sure this would be helpful to all current and future editors...  ;) JavaKid 23:34, 20 April 2007 (UTC)


 * (10th or so time) Again, my objection is to (your words in quotes) attempting to "dilute the wording" of points that are "PERFECTLY VALID (and indeed highly worthy of note)." Try making an edit that is only for quality purposes, and leaving out the diluting.  You massively dilute (damage information and quality) and complain about small portions of your edit that may have been legitimate.  Not my problem, not my responsibility to sift out the gold from the silt if I revert. 24.65.79.192 23:43, 20 April 2007 (UTC)

License
In the light of the recent announcement at JavaOne, the license paragraph should be rewritten. Sun has now GPLed a great part of the Class library code, fulfilling their promise. Only encumbered parts that were licensed by Sun from some 3rd parties who did not want their code to be released under an open-source license have remained closed-source, and the goal of Sun is to replace these parts by open-source alternatives (see here as fast as possible, with help from the community. This is just my estimate, but I think that now more than 90% of the Class library code (including the associated C / C++ / OpenGL platform code) is free. The paragraph to change is "As of April 2007, the Java SE, ME, and EE APIs remain open source, but not yet free software. ... or licensing others to do so". As said, in the light of the recent announcement (it is more than an announcement, look at the openjdk website), this paragraph has become POV. Hervegirod 20:18, 10 May 2007 (UTC)

POV in Market presence ?
I'm concerned with the following statement on this paragraph: While Mono may never manage to achieve a 100% perfect reproduction of .NET (due to patent issues which always arise when copying commercially owned software algorithms) it has managed to remain far more complete than equivalent Java free software implementations thus far. I think it's POV, I was not able to find any facts that prove this (as for example API compatibility, results of .NET tests for Mono vs Classpath for comparable versions of .NET / Java, etc...). Hervegirod 11:07, 10 June 2007 (UTC)
 * I think that was my fault :) Historically the stuff about Open Source variants has been fraught with controversy, so I felt it was important to balance any criticism.  IIRC I did an edit which noted that Mono may never be a 100% perfect reproduction of .NET, so for diplomacy I felt it would be good to note that Mono is still a lot more complete than any open Java implementation.  The end result is probably more pedantic than necessary, and potentially POV.  On second thoughts, I'm not convinced either point is *really* important, so perhaps it might be better to strike the whole paragraph?  :) JavaKid 10:49, 14 June 2007 (UTC)

For the desktop remark: Note that estimates and polls in magazines show that 80-90% of .NET use is ASP.NET. And afaik mono in GNOME is mostly used for a few control panel updates and dog slow beagle.

On the server remark: ''.NET tends to dominate in the small end of this segment, probably due to the very flat learning curve of the product. There are virtually no examples of .NET being used for heavy duty solutions.'' Can someone verify this with sources? The last sentence seems a bit biased. 'Heavy duty' can mean a lot of things. —Preceding unsigned comment added by 64.216.40.129 (talk) 19:35, 14 April 2011 (UTC)

About undoing the deletion of the part about winforms
Part whose deletion was reverted said: ""Also, this virtually threatens people that use the non-core part (the part that is not covered by the ECMA standard, and is patented by Microsoft) of Mono on other Linux platforms than Novell's Suse."" Deletion comment from Special:Contributions/65.96.174.25 was ""''The removed section is not accurate. The non-standard parts, such as winforms, were implemented without MS source and so are as patent-free as anything can be''"". Patents have nothing to do with source. Patents protect concepts, not code. The fact that the non standard part was implemented without any of MS code has nothing to do with that. Comment would have apply to licensed code, which is not the case here. Hervegirod 22:55, 15 July 2007 (UTC)

Can somebody discuss about the comparison of performance?
I'm extremely interested in this aspest. Unfortunately, the article doesn't talk about it at all.snowman 21:53, 30 July 2007 (UTC)


 * Surely this is why the internet gods invented Google? :)  Seriously though, I'm not sure this is suitable material for an article like this.  The two platforms are close enough in performance as to make little practical difference.  Benchmarks are often controversial, even for simple tests like basic number crunching.  Not only does each side nit pick over how the test code is written, but there's also the added complication of VM options, heap sizes, etc. which can make a big difference to the results of some tests.  Sterile tests are often not the best way to assess how JIT/hotspot'd code will work in the real world.  (In)famous performance problems (like the fact that Sun's Java 1.4 had serious performance issues with trig functions) may be worth noting, but IMHO quoting benchmarks directly is asking for trouble... JavaKid 22:14, 5 August 2007 (UTC)

Lack of balance needs (urgently!) addressing
Traditional computer applications ==> Desktop applications SERIOUSLY needs balance from a .NET expert! Don't want to risk doing it myself, my desktop .NET experience amounts to only a few months of professional coding! Anyone...? JavaKid 22:38, 5 August 2007 (UTC)

Comparison of Popularity
I think this article should address the current popularity in the market of the two technologies. Which is more commonly used in which industries, and what are the current trends? Calvinit21 18:02, 12 August 2007 (UTC)Seth

Why .NET/Mono or Java/Classpath
I would prefer just .NET and Java. Mono and Classpath are just alternative implementations. Hervegirod (talk) 19:10, 29 December 2007 (UTC)

.NET on mobile/alternative plateform
Event if it is quite limited for the moment the article should mention .NET Compact Framework .NET Micro Framework and alternatives implementations for mobile plateform.

and from my point of view the article need to be more balanced —Preceding unsigned comment added by 124.39.78.114 (talk) 04:28, 16 May 2008 (UTC)

No mention of Android
Article has no mention of Google's Android mobile device platform. —Preceding unsigned comment added by 72.199.200.171 (talk) 05:14, 7 July 2008 (UTC)

There should not be. Android is not strictly a Java platform, see Oracle Vs. Google. Spockwithabeard (talk) 13:27, 19 February 2011 (UTC)

Political statements should be cleaned up
I don't have the time to do this myself right now but there are clearly a couple of anti-Microsoft statements that really has nothing to do with the .NET framework in itself. —Preceding unsigned comment added by Tesda (talk • contribs) 07:23, 14 October 2008 (UTC)

The article only mentions to open-source, does not compare java and .net
The article only mentions to SUN and Microsoft. I think the author is a SUN employee, and in spite of compare java platform and .Net, he talks about only open source, GNU etc. And 3/4 of a paragraph author talks about Java.

This is not a comparsion, please change its title to SUN vs Microsoft in terms of open-source. Thanks.
 * It turned out that (some time ago), people were saying exactly the opposite (people complained that Java was always unfavourably compared to .NET). As for the Open Source / Patents concern, it is a real concern in the literature, both for Java and .NET, so not talking about that would really be POV. As for the fact that the article is dealing a lot with Java, some would say that when the length of a paragraph is longer for Java than for .NET, it is sometimes / often to criticize Java (Java is not standardized under ISO, there is a trade-secret license agreement on JavaEE). And as for Blu-ray / HDi, Blu-ray has clearly won the game. I don't think that this is a good article though (too much personal opinions in it), but saying that it is biased toward Java is not true IMHO. Hervegirod (talk) 21:38, 4 November 2008 (UTC)

Competing Platforms / Proprietary Technologies Section should be removed
I believe this section is totally redundant. It has nothing to do with the comparison of .NET and Java and what is more it is clearly anti-MS statement. This particular sentence is absurd in the light of the talk about Mono in the rest of the article:

The .NET platform can only be run easily under the Microsoft operating systems, so .NET development forces developers and end- users into using the Microsoft Windows operating system.

I will just remove this section. I guess if anyone does not agree they can just put it back... —Preceding unsigned comment added by NaibStilgar (talk • contribs) 23:34, 25 December 2008 (UTC)

MA: This is completely a relevant section - I know of *no* serious enterprise deployments of .NET running on anything other than a Microsoft platform, and it is a major consideration for system architects when making a platform choice. Mono is certainly a nice project, but it doesn't fully implement the .NET platform and nobody seriously consider .NET as a cross-platform technology in the business world. —Preceding unsigned comment added by 86.2.245.140 (talk) 15:50, 10 February 2011 (UTC)


 * There's more to life than enterprise deployments. I know of numerous serious, open and commercial projects that maintain Mono compatibility as a major project goal. It is worth noting that Mono is not .NET, so its existence is not relevant to whether .NET is cross-platform. However, "cross-platform" is not a binary value. There are easily a dozen Microsoft platforms currently in widespread use that support some or all of .NET. Not that it matters, because the contentious statement is nowhere to be found in the article these days. Maghnus (talk) 08:47, 11 February 2011 (UTC)www

Proposed Deletion
I proposed this article for deletion based on the fact that it is a comparison not an encyclopedia article.--gordonrox24 (talk) 22:38, 2 April 2009 (UTC)
 * Keep: There's a lot of other comparison articles, see for example Category:Programming language comparisons. Plus this article is not just a list of topics with checks for one platform or the other; it is written as an encyclopedia article IMHO, even if it could be improved. Hervegirod (talk) 10:18, 3 April 2009 (UTC)
 * Agreed. This article could be improved, but qualifies as encyclopedic, and deals with an important subject, comparing and describing properties of two major, highly related programming platforms. – Chip Zero 12:35, 3 April 2009 (UTC)

Comment: You cannot say keep because other articles exist.--gordonrox24 (talk) 20:14, 3 April 2009 (UTC)
 * There is nothing in wikipedia manual of style that prevents from writing a comparison article (comparisons are not in WP:NOT). It must not be merely a list of topics, which is not the case of this article, even if it can / must be improved. Hervegirod (talk) 11:05, 4 April 2009 (UTC)

+1 on Deletion. This article is just one piece of ongoing flamewar and I am afraid it won't ever be encyclopedia quality article. Moreover, I would consider value of comparison between two programming platforms at all. You would need tomes of academic books to be able to do it on the encyclopedia-quality level. Ceplm (talk) 07:56, 11 December 2011 (UTC)

Update article to reflect Oracle's acquisition of Sun
Sun is no longer the company at the helm, so the article is out of date with respect to Oracle's acquisition. —Preceding unsigned comment added by 86.54.84.130 (talk) 13:28, 27 September 2010 (UTC)

Mobile Platforms
I believe that:

"While many feature phones include a JVM, they are not always heavily used by users (particularly in North America). Initially Java applications on most phones typically consisted of menuing systems, small games, or systems to download ringtones etc. However, more powerful phones are increasingly being sold with simple applications pre-loaded, such as translation dictionaries, world clock displays (darkness/light, timezones, etc.) and calculators. Some of these are written in Java, although how often phone owners actually use them is probably unknown."

should be removed.

Spockwithabeard (talk) 14:11, 19 February 2011 (UTC)
 * To my knowledge, Java ME games and application are still downloaded in the millions (per day)
 * Features phones have always shipped with simple Java ME apps pre-installed (for example, Nokia 6800)
 * Today, applications for Java ME include the likes of SAP BuisinessObjects Mobile
 * "probably unknown" is not a factual statement

POV: Community
Adding a POV mark to the Community section. Sentence “Oracle retains exclusive and unlimited legal rights to its Java intellectual properties, and the Java community is subject to those rights.” is factually inaccurate and given it gives this one sentence against three paragraph tract about community involvement into the .Net process the resulting feeling of whole section is that .Net is somehow more community friendly than Java, which is blatantly untrue given completely free (in FSF meaning of the word) branch of Java development (OpenJDK and its friends, current Oracle development of Java is on GPL-free OpenJDK 8, etc.). Ceplm (talk) 07:54, 11 December 2011 (UTC)

Muliple Assertions in Server Application comparison
The second paragraph started with the assertion of "both platforms are well used and supported in this market" but then mutated into an attempt in proving a preference for java in "high-end, large-scale, or heavy duty" applications, with an additional assertion that java was more stable, none of which were supported by the evidence of the existence of a java based API from google, or native java code support from within oracle. I backed the whole paragraph off to the original assertion that both platforms are well used and included statistics from builtwith.com which could possibly be broken down further (industry maybe?). This begins to address the Comparison of Popularity issue that was brought up. I appologize if I jumped the gun on the edits, i didn't discover the talk pages until after I did them. Brrrdog (talk) 13:10, 15 March 2013 (UTC)

I have removed the assertion that there is a preference for java a second time. The assertion is followed by justification, but no proof or reference whatsoever. I'm perfectly happy if java is preferred, but there will need to be a link supporting this preference, if the assertion is to stand. --Brrrdog (talk) 12:11, 14 May 2013 (UTC)

Server Applications
Making generic talk section for this topic since it seems so hotly debated.

Removed "These figures are however difficult to judge as most large scale Java based sites usually sit behind a reverse proxy such as Apache or Nginx, e.g. guardian.co.uk is Java based but shows up on builtwith.com as Apache." For the following reasons:
 * The decision to reverse proxy is not isolated to java platforms. It cannot be assumed that reverse proxying would skew these results for java any more than they would for any other platform.
 * Proxies generally make minimal changes to the http headers
 * The referenced builtwith.com report aggregates platform, not web server so I'm not sure where the reference to apache comes from (and besides, can't java run on apache??)
 * It's unlikely that builtwith uses http headers alone to determine platform - doing so requires analysis of the url, signatures in the http payload,etc.

External links modified
Hello fellow Wikipedians,

I have just added archive links to 1 one external link on Comparison of the Java and .NET platforms. Please take a moment to review my edit. If necessary, add after the link to keep me from modifying it. Alternatively, you can add to keep me off the page altogether. I made the following changes:
 * Added archive https://web.archive.org/20090527021318/http://en.opensuse.org:80/OpenJDK to http://en.opensuse.org/OpenJDK

When you have finished reviewing my changes, please set the checked parameter below to true to let others know.

Cheers.—cyberbot II  Talk to my owner :Online 23:28, 22 February 2016 (UTC)

External links modified
Hello fellow Wikipedians,

I have just modified 2 external links on Comparison of the Java and .NET platforms. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
 * Added archive https://web.archive.org/web/20080620065024/http://blog.softwhere.org/archives/196 to http://blog.softwhere.org/archives/196
 * Added archive https://web.archive.org/web/20080418133611/http://langel.wordpress.com/2008/03/13/openjdk-in-fedora-9/ to http://langel.wordpress.com/2008/03/13/openjdk-in-fedora-9/

When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.

Cheers.— InternetArchiveBot  (Report bug) 17:55, 11 August 2017 (UTC)

External links modified
Hello fellow Wikipedians,

I have just modified one external link on Comparison of the Java and .NET platforms. Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:
 * Added archive https://web.archive.org/web/20080429191849/http://blogs.sun.com/mr/entry/in_hardy_heron to http://blogs.sun.com/mr/entry/in_hardy_heron
 * Added tag to https://jdk-distros.dev.java.net/

When you have finished reviewing my changes, you may follow the instructions on the template below to fix any issues with the URLs.

Cheers.— InternetArchiveBot  (Report bug) 23:47, 21 September 2017 (UTC)

2013
Is this still valid?

> This article needs to be updated. Please update this article to reflect recent events or newly available information. (October 2013)

This is the very first that we see, and if it is really still the case, consider to change the date. Currently, it reads like this article is abandoned since years.

Cheers ShalokShalom (talk)
 * The remarks of flagging it in october 2013 has outdated, is still valid today for the exact same reason. Putting a date in those models helps to know from when the flag is there. (I missed it while I was expecting it) 92.154.41.65 (talk) 13:20, 17 July 2019 (UTC)

Up to date?
I don't think the article is up to date considering that many Java announcements mentioned in the article are from 2007-2009. Android also no longer maintains its own Java VM implementation. Macbrayne (talk) 18:05, 5 October 2018 (UTC)