Will Sun's Java Go Open Source?
Ritalin16 writes "CNet report that Sun Microsystems wants to send Java closer to the open-source world, yet keep it safe from harm. "Project Peabody" adds two licenses that make it easier for outsiders to see the code. But Sun stops short of embracing open-source. Sun's licensing practices for Java are closely watched. Proponents of making Java open-source argue that a different license and development process will help accelerate usage of Java, which faces ongoing competition from Web open-source scripting tools, such as PHP, and Microsoft's .Net line of tools."
It is exploiting a clueless user that doesn't know enough to click "No" when presented with a warning dialog that says that an untrusted application is trying to make changes to the local filesystem, and it asks permission from the user if this should be allowed. Previously, it had been assumed that a user would be ever so slightly clueful enough to not actually permit an untrusted application to do this, especially since they are getting a nice and friendly warning dialog, but hey... I guess user stupidity reaches new lows every week. The people that are vulnerable to this are the same people that think it's a good idea to run native exe attachments in emails from unverified sources.
File under 'M' for 'Manic ranting'
Anyone who reads Jonathan Schwartz's blog will know that Sun is gonna open-source java. He's been hinting about it for a while now, interspersed with hyping up the open-source release of solaris. Sun seems to understand that going open-source is there best chance of survival in the software world.
A Multiplayer Strategy Game for Mac OS X, Windows, and Linux
OutputStream out = new FileOutputStream(filename);
next?
(yes, I know it's still more typing than python, and I know you were tying to be funny, but Java really isn't that much work)
Advanced users are users too!
Perhaps if you could tell us why you thought Eclipse and Netbeans suck it would be easier to come with a suggestion?
Anyway, some of the most popular would probably be JBuilder, JDeveloper, IntelliJ IDEA, KDevelop...
If you prefer more light-weight IDEs, you can always use ANT together with something like Emacs or JEdit.
Being bitter is drinking poison and hoping someone else will die
Despite the other posters, gcj compiles things very nicely. It also has support for many things including SWT and basic AWT (enough support to compile jogl (opengl bindings)) Its definitly an alternative and has made major headway recently. It can compile eclipse and the Apache Tomcat server as well. GCJ is nice for compiling natively, and we already have an open source JVM called blackdown. Sun opening Java would be nice, but certainly not essential.
Regards,
Steve
By definition of the term `open source' as it is used now, it means that people can get, change and use the source and at least with some restrictions redistribute the resulting changed version.
I.e. `open source' more or less means `you can fork'.
The solution is perhaps to grow up and stop wanting to keep control. Life is to short to worry about that kind of thing.
And, of course, the fact that control is not enforced by the licence doesn't mean that there will be no central control. I think most people would say that Linus has reasonable control of the future of the linux kernel, dispite the fact that anyone could fork it, and many do for special purposes.
Consider XFree86 vs X.org for an instance of why the ability to fork is a good thing. Sometime when you get bored with working on your library, or fall under a bus, someone else with enthusiasm can take over, and if they do a good job, their branch will take over from yours and, assuming it wasn't a bus, you can go off and do whatever you are more interested in doing at that point.
_O_
.|< The named which can be named is not the true named
Think about the "fairly popular" bit.
/., but I really don't care.
Ok. I'm thinking of perl. I'm thinking about various systems I've seen and worked on over the last couple of decades. I'm thinking "fairly popular" is a pretty serious understatement when talking about perl. Tcl/Tk? Maybe not so much, but I've still seen lots and lots of it running behind the scenes on all sorts of systems. Python? Ok, I haven't seen much enterprise penetration there. Yet. But it's pretty new, relatively speaking. And it's already got zope, plone and gnue, and looks like it's only going to be growing from there. (Anyway, I can hope, 'cause python sure seems to me to suck less than perl, java, or tcl.)
Microsoft has cloned Java
From what I've seen, they haven't merely cloned it, they've actually improved on it. I know, a blasphemous thing to say on
I think you have to explain your reasoning a bit here.
Ok. I didn't think it was that tricky of a thought, but since you ask.... Kaffe and gcj are not forked from each other, they're forked (very loosely speaking) from the design of their not-open-source predecessor. Nobody is trying to fork kaffe or gcj - they're already open source, so there's no particular reason to fork them. And if java had been open source from the start, there never would have been any reason to create these competing projects.
Ask anyone involved with either project (kaffe or gcj) if they would have even considered working on those projects if java had started as open source! If java had been open source there would be no kaffe or gjc! Period! I don't know how I can explain it any more clearly than that!
And, for that matter, if java were open-sourced, even at this late date, I would expect to see kaffe vanish almost instantly, and I wouldn't place any bets on gcj's long-term prospects.
However, the biggest problem with the GNU compiler is the lack of compliant class libraries. The GNU Classpath project, which aims at creating an open source cleanroom implementation of the Sun class libraries are severely behind. My optimistic guesstimate would place them at being about 3 years from full 1.5 compatibility, at which time we're probably using the beta of 1.7.
However, GNU Classpath has an easier job ahead of them than the Mono folks, which begs the question as to why they chose to go with the Microsoft technology in the first place.
I'm curious - does the new Fedora actually ship with gcj and gij as 'Java'? That will be an interesting development to watch.
Actually, yes. Red Hat has actually aliased 'java' to them in the default install for quite some time now.
The more interesting thing is that FC4 will for the first time include natively-compiled Java packages. And not just any packages, but Eclipse and Apache Tomcat.
Java is a langauge and say it is prorietary is like saying C or C# are proprietary.
Wrong. There are many implementations of C. There are three of C# (excluding the runtime).
There is no need to reverse engineer anything since JavaDoc spells it all out for gou,
No it doesn't. Sun's documentation is terrible in lots of places.
and heck Sun provide the source code to the files too!
Looking at Sun's sources if you want to make your own implementation is legal suicide.
It bugs me that people perfer Mono'a C# over Java because it's "more free".
It IS more free (see below).
If they spent half the time coding a JVM that they've spent coding a Mono they'd be done years ago.
Well, I would certainly like to to see more resources go towards free Java development, but the missing thing at the moment isn't a VM. There are lots of free JVMs (gcj,kaffe,jamvm,sablevm,jikesRVM,cacao and so on), some of which are quite mature.
The missing part is the class library.
You can use IBM's or Apple's or your own.
These are not seperate implementations; They all use Sun's code, notably the class library. They are all covered by the same licensing restrictions set by Sun.
Is there some big piece that I'm missing that would bother anyone besides GPL Zealots?
Yes. For instance, what if you'd like to include the install of the runtime in your own installer? Can't do it.
What if you do embedded work and would like to exclude the parts of the runtime you don't need in order to save space? Can't do it.
What if you do find a bug in Sun's code, and include a work-around in your code? Bravo. You just violated Sun's license.
C# !=
Not even close.