Register | Sign In


Understanding through Discussion


EvC Forum active members: 60 (9209 total)
2 online now:
Newest Member: Skylink
Post Volume: Total: 919,486 Year: 6,743/9,624 Month: 83/238 Week: 0/83 Day: 0/24 Hour: 0/0


Thread  Details

Email This Thread
Newer Topic | Older Topic
  
Author Topic:   Oracle Wins Ruling Against Google Over Java APIs
Son Goku
Inactive Member


(1)
Message 16 of 67 (831049)
04-11-2018 2:53 PM
Reply to: Message 10 by Percy
04-04-2018 6:29 PM


I can't tell what you're saying here. Class files are source. Dex files are compiled Java on Android.
If it's any help, I think NoNukes is referring to the .class files, compiled from the source .java files. The .class files then contain the JVM bytecode.
Instead, there is some kind of "dex" format that Google created for technical reasons related to deployment on mobile platforms.
Basically the standard JVM is a stack-based machine, so it is quite abstracted from the underlying hardware. Dalvik on older Android systems was a register-based machine and hence closer in operation to the underlying hardware, so it was more efficient. The bytecode has to be different, since it is a different machine, hence the different file type.
Dalvik itself has been replaced by the Android Runtime, which is essentially an even more modified JVM that keeps the APIs in Dex format, but the actual method bodies are compiled into native code that is linked into the VM.

This message is a reply to:
 Message 10 by Percy, posted 04-04-2018 6:29 PM Percy has replied

Replies to this message:
 Message 17 by NoNukes, posted 04-11-2018 2:59 PM Son Goku has replied
 Message 20 by Percy, posted 04-11-2018 9:42 PM Son Goku has not replied

  
NoNukes
Inactive Member


Message 17 of 67 (831050)
04-11-2018 2:59 PM
Reply to: Message 16 by Son Goku
04-11-2018 2:53 PM


If it's any help, I think NoNukes is referring to the .class files, compiled from the source .java files.
Yep. That is exactly right.
The bytecode has to be different, since it is a different machine, hence the different file type.
Nicely explained. I was trying to avoid going into the technical reasons, but you did a great job here.

Under a government which imprisons any unjustly, the true place for a just man is also in prison. Thoreau: Civil Disobedience (1846)
"Give me your tired, your poor, your huddled masses yearning to breathe free, the wretched refuse of your teeming shore. Send these, the homeless, tempest-tossed to me, I lift my lamp beside the golden door!
We got a thousand points of light for the homeless man. We've got a kinder, gentler, machine gun hand. Neil Young, Rockin' in the Free World.
Worrying about the "browning of America" is not racism. -- Faith
I hate you all, you hate me -- Faith

This message is a reply to:
 Message 16 by Son Goku, posted 04-11-2018 2:53 PM Son Goku has replied

Replies to this message:
 Message 18 by Son Goku, posted 04-11-2018 4:17 PM NoNukes has not replied

  
Son Goku
Inactive Member


Message 18 of 67 (831069)
04-11-2018 4:17 PM
Reply to: Message 17 by NoNukes
04-11-2018 2:59 PM


Nicely explained. I was trying to avoid going into the technical reasons, but you did a great job here.
Thanks, I suspected you knew and were being brief. I've only been reading this recently. I actually found it really hard to find out exactly what the Android runtime is.

This message is a reply to:
 Message 17 by NoNukes, posted 04-11-2018 2:59 PM NoNukes has not replied

  
Percy
Member
Posts: 22947
From: New Hampshire
Joined: 12-23-2000
Member Rating: 6.9


Message 19 of 67 (831092)
04-11-2018 9:33 PM
Reply to: Message 15 by NoNukes
04-11-2018 1:57 PM


NoNukes writes:
I'm trying to understand how you're reaching your conclusions. If I were to argue your position using the provided information I would be be reduced to, "There's nothing misleading about the Java SE license because...someone on the Internet told me so."
That is not my position.
It's not your position that there's nothing misleading about the Java SE license? Those were almost your exact words in your Message 13: "I don't think there is anything misleading about the license on Java SE."
My position is that the terms of the license for SE, which is that it is free except for embedded applications and for those portions that are designated as "Commercial feature" are readily available. I did not ask anyone, I read those terms on Oracle's web page.
Why would I think you asked anyone? Anyway, that wasn't the issue I was wondering about.
Anyone, even you can find those terms with just the slightest bit of effort.
Making sure we're looking at the same thing, here's a link to the license: Oracle Binary Code License Agreement for the Java SE Platform Products and JavaFX.
I am not repeating anything that somebody told me. Your claim is erroneous.
Oh, I see why you're so ticked off - what I wrote was misunderstood. I wrote that were I to argue your position using the provided information I would be be reduced to, "There's nothing misleading about the Java SE license because...someone on the Internet told me so." What's in quotes is me trying to explain to some random person why the Java SE license isn't misleading, and you're the someone I'm referring to. In other words, I don't yet understand how you've concluded that the license isn't misleading, to the point where I could by no means explain it to anyone else.
But you cannot rely on the words "general purpose" to give you all of the details.
You don't quote it, but I think this is about the example I posed. Repeating it for context, someone writes and distributes a general purpose app called APP that includes a feature permitting the end user to purchase APP+. LMS has decided that makes APP not general purpose and that Oracle is owed money. Where is that made clear in the Java SE license?
You are going to have to look at the details.
Assuming the link I provided above is correct, where are the details that make clear that permitting the end user of APP to use it to purchase APP+ makes APP not a general purpose program?
Sorry about the misunderstanding.
--Percy

