Java to be Open Sourced in October
thePowerOfGrayskull writes "Sun is now stating that the Hotspot JVM and javac will be open-sourced in October of this year, with the rest to follow by the end of 2007. There is still no word as to which license it will be released under. For those who haven't seen it yet, Sun has previously opened a public developer community site for soliciting feedback and providing updates about the process."
"Source code for Java already is available and has been for 10 years", said James Gosling. I guess Open Source means they want free developers.
Depending on the license that they choose, OSS purists can now utilize Java in their programs. OpenOffice.org ran into some issues when it began using Java to power some of its components. Hopefully the license under which this is released will be acceptable.
Information wants a fueled airplane waiting at the hangar and no one gets hurt.
Is this "open source" as in "open source"?
Is this "open source" as in Apple's "public source" Darwin project, where they're basically going "you can see and compile all the code, but no way are you going to be redistributing this as any kind of commercial project"?
Is this "open source" as in Microsoft's "shared source" projects, where it's totally not open source at all except in a PR sense?
Is this "open source" as in Sun's Solaris "open sourcing", where it's open source in all technical senses, but it's under an unbelievably elaborate license which exists for no reason except to engender GPL incompatibility and keep Linux from benefiting from the source release, which effectively scares everyone away from the project?
Cuz really, unless "Java to be Open Sourced" really means "Java to be Open Sourced", it won't make a difference, acceptance of Java will continue to be held back by the perceived closedness of the Java language and real linux-unfriendliness of the Java runtime, and languages like C#/Mono will continue to make inroads until Apache finishes their Harmony project.
Sure, HotSpot may be a bit faster than free JVMs, but the free ones do function well enough. Also, free Java compilers are already readily available. For a long time, the main issue has been the maturity of free class libraries (particularly their Swing/AWT implementations), and now Sun says they'll be getting around to releasing that around the end of 2007. Almost smells like timing the release to a date when they think Classpath will have most of it nailed anyway.
And then there's the license bit, but I shan't speculate on that uninformedly.
Do you have any data that shows that Mono deployment in the enterprise is increasing, relative to java deployment? Because, in my experience of 8 years of enterprise java, Mono is not making any strides. It's a backwater that a few people are toiling in.
Apache seems to be banking pretty hard on it.
Slashdot is proof that Sturgeon's Law applies to mankind.
Why are people clamoring for open java? As an application developer, I don't use Java, and it has nothing to do with it being open-sourced. It has to do with a bloated framework that I'm not supposed to distribute with my application, an inconsistent UI, and speed issues. If I could compile a native executable that Just Worked(tm) then I would love it.
Java is still only good for simple embedded web applications, or server-side applications. From an application developer's stand point, Java grew out but never grew up. Open sourcing doesn't fix any of this.
Mono is still a better option.
Not sure how stating either of those makes someone a zealot, but, whatever.
It should have been earlier, and it may well be too late. I respect Sun's problems with making the system open, and they've certainly experimented a great deal with different levels of openness, but I think they ended up making the wrong decisions. Not making Java Free Software earlier helped proponents of alternatives such as Mono, and this in turn gave .NET more traction.
GCJ isn't going to go away. It's more than just a JVM, after all, and people are only beginning to see its power. But I can see GNU Classpath disappearing if the official Java libraries are available under a GPL-compatible license.
You are not alone. This is not normal. None of this is normal.
If they had done this right 5 years ago, .NET would have been stillborn and Sun would be the worlds leading application platform vendor.
There is a truth in what you are saying. The real problem with Java is the lack of pace, and the locked Java Community process, which locks the platform and language. Also, since Sun was keen to hold on to the Enterprise space, the platform became too focused on Enterprise applications, while the language was stagnating. It took C#, Python and Ruby to finally get some new language additions.
Had it been Open Source, a lot more (free)wisdom would have gone into the core language.
Life is a conviction.
A perfect Java distro would maybe drop all the deprecated methods (will Sun ever do that? Java 1.6 is a good opportunity...) and unbundle some of the least-used stuff like the CORBA and RMI stuff. Heck, even Swing and AWT should be optional packages.
And the fragmentation begins...
Based on upvotes, Ageism is the only "-ism" Slashdotters care about and think isn't SJW
Add operator overloading (and I mean PROPER operator overloading, not some find-and-replace garbage) to the JDK v6, and you've got a language that (despite being slower than C++ in some cases) towers over C++ in so many ways - garbage collection, easy exception handling, a huge standard library...
Lean and mean Java implementations is all we need. "Works on Sun's, IBM's and XYZ's Java but not on gjc and others. And Kaffe needs some hacks and updates in order to make this app work". We are already seeing this kind of problems with .NET and Mono: you can either write simple apps that work in both, or advanced apps that work in Mono (and need GTK# in .NET Framework), or advanced apps in .NET Framework (and hope that it will work in Mono, although will look ugly on Linux and won't support Windows Native calls).
As for deprecated stuff, it should be avaliable as an easy-to-install packages that aren't installed by default. It's a real shame that some of Sun's own demos in Java Tutorial designed for an old VM don't work on 1.5 (maybe they've fixed this now, I don't know). One of the strong points in Java is that it's abstracted so that if you write an app you're sure it will work pretty much the same after ~5-10 years. If an OS's API changes, Java's classes can be rewritten so that older apps still work. That's why many educational stuff is written in Java (or Flash) - because if you buy an encyclopedia or dictionary (things that don't change over time and don't need to do any platform-specific stuff), you won't be buying upgrades every year just because some library is "deprecated"; after all, these things are pretty much like music and videos, platform-independent and not changed every year.
...and that is precicely why Sun fears open-sourcing Java. Java has so far been immune to the dependency hell of other OSes--all you have to be concerned about is the version of one thing: the JVM. It's manageable that way. I'd like to see more effort put into fast unloading of the pack200 format instead.
I doubt if this will change anything:
.Net Fx due out this month.)
.Net.
1. In the application space, there are much more productive languages and tools. Think Ruby, Python. And extreme performance has never been a Java forte either.
2. Core language capabilities are obsolete now. Bruce Eckel's famous piece The departure of the hyper-enthusiasts captures this nicely. And looking at the C# 3.0 spec, with lambdas, automatic type inference, monadic comprehensions and lots of functional programming goodness, Java is left way behind. MS is also way ahead in adding dynamic languages support to the platform (Microsoft supported IronPython v1 for
3. I think Gosling needs to move on. After he said Ruby/PHP are just scripting languages, and they just generate web pages, and lack the "power" of Java. [Which "power"?]
4. With Vista MS would have finally killed Java's Run Anywhere promise. It will still run, but it will look totally out of place. The new eye candy, and the good communication foundation (WCF) is better and easier accessed through
The only reason to have Java is for compatibility in a "Legacy" Java environment. Kind of the same reason why we still have mainframes. These days I cannot think of a single reason why someone would go with Java, other than interop.
Life is a conviction.
I know, I shouldn't feed a troll....
You are the reason they were reluctant to make it (fully) open source.
You obviously are confident you know more about what makes a good language than the designers of Java do. Have you read even one paper at jcp.org? Have you looked at the people who make up the JCP? IBM, Apple, Cisco, Intel, HP, ATI, NVidia, Creative Labs, Google (!), Apache, Apogee, Namco ... you really think you're smarter than their combined intellect and months of discussion? Trust me, you're not.
I'm sure you and a lot of others are already giddy with excitement over the idea of making a "better Java" with const and operator overloading.
When you understand the "less is more" principle, you'll begin to understand why all your pet features don't belong in the language.
The Internet is full. Go away.
Drop RMI? You realize that communication to EJB's is RMI right?
And for the love of gods, why bother trimming the libraries? If you don't use the classes, they don't get loaded into the VM. Everything else is inflating including the OSes and you want to trim the programmers libraries?
The more I look at your post, the more I realize you are straddling two fences. You say drop Swing and AWT implying that you are on the server in which case, your not downloading the JVM & libraries to the client anyway. Then you say Java needs to be like a Java Web Start install, meaning you are on the client side and therefore need the libraries you just said to toss! Oh and btw, Java Web Start is part of the jre download - if you have to download and install something to the client, why not download it all at once? Besides, the libraries *are* broken up - j2se and j2ee, correct?
You are checking your backups, aren't you?
Yeah. The individual usually is smarter than the group.
Badass Resumes
10 years ago, Sun promised ANSI and ISO standards for Java plus open source implementations. What did we get? No standards, a lot of FUD (yes, FUD from Sun) about how they can't because of MSFT, proprietary and closed implementations, costly compatibility tests, bloated APIs and implementations, and threats of lawsuits.
Now that FOSS implementations are mature and nearly complete, Sun is trying to undermine them by finally open sourcing Java (at least in name--in practice, the license will probably be a sham).
The sooner Sun goes out of business, the better for everybody. Microsoft at least makes no secret about where they stand on FOSS, but Sun pretends to be a friend to FOSS but keeps spreading FUD about FOSS and keeps stabbing FOSS efforts in the back.
Unless you're posting that from an AT&T Unix console, you're benefitting from people who had the hubris to think you're wrong.
The road of progress was paved by people who thought the current way of doing things was dumb, and who set out to find a better alternative. This is generally regarded as a good thing (except by people with a vested interest in the old ways).
Dewey, what part of this looks like authorities should be involved?
You are aware that the Java trademark prevents third party distributions from being referred to as Java, are you not? If someone hacks features into the language, they can't legally call it Java. Simple as that.
LRC, the best-read libertarian site on the web