Jump to content

Google v. Oracle (Supreme Court Copyright Case)


TwiceHorn

Recommended Posts

Just now, TwiceHorn said:

That's a lot like my e=mc^2 analogy.  That's "algorithmic" and is not going to get much or any copyright protection.  That's a pretty easy case.

This particular one is not so easy.

I have not looked into this issue, so I'm not privy to what parts of the API are in question, but my example was designed to be as simple as possible to get the concept across.  Most API functions/methods are more complicated than a simple math calculation, but at the same time, there is generally only one optimal procedural path to manipulating the data for the desired outcome.

Link to comment
Share on other sites

5 minutes ago, Blotto said:

Lulz at some of the dinosaurs on the bench trying to wrap their minds around some of these concepts. 

What's interesting is that the Federal Circuit, the court of appeals here, is made up of judges that hear patent and trademark cases all day every day.  Copyright is not necessarily on their menu, but it comes up from time to time.  They tend to know their way around Art. 1, Section 8 and the interplay between the IP regimes.

In addition to law clerks, they have technical advisors to help them with technical issues.  A goodly number of those are CS/EE types.

Technically speaking, they are the best court in the nation to actually understand this case.

As noted previously, there are some biases there, though.

Link to comment
Share on other sites

1 minute ago, bernorange said:

I have not looked into this issue, so I'm not privy to what parts of the API are in question, but my example was designed to be as simple as possible to get the concept across.  Most API functions/methods are more complicated than a simple math calculation, but at the same time, there is generally only one optimal procedural path to manipulating the data for the desired outcome.

Understood.  And, as mentioned above, the key word there may be "optimal."  Not the only way, but one optimal way.

Link to comment
Share on other sites

7 minutes ago, bernorange said:

I tried to get a couple software (sorry, computer machine) patents.  The process has left me scarred and jaded with respect to the USPTO and the process/system.  The whole industry is a FYPM traveshamockery as far as I can tell.

You can actually in part thank Google for your difficulties in obtaining a patent for software.

Some reform was needed.  Google has taken active steps to harm our patent system and to encourage "efficient infringement," that is, infringement of patent rights without regard to the validity of their defenses:  they'd rather pay a judgment after defending than enter into a license.

Edited by TwiceHorn
Link to comment
Share on other sites

1 hour ago, TwiceHorn said:

Um ok.  Substance is welcome at any time.

So, back in the day when John Mackovic was our head coach and I was teaching Computer Science, we would give the class individual assignments to implement an API. They were all using the same language, they were all in the same course, and everyone had to do their assignment individually and get the correct response according to a spec. These were necessarily small bits of code. Then, to weed out the folks who had copied each other's work, we would run duplicate detection code on both line-by-line comparisons of source code and the compiled output.

Now, if what you were saying here was even remotely true, the number of false positives from this exercise would have made the entire exercise pointless. But that's not what happened. What happened was that we would catch cheaters when the results were... oh, 70%+ or higher. We almost never saw a result of 100%, even on the compiled output, even when actual cheating had taken place.

Certainly there are languages more inclined to generate false positives than others. But in implementing a programming languages' API for a small mobile device's system, you're going to be using C or C++ (like we were using in that class, then).

That is just one example, but I think it's the most profound and demonstrates the most clearly how completely and utterly divorced from anything even resembling reality your statement is. Even within an academic scenario where you have students in the same class given an identical assignment (and with templated code to fill in, no less), you end up with wildly different correct answers.

In the realm of the actual professional programming, an API Spec has FAR more leeway in the implementation side than what we were giving our students. So what you're saying is absolute and utter gibberish. It's garbage. It's nonsense. And you need to shut the fuck up and stop spreading this nonsense, even if you're too dumb to correct your own beliefs, so that others are not poisoned by the stupidity of such an idea.

  • Hook 'Em 1
Link to comment
Share on other sites

1 hour ago, blacklab said:

 

Rimbo is correct. This is more of a "aggy vs ou game" that you root for a meteor rather than someone actually winning.

I was thinking more like the 2016 election, where both sides are detestable, but one side is arguably (NoCloakRoom) much more damaging to the nation and Democracy than the other. If Aggy and OU play each other, the only outcome that doesn't pose a downside is if they end the game tied 0-0, VTech/WF style.

 

Link to comment
Share on other sites

2 minutes ago, Rimbo said:

So, back in the day when John Mackovic was our head coach and I was teaching Computer Science, we would give the class individual assignments to implement an API. They were all using the same language, they were all in the same course, and everyone had to do their assignment individually and get the correct response according to a spec. These were necessarily small bits of code. Then, to weed out the folks who had copied each other's work, we would run duplicate detection code on both line-by-line comparisons of source code and the compiled output.