This message is a reply to:
 Message 15 by NoNukes, posted 04-11-2018 1:57 PM NoNukes has not replied

Replies to this message:
 Message 21 by PaulK, posted 04-12-2018 12:50 AM Percy has replied

  
Percy
Member
Posts: 22947
From: New Hampshire
Joined: 12-23-2000
Member Rating: 6.9


Message 20 of 67 (831093)
04-11-2018 9:42 PM
Reply to: Message 16 by Son Goku
04-11-2018 2:53 PM


Son Goku writes:
I can't tell what you're saying here. Class files are source. Dex files are compiled Java on Android.
If it's any help, I think NoNukes is referring to the .class files, compiled from the source .java files. The .class files then contain the JVM bytecode.
Yep, that helps, thanks. I'm not a Java guy and assumed the reference to class files meant files of class declarations.
--Percy

This message is a reply to:
 Message 16 by Son Goku, posted 04-11-2018 2:53 PM Son Goku has not replied

Replies to this message:
 Message 25 by NoNukes, posted 04-12-2018 12:45 PM Percy has seen this message but not replied

  
PaulK
Member
Posts: 17918
Joined: 01-10-2003
Member Rating: 6.7


Message 21 of 67 (831102)
04-12-2018 12:50 AM
Reply to: Message 19 by Percy
04-11-2018 9:33 PM


The only use of general purpose I can find in the license refers to computers, not to applications. So I don’t see how it justifies your example.
The example you quoted earlier involved using software distributed in the same package as the Java SDK - but wasn’t covered by the license, which is a different issue.
Oracle is, I think, being a bit less clear than they should be about what is covered but that isn’t the same as your complaint.

This message is a reply to:
 Message 19 by Percy, posted 04-11-2018 9:33 PM Percy has replied

Replies to this message:
 Message 22 by Percy, posted 04-12-2018 7:57 AM PaulK has replied

  
Percy
Member
Posts: 22947
From: New Hampshire
Joined: 12-23-2000
Member Rating: 6.9


Message 22 of 67 (831113)
04-12-2018 7:57 AM
Reply to: Message 21 by PaulK
04-12-2018 12:50 AM


PaulK writes:
The only use of general purpose I can find in the license refers to computers, not to applications. So I don’t see how it justifies your example.
For context here's my example again: Someone writes and distributes a general purpose app called APP that includes a feature permitting the end user to purchase APP+. LMS has decided that makes APP not general purpose and that Oracle is owed money.
It isn't entirely my example. It's constructed from information provided in the article Oracle finally targets Java non-payers — six years after plucking Sun:
quote:
The moment you start to deliver something that lets end users obtain products and services after your Java SE app has been distributed, your software stops being general purpose — and that’s something more organisations are using such apps for.
So extending your argument, if the license agreement doesn't define general purpose programs, only general purpose computers, how can their LMS (License Management Services) division decide that some program is not general purpose (something not defined in the license agreement) and that on that basis Oracle is owed money.
The example you quoted earlier involved using software distributed in the same package as the Java SDK - but wasn’t covered by the license, which is a different issue.
I'm not following - why isn't the software in the example covered by the license? Or are you referring to a different example in an earlier message? If you're referring to the current example then LMS sure thinks it is covered by the license. Are we maybe looking at the wrong license? I'm looking at Oracle Binary Code License Agreement for the Java SE Platform Products and JavaFX.
Oracle is, I think, being a bit less clear than they should be about what is covered but that isn’t the same as your complaint.
Yes, I agree that Oracle is being "a bit less clear than they should be," to the point of being misleading and even beyond that. I think someone challenging the LMS "that's not a general purpose program" claims in court along the lines of my example (in other words, claims based on what the program does rather than on whether it uses any commercial portions of the Java distribution) would have a good chance of winning.
--Percy
Edited by Percy, : Fix link.

