Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Kiwi Ghost Chips
Feb 19, 2011

Start using the best desktop environment now!
Choose KDE!

The only files Google copy and pasted were rangeCheck and those test files, and they stipulated to damages of $0 for those. The function declarations were the same but of course they have to be for Java.

Adbot
ADBOT LOVES YOU

Allaniis
Jan 22, 2011
I'm not surprised the Fed Cir reversed and found APIs copyrightable; the bar for copyright is really low. District Court's higher standard went against all prior case law.

Paul MaudDib
May 3, 2006

TEAM NVIDIA:
FORUM POLICE

Allaniis posted:

I'm not surprised the Fed Cir reversed and found APIs copyrightable; the bar for copyright is really low. District Court's higher standard went against all prior case law.

I wouldn't say all prior case law. For example, clean-room reimplementations have long been considered non-infringing. The cleanroom process consists of one team of engineers who translate a program from code into specifications (which apparently is now independently copyrightable) and another team of engineers who re-translate the specifications back into an independent implementation of code.

quote:

A famous example of reverse-engineering involves San Jose-based Phoenix Technologies Ltd., which in the mid-1980s wanted to produce a BIOS for PCs that would be compatible with the IBM PC's proprietary BIOS. (A BIOS is a program stored in firmware that's run when a PC starts up; see Technology QuickStudy, June 25.)

To protect against charges of having simply (and illegally) copied IBM's BIOS, Phoenix reverse-engineered it using what's called a "clean room," or "Chinese wall," approach. First, a team of engineers studied the IBM BIOS—about 8KB of code—and described everything it did as completely as possible without using or referencing any actual code. Then Phoenix brought in a second team of programmers who had no prior knowledge of the IBM BIOS and had never seen its code. Working only from the first team's functional specifications, the second team wrote a new BIOS that operated as specified.
http://www.computerworld.com/s/article/65532/Reverse_Engineering?pageNumber=1

It's impossible to do a re-implementation if the API is now copyrightable, since if you don't use the API then the rest of the system has no way to call your code.

Paul MaudDib fucked around with this message at 18:27 on May 11, 2014

Kalman
Jan 17, 2010

Paul MaudDib posted:

It's impossible to do a re-implementation if the API is now copyrightable, since if you don't use the API then the rest of the system has no way to call your code.

Unless, of course, reimplementation of the API for interoperability reasons is considered a fair use.

(Which the district court most likely will find it to be.)

APIs are now copyrightable in the same sense medical coding systems are - they're copyrightable, but only a little bit (so-called "thin" copyrights.) This is probably the right result - there is a minimum quantum of creativity required in ordering and classifying the functions.

But there is a strong public interest reason to allow for interoperable languages as fair use, and I would expect the district court to rule that way on remand (and the 9th Circuit likely to uphold it, the Federal Circuit being the circuit this went to was a weird artifact.)

ShadowHawk
Jun 25, 2000

CERTIFIED PRE OWNED TESLA OWNER
Currently, Wine determines what its version of the Windows API "should" do in two ways:

1) Reading Microsoft's own documentation of the API (MSDN), which is sometimes wrong
2) Testing how applications behave and expect to behave on Windows.


Neither seem perfectly "clean room" to me, but it's sorta long been thought both are ok. An explicit declaration of "fair use" might help, but as I understand fair use it can be taken away if there is significant commercial impact. Does this mean Wine is only "fair use" if it remains unpopular?

Mr. Nice!
Oct 13, 2005

c-spam cannot afford



Are you making money off of wine shadowhawk? Is anyone? I don't think they're going to ever have issue with something like wine because by it's nature it is non-commercial.

If you're licensing wine to almost all mobile phone manufacturers and collecting a shitton of royalties on it, it goes beyond fair use.

hobbesmaster
Jan 28, 2008

ShadowHawk posted:

Currently, Wine determines what its version of the Windows API "should" do in two ways:

1) Reading Microsoft's own documentation of the API (MSDN), which is sometimes wrong
2) Testing how applications behave and expect to behave on Windows.


Neither seem perfectly "clean room" to me, but it's sorta long been thought both are ok. An explicit declaration of "fair use" might help, but as I understand fair use it can be taken away if there is significant commercial impact. Does this mean Wine is only "fair use" if it remains unpopular?

