Live data from Hacker News

Google and Oracle's decade-long copyright battle reaches Supreme Court

npr.org

221–230 of 433 posts

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#221

Earlier quoted context omitted.

Perhaps the Sun engineer did indeed copy from UNIX to some mild degree The line between "inspired from" and "copied from" is a fine line indeed. When does a term stop being proprietary and enter the vernacular of a specific profession or of humanity at large? I lean rather liberal on this question, and I hope the law will too. OTOH, what is blatant theft is for your 'original' work to overlap 99%, in both names and s…

Look up the names of the functions in java.lang.Math. They are exactly the names and semantics used in the libm functions. Even down to the presence of the atan2 function which computes tan¯¹(y / x). (You could also point out that JavaScript literally lifts java.lang.Math and java.util.Date into JS code as well, down to Date.getYear returning the Gregorian year - 1900).

First, this is not a 99% blatant copy. I see things on the java side that are not in the libm side, like addExact, IEEEremainder or nextDown. I see things on the libm side that are not in the java package, like fpclassify, gamma or jN. I see things that have been adapted to match java conventions, like copySign vs copysign. The Jaccard similarity index appears to be pretty far from 1, whereas it is a perfect 1 in the case of Google. The perfect 1, up to keeping the 'java' in 'java.*', makes it a 'blatant theft' in the case of Google.

Second, unclear what the legal status of libm is. It appears to implement a standard, thus is legitimate to ask whether the set of implemented functions and their names are the original contribution of libm authors, or are derived from the standards. Generally, if one wants to implement a standard, one needs to acquire the rights to do so, usually in the form of a reasonable fee.

Third, if there are significant overlapping parts that are the creative work of libm authors, and they can establish a prior art claim, they are entitled to seek fair compensation from Sun / Oracle.

https://docs.oracle.com/javase/8/docs/api/java/lang/Math.htm...

https://sourceware.org/newlib/libm.html

PS. Re: atan2, wikipedia: 'The function atan2(y,x) first appeared in the programming language Fortran (in IBM's implementation FORTRAN-IV in 1961). It was originally intended to return a correct and unambiguous value for the angle θ in converting from cartesian coordinates (x, y) to polar coordinates (r, θ).' Perfect example of a term that arguably migrates into the common technical vocabulary over decades.

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#222
post #93

If the Supreme Court does not find in favor of Oracle, it could undermine the basis for copyright law entirely. Google copied Oracle's code. The CAFC found, correctly, that API declarations are as expressive and protectable by copyright, as any other code. Therefore, finding that the Java APIs are not covered by copyright, or that copying them was fair use, undermines copyright entirely: if the unique expression of t…

Literally everything else? That's like saying that if the table of contents and index are't copyrighted, what is? Um, the entire rest of the book?

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#223
My wish is that this case be decided clearly. Either APIs can be copyrighted, or they cannot. Either outcome has potentially good consequences, for open source in particular.

Obviously if APIs cannot be copyrighted, then a ton of open source work geared towards making things compatible remains viable. Wine is one of the most obvious, but I can think of many others. Efforts to port CUDA code to non-Nvidia hardware. A potential effort to reimplement SwiftUI. And there are many more.

On the other hand, if APIs can be copyrighted, then buyers now know that there's a single-source risk for any API that's not released under a permissive open source license. So, to continue this example, Apple has the legal right to shut down any port of code written in SwiftUI to non-Apple hardware, and similarly for CUDA. This would immediately increase interest in actually open source alternatives; Flutter already exists, a Vulkan based runtime could be developed for TensorFlow, etc.

Sadly, I think this outcome is unlikely. What's more likely is that the ruling will be specific to the facts of the case. That basically means that there won't be clear guidance that you need to run away from proprietary APIs, but also not clear guidance that you can continue to rely on open source interop projects. Rather, any time any of this gets sticky, the only way through the mess will be to pay lawyers millions of dollars. That will have the effect of making it easier for the big players to dominate the market further, and harder for independent people to play. That's very much to the advantage of those in power, so I'm pretty sure that's what we'll see.

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#224
post #49

>This is a complete dramatization. Are you copying 10k lines of code from a licensed code base into your project without permission and using it in your commercial product? To point back to the substance of the thread and Oracle's claims... Google didn't copy any of Oracle/Sun's Java source code base into Android Java. Oracle lawyers acknowledge this. Instead, Google copied the API of function name spellings and also…

> If Oracle ultimately wins, it seems like millions of programmers will have to reach for a thesaurus to find synonyms to name functions. I think you are a bit off the mark on this line. (mostly agree with the rest of your post) Google's goal was to make a white-room implementation of java that was 100% api compatible. This was explicitly to avoid licensing Java while still being Java compatible.

I don't think this is true. Google doesn't let you run java that was compiled for the JVM. They have an entirely different mechanism that is not the jvm for their java code to compile to.

All they did was port the language to a new compile target. When you port a language over you also port the standard library or at least the parts that you need. This is standard across the industry. Every language implementation does it. What Oracle is trying to say is that you need a license to do it and that is a dramatic change in the industry practice right now.

It's also short sighted. If Oracle wins then you'll need a license to implement java the language (as opposed to the JVM) anywhere. Short term Oracle get's a pile of money. Long term everyone stops using Java. But then again if you are Oracle, with it's current values, Java's only real value is short term money gains. It's hard to make money on a programming language the way Oracle prefers to operate so this may be the best they can do.

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#225

Earlier quoted context omitted.

Yes and no. Yes, Oracle was a database with a SQL API. Yes, SQL was invented by IBM. No, it wasn't copyrighted by IBM, because at the time, nobody thought you could do that.

I thought you couldn't 'copyright' something? I understood copyright to be something you had if you had created it.

Ah, brain cramp. I was thinking of patent, not copyright. Until State Street, nobody thought you could patent software, so nobody tried.

Copyright... of the top of my head, I don't recall much about copyrightability of software.

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#226
post #115

Earlier quoted context omitted.

From everything I've read, Wine would quite clearly be illegal if the court rules in favor of Oracle. I am very worried about this case.

I don't think it would be infringement. The main difference between WINE and Android is where the interoperability integration points are. WINE is using the Windows names for the purposes of allowing Windows programs to run. This is a case where a judge would easily grant fair-use because you have to use the API surface area to provide compatibility for existing programs. Android is using the Java names for the purpo…

It's not just about "developer interoperability" vs "program interoprability". Implementing Java APIs means that entire libraries can run.

Sure you might not be able to take a legacy SWING Windows Java app and run it on android, but you can run entire libraries in your android app. It absolutely _is_ about interoperability in both cases. Perhaps to varying degrees

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#227

Earlier quoted context omitted.

I thought you couldn't 'copyright' something? I understood copyright to be something you had if you had created it.

Ah, brain cramp. I was thinking of patent, not copyright. Until State Street , nobody thought you could patent software, so nobody tried. Copyright... of the top of my head, I don't recall much about copyrightability of software.

There was still controversy about software copyrightability in 1974. That said, I expect IBM still explicitly copyrighted their implementation of SQL (and licensed it [1]) as they had first started doing with some of the System/360 software during the prior decade. Note that, in 1974, you still had to explicitly copyright something; it didn't just happen automatically like today.

[1] As a side note, IBM may not have been the first to license software but they certainly helped make it a standard practice. When they unbundled much of the System/360 software, they felt that copyright was a weak protection (given its uncertain legal status) so they combined it with a license.

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#228
post #171
post #163

Earlier quoted context omitted.

AFAIK they were pretty open to some reasonable sum as they were internally fans of Google, but due to Google's arrogance the upper management relationship with them soured, then opportunistic Oracle bought them and here we are.

You mean the only company that actually made an offer to buy Sun and kept it? Google could have own Java, avoid the lawsuit and keep it Go style frozen at Java 6 instead. And given Google's history they would have killed the other products even sooner than Oracle did.

IIRC IBM was in the play as well, but yes. I guess Google didn't want to inherit all the internal late-SUN problems so they passed on a chance to own it. Now Google had to switch to an alternate strategy utilizing JetBrains for Android.

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#229
post #185
post #118

Earlier quoted context omitted.

You don't just dynamically link a library. You link it and then use its API , it's precisely the using of the API that creates the derivative work (if you accept FSF's position). I don't see how e.g. calling dlopen() on its own but not using the API could create a derivative work any more than calling fopen() does.

The original case for RMS when he created the position for dynamically linked libraries where when apple created an GCC version that had a Objective-C frontend. RMS initially did not think this would be covered by copyright but after talking with the lawyer Eben Moglen he got the following explanation: A judge would unlikely see it as an objective-C fronted as an independent work that is talking with GCC, but rather…

hmm. I had a discussion about dynamic linking with Eben years ago, and my memory (hazy as it might be) what that he implied that it was coming from the FSF, not from him (at least the libreadline argument). But as I said, this was a long time ago. (probably 15 years at least).

Apple could have decided it wasn't worth the fight, i.e. the benefits of thei front end being GPLd or not being GPLd in the end made no difference, so no reason to fight it.

Re: Google and Oracle's decade-long copyright battle reaches Supreme Court

#230

Earlier quoted context omitted.

> If Oracle ultimately wins, it seems like millions of programmers will have to reach for a thesaurus to find synonyms to name functions. We'll have to waste brain cycles coming up and alternative spellings of methods to stay away from copyright infringement. It's worse than that isn't it? Naming is how you link things. What happens to WINE if it is illegal to use the same names Kernel32 does?

From everything I've read, Wine would quite clearly be illegal if the court rules in favor of Oracle. I am very worried about this case.

Wine makes programs written for Windows work on Linux. The key difference is that Linux is an independently developed system. The extent that wine copies Windows code is limited to a compatability layer. It doesn't transform Linux into just a copy of Windows.

In contrast, Google didn't have their own independently developed programming language. They needed one so they copied the Java api and created one from there. They did not use the Api to create a compatability layer. It was used as a starting point to make their own copy of Java.

Post reply on HN