Sun to Change Java License for Linux
daria42 writes "It looks like the days of downloading Java every time you re-install a Linux box may be at an end. Reports are trickling in that Sun plans to alter the Java license to make it easier to bundle the JRE with Linux. From the article: 'Sun has faced calls several times to open-source Java, which advocates say would foster innovative open-source development. The company has resisted formally open-sourcing all of the Java software, but it has dramatically changed the development process around Java and changed licenses to make it easier to see Java source code.'"
I'm sorry...
Never underestimate the power of stupid people in large groups.
Three cheers for sun *reaches for mug java*....o wait, my self heating mug exploded
Because downloading the JDK or the JRE after installing linux was hard? If it wasnt for this, I wouldnt be periodically using the latest version.
That's what you get for having a slow connection.
Sadly, this means that Windows will be the only major OS that can't seem to come with Java delivered right out of the box. Maybe they'll address that problem with Vista?
not sure about pervious versions of slack, but 10.2 ISO has it, i dont see the problem way other distro dont include it?
jre-1_5
If there are areas where the specs need improvement to get closer to the "Write Once Run Anywhere" goal, by all means complain about those areas.
We want multiple competing implementations, both open and proprietary. That said, I could see Sun open sourcing the Java libraries - at least the Java parts. The SDK comes with Sun source for the publically visible parts of libraries. However, the licence precludes using that source in an open source VM. Instead, the GNU classpath project has to rewrite them from the spec.
Keeping the Sun VM proprietary but opensourcing the libraries seems like a good compromise between maximum interoperability and competition.
I remember hearing about two or three weeks ago that Sun said it was committed to "Open Sourcing all of its software, everything they make."- this is from LugRadio and a Sun representative.
/very/ progressive stance, I don't see why they're stalling when it comes to Java.
Given this
If anything, this slows Java adoption.
Java was all the rage in the late 90s. Had they made it Free, I think it would have been a tour de force. Now we see competition from simpler technologies. We're learning that we don't need a J2EE infrastructure when a simple Model-View-Controller model with a database backend will do the job just as well, and so on.
Freeing Java would spread adoption, if nothing else than by including it in every distribution shortly thereafter.
This new license system isn't good enough, it'll just frustrate people.
This is great! Now Linux development can equally support the Big Three: Java, .NET (Mono), and the P-languages (plus one R)!
The next step ... get it all to run on Parrot! Convergence like none other, bwa ha ha huh!
random underscore blankspace at ya know hoo dot comedy.
Unfortunately the article is a bit light on details. It says that Sun are going to make the JRE easier to redistribute but that on it's own isn't enough for many distros. It would also have to be at least able to be repackaged (so it goes somewhere more friendly that the Sun supplied RPM) and preferably modified (to make it play nicer with the rest of the system) before it's really useful.
Also, it's a shame it seems they're only going to include the JRE. Nice and easy for linux users to run java programs. Shame they won't be able to write any...
Odd analogy, but I guess it kind of makes a little sense maybe... http://www.forbes.com/2006/05/04/sun-microsystems- schwartz-cz_ec_0504schwartz.html?partner=yahootix
In shwartz's words...
Forbes:
You're trying to woo customers with free hardware. How do you make them paying customers? You haven't monetized Java proportional to what's out there.
JShwartz:
That's a misnomer. Largely an American misnomer. Nearing 1 billion Java handsets.
Forbes:
So what's your Java revenue?
JS:
Close to $13 billion.
F:
That's not money in Sun's pocket, though.
JS:
It's like asking a company that produces generators how much of their demand comes from people using electricity. It's 100 percent.
F:
But it's about how many customers are paying you for the privilege of using Java.
S:
And I'll point out that a billion handsets fuels an enormous market in the telecommunications industry. Java running on Sun's Java Enterprise system, whether it's at American Express or General Electric or Vodafone, is fueling Sun's overall revenue. Asking us how much money we make on Java is like asking Verizon Communications how much money they make on handsets. The fact is that they lose a fortune on handsets, but they make a fortune in subscribers.
F:
So are you going to convert Java users to subscription service for Sun?
S:
Partially, we're already doing that. American Express runs on the Java Enterprise system. That's per employee subscription for core middleware for Sun. My broader point is that Java ensures Sun has access to an open market. Java allows us to reach out to customers who don't run on Sun hardware and ensure we can serve them wherever they may be--whether it's on a Dell box or HP box or in an IBM customer base.
Again, it's hard to explain to people. Here's an analogy. With the advent of electricity, Thomas Edison tried to patent a lightbulb so that you would have to use his lightbulbs if you used his dynamo. That strategy obviously failed. And what emerged was the standard plug. Asking Sun the value of Java is like asking GE--which is, I think, the largest manufacturer of power turbines in the world--what the value of the standard plug is. It ensures they can serve a global marketplace. So if you asked them what's the value of the plug, how would they respond?
Here are some stats on Java: There are more than 1 billion Java cards in the marketplace, securing everything from set-top boxes to handsets. There are more than a billion Java handsets, all driving demand for network infrastructure. There are nearly 1,000 members of the Java community process, who collectively contribute to the standard called "Java." It is the default standard for set-top boxes in Brazil. So what will the infrastructure opportunity be in Brazil to serve 100 million Java-enabled set-top boxes? I promise you it will be enormous, and Sun will be among many participants that can serve that demand.
This is the kind of thing you'd like to reward a company for. All companies should have a comment submission box where you can click, "I totally dig what you just did, here's my dollar that says I really mean it." ... is that a crazy idea?
I mean, in all seriousness. The dollar is the only vote an american really has.
Imagine if you weren't allowed to use roads because a bus company complained about your driving 3 times. --skunkpussy
Section 5.3 of the Debian Java FAQ sums up the present licensing issues that prevent Debian from including Sun Java.
The more I hear calls that Java to be more open source the more I wish all these Java libraries worked like the way CPAN does.
CPAN is great and its what keeps Perl relevant and it works well for the Perl community. All these java libraries bundled with the JDK should be more modular with a lean core distro and then the rest can be organized and installed as modules.
And like everything CPAN all these modules will be peer reviewed by other Java developers in the open source and corporate worlds.
Ah, one can only dream.
"If a show of teeth is not enough, bite
Java, due to MS's efforts to subvert it, is probably the hardest to free up, but this is a good, workmanlike step in the right direction.
--dave
davecb@spamcop.net
" easier to bundle the JRE with Linux"
does that mean they are going to put it in Linux? I wonder if it would be a LKM or compiled static. That would definatly increase performance!
Because there are so few innovative open source java projects right now? Heck, I can hardly keep track.
Leaving aside the politics of open source, and the "I can't play with your toys" argument, the main issue here seems to be the license incompatability that keeps Java from being bundled with the 267 different Linux distributions.
If people want to be innovative, how about working to unify the basic functionality of all those distributions, specifically one common, simple way that works on all distributions and architectures to install 3rd party packages, like, say, Java?
ObMetaDig: And besides, why do you care? Every time I see java on /., the whole thread seems to be "it's slow / no it isn't / GC sucks / no it doesn't / .NET rules / no it doesn't"
Can we get this stuff off the slashdot front page until Sun decides to do something that will make any difference? It is probably so late in the game that nothing they do will.
I don't see how this is any different from tainted binary kernel drivers. They'll allow redistribution of the JRE run-time environment. Big deal.
If they allowed redistribution of JDK compiler and libraries, we'd be making progress.
Nothing to see here. Move along.
Just one troll asking another flamebaiting troll
Uh?
| (ceci n'est pas une pipe)
well they could start with providing the mozilla-firefox java plugin for amd64 systems on linux...libjavaplugin.so, anyone?
My sig has been answered.
How did this get modded "Interesting" how about "Troll."
If you really don't care, why are you posting here?
Me thinks secretly you must care a lot.
Three recent thorns in my side:
The Process object's destroy method sends a SIGINT or some such rot to the child process, which may or may not kill the child process. There's no way to send a SIGKILL, no way to get the PID of the process, no way to set the process group and no way to get or kill children of the child process.
There's no way to get OS-Specific permission settings on a File. For that reason if you try to archive some files in Java using an InputStream that takes Files, you'll lose the permissions settings on them and the files will restored with something both generic and useless like 644. They make a halfhearted attempt to address this in 1.5, but it's still useless.
It would appear that the only way to get disk space left on the volume is to open a file and start writing 1 byte at a time until you get an IO Exception.
It's deficiencies like this (And the ~50MB VM overhead) that make Java a poor choice for system programming tasks, but the robustness of the language design itself could be so easily changed to address these issues. The fact that it hasn't and that all of these issues have been around for over half a decade lead me to believe that Sun isn't really serious about the language and probably shouldn't be in charge of the standard, either.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
I don't remember seeing anything in the GPL that says it can't share disk space with non-GPL binaries.
Is this what is meant by "choice"?
Saying Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
If you really don't care, why are you posting here? Me thinks secretly you must care a lot.
Why do you care what he cares? Furthermore, how can you justify Java on Linux? Java isn't needed, it's not Free or open source, and compiling it is a pain in the ass. Why should Linux users use a proprietary language born out of a greedy corporation when there are better FOSS alternatives available?
One of the best traits about java is the fact that there is a wide variety of standardized core libraries that are consistant with the JRE version. Anytime I have to install a perl script I cringe at having to install a ton of random libraries through CPAN.
Installing Java on Linux is easy as pie. Try installing it on OpenBSD....
I've never really understood why Sun doesn't just dual-license the Java VM and libraries like it does with OpenOffice. This would allow Linux distributions to include both the JDK and JRE and wouldn't preclude commercial developments. This wouldn't be that different from what Trolltech does with Qt. With Qt, this limits commercial KDE development, but Java already enjoys strong commercial support. If they GPL'd (not LGPL) the JDK, they would open doors to the Open Source community while still supporting their commercial contracts.
I wouldn't think that forks would be a big problem either, as everyone would likely stick to Sun's JDK by default. I certainly haven't run into IBM's JVM very often and one needs to look no further than Mozilla, OpenOffice.org and Qt for evidence that dual-licensing doesn't necessarily lead to uncontrolled forks.
The truly bizarre thing to me is that this hasn't already happened. It's not like Sun is trying to keep Java sources secret. They've already exposed them to the world with their fairly liberal research license.
Mayber things will change. I'm reminded of Eric Sink's comment on Slashdot years ago regarding open sourcing OOo:
"The only glimmer of hope has been Sun, which seems to have a practice of being smart during the even-numbered years and downright silly during the odd-numbered ones."
Developers requires the JSE (Java Standard Environment, formerly J2SE) to build Java applications and the Server VM for better performance with long running and numerically intensive code (including best performance with games).
Many Linux users and developers expect to be able to build applications and run them at optimum speed. This is like being able to distribute Linux so long as you don't distribute gcc.
Hopefully you're not using OpenOffice or Firefox then.
If that's his plan, I'd expect to end up with something like Mac OS: easy to use, but no freedom to modify or redistribute. Except that apparently it's not going well for them, because Slackware is known for being *hard* to use. Sounds like the worst of both worlds, to me.
.NET) I fully expect Mono to be the superior development environment. Because it's open-source (and has been for a while), there are all kinds of bindings, which mean people actually use it.
In the meantime, Debian/Ubuntu (and others) have been pushing free software, which we're both free to distribute and free to improve. So we have image viewers that are far better that xv, and (though I no longer program in Java or
For example, the GNOME project is also about making things that "just work", and there are lots of projects for GNOME apps that use Mono. I don't know any Java GNOME projects. This is a release of desperation for Sun.
I read the summary, I also read your message if you truly don't care why are you still reading the thread? I mean if you read the summary and don't care why post? But if you want an answer to your question, I guess the people who care are the ones posting.
Me thinks you care even more now.
Who cares? I can see the Windows source code if I sign the right NDAs. That's doesn't mean that I can actually do anything with it, though.
Dewey, what part of this looks like authorities should be involved?
OpenOffice is probably the only Java-dependent app. that I actually use, and you can get away with not installing Java for it. Really, Java is not a necessity, anymore than Flash is. It is moderately useful for developing server software, but on the client side it is big, bloated, slow, and worthless in a *nix environment where C/C++ code can be compiled on the target system with few worries. It might have some use on Windows, but even that is so-so with .NET out there (and, as sorry as I am to admit it, .NET is faster than Java). Unless Sun comes up with something completely amazing, Java will remain relegated to servers and cell phones.
This must be your lucky day. Sun has an RPM package for download; the self-installer generates the .rpm file.
Summary implies that Java is important, and that bundling it will benefit me:
I say that I don't find the issue cited in the summary to be a problem:and hint that I'd like to know why it is:Moron comes along and focuses entirely on the title of my post, simultaneously missing its meaning completely:I post a final explanation to hopefully shut said moron up (this bit is new!):... but it's real hard to get good speed with your foot caught in this damned Java trap!
I wish all these Java libraries worked like the way CPAN does.
Do you mean you wish Java libraries worked like CPAN, in the way Maven and its automatic library repository works or in the way the JPackage repository works?
Several distributions already have Java bundled. SUSE has it on the boxed set. If you do not have the boxed set, it is very easy to add as an installation source.
10.1 will have it on the DVD as well as on a seperate CD, where also other non-OSS stuff is, like Opera and Realplayer.
http://en.opensuse.org/Media_layout
Not being OSS does not mean it is not distributable. Oh and 10.1 will be out May 11th.
Don't fight for your country, if your country does not fight for you.
probably something like "This license sux shite."
Slackware has bundled java for years. Why didn't anyone else? Is/was it illegal?
Open Source Java Web Forum with LDAP authentication
It's nice that they've made this move, but I don't see how this really changes much. The server side guys never had a problem with downloading Java. I can only assume that this is a move for the desktop.
The problem (as I see it), is that it's too late for any kind of java desktop resurgence. How come Sun never produced any kind of Java Gnome/Gtk+ apps? They do employee Gnome contributors and Gnome is their desktop. Oh right....Swing is enough for everyone,*rollseyes*. Maybe four years ago if they had gotten behind Java gtk+, and made this move things would be different, but much of the open source desktop developers have moved on to Ruby, Python, and Mono. And there's still a lot of development done in C/C++. Even on the server side, many people are moving to LAMP+Ruby.
So my question is what is Sun's reasoning for doing it now?
Suse addressed this with the Nvidia drivers. A small executable that fetched the main driver and installed it. Windows has also been doing the same for years. Ideology is never the issue. Giving your users the choice is.
Summary: "Big Woop"
"They don't have to open source it. They need to stop requiring that it be downloaded directly from their servers and that the user view and affirmatively accept the license for every installation."
Hehe. That's funny. I've downloaded GPL software for Windows, and I had to agree to the GPL before installation.
BTW Look up "Java Web Start".
like, say, K-MENU [click] System [click] Adept [click] [wait half a second] [type password] [enter] [wait 5 seconds] hmmm... [click on search box] j2 [wait a second] [click on j2re entry on the grid] Install package [click] Apply changes [click] [wait 30 seconds] ???
It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
Users never care about languages. They care about applications that make a computer a usefull asset. Currently, I am in the (slow) process of writing an open source Java binary newsreader. Maybe you would care about that. Azureus, the popular bittorrent client is written in Java. Maybe you need that. And maybe you would want to install an application server to serve a nice Java application, although the PHP market seems to be bigger than the Java market for such applications for now.
Java is used a *lot* by enterprise customers to write very stable systems, with a web-front end or without. Linux is still used a lot as an enterprise system. Easier, or default installs would certainly help a lot. Currently, even if there is Java installed, the version is too old most of the time in my experience.
There's hardly any inconsistencies on that page. The only ones that are inconsistencies are simply methods in the JRE that don't follow the string case conventions. Wow. People still type method names (and not code-completion)? ;-)
The rest of the things are simply "gotchas" (the title of the page) that might catch you out coming from another language. And most of them are desirable, just confusing if you're a newbie to the language.
And the "over-design" is what makes it very very secure. When was the last time you heard of a buffer-overrun hack in a java app? That's one of the main aims of the JRE.
Sun provides an open spec (actually multiple specs).
Sun's specs are not open: you view them under license (the fact that you easily miss that fact makes it worse), and Sun has patents on some key Java implementation related technologies.
There are open source implementations of the spec.
That's wrong, too. According to Sun, only Sun can determine who has implemented the specs, and Sun has not certified any of the open source implementations as implementing the specs. So, therefore, there is no open source implementation of the entire J2SE spec.
Right now, it is likely that Sun would have an excellent case shutting down any reasonably complete open source attempt at a Java implementation if they wanted to, simply through their licensing requirements and their patent portfolio.
As a practical matter, the open source implementations simply don't work well enough to be a drop-in replacement for any recent Sun J2SE or J2EE implementation, in part because the specs are so poorly written that Sun's implementation defines the standard, not the spec.
We want multiple competing implementations, both open and proprietary.
We do. Unfortunately, Sun effectively killed all the competing commercial implementations, and there are no full open source implementations of the Java platform.
Open source Java is to Sun Java roughly like Wine is to Microsoft Windows: it will never be a solution you can rely on, both for legal reasons and for technical reasons.
For those of us running Linux or *BSD systems, having the package manager actually, um, manage packages is a major win. And every last damned exception to the rule is one that an admin should make very, very, very grudgingly.
Why? Let me count the ways:
All these are reasons why on a typical Debian box of mine, with 1500 - 2500 packages installed, the third-party (let alone proprietary) packages are virtually always limited to a mere handful, often of the Skil Saw variety (short a few fingers).
The interactions between licensing, community, package management, trust, security, and maintainability are deep, difficult to grok, and profound. But they matter very significantly, and a number of us are very much aware both of this fact and for the reasons why.
All that said: I have installed Sun's Java packages. Each time I have to look up the currently preferred system, track down the correct download files on Sun's site (no mean feat of itself), download, unpack, assess scripts and READMEs, try to figure out where the damned thing will go, and whether or not I can get rid of it. Then I try to run the installer and pray I haven't just shot myself in the foot.
By contrast, managed software is a matter of: search for it (apt-cache search), view th
If they license Java under the GPL, they have to decide: can you run non-GPL'ed software on top of it or not. If you can't, then it's a pointless exercise. If you can, then what happened with XFree86/X.org will likely happen: development will be taken over by a body that's better at that sort of thing than Sun.
Sun is terribly afraid of that. Why? Because Java is the only thing they're doing that makes them relevant and noticeable at all; as soon as they lose their grip on Java, they'll just be forgotten and disappear.
Or a buffer overrun in Python, Ruby, Scheme, Smalltalk, Haskell, etc. It's overdesigned because you need to wrap a DataInputStream in a BufferedInputStream in a FileInputStream in a Riddle in a Mystery in an Enigma to open a file. Did I get the order wrong? Well, I'll just have to go look it up. Like I have to look up everything in Java. Want to output a float or double rounded to 3 decimal places? Easy, just instantiate a DecimalFormat class. Now where does that live? I don't know, I can just look it up. How did I know that I needed a DecimalFormat object? I googled it. See how simple Java is? It's not overdesigned at all! All I need is a multi-hundred megabyte IDE to handle code completions for me, and the Mother Of All Drive Arrays and a payroll full of geniuses for me to discover how to do in Java what I can do in Python or C with %.3f.
Probably more in how all the worlds (coding?) problems are already solved in CPAN - the repository is HUGE and of very high class. That's why CPAN is so important, and why so many I know still use Perl for almost anything. The language itself is nice and doesn't deserve the uninformed masses crtitique - but it isn't THAT special. CPAN is.
Wow, you seem a bit upset. Why are you so upset if you don't care? Why post if you don't care?
What I don't care about is the main story,
Why post here? If you're really trying to find out how this may benefit you, instead of using the incendiary "Who cares" maybe it would be better to ask "How will this benefit me?"
"Who cares" is pretty dismissive sounding and titling your post that way is going to set the tone of your entire message and make a reader think that you're not really "open to being convinced" of anything.
Me thinks you, take yourself way to seriously.
I'll wait for you to tell me you don't care what I think.
Have a day.
P.S. It hurt my feelings when you called me a moron.
Summary: programming is hard, mkay.
This solves a nonexistent problem as far as I'm concerned. I've been installing Linux systems for about 15 years and I've *never* installed Java on one. Also, never found anything that didn't work because of it. I've yet to find a reason to even *notice* it wasn't installed until this article.
The Java "killer app" never materialized. Just like .NET-- it's trying to solve a problem that users just don't have.
Sun's problem is that they don't want something that isn't Java to take the place of Java. I think I have the solution and it works using existing laws.
All Sun have to do is register the Java name as a trademark. There are already established regulations covering the use of trademarks. Sun could licence the trademark subject to any conditions they liked, so all they have to do is impose the condition that the Java name can only be used to refer to software products that pass a suite of tests specified by Sun. The software could then be released under the GPL. The GPL is a copyright licence only, it says nothing about trademarks. Clause 7 makes the distributor responsible for ensuring compliance with other IP considerations.
If someone, i.e. Microsoft, implement an extended but incompatible "Java", they won't be allowed to call it Java. And without the recognised Java brand name, it will be all but worthless.
Je fume. Tu fumes. Nous fûmes!
As the AC said, programming is hard. Sure, some languages offer nice syntax to let you easilly read/write files. Sweet. Now couple that to any random third-party IO API, for example reading the same data over a PPP serial link. Oh, things get a little harder. By having common base stream classes, Java makes joining the dots up really easy. We don't care on the input/output format, we just deal with the datastream. And if you are programming like you are supposed to be doing (writing reusable generic code), Java is perfect for this. Someone could come along in twenty years time and create an AvianDataStream class and provided it uses the same abstract base classes, it'll work with everything else that's being written today.
Want to output a float or double rounded to 3 decimal places? Easy, just instantiate a DecimalFormat class. Now where does that live? I don't know, I can just look it up.
Look it up? You are using a strongly-typed language; get a decent IDE. Type "DecimalFo" and press ctrl-space in Eclipse. Automatically completes the name and imports the class. Any ambiguity, you get a popup box that also shows you the Javadoc for it. And unlike many other languages, you can browse/debug inside the base classes. "Looking up things" is one of the things I think it's good at.
and a payroll full of geniuses for me to discover how to do in Java what I can do in Python or C with %.3f.
And when those Python hackers leave, you lose the IP and local knowledge on whatever libraries/plugins were currently in vogue. Your current staff have to try and reverse engineer all sorts of clever tricks that they aren't familiar with. With Java, it's all standard. That's the point in the "over design". C on the other hand is really different market (java on the desktop is pretty much a non-event, whereas C dominates). Comparisons between C and Java are pointless; Java belongs with PHP/Python etc in the web-service sector.
These things just piss of novices, but if you know what you are doing, they are extremely useful and most importantly help you write good, maintainable code.
It's also unlikely that we'll see a copy of inferno shipping with java either. Although, Infernal Coffee comes pretty close.
Badass Resumes
Ubuntu Wiki: Restricted formats