Now, if what you were saying here was even remotely true, the number of false positives from this exercise would have made the entire exercise pointless. But that's not what happened. What happened was that we would catch cheaters when the results were... oh, 70%+ or higher. We almost never saw a result of 100%, even on the compiled output, even when actual cheating had taken place.

Certainly there are languages more inclined to generate false positives than others. But in implementing a programming languages' API for a small mobile device's system, you're going to be using C or C++ (like we were using in that class, then).

That is just one example, but I think it's the most profound and demonstrates the most clearly how completely and utterly divorced from anything even resembling reality your statement is. Even within an academic scenario where you have students in the same class given an identical assignment (and with templated code to fill in, no less), you end up with wildly different correct answers.

In the realm of the actual professional programming, an API Spec has FAR more leeway in the implementation side than what we were giving our students. So what you're saying is absolute and utter gibberish. It's garbage. It's nonsense. And you need to shut the fuck up and stop spreading this nonsense, even if you're too dumb to correct your own beliefs, so that others are not poisoned by the stupidity of such an idea.

Great.  I see your point.  Copying code does not result in identity.

Now do copyright law.

Link to comment
Share on other sites

Just now, TwiceHorn said:

Great.  I see your point.  Copying code does not result in identity.

No, you don't see my point. In fact, if that's got from it, then I'm not sure you are even educatable on the point, and any attempt at substance is a waste of time. 

Link to comment
Share on other sites

2 minutes ago, TwiceHorn said:

Right.  But if code could be written that accomplishes the same thing without copying, that undercuts the idea that the code is not copyrightable.

Well it's more that their artifact they are copyrighting is not intrinsically creative - it's something that is deterministic by nature. The nature of an API is such that it is a technologic contract. It is well defined, and has defined inputs and outputs. Oracles chief beef is that Google copied their inputs/outputs schema for linking to the underlying functionality of a fundamental math function like max() or sum(), etc. 

Should it be possible for an entity to own the very idea of exchanging specific pieces of information for another specific piece of information? That's what this boils down to in my view. 

Link to comment
Share on other sites

Just now, TwiceHorn said:

This is laughable.

Copyright law.  Do it if you can.

First off, unlike you, I know enough about copyright law to know I'm out of my element on the topic.

You, on the other hand, are so far removed from knowing what you're talking about on fundamental basics of what software is that you can't even recognize that you're espousing utter nonsense.

You know less about this than I did in 5th grade.

Link to comment
Share on other sites

Just now, Rimbo said:

First off, unlike you, I know enough about copyright law to know I'm out of my element on the topic.

You, on the other hand, are so far removed from knowing what you're talking about on fundamental basics of what software is that you can't even recognize that you're espousing utter nonsense.

You know less about this than I did in 5th grade.

In case you hadn't noticed, this thread is about copyright law.  My statement was in the context of copyright law, not in the broad context of computer science or programming.

Your post above indicates that there are "many correct answers" to the problem of programming APIs.  I accept the truth of this proposition.

And, in the context of copyright law, if there are multiple correct answers to a problem, that indicates that ONE of the correct answers may be copyrightable.

Link to comment
Share on other sites

4 minutes ago, Captainant said:

Well it's more that their artifact they are copyrighting is not intrinsically creative - it's something that is deterministic by nature. The nature of an API is such that it is a technologic contract. It is well defined, and has defined inputs and outputs. Oracles chief beef is that Google copied their inputs/outputs schema for linking to the underlying functionality of a fundamental math function like max() or sum(), etc. 

Should it be possible for an entity to own the very idea of exchanging specific pieces of information for another specific piece of information? That's what this boils down to in my view. 

I get what you're saying.  But this case does not decide the bolded.

It decides whether Google's copying of parts of Sun/Oracle's code is infringement or not, which includes the question whether the copied parts are sufficiently creative as to be copyrightable.

Link to comment
Share on other sites

Just now, TwiceHorn said:

Right.  But if code could be written that accomplishes the same thing without copying, that undercuts the idea that the code is not copyrightable.

A couple of points (perhaps my earlier post failed to clarify):

- Code can be developed independently (ie. NOT copying) that, at a high level (conceptually/procedurally) is the same.  This is in fact likely if the scope of the code is simple or small in nature.  For larger, more complex API functions/methods, there is a higher likelyhood that the code will contain variances (doing some things differently or in a different order for example).

