Forgot your password?
typodupeerror
Open Source

Sun Open Sources Java Under GPL 535

Posted by Zonk
from the it-really-happened dept.
prostoalex writes "The embargo is off, and Associated Press is reporting on Sun releasing Java under GPL. Sun is hoping that this step will attract more developers, as well as extend the lifespan of Java. The article notes that this is 'one of the largest additions of computer code to the open-source community', and that Java is currently being run on something like 3.8 Billion devices worldwide." From the article: "Rich Green, Sun's executive vice president of software, said the company hopes to turn more developers into Java programmers, who may then create additional software to support Sun products. 'The open-sourcing of this really means more — more richness of offerings, more capability, more applications that consumers will get to use,' Green said. 'The platform itself will become a place for innovation.' All the Java source code is expected to be released by March 2007, Green said. The move covers all Java technology, which includes software that runs on handheld devices, personal computers and servers."
This discussion has been archived. No new comments can be posted.

Sun Open Sources Java Under GPL

Comments Filter:
  • by Mr. McD (166893) on Monday November 13, 2006 @07:18AM (#16821442) Homepage
    While I'm psyched about the fact that they went whole-hog and went GPL, there are a number of commercial Java Applications out there. The fact that they have this "Classpath Exemption" makes it sound more like the LGPL.But at any rate, it good that Java is now suitable for Linux.
  • GPL for all? (Score:2, Interesting)

    by Lauritz (146326) on Monday November 13, 2006 @07:18AM (#16821444)
    Will they use the GPL for all the components? That is the compiler, the class libraries and the runtime? Then it will still be easier licensewise to use mono.
  • Re:Holy Shit! (Score:3, Interesting)

    by smilindog2000 (907665) <bill@billrocks.org> on Monday November 13, 2006 @07:27AM (#16821484) Homepage
    It's great to have this in the GPL domain, but it's just gotta PO all those open-source developers who have built a GPL version of the same system. Why the heck didn't Sun do this 10 years ago? It would have save the world a LOT of grief.
  • by N8F8 (4562) on Monday November 13, 2006 @07:28AM (#16821490)
    I work for a LARGE government contractor and have had a hard time getting management to realize Open Source in general and the GPL in particular aren't bad for business. Open source here has the same connotation as red communism. Can't get many of them to stop calling it freeware. With Sun making Java GPL they won't have the choice of sticking with that attitude anymore. Many of our existing projects use Java already!
  • by MostAwesomeDude (980382) on Monday November 13, 2006 @07:32AM (#16821526) Homepage
    I love how easily you just shrug off that number.

    Java is an embeddable language at the hardware level. So-called "Java chips" provide a very real platform for deployment on handheld devices. It's easier to develop applets in Java than in, say, C, since Java is higher-level. The fact that there is low-level support for such a high-level language makes it popular with cell phone developers.

    Your point of Python is a good one. After all, Python is high-level, intelligent, and permits object-oriented development. It's my favorite, and I'm writing a few programs in it right now. However, Java still has a few advantages. First, it's ported more places, the most obvious off the top of my head being that Java's Mac OS X GUIs are far more robust and less buggy than Python's. Second, it's compiled and then byte-interpreted, giving it a fairly good speed compared to Python's interpretation. Python also has structures that, while easier to read, definitely don't execute as fast. (I do concede, however, that Java is no speed demon.)

    Also, Java is embeddable as a web applet. Only a few other languages can do that. You can't exactly drag'n'drop a Python application into a web browser, hook it up to a frame, and project it to the world.

    Of course, since this is Slashdot, I'll finish up with a low-blow bit of rhetoric. If Python is superior to Java, then why is the leading Bittorrent client, Azureus, written in Java if the original Bittorrent client was written in Python?
  • by FrostyCoolSlug (766239) on Monday November 13, 2006 @07:41AM (#16821590)
    Java is an easy to learn, fully cross platform (and by fully, i don't mean pseduofully like most languages, if you code a GUI in Java, you don't need to install stuff like GTK+ to make it work in windows / linux), with a 'one class file fits all' attitude. You don't need to spend time making sure that your code is compatible with every OS that java runs on, you also don't have to waste time compiling for each system, It's fast, complete and as i say, easy to use. I'm primarily a C++ programmer, but my current occupation requires that I code java most of the time, and to be honest, i don't mind, it's much less of a problem making sure everything doesn't segfault, and with a true OO nature, it's just a joy to use. The only real quibble i have is with the way the Java VM behaves and handles memory. As far as open sourcing goes, i welcome it, although i doubt it's going to effect anyone really at least for years to come, the only real advantage is that it may (as stated) be shipped 'as default' in some linux distros, which is a good start
  • Re:GPL for all? (Score:3, Interesting)

    by molnarcs (675885) <.moc.liamg. .ta. .scranlom.> on Monday November 13, 2006 @07:47AM (#16821624) Homepage Journal
    Perhaps some Microsoft patents? But that is of course, speculation - without having all the facts of the Novell-MS deal at hand, I don't want to imply anything... except that whenever mono comes up, there is always talk of patents. These might be legit concerns, or not... I don't really know. But the fact that this always comes up might be considered bad enough by some (that's why I linked Perens's post). Not to mention this recent deal between the two companies, that gave legitimacy to MS's patent claims. Mono stands out in this respect from the application stack Novell distributes... if there is any single piece of software that may have patent concerns, it must be Mono (really, what else? eDirectory?, linux? perhaps Samba..)

    Oh, and I put my comment in evil-comment tags, but ./ erased that ... so don't take it too seriously...

  • future of GCJ/Kaffe (Score:2, Interesting)

    by xianp (1026524) on Monday November 13, 2006 @07:48AM (#16821630)
    I'm wondering what is going to happen with free Java compilers/virtual machines like GCJ and Kaffe?
  • You sure on that? (Score:3, Interesting)

    by glesga_kiss (596639) on Monday November 13, 2006 @07:58AM (#16821678)
    Remember the "Ice Weasel" nonsense? That was because the Debian team did not want to use a copyrighted Firefox logo. Isn't Sun's Java going to have the same problem?
  • by Anonymous Coward on Monday November 13, 2006 @07:59AM (#16821690)
    You have to be fucking joking!

    Sun has had the thankless task for the past decade of standing alone against Microsoft in their all out assault on the Java platform. Even to this day Microsoft is making absurd decisions like trying to support a dead format like HD-DVD just because of the Java part of BluRay. And all the while they were protecting Java from every possible sleazy trick in Microsoft's playbook, they still managed to keep Java as close to a true community based open source project as possible.

    And all through those years fucks like you acted like infants and threw tantrums over Java and ran off and played with garbage like mono despite the endless warnings of the more grownup members in the open source world.

    Bravo Sun! You have done a thankless and most likely forever underestimated effort for open source software development.

  • Re:Holy Shit! (Score:2, Interesting)

    by ThePhilips (752041) on Monday November 13, 2006 @08:09AM (#16821768) Homepage Journal

    ... working JRE sitting in the main repositories for Debian and Ubuntu. Sweet.

    On practical note, can you share what kind of application you use Java for?

    I've removed last traces of Java from my WinXP office PC (and never had it on Linux at home) and nothing had ever complained about the absence. (I'm rather curious what had installed it in first place.)

    I am long term Java skeptic. Yet would appreciate any hints on why people would want Java - especially under Linux.

  • by julesh (229690) on Monday November 13, 2006 @08:24AM (#16821868)
    Second, it's compiled and then byte-interpreted, giving it a fairly good speed compared to Python's interpretation.

    Python is bytecode-compiled also, although to be fair I believe Python's bytecode is substantially higher level than Java bytecode. There is also a native-code just-in-time compiler (psyco) for x86 platforms that works reasonably well.

    IMO, the main problem with Python, performance-wise, is that a variety of operations it supports are defined by the commonly-accepted understanding of the language to be atomic. This includes modifying lists and dictionaries. Because of this, these structures must have all accesses synchronised, which the standard Python implementation achieves by only allowing one thread to execute at once. I don't think I need to point out how horrible this is for scalability to multiprocessor systems.
  • by nietsch (112711) on Monday November 13, 2006 @08:25AM (#16821872) Homepage Journal
    Sun may have had other motives than that, but some people will interpret this move as Sun has written off java and is now giving their inventory away. Yes that is a croocked argument, but I am sure some bonehead CTO's or MS-salesdroids will make it anyway.
  • by frogstar_robot (926792) <frogstar_robot@yahoo.com> on Monday November 13, 2006 @08:43AM (#16822040)
    IBM licensed Java from Sun a number of years with contracts signed and everything. Assuming the Nazgul did a good job on the contracts, IBM can continue doing whatever they like with their Java code tree.

    The GPL isn't some black hole that can suck up any and all licenses into it's undeniable gravitational pull. Come to think it, real black holes don't do this either unless their event horizons are crossed. Put that way, IBM Java can't and won't cross the GPL event horizon. At most, it will orbit at a safely removed distance.
  • by Anonymous Coward on Monday November 13, 2006 @09:09AM (#16822232)
    Yes!!!

    Mod up!! (It wont happen - the "fuck away" made that impossible).

    Mono was so stupid I dont know where to begin... Anyhow, it's over now! Didn't MS know this was in the pipeline?? Unbelivable!!!!

  • Re:GPL for all? (Score:5, Interesting)

    by molnarcs (675885) <.moc.liamg. .ta. .scranlom.> on Monday November 13, 2006 @09:12AM (#16822262) Homepage Journal
    I just found this comment [slashdot.org] pointing to this blog [sun.com] that explains the situation much better. Qute:

    Enter Sun's open source Java decision. Novell's Mono project -- essentially a Linux-based clone of Microsoft's .Net -- was apparently a major focus of the deal. For several years now, dating back to the days before Ximian was under Novell's wing, the open source sector has been wondering if Microsoft was going to drop a shoe on Ximian-founder Miguel de Icaza's brainchild (Mono). .Net has always been a bet-the-company gamble for Microsoft. Today, the company is taking heat on every single front and it can't afford a complete cave-in on one of its most important properties. There's no way it could let a .Net clone get away with murder. Sooner or later, this was going to come to a head. Well, now it has.

    But the game is not over yet. That's because Microsoft may not be holding the cards that some think it's holding. At least not all of them. One need only look back at Sun's 2004 stand-still agreement with Microsoft to realize that when it comes to .Net-like virtual machine environements, the real IP holder is probably Sun. I'm not a lawyer. But I'm willing to be that there's hardly anything - probably nothing - in .Net for which prior art doesn't exist in Sun's Java or something that came before it. In fact, looking across Sun's entire portfolio of IP as well as the larger world of older intellectual property, it's quite possible that some of the other software that's often packaged with Linux that could potentially be infringing on Microsoft's IP (i.e. OpenOffice, SAMBA, and Evolution) is actually doing nothing of the sort.

    That answers your questions better than I could - but I recommend reading the entire blog post, it is rather interesting.

  • Re:FUD (Score:2, Interesting)

    by ray-auch (454705) on Monday November 13, 2006 @09:13AM (#16822274)
    The chair of that committee works for MS and is pushing C++/CLI.

    If you don't know what c++/CLI is, then you need to check up on what your trusted committee has been doing for you recently - C++ is going .Net, so if you don't do .Net due to MS influence then C++ may need to move off your list too for same reason.

  • by Anonymous Coward on Monday November 13, 2006 @09:48AM (#16822616)
    So... if you look at Java 1.5 there are some interesting papers written on it's type system. Suffice to say that there's a good raeson that their generics work the way that they do. Basically, to REALLY fix Java generics requires completly redoing the entire of the Java type system, and the VM, I.E. writing a new language. The problem is basically that in java Top is the same as Bottom, that is Object is both of these. This causes major casting problems for generics due to the contravariance of subtyping over functions (basically functions don't subtype the way people expect them too). They worked very hard in Java 1.5 to maintain JVM compatability while adding features like generics because that's the only thing that makes Java useful, if you start breaking that, then you might as well be coding in a different language. Actually, the new generics are quite well done, and fairly consistant given the broken type system that they had to work with. For a language designed for programming set-top boxes, Java isn't so bad - although I do wish people would realize it wasn't a god send and consider languages with better type systems.
  • Re:Holy Shit! (Score:4, Interesting)

    by Aceticon (140883) on Monday November 13, 2006 @09:58AM (#16822698)
    Nowadays Java is mostly used in systems and applications for companies, not for home users.

    Thus, most Java applications out there have a server component using the J2EE (Java 2 Enterprised Edition) framework and running under an application server such as JBoss, BEA Weblogic or IBM Websphere (to name just the bigguest) and a client component, typically (but not necessarilly) a web-based user interface.

    The J2EE framework defines which and how "enterprise" functionalities (HTTP call handling, asynchronous messaging, database access, transactions, distributed functionality, discover and communication with remotedly hosted application components, HTML templating, etc) are provided by the application server to the application itself. J2EE is roughly split in 2 parts, one dealing with dynamic web-based user interfaces (as in, the server component of it) and one for (optionally remotelly accessible) business components and their supporting backend functionality (such as database access, messaging, transactions, etc).

    Java with J2EE occupies the same enterprise niche as C# + ASP with .NET.

    It's quite likelly that you've already been exposed to Java with J2EE servers via web-sites on the Internet (URLs with script names ending in .jsp, .do and .action are quite likelly on a J2EE application server or at the very least a J2EE web application server (which just implements application server functionality for web-based user interfaces), and even more likelly if you've worked inside big companies (such as banks) since a lot of this stuff is used for intranet web-based user interfaces which need to be reliable, are used by many users simultaneously and are connected to one or more core systems within the company.

    There's also a lot of backend systems out there in Java/J2EE doing things like gathering and consolidating data from multiple systems, both internal and external.

    The reason why many of us (which work in this area) would like to see more Java under Linux is because currently a lot of the J2EE application servers out there are running on top of Windows (*gasp*), even though all the mainstream J2EE application servers support multiple flavours of Unix (including Linux).
  • Re:Holy Shit! (Score:2, Interesting)

    by jonaskoelker (922170) <jonaskoelker@ g n u .org> on Monday November 13, 2006 @10:13AM (#16822890) Homepage
    > For the ideologues, knowing that there's one less piece of non-free software on your system is a real comfort.

    And for the ideologists, now being able to use java (as opposed to kinda' sorta' sometimes using java for some things) is a real comfort.
  • by Anonymous Coward on Monday November 13, 2006 @10:44AM (#16823218)
    Sun may have had other motives than that, but some people will interpret this move as Sun has written off java and is now giving their inventory away. Yes that is a croocked argument, but I am sure some bonehead CTO's or MS-salesdroids will make it anyway.

    Of course MS will grumble because this is Sun's backhand blow to Microsoft's "Java killer" C#/.NET campaign. What Sun is doing may be best interpreted as a sort of "scorched earth tactic" move, or asking for public help, a call to arms.

    Microsoft is for some time now contending for greater developers share, giving away free development tools, etc. *especially* on embedded/mobile phone/hand-held gadgets/ arena.

    When you are competing with someone, you must relentlessly follow him around and fight for each patch of ground, cutting as much of his profits' supply as you can. IBM and Sun have been doing it against Microsoft for some time now (IBM with Linux promotion and patent umbrella for FOSS, eclipse project, Sun with OpenOffice.org cutting away parts of MS Office market) and it is plausible anticipation the two will make some sort of tighter alliance and cooperation to take on Microsoft. Perhaps eclipse and NetBeans will converge for a greater good?

    Of course, Microsoft still has some cards to play. Microsoft could play this "open" game too (properly, not sneaky as they tried with Novel/SuSE), if only they had chosen to. Since this approach they took is ill-posed (and already exposed as naive trap), they will probably be forced to correct it and fight their foes by offering true competition (what they did so far is not compelling). I guess they've got a bit of a "cultural shock" for now, but they will come around, as soon as they figure out how it works and how to handle this "fire" thing without "burning" their possessions (or that, if they are going to burn anyway, at least get some warmth from them) ...

    Things are going to get interesting!
  • The real reason (Score:2, Interesting)

    by Qwavel (733416) on Monday November 13, 2006 @12:02PM (#16824184)
    I've seen a few posts suggesting that Sun couldn't do this till now because of the forking threat in the past, reprepresented by MS's J++. I think this is wrong and probably comes from people who blame everything on MS.

    Sun didn't open Java before because it didn't have to. The fact that they are opening it now suggests to me that they are starting to fear .net (and maybe mono on Linux).

    Personally, this makes me much more inclined to go to Java as my next language, rather then C# (I'm currently using C++) but, given Sun's past refusal to open Java, this move by Sun suggests to me that Java isn't doing as well now. (If only Sun had done this 10 years ago I could have been using Java all these years instead of C++.)

    One other possible factor is the 3rd party open-source Java efforts. I don't know how they were coming along, but if any of them were doing well then they could have increased the pressure on Sun to do this. The great irony of those projects is that they get wiped out if they are successful.
  • Re:Holy Shit! (Score:4, Interesting)

    by AJWM (19027) on Monday November 13, 2006 @12:56PM (#16824914) Homepage
    Nowadays Java is mostly used in systems and applications for companies, not for home users.

    Actually in terms of numbers of installed JVMs, most Java is probably in mobile phones. There's a lot of J2ME out there, although J2EE gets the visibility because of the web-based server role.

    Java shows up in some other interesting places: my wife had a couple of x-rays done a week ago and they included a printout (screen dump) of the patient info metadata from whatever application they used to control the system; the GUI was clearly Java Swing (platinum plaf).
  • by kkoning (29512) on Monday November 13, 2006 @01:39PM (#16825558) Homepage

    Java being released under the GPL might have an even bigger impact in the long term than it appears (from these comments) many people think. It may represent the beginning of a huge leap forward for open source. The following line of reasoning seems at least somewhat plausible...

    1. Starting with the obvious, Java will become more acceptable as a generalized platform for open source projects because there is no longer any danger of having the base platform disappear, go exclusively commercial, etc...
    2. The greater use of Java for applications will further drive development that reduces the (system) cost of starting an additional Java application. Some of this work has already been done. Think of desktop widgets running in some sort of system-wide application server, rather than their own separate process. This drastically reduces the (marginal) cost of starting and running an additional Java program.
    3. This will make it even more likely that Java is selected for new open source applications.
    4. The above will be a mutually reinforcing cycle.
    5. These applications will be able to reach a much larger audience, specifically those who run Windows or Mac OSX on their desktops. Yes, some other apps are already cross-platform (i.e., Firefox), and cross-platform compatibility may not be perfect, but cross-platform compatibility becomes the default, rather than the exception.
    6. Just like the shift of some applications to the web, the underlying operating system again becomes less relevant. GPL'd GNU/Linux becomes a better substitute for Windows on the desktop, because the same applications will more often run on it as well.
    7. So more people use it.
    8. Competition and innovation flourish as Microsoft looses its unrivaled power to take over new markets/applications by leveraging the Windows monopoly. More firms will take development risks (for commercial software) without the threat of being so easily crushed by Microsoft.

    Of course, the idea's not perfect, especially due to the large number of existing platform-specific applications and the fact that some applications need to be platform specific to run efficiently. Perhaps ahead of time compilation will be used/developed further? Anyway, even if this happens, it's probably going to take a very long time- maybe decades. But if the end result is that people coalesce around a freer and more open platform, and better (often open!) and cheaper (often free!) software comes about as a result, we'll all (well, except for Microsoft, of course) be better off.

We warn the reader in advance that the proof presented here depends on a clever but highly unmotivated trick. -- Howard Anton, "Elementary Linear Algebra"

Working...