Oracle lost its copyright case
Likes For tyrion:
#3
The King Member
Join Date: Jan 2010
Location: Leaving the Building
Posts: 7,153
Bikes: A Home Built All Rounder, Bianchi 928, Specialized Langster, Dahon Folder
Mentioned: 29 Post(s)
Tagged: 0 Thread(s)
Quoted: 5823 Post(s)
Liked 3,970 Times
in
2,287 Posts
Of course, this is like Cthulhu losing to Satan.
Likes For ahsposo:
Likes For tyrion:
#5
LBKA (formerly punkncat)
Join Date: Jan 2010
Location: Jawja
Posts: 4,042
Bikes: Spec Roubaix SL4, GT Traffic 1.0
Mentioned: 14 Post(s)
Tagged: 0 Thread(s)
Quoted: 1747 Post(s)
Liked 584 Times
in
406 Posts
I would not go so far as to say "screw up", but it damned sure would have made Oracle the Gatekeeper, big and rich as hell after everyone had to pay them royalties/licensing.
Likes For Juan Foote:
#7
2-Wheeled Fool
Join Date: Sep 2016
Location: New Hampshire
Posts: 2,485
Bikes: Surly Ogre, Brompton
Mentioned: 18 Post(s)
Tagged: 0 Thread(s)
Quoted: 1385 Post(s)
Liked 671 Times
in
454 Posts
I skimmed through that article long enough to realize how far it is beyond my capacity to understand. I envy you guys who live and breathe this stuff, which probably comes as easy to you as me tying my own laces. I'm glad to have people like you around to keep us straight!
#8
Senior Member
Join Date: Mar 2010
Location: Seattle, WA
Posts: 22,933
Mentioned: 80 Post(s)
Tagged: 0 Thread(s)
Quoted: 17602 Post(s)
Liked 9,514 Times
in
5,367 Posts
It really would have been bad in a lot of ways for most tires of computers including phones. We would lose a lot of flexibility and the ability of many things to work together. The rest would be more expensive. A lot of ISVs would be sued out of existence sooner or later.
#9
Senior Member
Join Date: Mar 2010
Location: Seattle, WA
Posts: 22,933
Mentioned: 80 Post(s)
Tagged: 0 Thread(s)
Quoted: 17602 Post(s)
Liked 9,514 Times
in
5,367 Posts
I skimmed through that article long enough to realize how far it is beyond my capacity to understand. I envy you guys who live and breathe this stuff, which probably comes as easy to you as me tying my own laces. I'm glad to have people like you around to keep us straight!
Likes For Seattle Forrest:
#11
Senior member
Join Date: Oct 2004
Location: Oakville Ontario
Posts: 7,836
Mentioned: 23 Post(s)
Tagged: 0 Thread(s)
Quoted: 804 Post(s)
Liked 401 Times
in
231 Posts
I skimmed through that article long enough to realize how far it is beyond my capacity to understand. I envy you guys who live and breathe this stuff, which probably comes as easy to you as me tying my own laces. I'm glad to have people like you around to keep us straight!
Likes For Dan Burkhart:
#12
2-Wheeled Fool
Join Date: Sep 2016
Location: New Hampshire
Posts: 2,485
Bikes: Surly Ogre, Brompton
Mentioned: 18 Post(s)
Tagged: 0 Thread(s)
Quoted: 1385 Post(s)
Liked 671 Times
in
454 Posts
I'm thinking that I may have become my father. What is funny, is that I'm no stranger to the world of computers. I've had some form of home computer since about 1984. My brother and I would swap programs and floppy discs, and have conversations about computers and electronic games, and my dad would sit there smoking his Luckys and taking it all in. He'd irritate me with his stupid questions, and even though I was an adult, I didnt have the ability to understand just how foreign all this was to him. He didnt have a clue then, and I don't have a clue now.
Likes For J.Higgins:
#13
Senior Member
Join Date: May 2010
Location: Bastrop Texas
Posts: 3,237
Bikes: Univega, Peu P6, Peu PR-10, Ted Williams, Peu UO-8, Peu UO-18 Mixte, Peu Dolomites
Mentioned: 5 Post(s)
Tagged: 0 Thread(s)
Quoted: 493 Post(s)
Liked 732 Times
in
482 Posts
Ha Ha... You got it... JAVA is just another buggered language. Microsoft, Google, Oricle... and the list goes on including Anderoid.
Been using Debian Linux for decades and have seen the JAVA fight go on and on... Even to the Supreme Court!
Been using Debian Linux for decades and have seen the JAVA fight go on and on... Even to the Supreme Court!
__________________
No matter where your at... There you are... Δf:=f(1/2)-f(-1/2)
#14
Senior Member
Join Date: Mar 2010
Location: Seattle, WA
Posts: 22,933
Mentioned: 80 Post(s)
Tagged: 0 Thread(s)
Quoted: 17602 Post(s)
Liked 9,514 Times
in
5,367 Posts
API = application programming interface. It's the last word that's important.
An API is the way programs allow programmers to ask the programs to do something.
If you want to display a picture on the screen, there's a lot that has to happen, and you don't have to write most of it yourself. The computer needs to get the image data from a file, from the internet, or wherever, decode the way it's stored into something that can be displayed, and show it.
An API is the way you ask the operating system to do that. The API doesn't say how to do it. How to do it is what programmers are paid to write code for. How to do it is subject to copyright. How to ask for it to be done is what's at issue here. It's a little bit like how your house is your private property and your address isn't. Your address is basically how to get to the important part.
One API might require you to carry out a task in 3 steps, and another might let you do everything with one command. If you want to display a picture, maybe you have to load the image into memory first because the API for drawing on the screen requires an image; a different API will accept a file name or url instead of the 1s and 0s that make up the image. It's just two ways of asking other software to do the same thing.
Being able to copy an API (but still having to do the work of telling the computer how to carry those tasks out) means programmers can write their programs once and they can be used in more than one context, ie their programs can work with more than just one other program. Not being able to do that means those programmers have to write code specific to each context. Which means either their software is more expensive and less innovative, it's of lower quality, or it just doesn't support as much and is less useful.
I don't know if that's any more clear or not, I hope it helps a little.
An API is the way programs allow programmers to ask the programs to do something.
If you want to display a picture on the screen, there's a lot that has to happen, and you don't have to write most of it yourself. The computer needs to get the image data from a file, from the internet, or wherever, decode the way it's stored into something that can be displayed, and show it.
An API is the way you ask the operating system to do that. The API doesn't say how to do it. How to do it is what programmers are paid to write code for. How to do it is subject to copyright. How to ask for it to be done is what's at issue here. It's a little bit like how your house is your private property and your address isn't. Your address is basically how to get to the important part.
One API might require you to carry out a task in 3 steps, and another might let you do everything with one command. If you want to display a picture, maybe you have to load the image into memory first because the API for drawing on the screen requires an image; a different API will accept a file name or url instead of the 1s and 0s that make up the image. It's just two ways of asking other software to do the same thing.
Being able to copy an API (but still having to do the work of telling the computer how to carry those tasks out) means programmers can write their programs once and they can be used in more than one context, ie their programs can work with more than just one other program. Not being able to do that means those programmers have to write code specific to each context. Which means either their software is more expensive and less innovative, it's of lower quality, or it just doesn't support as much and is less useful.
I don't know if that's any more clear or not, I hope it helps a little.
Likes For Seattle Forrest:
#15
Junior Member
I was disappointed they didn't rule that APIs aren't covered by copyright. Calling it fair use leaves it open for another round next time someone decides to use another companies API.
Likes For rwh:
#16
Keepin it Wheel
Join Date: Aug 2011
Location: San Diego
Posts: 9,857
Bikes: Surly CrossCheck, Krampus
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 22 Post(s)
Liked 2,234 Times
in
1,619 Posts
I need to read that article, I want to understand it more thoroughly, BUT, without having read it yet, the keyword is INTERFACE (the I in API).
Here's another analogy: In a car engine, the water pump or alternator, has a certain interface to the rest of the engine; bolt holes this size in these places, a mating surface this shape, hosepipes or loopbelts of such and such length that have to be at this position relative to the bolts/mating surfaces, etc.
If a non-OEM company wants to manufacture replacement water pumps or alternators for a certain engine, they are free to do so. The interface is not protected. The inner workings of the Ford or Honda or whatever specific water pump or alternator might well have patentable technology, but not the interface. And the non-OEM implementation of the device may look different in its outer shape, color, or (separately patentable!) inner workings -- all irrelevant details to whether the device conforms to the matching Interface.
Another example; you can nowadays replace fluorescent light tubes with LED tubes. They work in existing fixtures because the conform to the T4 interface; a 4-foot tube with two prongs of a certain shape/size/position on either end, which respond to a certain volate/amperage of alternating electric current. But the inside is a completely different implementation. So if somebody had a patent on fluorescent lights, or even standard T4 tubes, would these LED replacement makers be in violation of that patent just for reusing the interface? I don't think anybody would reasonably think so.
So when Oracle complains that Google 'stole' the Java API, what does that mean, that Google wrote their own implementation of Java, which can also compile and run the same Java source code that Oracle/Sun Java can? Or is this about how other languages (C++? Python? Javascript? Go?) might access Java-implemented capabilities through an inter-language interface?
Here's another analogy: In a car engine, the water pump or alternator, has a certain interface to the rest of the engine; bolt holes this size in these places, a mating surface this shape, hosepipes or loopbelts of such and such length that have to be at this position relative to the bolts/mating surfaces, etc.
If a non-OEM company wants to manufacture replacement water pumps or alternators for a certain engine, they are free to do so. The interface is not protected. The inner workings of the Ford or Honda or whatever specific water pump or alternator might well have patentable technology, but not the interface. And the non-OEM implementation of the device may look different in its outer shape, color, or (separately patentable!) inner workings -- all irrelevant details to whether the device conforms to the matching Interface.
Another example; you can nowadays replace fluorescent light tubes with LED tubes. They work in existing fixtures because the conform to the T4 interface; a 4-foot tube with two prongs of a certain shape/size/position on either end, which respond to a certain volate/amperage of alternating electric current. But the inside is a completely different implementation. So if somebody had a patent on fluorescent lights, or even standard T4 tubes, would these LED replacement makers be in violation of that patent just for reusing the interface? I don't think anybody would reasonably think so.
So when Oracle complains that Google 'stole' the Java API, what does that mean, that Google wrote their own implementation of Java, which can also compile and run the same Java source code that Oracle/Sun Java can? Or is this about how other languages (C++? Python? Javascript? Go?) might access Java-implemented capabilities through an inter-language interface?
Last edited by RubeRad; 04-09-21 at 01:33 PM.
Likes For RubeRad:
#17
Keepin it Wheel
Join Date: Aug 2011
Location: San Diego
Posts: 9,857
Bikes: Surly CrossCheck, Krampus
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 22 Post(s)
Liked 2,234 Times
in
1,619 Posts
Is this case more or less important than when Unisys lost (?) their claim to IP rights to gif?
Or that case a few years back where a patent troll was claiming IP rights to "podcasting", and threatening pricey lawsuits against all kinds of big podcasters?
Or that case a few years back where a patent troll was claiming IP rights to "podcasting", and threatening pricey lawsuits against all kinds of big podcasters?
#18
Senior Member
Thread Starter
Join Date: Oct 2015
Location: San Diego, California
Posts: 3,752
Bikes: Breezer Radar
Mentioned: 27 Post(s)
Tagged: 0 Thread(s)
Quoted: 2010 Post(s)
Liked 1,541 Times
in
746 Posts
Here's an analogy: I buy the company that made the first modern American standard electrical plug. Then I say "anyone that makes these kinds of plugs now has to pay me a fee", even though hundreds of companies have been making that kind of plug for decades. That's what Oracle tried to do - just a corrupt money grab.
Likes For tyrion:
#19
Senior Member
Thread Starter
Join Date: Oct 2015
Location: San Diego, California
Posts: 3,752
Bikes: Breezer Radar
Mentioned: 27 Post(s)
Tagged: 0 Thread(s)
Quoted: 2010 Post(s)
Liked 1,541 Times
in
746 Posts
Oracle's whole existence is based on SQL, which was invented at IBM, so it's insanely hypocritical for Oracle to be pulling this stuff now.
Last edited by tyrion; 04-16-21 at 01:19 PM.
Likes For tyrion:
#21
Keepin it Wheel
Join Date: Aug 2011
Location: San Diego
Posts: 9,857
Bikes: Surly CrossCheck, Krampus
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 22 Post(s)
Liked 2,234 Times
in
1,619 Posts
That's kind of the point of an API, you expose the API to the world in the hopes of attracting integrators that will create capabilities that use the API, which means that stuff you wrote 'behind' the API gets more use (and depending on your business model, you get more $$)
Likes For RubeRad:
#22
Keepin it Wheel
Join Date: Aug 2011
Location: San Diego
Posts: 9,857
Bikes: Surly CrossCheck, Krampus
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 22 Post(s)
Liked 2,234 Times
in
1,619 Posts
OK I skimmed the article, not completely thoroughly, but found some good stuff. From Breyer's majority opinion:
This is a great point, and actually one in Oracle's column. Once a great interface is designed, the implementation written to fulfill the guts behind that interface has a much better chance of being great. If the interface sucks, the whole enterprise is doomed. So a quality, usable, robust, well-architected API is a thing of craft and value, even though it's not the implementation itself. Much as a Frank Lloyd Wright blueprint is a purer representation of his creative genius (intellectual property?) than the resulting constructed house itself.
Here, the 'declaring code' is the API, vs the ''innovative implementing code" is what happens inside/behind the API when users invoke API functions
More about 'attracting programmers':
Not sure that's the strongest point there, it basically reduces to 'Google stole it because it was too hard to make something new itself'.
Interesting though that Breyer seems to have understood the heart of the issue so well. "Not a bad description for an 82-year-old Supreme Court Justice (kudos to his clerks and the various parties and amici that briefed this)"
The second, less obvious, function is to reflect the way in which Java’s creators have divided the potential world of different tasks into an actual world, i.e., precisely which set of potentially millions of different tasks we want to have our Java-based computer systems perform and how we want those tasks arranged and grouped. In this sense, the declaring code performs an organizational function. It determines the structure of the task library that Java’s creators have decided to build.
This is a great point, and actually one in Oracle's column. Once a great interface is designed, the implementation written to fulfill the guts behind that interface has a much better chance of being great. If the interface sucks, the whole enterprise is doomed. So a quality, usable, robust, well-architected API is a thing of craft and value, even though it's not the implementation itself. Much as a Frank Lloyd Wright blueprint is a purer representation of his creative genius (intellectual property?) than the resulting constructed house itself.
Here, the 'declaring code' is the API, vs the ''innovative implementing code" is what happens inside/behind the API when users invoke API functions
The declaring code (inseparable from the programmer’s method calls) embodies a different kind of creativity. Sun Java’s creators, for example, tried to find declaring code names that would prove intuitively easy to remember. Id., at 211. They wanted to attract programmers who would learn the system, help to develop it further, and prove reluctant to use another. See post, at 10 (“Declaring code . . . is user facing. It must be designed and organized in a way that is intuitive and understandable to developers so that they can invoke it”). Sun’s business strategy originally emphasized the importance of using the API to attract programmers. It sought to make the API “open” and “then . . . compete on implementations.” App. 124–125. The testimony at trial was replete with examples of witnesses drawing this critical line between the user-centered declaratory code and the innovative implementing code....
These features mean that, as part of a user interface, the declaring code differs to some degree from the mine run of computer programs. Like other computer programs, it is functional in nature. But unlike many other programs, its use is inherently bound together with uncopyrightable ideas (general task division and organization) and new creative expression (Android’s implementing code). Unlike many other programs, its value in significant part derives from the value that those who do not hold copyrights, namely, computer programmers, invest of their own time and effort to learn the API’s system. And unlike many other programs, its value lies in its efforts to encourage programmers to learn and to use that system so that they will use (and continue to use) Sun-related implementing programs that Google did not copy.
These features mean that, as part of a user interface, the declaring code differs to some degree from the mine run of computer programs. Like other computer programs, it is functional in nature. But unlike many other programs, its use is inherently bound together with uncopyrightable ideas (general task division and organization) and new creative expression (Android’s implementing code). Unlike many other programs, its value in significant part derives from the value that those who do not hold copyrights, namely, computer programmers, invest of their own time and effort to learn the API’s system. And unlike many other programs, its value lies in its efforts to encourage programmers to learn and to use that system so that they will use (and continue to use) Sun-related implementing programs that Google did not copy.
Google copied those lines not because of their creativity, their beauty, or even (in a sense) because of their purpose. It copied them because programmers had already learned to work with the Sun Java API’s system, and it would have been difficult, perhaps prohibitively so, to attract programmers to build its Android smartphone system without them.
Interesting though that Breyer seems to have understood the heart of the issue so well. "Not a bad description for an 82-year-old Supreme Court Justice (kudos to his clerks and the various parties and amici that briefed this)"
#23
Keepin it Wheel
Join Date: Aug 2011
Location: San Diego
Posts: 9,857
Bikes: Surly CrossCheck, Krampus
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 22 Post(s)
Liked 2,234 Times
in
1,619 Posts
https://barrgroup.com/software-exper...pute-nears-end
I did a little googling (actually ducking-ducking-going) and couldn't quickly turn up a reference showing exactly those 170 lines in question.
Anyone else know how to put their finger on them? Or the 11500 lines Oracle alleged?
Oracle alleged that Google had violated both patents and copyrights relating to parts of the Java programming language (which was created at Sun Microsystems prior to its acquisition by Oracle). At the heart of the matter were 11,500 lines of source code, 37 package APIs, and 170 lines of API declarations that Google admits were copied to create its Android operating system. On the copyright issue, Google asserted a defense of fair use of the API.
I did a little googling (actually ducking-ducking-going) and couldn't quickly turn up a reference showing exactly those 170 lines in question.
Anyone else know how to put their finger on them? Or the 11500 lines Oracle alleged?
#24
Senior Member
Thread Starter
Join Date: Oct 2015
Location: San Diego, California
Posts: 3,752
Bikes: Breezer Radar
Mentioned: 27 Post(s)
Tagged: 0 Thread(s)
Quoted: 2010 Post(s)
Liked 1,541 Times
in
746 Posts
https://barrgroup.com/software-exper...pute-nears-end
I did a little googling (actually ducking-ducking-going) and couldn't quickly turn up a reference showing exactly those 170 lines in question.
Anyone else know how to put their finger on them? Or the 11500 lines Oracle alleged?
I did a little googling (actually ducking-ducking-going) and couldn't quickly turn up a reference showing exactly those 170 lines in question.
Anyone else know how to put their finger on them? Or the 11500 lines Oracle alleged?
#25
Keepin it Wheel
Join Date: Aug 2011
Location: San Diego
Posts: 9,857
Bikes: Surly CrossCheck, Krampus
Mentioned: 0 Post(s)
Tagged: 0 Thread(s)
Quoted: 22 Post(s)
Liked 2,234 Times
in
1,619 Posts
I'd love to see those 170 (presumably they were entered as Exhibit X at some point?) It would help me understand it, and perhaps explain to kids what's the root of what's going on.