- Code that is the same at a high level (conceptually/procedurally) can be different at a low level (actual machine code could have slight differences or look like completely different animals).  Changing the op code order, use of registries, etc. could make one set of code functionally the same, but literally (and asthetically) completely different.

I'm assuming (because I haven't looked into the details) that Oracle is asserting that Google's code is "a copy" at a high level and not the machine code level.  A copy at the machine code level for a significant portion of the JAVA API would seem extremely unlikely to me.

 

  • Hook 'Em 1
Link to comment
Share on other sites

5 minutes ago, Rimbo said:

First off, unlike you, I know enough about copyright law to know I'm out of my element on the topic.

You, on the other hand, are so far removed from knowing what you're talking about on fundamental basics of what software is that you can't even recognize that you're espousing utter nonsense.

You know less about this than I did in 5th grade.

 

Link to comment
Share on other sites

1 minute ago, bernorange said:

- Code can be developed independently (ie. NOT copying) that, at a high level (conceptually/procedurally) is the same.  This is in fact likely if the scope of the code is simple or small in nature.  ...

 

15 minutes ago, Rimbo said:

... We almost never saw a result of 100%, even on the compiled output, even when actual cheating had taken place. ...

I guess I was being too generous.  Real world data/experience trumps informed speculation.  Thanks Rimbo.

  • Hook 'Em 1
Link to comment
Share on other sites

12 minutes ago, TwiceHorn said:

I get what you're saying.  But this case does not decide the bolded.

It decides whether Google's copying of parts of Sun/Oracle's code is infringement or not, which includes the question whether the copied parts are sufficiently creative as to be copyrightable.

I think you're getting bit by your bias against google and the getting hung up on the word "optimal". In this case, Oracle is suing for copyright damages against google for (among other examples) copying their schema of sending two numbers to a function called max() which returns the maximum number. Could you implement it sub-optimally where you in fact have to send more information than that to function? Sure. 

But does it make technical sense to, and would any reasonable person not be able to independently come to that optimal conclusion and implementation themselves?

This is the issue. Oracle is asserting a right to own a method of packaging and transferring information. It has nothing to do with creativity or original thought, as their IP (java) is itself just an abstraction layer to the underlying hardware and OS. 

Edited by Captainant
  • Hook 'Em 1
Link to comment
Share on other sites

4 minutes ago, bernorange said:

A couple of points (perhaps my earlier post failed to clarify):

- Code can be developed independently (ie. NOT copying) that, at a high level (conceptually/procedurally) is the same.  This is in fact likely if the scope of the code is simple or small in nature.  For larger, more complex API functions/methods, there is a higher likelyhood that the code will contain variances (doing some things differently or in a different order for example).

- Code that is the same at a high level (conceptually/procedurally) can be different at a low level (actual machine code could have slight differences or look like completely different animals).  Changing the op code order, use of registries, etc. could make one set of code functionally the same, but literally (and asthetically) completely different.

I'm assuming (because I haven't looked into the details) that Oracle is asserting that Google's code is "a copy" at a high level and not the machine code level.  A copy at the machine code level for a significant portion of the JAVA API would seem extremely unlikely to me.

 

It is a verbatim copy at the source-code level.  It is difficult to impossible to assert copyright in machine code programs or routines, if not the machine code itself.

Verbatim copying of functional material is permissible if it is the ONLY way to accomplish a desired result.  And I mean ONLY, meaning no other way at all, period.  That means the functional material is essentially an idea and is not copyrightable.  

But if it is merely one way, even if a preferred or optimal way, and there are "non-copying" alternatives to accomplish the same result, then it is more likely to be copyrightable.  Where to draw that line is the subject of this case.

I haven't seen anyone assert that Google could not accomplish the result of employing Java in Android without copying what they copied, verbatim.  If that were the case, I don't think there would be this thread.

Link to comment
Share on other sites

8 minutes ago, TwiceHorn said:

In case you hadn't noticed, this thread is about copyright law.  My statement was in the context of copyright law, not in the broad context of computer science or programming.

Your post above indicates that there are "many correct answers" to the problem of programming APIs.  I accept the truth of this proposition.

And, in the context of copyright law, if there are multiple correct answers to a problem, that indicates that ONE of the correct answers may be copyrightable.

Now THIS all makes 100% sense. That's good. We're cool. The only thing that really upset me was: "there are only a few ways to write an API to use Java." That's the statement that's utter nonsense.