I think they're saying copying windows.h in its entirety would be a violation of Microsoft's copyright but if you had some different formatting or names of variables or something it would not violate Microsoft's copyright?

Edit: There's certainly some commercial software out there using wine to have a Linux version.

Paul MaudDib
May 3, 2006

TEAM NVIDIA:
FORUM POLICE

Mr. Nice! posted:

Are you making money off of wine shadowhawk? Is anyone? I don't think they're going to ever have issue with something like wine because by it's nature it is non-commercial.

Yes, there is a company who makes money off of providing paid support for a custom version of WINE (in the same vein as Red Hat Linux or something like that). Their gig is essentially ensuring that specific applications (mostly office type applications) run properly inside their version of the WINE system.

http://www.codeweavers.com/

There's also Transgaming, who leverages the core WINE technology to port specific programs (mostly games) directly to Linux instead of providing a generalized emulation environment. They used to be the ones who released the commercial Cedega/WineX fork of WINE.

https://transgaming.com/company/overview

More generally you should not assume that just because software is open source that no one is making money on it. Red Hat proved long ago that there's plenty of money to be made in supporting "free" software.

Paul MaudDib fucked around with this message at 21:57 on May 11, 2014

ShadowHawk
Jun 25, 2000

CERTIFIED PRE OWNED TESLA OWNER

Mr. Nice! posted:

Are you making money off of wine shadowhawk? Is anyone? I don't think they're going to ever have issue with something like wine because by it's nature it is non-commercial.

If you're licensing wine to almost all mobile phone manufacturers and collecting a shitton of royalties on it, it goes beyond fair use.

There are quite a few commercial use cases for Wine. More broadly one could argue that Linux distributions themselves are making money off Wine, as it allows people to migrate.

And, yes, we're "licensing Wine to almost all mobile phone manufacturers", that's how free software works.

Paul MaudDib posted:

Yes, there is a company who makes money off of a custom version of Wine for which they provide paid support (in the same vein as Red Hat Linux or something like that). Their gig is essentially ensuring that specific applications (mostly office type applications) run properly inside the WINE system.

http://www.codeweavers.com/

Codeweavers is about 75% of Wine development as well. Possibly more.

Mr. Nice!
Oct 13, 2005

c-spam cannot afford



Paul MaudDib posted:

Yes, there is a company who makes money off of providing paid support for a custom version of WINE (in the same vein as Red Hat Linux or something like that). Their gig is essentially ensuring that specific applications (mostly office type applications) run properly inside the WINE system.

http://www.codeweavers.com/

That company, then, might not be able to claim fair use. For basic WINE itself, which I know shadowhawk is an actual part of the core dev group, isn't selling anything.

Mr. Nice!
Oct 13, 2005

c-spam cannot afford



ShadowHawk posted:

There are quite a few commercial use cases for Wine. More broadly one could argue that Linux distributions themselves are making money off Wine, as it allows people to migrate.

And, yes, we're "licensing Wine to almost all mobile phone manufacturers", that's how free software works.


Codeweavers is about 75% of Wine development as well. Possibly more.

You aren't licensing it to them for a fee. You aren't making money off of the licenses. That's the point I'm trying to make.

hobbesmaster
Jan 28, 2008

Mr. Nice! posted:

You aren't licensing it to them for a fee. You aren't making money off of the licenses. That's the point I'm trying to make.

How is android licensing set up anyways? I thought dalvik was all part of the AOSP which is under an apache license. Google licenses applications for their own services and their patents at least...

ShadowHawk
Jun 25, 2000

CERTIFIED PRE OWNED TESLA OWNER

hobbesmaster posted:

I think they're saying copying windows.h in its entirety would be a violation of Microsoft's copyright but if you had some different formatting or names of variables or something it would not violate Microsoft's copyright?

Edit: There's certainly some commercial software out there using wine to have a Linux version.
If we can't "use the Windows function names" (which is basically all that is in the .h files), then our version wouldn't work at all. It's part of what it means to be an API. I don't think header files were copied during development, but even a wholly independent authoring of them would have many exactly identical lines since that's the only way they can be written at all.

hobbesmaster
Jan 28, 2008

ShadowHawk posted:

If we can't "use the Windows function names" (which is basically all that is in the .h files), then our version wouldn't work at all. It's part of what it means to be an API. I don't think header files were copied during development, but even a wholly independent authoring of them would have many exactly identical lines since that's the only way they can be written at all.

