|
Authored by: jesse on Monday, April 23 2012 @ 05:51 PM EDT |
Thank you. [ Reply to This | # ]
|
- Corrections here please - Authored by: Anonymous on Monday, April 23 2012 @ 06:04 PM EDT
- Witness name - Authored by: Anonymous on Monday, April 23 2012 @ 06:17 PM EDT
- Fixed - Authored by: Anonymous on Monday, April 23 2012 @ 06:18 PM EDT
- Fixed - Authored by: PJ on Tuesday, April 24 2012 @ 01:39 PM EDT
- Witness name - Authored by: Anonymous on Tuesday, April 24 2012 @ 04:50 AM EDT
- Interface as Contract - Authored by: Anonymous on Monday, April 23 2012 @ 06:34 PM EDT
- ....thusing blunting the value ..... - Authored by: jsoulejr on Monday, April 23 2012 @ 07:22 PM EDT
- Discussion about wording of when to say "prosecution rests". => "Plaintiff rests" - Authored by: red floyd on Monday, April 23 2012 @ 10:18 PM EDT
- Stanford Professors have helped Oracle before - Authored by: Anonymous on Monday, April 23 2012 @ 11:58 PM EDT
- GPL: It says the code can be reused and modified, so long as the modifications are given back - Authored by: Anonymous on Tuesday, April 24 2012 @ 03:38 AM EDT
- soething -> something - Authored by: erem on Tuesday, April 24 2012 @ 05:34 AM EDT
- "Dudley" -> Doug Lea - Authored by: Anonymous on Tuesday, April 24 2012 @ 08:27 AM EDT
- "Taobi" -> "TIOBE" - Authored by: Anonymous on Tuesday, April 24 2012 @ 01:31 PM EDT
- New paragraph missed - Authored by: Nemesis on Saturday, April 28 2012 @ 06:35 PM EDT
|
Authored by: jesse on Monday, April 23 2012 @ 05:52 PM EDT |
Thank you. [ Reply to This | # ]
|
|
Authored by: jesse on Monday, April 23 2012 @ 05:53 PM EDT |
Thank you. [ Reply to This | # ]
|
|
Authored by: jesse on Monday, April 23 2012 @ 05:54 PM EDT |
Thank you for the work. [ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 05:56 PM EDT |
I love this judge XD. [ Reply to This | # ]
|
|
Authored by: SLi on Monday, April 23 2012 @ 06:18 PM EDT |
I think today's news is provided in an explanation
from Oracle to
the judge, talking about a book about Gerald Ford.
That's the problem in a
nutshell. Oracle is talking about books
and trying to apply copyright law to
the law about books. But
computer software isn't a book, a novel, or anything
like it. You
can restrict copying of a novel or a history without damaging the
entire field of book writing. But if you restrict APIs, which are
functional,
you do destroy software development as we know it.
How much do
the bad results that would come from a certain
legal determination (here the
copyrightability of APIs) actually
affect the eventual outcome? I gather that
they do, to some
extent.
In a perfect world (or at least with perfect
separation of
powers), I guess the lawmakers would ponder the effects of the
laws they write, and courts would apply them as written, leaving
fixing them
to lawmakers if the outcome is negative... [ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 06:30 PM EDT |
I thought this answer was quite interesting:
Google:
When you were at Google, did you have conversations about making use of the
javadocs?
Bob Lee: Yes, we definitely referred back to them to make sure
we were maintaining interoperability.
It shows a clear
mindset of wanting to avoid fragmenting the language.
This one
is also interesting (emphasis mine):
Google: Would it have
been possible to run Android against a TCK in 2006 / 2007?
Bob Lee:
(confidently) No. I'm a prolific contributor. I worked to build stuff that
could support it later.
[ Reply to This | # ]
|
|
Authored by: lwoggardner on Monday, April 23 2012 @ 06:47 PM EDT |
Sounds like the judge is going to rule that the SSO of the
API as contained in
the source.
Judge: I will instruct the jury that the copyrights
extend
to the SSO. I see both sides arguments on this. If you win
on fair use,
then the judge doesn't have to decide those
questions.
The way it's going to
be presented to the jury, is that the
SSO *is* covered by copyright - not its
own copyright, I'm
not prepared to say to the jury that it's a standalone
entity with its own copyright, but the copyright issued that
applies to
everything also applies to the SSO.
Presumably Google now
moves on to fair use (and estoppel?)
I gather there is an argument about the
amount of copying.
If you take any source file and highlight the SSO of the API
it will generally be only a small part in comparison to the
comments and the
implementing code. Is that relevant? Or can
Oracle argue that the SSO of the
API somehow carries more
importance than code/comments?
Is compatibility a
fair use defence? [ Reply to This | # ]
|
- The APIs are copyrightable, but not on their own, moving on... - Authored by: Anonymous on Monday, April 23 2012 @ 07:13 PM EDT
- The APIs are copyrightable, but not on their own, moving on... - Authored by: Anonymous on Monday, April 23 2012 @ 07:38 PM EDT
- Work as a whole - Authored by: Ian Al on Tuesday, April 24 2012 @ 04:23 AM EDT
- Work as a whole - Authored by: Anonymous on Tuesday, April 24 2012 @ 08:41 AM EDT
- Maybe wrong place, but SSO is Look and Feel? - Authored by: Anonymous on Tuesday, April 24 2012 @ 10:27 AM EDT
- Attacking SS&O: Questioning the French Waiter - Authored by: davecb on Tuesday, April 24 2012 @ 10:32 AM EDT
|
Authored by: Anonymous on Monday, April 23 2012 @ 06:58 PM EDT |
The word "contract" in relation to an API means, "the rules for using the API
correctly". There can be two sides to the contract (the user of the API, and
the provider of the API) and the contract spells out what both sides need to
do.
But its not like a legal contract ("meeting of minds", etc).. its
actually closer to a legal LICENSE! The "contract" of an API is unilaterally
decided by the provider of the API, and it says "Here's what you need to do to
use my API correctly. And if you do that, here's what you can expect to
happen." So just like a free software license, it contains (1) some conditions
you have to obey, and (2) some promises you can rely on, as long as you properly
obey the conditions.
Typically it will contain rules about state(s) the
program must be in before you can call an API method ("preconditions"). It will
also typically express promises about what the called method will do to that
state ("postconditions"), assuming that the caller successfully met the
preconditions.
There might be rules like "if you call method A with a
particular object as an argument, at some time later you must also call method B
with the same object". Example: If you Open a file (and receive back a
"handle"), at some time later you must Close that "handle".
There's a
particular approach to building software, called Design by Contract,
in which this process is very formalized. Most software is not written that way
though. In most software, there are only informal "contracts", and they are
only spelled out in comments for those APIs where the information of the
contract is necessary to use them properly. [ Reply to This | # ]
|
|
Authored by: cpeterson on Monday, April 23 2012 @ 07:01 PM EDT |
Google: When someone contributes something to the JCP, can that
person contribute to Java and also make it free for everything to
use?
Bob Lee: Absolutely.
[Oracle objection. Sustained. He's not
a lawyer.]
Nope, we won't have engineers making legal
judgements.
Unless it's Tim Lindholm or Andy Rubin, and we can take their
comments out of context.
So, Bob Lee, remember, it's this
way:
Lawyer: Did you think you were acting in accordance with
the law? Be aware that answering "no" will incriminate you; answering "yes"
will be disallowed as a legal opinion; answering "I don't know" will be
considered evasive.
Witness: .... [ Reply to This | # ]
|
|
Authored by: tknarr on Monday, April 23 2012 @ 07:09 PM EDT |
I think today's news is provided in an explanation from Oracle to
the judge, talking about a book about Gerald Ford. That's the problem in a
nutshell. Oracle is talking about books and trying to apply copyright law to the
law about books. But computer software isn't a book, a novel, or anything like
it. You can restrict copying of a novel or a history without damaging the entire
field of book writing. But if you restrict APIs, which are functional, you do
destroy software development as we know it.
I don't think the
law or the judge care about what it'd do to software development. If applying
copyright law would destroy software development, then that's a matter for
Congress to take up and potentially change the law. But I think the problem is
that Oracle keeps talking about copying the contents of books. An API
isn't the implementation, any more than the table of contents of a textbook is
the textbook. That it's a textbook is a key point, BTW. For a novel, the chapter
titles and their ordering may be copyrightable, but they have a non-functional
aspect to them. For a textbook, the chapter titles are almost purely function:
they tell you want information's covered in which chapter. If I write another
textbook covering the same subject, I'm going to need to cover the same
information. And if I want to let people use my textbook in place of another
without having to redo all their references, I need to give my chapters the same
titles and put them in the same order. So, does copyright law prohibit me from
creating such a replacement textbook using the same chapter titles and numbers?
Yes or no? The answer to that should enlighten. [ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 07:22 PM EDT |
"Oracle: Look at your screen. 610.2. The Java documentation from the Java
web site, and on the right, 767, which is the Android docs from Android."
Look at the book.
"John Mitchell: You can see you have the same class in the same library.
Everything's basically the same."
Look at the code[ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 07:28 PM EDT |
Many thanks to the court reporters for their time and effort.
I do have a question though. Do you sense that the jury is getting it or are
they completely overwhelmed? I have a lot of programming experience and am
getting a bit confused. I can just imagine a teacher or nurse having their eyes
glazed over.[ Reply to This | # ]
|
- Many thanks, reporters, PJ, and Mark - Authored by: hardmath on Tuesday, April 24 2012 @ 02:00 AM EDT
- Like you, even as a programmer (AND Groklaw member) I'm overwhelmed... - Authored by: Anonymous on Tuesday, April 24 2012 @ 02:27 AM EDT
- Thanks - Authored by: Ian Al on Tuesday, April 24 2012 @ 06:46 AM EDT
- Week 2, Day 6 of Oracle v. Google ~pj - Authored by: Anonymous on Tuesday, April 24 2012 @ 12:46 PM EDT
- Eye glazing slop - Authored by: Anonymous on Tuesday, April 24 2012 @ 01:07 PM EDT
|
Authored by: s65_sean on Monday, April 23 2012 @ 08:06 PM EDT |
Bob Lee: For open source license, you can take the code and reuse
it. Some require you to give attribution. The GPL says. [PJ: It says the code
can be reused and modified, so long as the modifications are given back.]
Modifications do not have to be "given back". I can take any GPL
software and modify it any way I see fit, and as long as I don't distribute my
modified binary code to anyone else, then I don't have to give anyone my
modified source code. You only have to make your source code modifications
available to others if you distribute your modified binary code to others, and
even then you only have to make the source code available to those that you
distribute your modified binary code to. You don't have to ever "give it back"
to the ones that you got it from. Granted, if you make it freely available to
others, then the ones that you got it from can probably obtain a copy, but it's
up to them to obtain a copy, you don't have to go seek out those that you got
the code from and give them your modifications.[ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 08:20 PM EDT |
I like any judge who utters the words "patent troll" from the bench. [ Reply to This | # ]
|
|
Authored by: jvillain on Monday, April 23 2012 @ 08:33 PM EDT |
There are 51 packages in Android. They started asserting rights for
all 51. But then it was discovered they didn't own those 14. So they dropped
those 14.
Isn't the question of whether you have ownership some
thing you should figure out before you start suing? I would have thought
some one over at BSF would have figured that out after the fiaSCO. [ Reply to This | # ]
|
- Horse->Cart - Authored by: Anonymous on Tuesday, April 24 2012 @ 04:02 AM EDT
|
Authored by: Anonymous on Monday, April 23 2012 @ 08:44 PM EDT |
The term "interface", as it applies to Java, is used to indicate a
reference type that can not be instantiated and does not have any method bodies.
The methods it defines must be in any classes that implement the interface.
The interface does not say what the methods will do, only what methods classes
that implement the interface will include. What the methods do can be very
different. In the term "Application Program Interface", the term
"interface" refers to a function, method, subroutine, etc. for which
the definition of what it will do is well defined, just not the how.
Perhaps an example: if an API specifies a function
float sin(float X) returns the sine of X, then the implementer must make the
sin function return the sine of its argument; a Java interface that has a method
defined as float sin(float) requires that any class that implements the
interface have method sin that accepts a float as an argument and returns a
float, and that returned value may, or may not, be related in any way to the
sine of its argument.
Why would you do this? A class that implements comparable must have a method
compare that returns a negative, zero, or positive integer depending on if one
argument is less than, equal to, or greater than the other. So, lets say we
wish to compare the letters A, a, Z, and z. We could put them in the order A,
a, Z, z or the order A,Z, a, z or we could say A and Z are equal and both are
less than a and z, which are equal because the order is determined by case, or
we could say A and a are equal and both are less than Z and z, which are equal
because the order is alphabetic and case is not significant. [ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 08:52 PM EDT |
Judge: Let me try my question a different way. Let's say we ask the jury 2
questions. "With regard to these 37 packages, did Google copy the
SSO?"
And same question, but documentation.[ Reply to This | # ]
|
|
Authored by: rsteinmetz70112 on Monday, April 23 2012 @ 09:00 PM EDT |
Oracle: Your discussions with Horowitz about permissability. Discuss with any
Google counsel?
Bob Lee: Not that I recall.
Oracle: So Horowitz was giving you unguided legal advice?
Bob Lee: Yes.
---
Rsteinmetz - IANAL therefore my opinions are illegal.
"I could be wrong now, but I don't think so."
Randy Newman - The Title Theme from Monk
[ Reply to This | # ]
|
- Hearsay? - Authored by: jvillain on Monday, April 23 2012 @ 10:34 PM EDT
- My Answer - Authored by: Anonymous on Tuesday, April 24 2012 @ 02:19 AM EDT
|
Authored by: rsteinmetz70112 on Monday, April 23 2012 @ 09:20 PM EDT |
As an actual Architect who designs buildings for a living I have real heartburn
with terms like "computer architect" and "software
architect" wielded by people who have little or no knowledge of what Real
Architects do. The title seems to be based on a repulsion of traditional
corporate terminology and some kind of milappropriation of and misunderstanding
of actual architecture.
---
Rsteinmetz - IANAL therefore my opinions are illegal.
"I could be wrong now, but I don't think so."
Randy Newman - The Title Theme from Monk
[ Reply to This | # ]
|
- Engineers - Don’t much like Computer Engineer either ;-) - Authored by: SilverWave on Monday, April 23 2012 @ 09:28 PM EDT
- "computer architects" - Authored by: lwoggardner on Monday, April 23 2012 @ 09:29 PM EDT
- "computer architects" - Authored by: Anonymous on Monday, April 23 2012 @ 09:39 PM EDT
- "computer architects" - Authored by: Anonymous on Monday, April 23 2012 @ 09:54 PM EDT
- "computer architects" - Authored by: Anonymous on Monday, April 23 2012 @ 10:00 PM EDT
- "computer architects" - Authored by: Anonymous on Monday, April 23 2012 @ 11:25 PM EDT
- "computer architects" - Authored by: Anonymous on Tuesday, April 24 2012 @ 12:04 AM EDT
- Architect arrogance? - Authored by: Anonymous on Tuesday, April 24 2012 @ 01:31 AM EDT
- Can you offer alternative suggestions? - Authored by: jbb on Tuesday, April 24 2012 @ 01:35 AM EDT
- Software programmers are the weavers of dreams and abstract ideas - Authored by: Ian Al on Tuesday, April 24 2012 @ 06:55 AM EDT
- "computer architects" - Authored by: Anonymous on Tuesday, April 24 2012 @ 10:02 AM EDT
- Oh but it is - Authored by: Anonymous on Wednesday, April 25 2012 @ 06:15 AM EDT
|
Authored by: SilverWave on Monday, April 23 2012 @ 09:26 PM EDT |
Whats the chance of that in such a case as this?
---
RMS: The 4 Freedoms
0 run the program for any purpose
1 study the source code and change it
2 make copies and distribute them
3 publish modified versions
[ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 09:30 PM EDT |
> Judge: I will instruct the jury that the copyrights extend to the SSO.
What does SSO stand for?[ Reply to This | # ]
|
|
Authored by: SpaceLifeForm on Monday, April 23 2012 @ 11:00 PM EDT |
Boies (allegedly said):
The court will note that everyone before
this litigation that everyone thought that a clean room implementation didn't
save you from getting a license.
All the clean room permitted you to do was
to stop you from licensing the code. But the clean room didn't excuse you from
getting a specification license.
News to me. If they
provide the API description
without a license (which they must, otherwise no
one
would write any code that used the API), and
someone writes their own
implementation that supports
the API, and the code works properly, why
would
they want any additional license? Other that to
call it some trademarked
name, do they really care?
Here is an example: glibc and uClibc.
uClibc
strives to implement the same API as glibc,
but in smaller code
footprint.
uClibc does not try to call itself glibc, even
though it
implements a lot of glibc functionality.
Harmony does not try to call itself
Java either,
even though it implements a lot of Java functionality.
I think
Boies is twisting.
---
You are being MICROattacked, from various angles, in a SOFT manner. [ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 11:11 PM EDT |
Why didn't Google ask Mitchell more about cleanroom
implementations? He seems to imply that they are industry
standard practice and legal. Wouldn't that contradict the idea
that APIs are copyrightable?[ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, April 23 2012 @ 11:39 PM EDT |
Lawyers use language in a very precise manner to convey an idea to other folks
in the same profession. So do programmers. At the same time, the same word can
have two separate and distinct meaning to each group. Seems to play right into
Oracles hands if the goal is to cause confusion (while claiming the opposite).[ Reply to This | # ]
|
|
Authored by: BitOBear on Monday, April 23 2012 @ 11:46 PM EDT |
Saying you can copyright and restrict the use of an API to a library that you
have given away is like...
Admitting you cannot copyright a computer designed tire tread pattern but you
can copyright the skid-mark it leaves behind.
The parties may have stipulated structure, sequence, and organization, but there
is no meaning to this. It is, as I am wont to say, "A distinction without a
difference". We have heard how a person "could" put a math thing,
like taking the square root, in some non-math namespace. Sure you -could-, but
you -could- sort your API elements by first-vowel... that is, it's doable but it
would be less than helpful.
I regularly get asked by managers questions that start with the most dangerous
three words in computer science: "Couldn't you just".
It took me years to learn how to stop saying "yes, but..." nobody
keeps listening after the "ye". I had to learn to start with
"that would be an incredibly bad ide because..." and then end with
"but it might be possible."
For instance "couldn't you just put sqrt() into java.science instead of
java.math?" "That would be an incredibly bad idea, nobody would be
likely to find it there and people would start adding error-prone and inferior
untested routines into the math space to replace the 'missing' element, but it
is technologically possible."
Massively degenerate alternatives are not equal choices.
One of the guiding rules of API (and code in general) design is "the rule
of least astonishment":
http://en.wikipedia.org/wiki/Principle_of_least_astonishment
This core principle guided the initial construction of the libraries. It
governed the direct expressions of documentation built by the -automated-
javadoc tool, just as it did the predecessors of javadoc, and it proscribes the
alteration of an existing API for all but the most dire of causes.
The idea of reinventing the wheel is well understood to be a waste as a moral.
Saying that somehow Google should have reinvented the java library elements
"SSO" epically improper.
It would border on actionable incompetence to suggest that re-writing a known
and working interface was a reasonable action under share-holder due diligence
rules since it would waste lots of money to deliberately create endless problems
for the company.[ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 12:01 AM EDT |
John Mitchell: I guess I agree.
That sure comes
across like he'd rather not answer. I guess Judge Alsup spoiled his
fun.
Google: Dr. Viznik was another expert? You relied on his
report?
Dr. Mitchell: I read his
report.
...
Dr. Mitchell: I expect he described what he
did there.
Ok... either he didn't actually read the report (perhaps
reading only a part of it) or he's become reluctant to answer
again.
Boies: It wasn't just an email. Danger took a license even
though they weren't going to use the code.
So... because EV1 took a
license from SCOG, it's against the Law of Copyrights for anyone else to
refuse?
Judge: Well, I still question your premise. Now it may be
that they agreed to a license, in the same way both of these companies have
agreed to a patent from a troll, even though it's completely invalid, just
because it's not worth fighting.
Yup... Judge Alsup sure seems to
understand the potential of Boies argument with regards the suggestion "someone
else took a license, so it has to be required by Law".
Boies: That's
not what we're trying to say. And I'm probably not explaining
well.
ROFL: I view Mr. Boies as explaining very well... it's the
fact that Law doesn't conform to Oracle's interpretation that he's having
troubles with.
RAS[ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 12:15 AM EDT |
"Judge: Do you have a truce to not talk about how much expert
witnesses are paid?"
Interesting that it was asked, and that
Google never followed up. Maybe
Judge Alsup remembers a previous case ("Re
Oracle Corp. Derivative Litigation
(824 A.2d 917 (2003))"), as summarized on Larry
Ellison's wikipedia page:
"Ellison's charitable donations
to Stanford University were an
issue in that case with respect to the
independence of two Stanford professors
who evaluated the merits of the case
for Oracle"
Ouch!
Anyone have a better URL for that case?[ Reply to This | # ]
|
- Never interrupt - Authored by: Anonymous on Tuesday, April 24 2012 @ 01:30 PM EDT
|
Authored by: jbb on Tuesday, April 24 2012 @ 12:52 AM EDT |
IANAL, but IMO, on first blush, this was not a great day for Google. The judge
has provisionally decided that the SSO of an API can (possibly) be protected by
copyright. The Danger (company name) contract will be admitted as evidence even
though it is not relevant to what Google is being sued over. And finally Oracle
got to put forth the proposition that even if you make a clean room
implementation you still need a license for the API. I got a feeling the judge
was trying to cut the baby down the middle and give each side something they
wanted; giving Google a win on the implementation not being derived from the API
and giving Oracle a win on the SSO of the APIs being (possibly) protectable by
copyright.
This trend is not good for Google because a compromise between
the truth and a lie is still a lie. BS&F repeatedly used this to their
advantage in the SCO wars.
If things continued in this direction it would look
pretty grim for Google. But that's not going to happen because, as Van Nest
said, Google hasn't even started presenting their side of the story. They have
not yet begun to fight and it's always darkest just before the dawn. A trial is
like a modified game of (American) football where one side is always on defense
for the first half then gets to always be on offense the second half.
Unlike last week when I said that I felt Google had been able to stay
even with Oracle, today it felt like Oracle was slowly pulling ahead, especially
with the judge. The goof one of Google's lawyers made in characterizing the
Danger contract was costly.
It seems like the judge is trying to squeeze
Google into arguing a fair use defense in front of the jury although he reserved
the right to override the jury's decision with his own. The fair use argument
has prevailed in the past for using elements of an API in an application
program. I don't recall anyone using it with success for a re-implementation.
Perhaps the judge wants Google to follow these clues in footnote 346 on page 54
of
Samuelson
(58-page pdf):
Sega
considered whether reverse
engineering of program code for purposes such as getting access to functional
design elements, such as interfaces, was fair use. Id. at 1514. The court
observed that
“[i]f disassembly of copyrighted object code is per se an
unfair use, the owner of the copyright
gains a de facto monopoly over the
functional aspects of his work—aspects that were expressly
denied copyright
protection by Congress,” citing § 102(b). Id. at 1526. The court went on
to say
that “to enjoy a lawful monopoly over the idea or functional principle
underlying a work, the creator
of the work must satisfy the more stringent
standards imposed by the patent laws.” Id. The Ninth
Circuit agreed with
Altai that functional works such as computer programs and those
describing
bookkeeping systems were entitled, as Baker had long ago held,
to only “thin” protection from copyright law. Id. at
1524.
Samuelson's overall thesis was that § 102(b) of the
1976 Copyright Act should be invoked directly. That section says in
full:
In no case does copyright protection for an original work of
authorship extend to any idea, procedure, process, system, method of operation,
concept, principle, or discovery, regardless of the form in which it is
described, explained, illustrated, or embodied in such work.
As
Samuelson also said:
While it is better to stretch the scenes a
faire and merger doctrines to exclude from copyright a systematic collection
of information selected and arranged to achieve functional ends, a far
simpler and more straightforward way to get to the same result is to say that
systematic assemblages of information such as specifications of interfaces
necessary to achieve interoperability are unprotectable under § 102(b) [of
the 1976 Copyright Act] and Baker’s progeny such as
Taylor.
I would be more comfortable with a judgment follows
Samuelson's lead and says that APIs cannot be protected by copyright because of
§ 102(b). I worry that the fair use argument might not fly with the jury and
even if it does, it might leave the door open a crack for someone else to try
pulling a similar scam later on. My guess, and this is only a wild guess, is
that the judge is looking for some way for the jury to decide the API issue in
favor of Google so he doesn't have to make a direct ruling on whether APIs can
be copyrighted or not.
Arguing fair use in front of the jury may
actually be a huge boon for Google. If the jury decides that as a matter of
fact Google's use of the APIs was fair use then that finding of fact by the jury
might be harder to overturn than a ruling by the judge directly saying APIs
cannot be protected as a matter of law. IANAL but IIUC, it is much easier to
appeal rulings of law than matters of fact. The higher courts are generally
looking for ways the lower courts messed up in matters of law. They are not in
the business of second guessing juries.
Maybe this was a pretty good day for
Google after all.
--- Our job is to remind ourselves that there are
more contexts than the one we’re in now — the one that we think is reality.
-- Alan Kay [ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 03:37 AM EDT |
It dawns on me BSF has found a new replacement for SCOG in the form of
Oracle.
The copyright claims argument against Linux was:
It doesn't
matter how few lines were copied: the work as a whole is a derivative, therefore
a license is required.
Now that's being argued with Oracle:
It doesn't
matter that it's only 9 lines... Dalvik as a whole is a derivative.
Think
like BSF in both cases for a moment and it really isn't that far a jump
to:
Dalvik donated code to Linux Kernel - thereby making the Linux Kernel a
derivative!
Anyone willing to lay a wager that Linux will be Oracle's next
target if BSF is successful in getting a ruling that Dalvik is indeed a
derivative of Java?
Another similarity in the cases was that in both
cases, no matter how far fetched the claims were compared with the minimal
amount of actual copying claimed: Billions were at stake.
RAS[ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 04:34 AM EDT |
Why, oh why, is noone coming up with the analogy to a
cookbook?
Here
is my proposal
Java is a cookbook, full of recipes designated by name
(methods), organized by categories such pastry, meat, etc...
(classes and
packages),
each recipe has a list of ingredients (the parameters), and
an
actual step by step set of instructions, the recipe
itself (the source code for
the method).
Google did re-use the recipe names and the list of
ingredients (the API) from Java's cookbook , but did go to
great care to
create their very own original recipes, and
test them.
Could Oracle
pretend to copyright "just the recipe names
and list of ingredients", knowing
that lots of these recipes
were harvested, collected and transformed from other
sources
(other language, classical CS algorithms) rather than
invented
especially for and unique to Java's cookbook.
Cheers, L
aurent[ Reply to This | # ]
|
|
Authored by: Ian Al on Tuesday, April 24 2012 @ 04:52 AM EDT |
Google: We have an issue with the 1st witness, and an exhbit. A
series of side by side comparisons.
Judge: Oracle - no! You can't use
this. You have to use the whole thing, not a cut up
thing. --- Regards
Ian Al
Software Patents: It's the disclosed functions in the patent, stupid! [ Reply to This | # ]
|
|
Authored by: Ian Al on Tuesday, April 24 2012 @ 06:09 AM EDT |
Mr. Jacobs for Oracle: We were talking at the end of your testimony
about the instruction you gave to your coders. What are the 2 possible meanings
of paraphrasing?
Bob Lee: Taking something and putting it into your
own words.
Oracle: Look at your screen. 610.2. The Java documentation
from the Java web site, and on the right, 767, which is the Android docs from
Android.
Bob Lee: Java docs generated from the code. Not sure what
it's called for Android.
Oracle: Does same mechanism apply to Android
documents?
Bob Lee: Yes.
What's that about the Java
website? Would that be one html document from among tens of thousands on
Oracle's website? Was that available when Harmony wrote their clean room
implementation of the libraries? You know, I don't think it was. And, what's
that about java docs generated from the code?
Yes, of course, I
remember, now! All of the API descriptions are generated from the source code
for the API functions. As stegu told me,Java comments are allowed in
both formats that
are legal for C/C++ comments, i.e. single line
comments
starting with //, and block comments
enclosed in /* ... */.
The
Javadoc headers aimed
at auto-generated documentation begin with
/**.
Now, what did the expert witness say?
Oracle:
#2: Copying of documentation into source code.
John Mitchell: Yes. An
API contains declarations. IntBuffer. That declaration is copied directly into
Google code. Talking about timsort. Copying of code / rangecheck.
Oracle: Cleanroom?
John Mitchell: The person that wrote that had
access to the Sun code.
Hang on! Harmony did the clean room API
code and not Google. The only thing they would have to go on was the Java API
Specification given to them by Sun for the express purpose of writing the
clean-room API function code.
That Specification would contain the
javadoc text drawn from the original source code files and identified to the
javadoc program by the /** prefix.
The writers of the source code are
under strict orders to make sure the javadoc comments are always written in the
exact same format and layout and using exactly the same form of phrases for the
method lines. Since the Oracle code writers and the Android code writers are
writing about the same functions with the same names and with the same
instructions about javadoc comments it is likely that they will look very
similar.
Of course, anything in the way of creative expression that
the programmers added to the javadoc comments would stand out like a sore thumb.
Perhaps, they had no desire to add creative expression to their functional
descriptions formatted in line with the Java API Specification
format.
So, what do we make of Mitchell's expert opinion that 'the
person that wrote that had access to the Sun code' and Jacobs question about
'clean-room'?
Ah, yes, they are talking about the nine rangeCheck lines
(including the line that had '}') in timsort that Joshua Bloch wrote and donated
to Oracle.
Q. How big is Timsort (referring to Bloch's Java
implementation).
A. 900 lines.
[The rangecheck() function
gets mentioned in here.]
Q. Was there a sort API in Java before
Timsort?
A. Yes, in the arrays (class? package?).
Q. How did
Timsort differ?
A. It was much faster: as much as 20 times, typically
somewhere between 2 and 20.
9 out of 900? As a percentage, that
is... that is... Well, you do the math!
Those were the nine lines that
Google admitted to copying. In fact, they were the only nine lines in hundreds
of thousands of lines that Oracle discovered were copied directly by Google. And
Joshua Bloch handed them back to Oracle as a small component of the much
improved timsort. Nice!
Perhaps it was just unlucky that Jacobs
appeared to taint the whole of the Harmony project because of the nine lines
that Google copied and gave back in the 900 line timsort.--- Regards
Ian Al
Software Patents: It's the disclosed functions in the patent, stupid! [ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 06:17 AM EDT |
(IANAL) But has someone made a huge mistake on Oracle's behalf here? talking
about structure rather than objects oriented :)
Imo OOP based languages/APIs would be the hardest of all to claim any SSO
defence for, considering the whole selling point of an OOP design methodology is
that you let the real class instances(nature) guide your design; and therefore
this should always make your design “derivative” and “obvious” to any other
expert in the field capable of software modelling.
Even if Java was a structured/procedural language like SQL, I fail to see how
anyone is going to claim that SSO can be protected in public software
interfaces; regardless of complexity, when methodologies such as Structured
Systems Analysis Data Modelling(SSADM) exist freely for anyone skilled to use.
Where I feel the judge has let Oracle pull a fast one, is by using the words
“API specification” in place of what it really means and does; provides a
“public interface” for programmers to use the Java language.[ Reply to This | # ]
|
|
Authored by: SLi on Tuesday, April 24 2012 @ 07:01 AM EDT |
The decompilation stuff sounds quite bad for Google, in my
opinion... [ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 08:43 AM EDT |
The court and the law are so out of touch about software
and its development that this whole thing is absolutely
disgusting.
Engineers can't rely on laws about something while lawyers
define the very element of software that they demonstratably
know absolutely nothing about.
No wonder the world is going bad.
[ Reply to This | # ]
|
|
Authored by: s65_sean on Tuesday, April 24 2012 @ 08:53 AM EDT |
One thing that I don't understand is if Google copied Harmony as they claim,
then why did they have to write these 37 APIs over again themselves in a clean
room? Hadn't the Harmony project already done that?[ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 09:13 AM EDT |
I noticed the following from Oracle's expert, and I think that this actually
helps Google, not Oracle.
Judge: java.io, that's an
API?
John Mitchell: Technically that's a package. As a grouping of
classes, an API consists of information about packages classes and interfaces
together with what they do. An overview of an API.
Couldn't
Google use this statement and say that APIs are not eligible for copyright since
they are ideas and facts?[ Reply to This | # ]
|
|
Authored by: eachus on Tuesday, April 24 2012 @ 12:55 PM EDT |
Judge: Well, I still question your premise. Now it may be
that they agreed to a
license, in the same way both of these
companies have agreed to a patent from a
troll, even though
it's completely invalid, just because it's not worth
fighting.
This issue may come up in the patent part of this case. I
also expect that it will be used by lots of lawyers as a
precedent for calling
the plaintiff in a particular case a
troll. And certainly just sending that
snippet to your
congressman and Senators can't hurt. [ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, April 24 2012 @ 01:12 PM EDT |
Google did not copy the code (except in some few instances)
It is so stipulated.
The names are not protected.
It is so stipulated.
So what is this circus all about?
It's not the code, and it's not the names.
Doesn't that mean that there's nothing left?
Not at all.
It's about the 37 APIs!
Well, no, it's not.
It is about the Structure, Selection and Organisation of the Documentation of
those APIs in a Book called The Java API Specification.
Oracle allege, that Google, copied a portion of their Book, the API
Specification, into their own book the Android Developer Reference.
Then it is alleged that Google, having done that copying, then copied the thing
that had been copied from Oracles Book in to Android source code. A symbol for
symbol exact copy, look at the names in the source code.
(Oracles filing #899 Accused 1, 2, 3)
(4 is the overreach that Jude Alsup looks like he's about to kick in to touch,
though I'm sure Mr Boies would like SSO to stretch over the expressive part
aswell)
Say what? names aren't protected, the judge said so.
No, they're not, but the SSO was a $7.4Billion pink elephant^W^W the result of
tens of years of man effort and hundreds of millions of pounds of investment.
Design Decisions, Creative decisions, many decisions, Artistic decisions, it, so
they say, the plot line of their work.
It is protected, or at least an SSO may be entitled to protection. (And for now,
Judge A is going to say that it is, from where he sits, there is some merit to
Oracles argument)
Oracle try to claim that the 37APIs should be the work as a whole, well lawyers
can claim whatever they are paid to claim, doesn't mean it's true, and anyway,
they don't mean the 37 APIs, or even the 37 Packages
What they are pleading is the SSO of the 37 subsections Described in the API
Specification.
And we know that it is not the work as a whole, the Judge has already asked, why
isn't it 42? isn't it a subset?, haven't you already dropped some? 14 have been
dropped, from 51 to 37, but even 51 is not the whole work.
Maybe I have a poor memory but I thought at one stage that Oracle had said that
there were more than 200, which makes the 37<20%, but Google asserted that it
is only 166 which makes it <25%, this appears to play into Oracles hand, it
gives Oracle a chance to assert the portion copied is a significant percentage.
But it's not.
It is only 20%-25% of the SSO, which itself is only a portion of the whole.
Even if you accept that the SSO is a significant portion of the whole, there are
a lot of Method names for example, and some very short English descriptions, it
is still the case that you are only talking about a portion of a portion of the
work as a whole.
Let us say, just for argument, that the SSO constitutes 40% of the work, a ratio
of ~1.5 lines of expression to 1 lines of SSO. Barking mad at best, but hey,
we're drinking Davey Boys shandy on this one, so let's go with it. It suggests
that Google only copied at maximum 10%.
Though let's go back to Mitchell, he said it was 90% (of the SSO), and Android
added some bits. So less than 10% then, likely much less.
But wait a minute, percentage copied goes to fair use, or substantial similarity
doesn't it? But fair use doesn't apply to SSO. SSO only gets thin protection,
the question is did you use it or not, did you copy it, or not?
It is not and should not be a question of how much of it did you use? So let's
look at the SSO
1) java.awt.font
2) java.beans
Need to pause there, of course these are only shortcuts to refer to 'Everything
Contained In' this section of the SSO, CLI junkies have a solution for that,
'.*' which we shall employ here
1) java.awt.font.*
2) java.beans.*
Stop again, we forgot, names are not protected, it is only the SSO that is
protected, so we need to abstract away the names, let's use Upper case for main
section, lower case for subsection, then numbers for sub-sub, and sub-sub-sub
1) A.a.1.*
2) A.b.*
3) A.c.*
4) A.d.*
5) A.d.1.*
6) A.d.2.*
7) A.d.3.*
8) A.e.*
9) A.f.*
10) A.f.1.*
11) A.f.1.1.*
12) A.f.2.*
13) A.f.2.1.*
14) A.g.*
15) A.g.1.*
16) A.g.2.*
17) A.g.3.*
18) A.g.4.*
19) A.h.*
20) A.i.*
21) A.j.*
22) A.j.1.*
23) A.j.2.*
24) A.j.3.*
25) A.j.4.*
26) A.j.5.*
27) B.a.*
28) B.a.1.*
29) B.a.2.*
30) B.b.*
31) B.b.1.*
32) B.c.1.1.*
33) B.c.1.2.*
34) B.c.1.3.*
35) B.c.1.4.*
36) B.c.2.*
37) B.d.*
(list is from Exhibit attached Filing 899, translation errors are mine)
Forget for a moment, what might be fair use, what might be barred by
function/merger/estop/public availability, Apache License, GPL License, common
knowledge, Language Library whatever (and there's lots).
This alone starts to beg question about just how far Boies is trying to stretch
his thin copyright protection.
This numbering assumes that the 37 are the whole of the work
we know that is not true.
How many other Main sections are there?
TBF, there's only 1.
HOw many other Subsections in Section A?... B?
That would be lots and lots, and they would be sprawled al among the
Sub-sections that you do see, so it should not really be 'a' through 'j', it's
more like
b,c,f,h,l,k,p,r,t,x,y
but we are trying to help you the reader see and it would be otherwise
confusing, so we'll stick with what we have.
Why is it, if Sub-sections A.b through A.j, are all called out in their entirety
(A.b.*->A.j.*)?
why is it then necessary to call out the sub-subsections separately?
Why is only one sub-sub-section of A.a.* is called out, what about the rest of
it?
How many more sub-sub-sections are there that are not listed?
That would be lots too, A.a.1.* here, is actually A.b.5.* if you refer to the
SSO of the Oracles API specification.
And sub-sub-sub-sections?
Yup there's a few of those too.
What about items 37 and 19? Aren't they just two sections on the same thing?
they're called A.h.* here and B.d.*
shouldn't they be A.h and B.h.
Well we're giving Boies the benefit of the doubt, so may be not, but may be yes,
why don't you decide, incidentally, same for 30) and 8).
Google do not deny that they copied the structure, they do not deny that it is
substantially similar. They copied it from Apache Harmony, they didn't copy it
from Boies Book, they could have copied it from a dozen places, they didn't need
to.
Googles selection arrangement and structure while it may bear some superficial
similarity to Oracles Structure, is a technical artefact of automated software
tools analyzing the source code (which Oracle admit they did not copy) and it is
plain on the face of it that if you look actually at Oracles SSO (not the code,
not the book, not the English prose, not the licenses, just the SSO), then
Google did not copy it from Oracles Book, at best they 'quoted some small bits
of it'
That is not enough when your copyright protection is only thin in the first
place.
If it is not copied from the Book, then it cannot have been copied into the code
(which is admitted was not copied),and even were it so, your thin copy right
protection does not get you that far Mr Boies and you know it.
Everything else you hear from Oracle is distraction.
(Exhibit A, attached to filing #899, read it carefully)
Boies/Jacobs perfect magicians.
My apologies for blathering on,
I hope you found it worth reading.
[ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, April 25 2012 @ 04:29 AM EDT |
To suggest that the range check function could only be written
by a grad student if they were told what to do is crazy. If
his students couldn't pull that off than that makes Stanford
look pretty bad. [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, April 25 2012 @ 06:36 PM EDT |
If Java was really released under the GPL then the
JavaDoc
has
been
released under the GPL since it's just the comments,
packages, classes,
methods, fields, etc. How can Oracle
claw
back that information if it's
released under a license that
says Google can do whatever they want with it?
Maybe Google
should have invested in a clean-room implementation of
javadoc.
It would seem that using Oracle's interpretation,
Oracle would themselves be
infringing Red Hat's copyright on
Red Hat Linux. I just don't understand why
Google is not
raising a GPL defense here. [ Reply to This | # ]
|
|
Authored by: Anonymous on Wednesday, April 25 2012 @ 10:19 PM EDT |
Object pascal objects are very strict about interface and implantation sections.
It would be very easy to make the judge and jury understand the difference.
[ Reply to This | # ]
|
|
|
|
|