That's also why I'd find it extremely unlikely that Oracle really has a case here -- and also why, if Oracle wins, it would be devastating. The best comparison I can think of is the old SCO UNIX vs. IBM lawsuit over its use with Linux. SCO UNIX was making a similar claim, that Linus Torvalds literally couldn't have written the Linux kernel without ripping off copyrighted Unix code. (They used similar tools to the anti-cheating stuff I described to try and "prove" that code had been stolen.) Ironically, the "proof" failed in court because they were showing individual lines of code that were (1) constant declarations or(2) in the public domain and had, if anything, been copied from Linux into SCO Unix.

And generally you should not piss on the EFF. The EFF, while you may not agree with them politically, at least tend to understand both copyright law AND software development very well.

  • Hook 'Em 2
Link to comment
Share on other sites

4 minutes ago, Rimbo said:

Now THIS all makes 100% sense. That's good. We're cool. The only thing that really upset me was: "there are only a few ways to write an API to use Java." That's the statement that's utter nonsense.

That's also why I'd find it extremely unlikely that Oracle really has a case here -- and also why, if Oracle wins, it would be devastating. The best comparison I can think of is the old SCO UNIX vs. IBM lawsuit over its use with Linux. SCO UNIX was making a similar claim, that Linus Torvalds literally couldn't have written the Linux kernel without ripping off copyrighted Unix code. (They used similar tools to the anti-cheating stuff I described to try and "prove" that code had been stolen.) Ironically, the "proof" failed in court because they were showing individual lines of code that were (1) constant declarations or(2) in the public domain and had, if anything, been copied from Linux into SCO Unix.

And generally you should not piss on the EFF. The EFF, while you may not agree with them politically, at least tend to understand both copyright law AND software development very well.