This message is a reply to:
 Message 21 by PaulK, posted 04-12-2018 12:50 AM PaulK has replied

Replies to this message:
 Message 23 by PaulK, posted 04-12-2018 8:15 AM Percy has replied

  
PaulK
Member
Posts: 17918
Joined: 01-10-2003
Member Rating: 6.7


Message 23 of 67 (831114)
04-12-2018 8:15 AM
Reply to: Message 22 by Percy
04-12-2018 7:57 AM


The article is a bit vague, but it seems to agree with what I said, although perhaps it, too is less clear than it should be.
Java SE is free for what Oracle defines as general purpose computing — devices that in the words of its licence cover desktops, notebooks, smartphones and tablets. It is not free for what Oracle’s licence defines as specialized embedded computers used in intelligent systems, which Oracle further defines as — among other things — mobile phones, handheld devices, networking switches and Blu-Ray players.
And
You only become a designated user of, say, Java SE Suite, when you enable the necessary bits associated with that package — and then you pay accordingly. If you switch on features, deliberately or accidentally, and then forget about them or no longer need them, you may end up with a bill from Oracle you didn't expect.
For example, if you want to roll out Java SE in a big deployment, as you would following the development of your app, you’ll need Microsoft Windows Installer Enterprise JRE Installer — and that’s not part of the free Java SE.
It does make the assertion that selling extra services through a Java application is somehow charged for, but the justification isn’t clearly explained. It surely doesn’t turn an ordinary desktop PC into any of the dedicated devices they describe.

This message is a reply to:
 Message 22 by Percy, posted 04-12-2018 7:57 AM Percy has replied

Replies to this message:
 Message 24 by Percy, posted 04-12-2018 9:03 AM PaulK has replied

  
Percy
Member
Posts: 22947
From: New Hampshire
Joined: 12-23-2000
Member Rating: 6.9


Message 24 of 67 (831117)
04-12-2018 9:03 AM
Reply to: Message 23 by PaulK
04-12-2018 8:15 AM


PaulK writes:
The article is a bit vague, but it seems to agree with what I said, although perhaps it, too is less clear than it should be.
Actually, I thought the parts you quoted were pretty clear, and the article was also clear that the Java license was clear on these points, instead stressing how easy it was to go astray, for instance by enabling features during development that aren't used in the final product but which no one remembers to turn off.
It was actually this part I was concerned about, and I thought it was pretty clear, too:
quote:
The moment you start to deliver something that lets end users obtain products and services after your Java SE app has been distributed, your software stops being general purpose — and that’s something more organisations are using such apps for.
And you comment on it:
It does make the assertion that selling extra services through a Java application is somehow charged for, but the justification isn’t clearly explained. It surely doesn’t turn an ordinary desktop PC into any of the dedicated devices they describe.
Right. That's why I at first called the Java license misleading. After going back and forth a bit with NoNukes on this I've looked at the license a couple additional times, and now I'd strengthen my statement by saying that this scenario is definitely not ruled out by license agreement, and Oracle has no right to bill Java users for it. I think such customers would win in court, so Oracle would want to avoid court challenges. That might explain why in a case described in the article the amount Oracle charged was reduced from $100,000 to $30,000. For $100,000 a company might go to court, but for $30,000 they might just pay it.
--Percy

This message is a reply to:
 Message 23 by PaulK, posted 04-12-2018 8:15 AM PaulK has replied

Replies to this message:
 Message 26 by PaulK, posted 04-12-2018 1:30 PM Percy has seen this message but not replied

  
NoNukes
Inactive Member


Message 25 of 67 (831126)
04-12-2018 12:45 PM
Reply to: Message 20 by Percy
04-11-2018 9:42 PM


I could have been more clear, but I thought that the use of scare quotes around "class" along with the comparison to "dex" files was sufficient to point to something that Google was doing differently from what the typical Java programmer does. The rest of Son Goku's explanation about the technical reasons why Google deviated from what they were freely allowed to do was equally spot on.
To make this more about my personal experience, I don't frequently bump into Java restrictions that require money or that are otherwise restricted. I believe that my experience is typical. Obviously there are lots of folks programming in specific arenas who have different experiences. But for those folks, I suggest that there is plenty of readily available information to steer you in the right direction. I would further suggest that your personal experience as a person not familiar with Java is not representative.
I'll also note that Android does not involve Java SE, so the issue is not relevant in that arena.

Under a government which imprisons any unjustly, the true place for a just man is also in prison. Thoreau: Civil Disobedience (1846)
"Give me your tired, your poor, your huddled masses yearning to breathe free, the wretched refuse of your teeming shore. Send these, the homeless, tempest-tossed to me, I lift my lamp beside the golden door!
We got a thousand points of light for the homeless man. We've got a kinder, gentler, machine gun hand. Neil Young, Rockin' in the Free World.
Worrying about the "browning of America" is not racism. -- Faith
I hate you all, you hate me -- Faith