You can write the headers in a different sequence.

Mr. Nice!
Oct 13, 2005

c-spam cannot afford



hobbesmaster posted:

How is android licensing set up anyways? I thought dalvik was all part of the AOSP which is under an apache license. Google licenses applications for their own services and their patents at least...

Android is open source, but in order to get the google play market and all that fun jazz, you have a bunch of restrictions. A version of their license from a couple of years ago was just released due to the current trial records.

http://arstechnica.com/gadgets/2014/02/new-android-oem-licensing-terms-leak-open-comes-with-restrictions/


ShadowHawk posted:

If we can't "use the Windows function names" (which is basically all that is in the .h files), then our version wouldn't work at all. It's part of what it means to be an API. I don't think header files were copied during development, but even a wholly independent authoring of them would have many exactly identical lines since that's the only way they can be written at all.

I'm going to double check the ruling again, but I'm pretty sure doing things in the method you described is fine.

ShadowHawk
Jun 25, 2000

CERTIFIED PRE OWNED TESLA OWNER

Mr. Nice! posted:

You aren't licensing it to them for a fee. You aren't making money off of the licenses. That's the point I'm trying to make.
Wine is a direct competitor to Windows. There is no way to distribute it that couldn't be reasonably interpreted as causing damages to Microsoft. You don't have to profit from copyright infringement to be held liable and void fair use (eg, users being sued for damages in filesharing cases)

ShadowHawk
Jun 25, 2000

CERTIFIED PRE OWNED TESLA OWNER

hobbesmaster posted:

You can write the headers in a different sequence.
I suppose that's true, though there are canonical orderings highly likely to be duplicated (namely, alphabetical).

Mr. Nice!
Oct 13, 2005

c-spam cannot afford



quote:

To achieve this result, Google copied the declaring source code from the 37 Java API packages verbatim, inserting that code into parts of its Android software.

That's from the end of page 10 to page 11. That's the crux of why what google did was wrong and what you are doing is fine. They copy and pasted things out of the java API and into their own.

EDIT:

Kiwi Ghost Chips posted:

The only files Google copy and pasted were rangeCheck and those test files, and they stipulated to damages of $0 for those. The function declarations were the same but of course they have to be for Java.

Those were whole intact files copied, but the 37 APIs at question were copied and put into various other android APIs. The source code was verbatim copied over. The trial documents say that everywhere.

Mr. Nice! fucked around with this message at 20:37 on May 11, 2014

hobbesmaster
Jan 28, 2008

ShadowHawk posted:

I suppose that's true, though there are canonical orderings highly likely to be duplicated (namely, alphabetical).

Also windows.h is completely loving crazy so I would not be surprised if everything blew up if it wasn't in the right order.

ShadowHawk
Jun 25, 2000

CERTIFIED PRE OWNED TESLA OWNER

Mr. Nice! posted:

That's from the end of page 10 to page 11. That's the crux of why what google did was wrong and what you are doing is fine. They copy and pasted things out of the java API and into their own.
Yes, but if the API itself is copyrightable (and thus verbatim copying of the definition is wrong), then we have to rely on fair use defense, which in turn is subject to a whole number of tests we might fail with various fact patterns. It would effectively make Wine illegal if it was only fair use to use it except when it was being used to run commercial software or run on a commercial system. That's the entire point of it -- the free software we've already ported.

Kalman
Jan 17, 2010

ShadowHawk posted:

Yes, but if the API itself is copyrightable (and thus verbatim copying of the definition is wrong), then we have to rely on fair use defense, which in turn is subject to a whole number of tests we might fail with various fact patterns. It would effectively make Wine illegal if it was only fair use to use it except when it was being used to run commercial software or run on a commercial system. That's the entire point of it -- the free software we've already ported.

Fair use isn't anywhere near as unpredictable as people make it out to be, though, and with a copyright as thin as the API copyright, factors like commercialization will be correspondingly less important.

KernelSlanders
May 27, 2013

Rogue operating systems on occasion spread lies and rumors about me.
Also, "making money off" is only one of the factors in determining fair use.

Chuu
Sep 11, 2004

Grimey Drawer

hobbesmaster posted:

You can write the headers in a different sequence.

If it was this trivial to get around copyright law, this case wouldn't exist.

Discendo Vox
Mar 21, 2013