Another good comparison is when Phoenix (I think? I'm rusty on my 80s/90s tech history) copied the OS/2 operating system in a clean room, and then sold it to compaq and other pc builders, kicking off the first home computing revolution. 

Edited by Captainant
  • Hook 'Em 1
Link to comment
Share on other sites

28 minutes ago, TwiceHorn said:

Right.  But if code could be written that accomplishes the same thing without copying, that undercuts the idea that the code is not copyrightable.

It's worth adding that the GPL requires code to be copyrightable. It's actually attempting to undermine code copyrights by doing a sort of "judo trick" on them, subverting the usual intention of copyrights. But the reality is, it has only given the idea that code is copyrightable permanence, particularly as similar copyright licenses have shown up here and there.

Link to comment
Share on other sites

2 minutes ago, Captainant said:

Another good comparison is when Phoenix (I think? I'm rusty on my 80s/90s tech history) copies the OS/2 operating system in a clean room, and then sold it to compaq and other pc builders, kicking off the first home computing revolution. 

BIOS, not OS/2. It was a copy of IBM BIOS. (OS/2 wasn't to come about for a half a decade later, and is a different part of the computer system.) But yes, same idea here.

Edited by Rimbo
  • Hook 'Em 1
Link to comment
Share on other sites

1 minute ago, TwiceHorn said:

It is a verbatim copy at the source-code level. ...

For a large subset of the JAVA API, this seems highly unlikely.  I don't know what evidence was presented to the courts, but my assumption upon diving into this thread was that the code was functionally the same and likely similar, but not a verbatim copy at the source code level.  If my assumption is correct, then what we are really talking about here is what CaptainAnt has been saying.  Oracle is trying to do an end around on patenting the design of their API.  It's not really about the code implementations.  Now if they have presented evidence that the two implementations (theirs and Googles) are indeed verbatim copies, I'd be inclined to agree that Google violated their copyright. 

  • Hook 'Em 1
Link to comment
Share on other sites

8 minutes ago, TwiceHorn said:

It is a verbatim copy at the source-code level.  It is difficult to impossible to assert copyright in machine code programs or routines, if not the machine code itself.

Verbatim copying of functional material is permissible if it is the ONLY way to accomplish a desired result.  And I mean ONLY, meaning no other way at all, period.  That means the functional material is essentially an idea and is not copyrightable.  

But if it is merely one way, even if a preferred or optimal way, and there are "non-copying" alternatives to accomplish the same result, then it is more likely to be copyrightable.  Where to draw that line is the subject of this case.

I haven't seen anyone assert that Google could not accomplish the result of employing Java in Android without copying what they copied, verbatim.  If that were the case, I don't think there would be this thread.

What I hope Oracle is asserting is that Google copied their implementation of the API. What I'm worried they're asserting is that any implementation of an API is a copyright violation, which seems to be the case. Correct me if I'm wrong here.

Put bluntly, we should NOT be able to copyright an API. That's just... wrong.

  • Hook 'Em 1
Link to comment
Share on other sites

2 minutes ago, bernorange said:

For a large subset of the JAVA API, this seems highly unlikely.  I don't know what evidence was presented to the courts, but my assumption upon diving into this thread was that the code was functionally the same and likely similar, but not a verbatim copy at the source code level.  If my assumption is correct, then what we are really talking about here is what CaptainAnt has been saying.  Oracle is trying to do an end around on patenting the design of their API.  It's not really about the code implementations.  Now if they have presented evidence that the two implementations (theirs and Googles) are indeed verbatim copies, I'd be inclined to agree that Google violated their copyright. 

6m3be.jpg

Edited by Rimbo
  • Hook 'Em 2
Link to comment
Share on other sites

This just made me flashback to the mistake I made in taking Copyright Law in law school.  Apple v. Microsoft or some such.  I just kept wondering when we were going to talk about the Beatles.  And then there was that George Harrison case, and it was super weird and complicated, too.  

Hi, my name is DCBC.  I have taken a Copyright law class and somehow passed it.  And I have blocked that part of my education from my mind.  

  • Hook 'Em 1
  • Haha 1
Link to comment
Share on other sites

Nobody tries to write suboptimal code.  That's usually a product of being lazy.

I’d disagree with that. Are you familiar with the concept of MVP that every company targets when going to market? Suboptimal code or anything else is always going to be a strategic decision.

* Not disagreeing that plenty of it is also a product of being lazy.
  • Hook 'Em 2
Link to comment
Share on other sites

3 minutes ago, SquishMitten said:


I’d disagree with that. Are you familiar with the concept of MVP that every company targets when going to market? Suboptimal code or anything else is always going to be a strategic decision.

* Not disagreeing that plenty of it is also a product of being lazy.

Every bit of bad code ever written seemed like a good idea at the time.

Link to comment
Share on other sites

17 minutes ago, Rimbo said:

What I hope Oracle is asserting is that Google copied their implementation of the API. What I'm worried they're asserting is that any implementation of an API is a copyright violation, which seems to be the case. Correct me if I'm wrong here.

Put bluntly, we should NOT be able to copyright an API. That's just... wrong.

It's Oracle.   Assume the worst.

  • Hook 'Em 1
Link to comment
Share on other sites

1 hour ago, deadshank said:

I used to shack up with a girl 10 years my younger that happened to work at Oracle.  She was a maniac.  She also never went to work.   They kept paying her and never fired her.  She quit because she was bored.  She was hot.  
 

That’s all I got.  
 

 

 

So, I'll put you down for team oracle.

 

  • Hook 'Em 1
Link to comment
Share on other sites

1 hour ago, Captainant said:

I think you're getting bit by your bias against google and the getting hung up on the word "optimal". In this case, Oracle is suing for copyright damages against google for (among other examples) copying their schema of sending two numbers to a function called max() which returns the maximum number. Could you implement it sub-optimally where you in fact have to send more information than that to function? Sure. 

But does it make technical sense to, and would any reasonable person not be able to independently come to that optimal conclusion and implementation themselves?

This is the issue. Oracle is asserting a right to own a method of packaging and transferring information. It has nothing to do with creativity or original thought, as their IP (java) is itself just an abstraction layer to the underlying hardware and OS. 

Let me back up.  I am hostile to Google, but my legal position is quite independent of that.

The question is whether any aspect of a programming interface is copyrightable. The central inquiry in whether something is copyrightable is "is it original."  An idea is not original because it exists apart from its discovery or expression and thus is not copyrightable. 

Discerning what is an idea versus what is an original expression that contains an idea is difficult.  You and many others seem to want to just declare an API to be an idea without real analysis.

A chunk of software contains ideas and may actually embody an idea.  In the case of simple math, it's pretty easy to discern whether the software is mostly expressive or just an embodiment of an idea.   In a given software language there are only a finite number of ways to express that 2 + 2 = 4.  The finiteness of that number of ways indicates that the particular way is more an idea than an original expression of that idea.   If there is only one way to express an idea, then the expression IS the idea.

Contrast this with a linguistic language.  "Four score and seven years ago  our fathers brought forth on this continent, a new nation, conceived in Liberty, and dedicated to the proposition that all men are created equal." expresses the idea of 87 years in the past a new nation was formed.  But it is one of hundreds of ways to state that notion, so it is expressive and entitled to copyright protection.  This is because the author made choices on which words to use, in what order, and with what punctuation, et cetera, which are all the earmarks of originality rather than an idea.

An API, and the Java API portions in question, is an uncopyrightable idea only if it is one of a small, finite number of ways to accomplish the result that it accomplishes.  The smaller the number of ways, the more likely it is to be an uncopyrightable idea.

Also, if there are hundreds of ways to implement or express an idea in software, but all but two or three of them involve hundreds of lines of code instead of a dozen and/or many more computer operations than the two or three, that indicates that maybe the two or three ways represent an idea rather than an expression.

Google seeks a ruling that an API, by its very nature, should never be considered a copyrightable original expression without regard to how it was written and how necessary it may be to accomplish a function.  Oracle simply says, no blanket rule, and our API was original, copyrightable, and copied.

So, when you say what Google copied was the "optimal" way of doing it, that implies that there were non-copying (and non-optimal) ways of doing it. And that indicates that Oracles API portions were expressive, original, and copyrightable.  Indicates, but does not completely resolve the question.

And Rimbo posts that there are dozens of ways to "skin the API cat" as it were without copying code verbatim.  That indicates that a particular API is expressive, original, and copyrightable.  Again, indicates, but does not completely resolve the question.

This is why I am focused on the availability and number of ways to accomplish the same result as the Oracle API portions copied.

There may be other ways to approach the idea/expression dichotomy, but the "alternatives" way is mostly the way it has been approached in the software context.  

Edited by TwiceHorn
Link to comment
Share on other sites

52 minutes ago, Rimbo said:

Now THIS all makes 100% sense. That's good. We're cool. The only thing that really upset me was: "there are only a few ways to write an API to use Java." That's the statement that's utter nonsense.

That's also why I'd find it extremely unlikely that Oracle really has a case here -- and also why, if Oracle wins, it would be devastating. The best comparison I can think of is the old SCO UNIX vs. IBM lawsuit over its use with Linux. SCO UNIX was making a similar claim, that Linus Torvalds literally couldn't have written the Linux kernel without ripping off copyrighted Unix code. (They used similar tools to the anti-cheating stuff I described to try and "prove" that code had been stolen.) Ironically, the "proof" failed in court because they were showing individual lines of code that were (1) constant declarations or(2) in the public domain and had, if anything, been copied from Linux into SCO Unix.

And generally you should not piss on the EFF. The EFF, while you may not agree with them politically, at least tend to understand both copyright law AND software development very well.

Cool.

My statement was nothing more than a retort to dbeasy's, it was not offered for the truth of the matter asserted.

I admit that I don't know whether Oracle's API could have easily been "designed around."  Seems like it could have been, but Google took the fast route.

The EFF is competent.  But their broad-based opposition to all IP is too broad, in my opinion.  We are all going to need IP more and more in the future to combat China and other predatory nations.

Link to comment
Share on other sites

55 minutes ago, Rimbo said:

What I hope Oracle is asserting is that Google copied their implementation of the API. What I'm worried they're asserting is that any implementation of an API is a copyright violation, which seems to be the case. Correct me if I'm wrong here.

Put bluntly, we should NOT be able to copyright an API. That's just... wrong.

As mentioned in the prior post, it is Google that is angling for a blanket rule against copyrightability of ANY API.  Oracle is just arguing that theirs is and there ought not be a blanket rule.

Google's position begs the question "when do we know it's an API and not just a library or subroutine or something."

Link to comment
Share on other sites

23 minutes ago, TwiceHorn said:

This is why I am focused on the availability and number of ways to accomplish the same result as the Oracle API portions copied.

Which is why I provided some specific examples of low-level math functions that are also encompassed in this suit. No entity should own the general idea of how you send information to a function to be processed - it's an intrinsic part of computing as a science.

You are effectively claiming that a particular deterministic solution (example: sum of an array of integers, max of an array of integers) can be copyrighted by virtue of being the first to the brass ring. 

As to your other question of "library vs API", that's very simple. A library is part of the runtime, it's loaded into the process memory space. An API is an INTERFACE for an APPLICATION to another PROGRAM (or process)

More simply put: an API a mechanism to programmatically transfer data from one context/process/memory space to another. A library is importing that functionality into your runtime natively

Edited by Captainant
  • Like 1
Link to comment
Share on other sites

22 minutes ago, TwiceHorn said:

As mentioned in the prior post, it is Google that is angling for a blanket rule against copyrightability of ANY API.  Oracle is just arguing that theirs is and there ought not be a blanket rule.

Google's position begs the question "when do we know it's an API and not just a library or subroutine or something."

From a software engineering point of view, it's obvious: An API defines an interface without defining the implementation of the interface. You can think of an API as being like blueprints or a similar spec that multiple builders of a thing have agreed upon -- like a 10mm socket; we know its size (10mm), we know that it's hexagonal, we know that it's only so deep but not too thin, etc. so that one company can make the bolt and another can make the socket and a THIRD can make the wrench. It defines where two pieces of software -- that are typically written by different individuals or organizations -- meet.

The reason Google's claim is important is because, while a 10mm socket spec is not published in the form of a tool, APIs typically are written as code. But, as code, they do nothing. If you compiled (somehow -- most modern compilers would error: "This is not completely defined; finish your work") the API part of Java, only the API definition, you would have several megabytes of source code that literally do nothing. You couldn't even run it, because there's no entry-point for the OS to say "start here." You couldn't even call them as functions, because there's no code there for them to run.

That's also kinda why Google is calling this a "Fair Use" doctrine. Because we've defined the API as code and we've determined that code is copyrightable, this must fall under fair use.

And the consequences for the entire US software industry -- if Google fails -- will be disastrous. Because everything that's been built in software  since the 1970s (even before the notion of copyrightable code first was born) depends on the idea that any implementation of an advertised API -- no matter how it's advertised -- is not a violation of the API originator's copyright.

Edited by Rimbo
  • Hook 'Em 4
  • Like 1
Link to comment
Share on other sites

20 minutes ago, TwiceHorn said:

I admit that I don't know whether Oracle's API could have easily been "designed around."  Seems like it could have been, but Google took the fast route.

I wouldn't call it the "fast" route as the "feasible and industry-accepted for decades" route. It's "fast" in the sense that "designing around" it would have taken a good decade... which is why nobody does it.

Quote

The EFF is competent.  But their broad-based opposition to all IP is too broad, in my opinion.  We are all going to need IP more and more in the future to combat China and other predatory nations.

 

The reality is that IP law in software is almost solely used to stifle innovation. Copyrightability doesn't really protect software in the same way that it does authorship or art; it is used to keep better products out of the market, not to protect and reward creative effort. Most software products gain their profitability not through the code they've written, but because of better distribution strategies, better data, better business strategies.

Link to comment
Share on other sites

30 minutes ago, Captainant said:

Which is why I provided some specific examples of low-level math functions that are also encompassed in this suit. No entity should own the general idea of how you send information to a function to be processed - it's an intrinsic part of computing as a science.

You are effectively claiming that a particular deterministic solution (example: sum of an array of integers, max of an array of integers) can be copyrighted by virtue of being the first to the brass ring. 

As to your other question of "library vs API", that's very simple. A library is part of the runtime, it's loaded into the process memory space. An API is an INTERFACE for an APPLICATION to another PROGRAM (or process)

More simply put: an API a mechanism to programmatically transfer data from one context/process/memory space to another. A library is importing that functionality into your runtime natively

I am not arguing at that level of specificity.

What I am arguing, though, is that an API ought to be subject to the same evaluation of its originality/copyrightabilty as any other piece of software.  Which is going to involve actually evaluating the software and the portions allegedly copied and what they do and how they do it and not just whether it is labeled "Application Programming Interface" or "programming interface," which is the actual language being used in the questions presented.

What I am arguing against is a blanket rule of non-copyrightability for pieces of software labeled API.

All software is somewhat dubiously copyrightable by its functional nature.  An API, by it's nature, is probably even more dubiously copyrightable because of its "interoperability" function.  Still, I think it should be examined individually, rather than subjected to a blanket exclusion from protection based on characteristics that it may or may not have.

In the final analysis "API" is a label.  If there is a blanket exclusion from copyright protection, you can bet your ass that a bunch of software is going to get labeled API whether the label fits or not.

Link to comment
Share on other sites

37 minutes ago, Rimbo said:

I wouldn't call it the "fast" route as the "feasible and industry-accepted for decades" route. It's "fast" in the sense that "designing around" it would have taken a good decade... which is why nobody does it.

The reality is that IP law in software is almost solely used to stifle innovation. Copyrightability doesn't really protect software in the same way that it does authorship or art; it is used to keep better products out of the market, not to protect and reward creative effort. Most software products gain their profitability not through the code they've written, but because of better distribution strategies, better data, better business strategies.

This is a solid post.

I will give you a different perspective on the bold, after I concede that IP has been used very opportunistically in the software area because its protection has been in a state of flux for the last 30 years. 

The different perspective is this:  when IP protection forces people "not to copy" something they want to copy or imitate as an expedient, they are often forced to innovate in the course of avoiding that piece of IP.  This is a well-known positive aspect of patents.

I would also add this comment.  This particular case is an example of Oracle behaving opportunistically, probably after Google behaved opportunistically, but more in line with industry practice. 

Most software publishers publish APIs in order to increase adoption and use of their software.  Until now, API's have been at least dubiously copyrightable, yet we don't see a huge glut of copyright suits claiming rights in APIs, even in the 10 years that this case has placed APIs in the crosshairs.

Fears that developers are all of a sudden going to become aggressively proprietary with their heretofore freebie APIs are seriously, seriously overblown.

A reminder that Oracle seeks the status quo, while Google seeks a new, blanket rule on the way to no IP for software period.  Don't kid yourself, this is what Google wants.

Edited by TwiceHorn
Link to comment
Share on other sites

6 minutes ago, TwiceHorn said:

This is a solid post.

I will give you a different perspective on the bold, after I concede that IP has been used very opportunistically in the software area because its protection has been in a state of flux.  The different perspective is this:  when IP protection forces people "not to copy" something they want to copy as an expedient, they are often forced to innovate in the course of avoiding that piece of IP.  This is a well-known positive aspect of patents.

Or in the case of oracle: they'll buy companies who made something innovative so they can charge licensing fees for users/customers to retain the functionality they already had. And if you try to build it yourself, they kill you with lawsuits. Java is an excellent example of this.  

Edited by Captainant
Link to comment
Share on other sites

4 minutes ago, Captainant said:

Or in the case of oracle: they'll buy companies who made something innovative so they can charge licensing fees for users/customers to retain the functionality they already had. And if you try to build it yourself, they kill you with lawsuits. Java is an excellent example of this.  

Have they filed any other lawsuits in the 10 plus years this one's been pending?

Link to comment
Share on other sites

Briefs in favor of Google's position (summaries) - https://www.project-disco.org/intellectual-property/011420-broad-support-for-google-in-the-first-round-of-supreme-court-briefing/

Quote

 

Google’s brief first argued that Oracle had no copyright interest in the declarations of the Java SE libraries under the merger doctrine. Google reused declarations from the Java SE libraries because no other option would recognize the calls used by Java developers. And because no other instructions can perform the declarations’ function, merger excludes them from copyright protection. Any other result would impermissibly convert Oracle’s copyright in the declarations’ expression into an exclusive right to the declarations’ function. This is true whether the declarations are considered individually or collectively.

Oracle’s claim would upend the well-settled understanding that the functions of earlier computer software may be reimplemented, including by reusing instructions required to replicate the commands known to the earlier product’s users. Reimplementation encourages developers to create valuable new computer software that improves on legacy products. Oracle’s copyright theory would give software companies the power to block reimplementation and to inhibit the development of new and better software.

Google then argued that even if the Court ruled that the declarations fell within the scope of copyright protection, the CAFC erred by overturning the jury’s fair use verdict. The jury was entitled to conclude that Google’s reuse of the declarations was consistent with the overarching purpose of the fair use doctrine: avoiding the rigid application of copyright that would stifle creativity. Additionally, there was sufficient evidence to support the verdict with respect to the jury’s weighing of each of the four fair use factors.

 

Briefs in favor of Oracle's position (summaries) - https://www.project-disco.org/intellectual-property/022120-thin-tech-industry-support-for-oracle/

Preview of the Supreme Court Case issues: https://www.project-disco.org/intellectual-property/092420-preview-of-supreme-court-oral-argument-in-google-v-oracle/

Quote

 

We’ll start with what the case is not about. It’s not about whether computer programs are subject to copyright protection. For forty years, it has been clear that computer programs are copyrightable. However, Oracle and its supporters misleadingly argue that Google is seeking to weaken copyright protection for all software. 

Actually, the case concerns a much narrower issue: did Google infringe copyright when it copied the links‚ÄĒthe interfaces‚ÄĒbetween different program elements? How the Court resolves this issue could affect the ability of software developers to create new programs that interact with existing programs. Because software drives such a wide range of products, the outcome of this case could have an enormous impact on competition and innovation throughout our economy.

 

 

Link to comment
Share on other sites

Whoa there.  Last few posts seem to be indicating that there isn't in fact any source code at the heart of this issue, but just the API itself.  Reporting on this issue isn't very precise, so the issue isn't very clear.

I thought this issue was about the development of independent implementations of an API.  Last few posts seem to be saying the issue is the appropriation of (part of) the actual API - it doesn't have anything to do with any implementations at all.

An API is a description (blueprint/schema) of an idea/invention (programming language/JAVA).  Ideas can't be patented or so I've been told repeatedly.  So Oracle is claiming an infringement on their description of their idea.  Seems odd - like copyrighting a patent application.

Edited by bernorange
  • Hook 'Em 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

√ó
√ó
  • Create New...