This message is a reply to:
 Message 20 by Percy, posted 04-11-2018 9:42 PM Percy has seen this message but not replied

  
PaulK
Member
Posts: 17918
Joined: 01-10-2003
Member Rating: 6.7


(1)
Message 26 of 67 (831129)
04-12-2018 1:30 PM
Reply to: Message 24 by Percy
04-12-2018 9:03 AM


The problem is that so far as I can see adding the option to buy more services doesn’t in itself trigger the general purpose clause. That applies to the computer, not the application. The assertion that Oracle is asserting otherwise - even though it is Oracle - looks rather questionable in that light. Which is why I’d like to see the reasoning behind the argument.

This message is a reply to:
 Message 24 by Percy, posted 04-12-2018 9:03 AM Percy has seen this message but not replied

  
Percy
Member
Posts: 22947
From: New Hampshire
Joined: 12-23-2000
Member Rating: 6.9


Message 27 of 67 (849329)
03-06-2019 9:03 AM


Oracle Further Monetizing Java
This Oracle announcement states that Java will be free for personal use through "at least the end of 2020," but starting this year corporate customers will have to purchase a license. For them no part of Java will be free. I couldn't find definitive cost details online. I found articles, but no consistent picture emerged.
My guess is that end users will never be asked to pay for Java, because it would be too big a discouragement from purchasing products that use Java and would gradually kill Java off. Substitutes would rush to fill the space, perhaps a version of Swift.
--Percy

Replies to this message:
 Message 28 by PaulK, posted 03-06-2019 9:32 AM Percy has replied

  
PaulK
Member
Posts: 17918
Joined: 01-10-2003
Member Rating: 6.7


Message 28 of 67 (849330)
03-06-2019 9:32 AM
Reply to: Message 27 by Percy
03-06-2019 9:03 AM


Re: Oracle Further Monetizing Java
I think that a lot of developers will use the free OpenJDK instead of Oracle’s version.

This message is a reply to:
 Message 27 by Percy, posted 03-06-2019 9:03 AM Percy has replied

Replies to this message:
 Message 29 by Percy, posted 03-06-2019 7:58 PM PaulK has replied

  
Percy
Member
Posts: 22947
From: New Hampshire
Joined: 12-23-2000
Member Rating: 6.9


Message 29 of 67 (849345)
03-06-2019 7:58 PM
Reply to: Message 28 by PaulK
03-06-2019 9:32 AM


Re: Oracle Further Monetizing Java
Oracle seems intent on monetizing Java. Any effort they spend on OpenJDK is, in effect, working at cross purposes against themselves. Why would they do that? In fact, hasn't Oracle already stopped supporting OpenJDK: The future of Java and OpenJDK updates without Oracle support
It seems to me (though poking about the web I sense little agreement with me) that Oracle plans to turn OpenJDK into a poor stepchild that over time will gradually diverge significantly from their own Java in both quality and capability. Is the Java community, though huge, sufficiently manned to maintain OpenJDK as a robust alternative? Maybe. Red Hat seemed determined, but they've been bought by IBM, so who knows.
I know you know much more about Java than I do, but my opinion is based not on Java specific things but on what happens when big companies are determined to make money on something. Oracle is avoiding being overtly malicious toward the Java community, but their intent and determination seem clear to me.
--Percy

This message is a reply to:
 Message 28 by PaulK, posted 03-06-2019 9:32 AM PaulK has replied

Replies to this message:
 Message 30 by PaulK, posted 03-07-2019 12:20 AM Percy has seen this message but not replied

  
PaulK
Member
Posts: 17918
Joined: 01-10-2003
Member Rating: 6.7


Message 30 of 67 (849359)
03-07-2019 12:20 AM
Reply to: Message 29 by Percy
03-06-2019 7:58 PM


Re: Oracle Further Monetizing Java
That’s Oracle being Oracle. They don’t exactly have a great reputation.
I’m only on the fringes of the Java community but I really haven’t seen a lot of fuss about this. Just occasional reminders that Oracle’s charges are coming. I think that there would be more fuss if OpenJDK wasn’t seen as a viable alternative.

This message is a reply to:
 Message 29 by Percy, posted 03-06-2019 7:58 PM Percy has seen this message but not replied

Replies to this message:
 Message 31 by PaulK, posted 03-07-2019 11:58 AM PaulK has not replied

  
Newer Topic | Older Topic
Jump to:


Copyright 2001-2023 by EvC Forum, All Rights Reserved

™ Version 4.2
Innovative software from Qwixotic © 2024