We don't need to have that dialogue because it's obvious, trivial, and has already been had a thousand times.

Chuu posted:

If it was this trivial to get around copyright law, this case wouldn't exist.

It depends on the form of copyright. In some cases, this is in fact all it would take.

Discendo Vox fucked around with this message at 05:46 on May 13, 2014

Chuu
Sep 11, 2004

Grimey Drawer

Mr. Nice! posted:

Those were whole intact files copied, but the 37 APIs at question were copied and put into various other android APIs. The source code was verbatim copied over. The trial documents say that everywhere.

What? No. From ORDER RE COPYRIGHTABILITY OF CERTAIN REPLICATED ELEMENTS OF THE JAVA APPLICATION PROGRAMMING INTERFACE (pdf warning) on pg.3 lines 12-15:

quote:

Significantly, all agreed that Google had not literally copied the software but had instead come up with its own implementations of the 37 API packages. Oracle’s central claim, rather, was that Google had replicated the structure, sequence and organization of the overall code for the 37 API packages.

ShadowHawk
Jun 25, 2000

CERTIFIED PRE OWNED TESLA OWNER
Bradley Kuhn, of the Software Freedom Law Conservancy (who represent the Wine project), had an interesting take on it.


quote:

So, how did the Appeals Court come to this erroneous conclusion? On page 27 of their decision, they write: "Google conceded that it copied it verbatim. Indeed, the district court specifically instructed the jury that ‘Google agrees that it uses the same names and declarations’ in Android." Charge to the Jury at 10. So, I reread page 10 of the final charge to the jury. It actually says something much more verbose and nuanced. I've pasted together below all the parts where the Alsup's jury charge mentions this issue (emphasis mine):

Google denies infringing any such copyrighted material … Google agrees that the structure, sequence and organization of the 37 accused API packages in Android is substantially the same as the structure, sequence and organization of the corresponding 37 API packages in Java. … The copyrighted Java platform has more than 37 API packages and so does the accused Android platform. As for the 37 API packages that overlap, Google agrees that it uses the same names and declarations but contends that its line-by-line implementations are different … Google agrees that the structure, sequence and organization of the 37 accused API packages in Android is substantially the same as the structure, sequence and organization of the corresponding 37 API packages in Java. Google states, however, that the elements it has used are not infringing … With respect to the API documentation, Oracle contends Google copied the English-language comments in the registered copyrighted work and moved them over to the documentation for the 37 API packages in Android. Google agrees that there are similarities in the wording but, pointing to differences as well, denies that its documentation is a copy. Google further asserts that the similarities are largely the result of the fact that each API carries out the same functions in both systems.

Thus, in the original trial, Google did not admit to copying of any of Oracle's text, documentation or code (other than the rangeCheck thing, which is moot on the API copyrightability issue). Rather, Google said two separate things: (a) they did not copy any material (other than rangeCheck), and (b) admitted that the names and declarations are the same, not because Google copied those names and declarations from Oracle's own work, but because they perform the same functions. In other words, Google makes various arguments of why those names and declarations look the same, but for reasons other than “mundane cut-and-paste copying from Oracle's copyrighted works”.

Chuu
Sep 11, 2004

Grimey Drawer
I think the fundamental problem here is that current IP law just don't work in a world where all I need to do to create significant new inventions is type words. It's incredibly hard to argue that an API isn't covered by copyright law; but if this was enforced computing as we know it couldn't exist.

Chuu fucked around with this message at 06:41 on May 13, 2014

Mr. Nice!
Oct 13, 2005

c-spam cannot afford




I was reading from the federal circuit opinion where they state that verbatim copying of the 37 APIs was conceded by google throughout.


EDIT: from that, it looks like the only thing that was the exact same was just the function names and headers, which I agree with the lower court shouldn't be infringing. Had they done what the federal circuit claims, that is copied over the APIs verbatim, then I would have larger issue.

Mr. Nice! fucked around with this message at 09:30 on May 13, 2014

ShadowHawk
Jun 25, 2000

CERTIFIED PRE OWNED TESLA OWNER

Mr. Nice! posted:

I was reading from the federal circuit opinion where they state that verbatim copying of the 37 APIs was conceded by google throughout.


EDIT: from that, it looks like the only thing that was the exact same was just the function names and headers, which I agree with the lower court shouldn't be infringing. Had they done what the federal circuit claims, that is copied over the APIs verbatim, then I would have larger issue.
Yeah from Bradley Kuhn's piece it seems like the Appeals court may have misinterpreted Google's statements -- they weren't conceding that there was verbatim copying.

Mr. Nice!
Oct 13, 2005

c-spam cannot afford



3% of the 37 APIs matching and verbatim copying are two very different beasts. There's no way that this ruling should stand when it contains a glaring factual error.

Kalman
Jan 17, 2010

Mr. Nice! posted:

3% of the 37 APIs matching and verbatim copying are two very different beasts. There's no way that this ruling should stand when it contains a glaring factual error.

The verbatim copying was with respect to the names and organization of the functions, which Google admitted to (copying here meaning they used the same names and organization, not that they necessarily hit copy-paste.) The Fed Circuit didn't make a factual error, as much as you want them to have done so.

Mr. Nice!
Oct 13, 2005

c-spam cannot afford



Well, poo poo. I just can't read worth a gently caress. What I posted previously stated "declaring" source code copied verbatim which jives entirely with the 3% that matches perfectly from the copyright decision.

OddObserver
Apr 3, 2009

Mr. Nice! posted:

Well, poo poo. I just can't read worth a gently caress. What I posted previously stated "declaring" source code copied verbatim which jives entirely with the 3% that matches perfectly from the copyright decision.

I think we are just having a terminology disagreement here. When we computer people say "API" we normally only mean
the "declaring" part --- the "interface", with the rest (undisputably subject to copyright) being "implementation".
I think Oracle or some of the other people involved may have been using the latter usage as well.

computer parts
Nov 18, 2010

PLEASE CLAP

Chuu posted:

I think the fundamental problem here is that current IP law just don't work in a world where all I need to do to create significant new inventions is type words. It's incredibly hard to argue that an API isn't covered by copyright law; but if this was enforced computing as we know it couldn't exist.

Should books be covered under copyright then?

(or novellas, etc)

evilweasel
Aug 24, 2002

computer parts posted:

Should books be covered under copyright then?

(or novellas, etc)

Copyright is intended to cover artistic expression. Computer code is sort of shoehorned into the whole system as a "literary work", which it's clearly not. That causes some issues like we're seeing now, where rules that make sense for intellectual property for artistic expression don't mesh well with intellectual property for computer code.

It would make much, much more sense to handle copyright for computer code under a seperate intellectual property regime that's more tailored to computer code but there's no way you could get agreement on anything through Congress now: too many vested interests on all sides.

KernelSlanders
May 27, 2013

Rogue operating systems on occasion spread lies and rumors about me.

computer parts posted:

Should books be covered under copyright then?

(or novellas, etc)

Or phonebooks...

If the argument is really that the interface was similar because you need the same organization, why doesn't Feist apply? Also, I'm a bit confused by the procedural history (and what has and hasn't been conceded). Does this case represent a circuit split with the 9th in SEGA v. Accolade?

Kiwi Ghost Chips
Feb 19, 2011

Start using the best desktop environment now!
Choose KDE!

FedCirc already distinguished Accolade a long time ago. Atari Games Corp. v. Nintendo of America Inc. is closer to the current situation.

Kalman
Jan 17, 2010

KernelSlanders posted:

Or phonebooks...

If the argument is really that the interface was similar because you need the same organization, why doesn't Feist apply? Also, I'm a bit confused by the procedural history (and what has and hasn't been conceded). Does this case represent a circuit split with the 9th in SEGA v. Accolade?

Feist is different because the information copied in Feist was factual information which contained no new content and the arrangement contained no creative expression.

In contrast, the API isn't factual information because there's no inherent reason a function needs to be called java.max() and the arrangement into packages and whatnot does have creative expression (in the same way medical billing code systems do.)

KernelSlanders
May 27, 2013

Rogue operating systems on occasion spread lies and rumors about me.
Except that it's been called "max" long before Oracle came along. Why isn't whether the API arrangement contains creative expression a factual issue for the district court to resolve? I was under the impression that it did so in Google's favor.

Adbot
ADBOT LOVES YOU

hobbesmaster
Jan 28, 2008

Chuu posted:

If it was this trivial to get around copyright law, this case wouldn't exist.

It would be this trivial to get around a structure sequence and organization claim. In other words, why 37 APIs? Why not 45 or 15?

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply