|Magistrate Judge Orders Oracle and Google to Attend Settlement Talks By April 9 ~pj - Updated 2Xs
Friday, March 23 2012 @ 11:38 PM EDT
The Magistrate Judge Paul S. Grewal has ordered the parties to attend "a further settlement conference":
The parties shall appear for a further settlement conference. The participants shall include at least Ms. Katz and Mr. Rubin. Without delay, outside counsel shall propose to the undersigned's courtroom deputy available dates so that the conference will take place no later than April 9, 2012. March 30 is not available. Counsel are warned to demonstrate maximum flexibility in tendering dates. IT IS SO ORDERED.
Has someone, besides us chickens here at Groklaw, noticed that this is one of the stupidest lawsuits since SCO? Surely two reasonable parties can work out a settlement, he's probably thinking. I've had such thoughts myself. 8 weeks of trial over these facts?
PAUL S. GREWAL
United States Magistrate Judge
Ah. But he doesn't know with whom he is dealing.
Anyway, the trial is set for April 16. Unless the heavens part and love descends from above, settling on Oracle's Safra Catz and Google's Andy Rubin. If any of you can help cover the trial, in the event it goes forward as scheduled, please let us know. There's also on the docket some more wrangling about copyright issues, and the judge has some new trial guidelines, but I haven't read them yet myself. So let's read it all together.
Update: We found an Oracle page that seems to me at least to support Google's position regarding the APIs at issue:
03/21/2012 - 822 - NOTICE RE
GUIDELINES FOR JURY TRIAL. Signed by Judge William Alsup on 3/21/2012.
(whasec, COURT STAFF) (Filed on 3/21/2012) (Entered: 03/21/2012)
03/23/2012 - 823 - TRIAL
BRIEF Reply Re Copyright Liability by Google Inc.. (Van Nest, Robert)
(Filed on 3/23/2012) (Entered: 03/23/2012)
03/23/2012 - 824 - Brief re
793 Order, 708 Order, 754 Order Oracle's March 23, 2012 Brief Regarding
Copyright Issues filed byOracle America, Inc.. (Related document(s) 793
, 708 , 754 ) (Jacobs, Michael) (Filed on 3/23/2012) (Entered: 03/23/2012)
03/23/2012 - 825 -
ORDER RE SCHEDULING FURTHER SETTLEMENT CONFERENCE. Signed by Judge Paul S. Grewal on March 23, 2012. (psglc1, COURT STAFF) (Filed on 3/23/2012)
I'm not a lawyer or a Java expert, but doesn't Oracle's admission that the APIs themselves are restricted to "assertions" necessary to conform supportive of Google's position?
API Specifications vs.
API Developer Documentation
A common question we get is: Why aren't the JavaTM 2 platform API specifications written as more complete developer documentation? Why don't they include full working code examples, definitions of common programming terms, conceptual overviews, metaphors, illustrations, descriptions of implementation bugs and workarounds? We have chosen to put this information in the books listed below, and restrict the specifications to "assertions" necessary for conforming implementations.
Here's Google's brief, as text, followed by Oracle's:
Here's Oracle's brief, as text. Oracle seems to view APIs as if they were programs, judging from the cases it relies on:
KEKER & VAN NEST LLP
ROBERT A. VAN NEST - #84065
CHRISTA M. ANDERSON - #184325
MICHAEL S. KWUN - #198945
KING & SPALDING LLP
DONALD F. ZIMMER, JR. - #112279
CHERYL A. SABNIS - #224323
KING & SPALDING LLP
SCOTT T. WEINGAERTNER
(Pro Hac Vice)
ROBERT F. PERRY
BRUCE W. BABER (Pro Hac Vice)
IAN C. BALLON - #141819
HEATHER MEEKER - #172148
GREENBERG TRAURIG, LLP
Attorneys for Defendant
UNITED STATES DISTRICT COURT
NORTHERN DISTRICT OF CALIFORNIA
SAN FRANCISCO DIVISION
ORACLE AMERICA, INC.,
Case No. 3: 10-CV-03561-WHA
GOOGLE'S REPLY COPYRIGHT
LIABILITY TRIAL BRIEF
Judge: Hon. William Alsup
|TABLE OF CONTENTS
||Languages and APIs provide the tools for
expression, but their
vocabularies are not copyrightable expression
||The Java API specifications are analogous to a dictionary, not
an outline of a multi — volume history
||The APIs are free for anyone to use, just as the Java
language is free for anyone to use
||Oracle, not Google, has the burden of persuasion
on the issue of
||Oracle's registrations do not entitle it to a presumption that
selection, arrangement and structure of its APIs are
||Oracle has the burden of persuasion at all times; any
of validity places only a burden of production on Google,
burden of persuasion
||Functionality, scenes a faire, and merger are all part
copyrightability inquiry, and thus issues for which Oracle
the burden of persuasion
||Originality and copying are, at least in part,
not disputed issues
||The API packages as a whole meet the "extremely low"
for originality, but they are not copyrightable for reasons of
||The parties agree that Android implements 37 API packages
J2SE, but disagree whether that constitutes actionable copying
||To prove indirect infringement, Oracle must
prove that a third party
|TABLE OF AUTHORITIES
|Allen v. Academic Games League of America, Inc.
89 F.3d 614 (9th Cir. 1996)
|Apple Computer, Inc. v. Microsoft Corp.
35 F.3d 1435 (9th Cir. 1994)
|Baker v. Selden
101 U.S. 99 (1879)
|Entertainment Research v. Genesis Creative Group
122 F.3d 1211 (9th Cir. 1997)
|Feist Pubs., Inc. v. Rural Tele. Serv. Co.
499 U.S. 340 (1991)
|Jada Toys, Inc. v. Mattel, Inc.
518 F.3d 628 (9th Cir. 2008)
|Lanard Toys Ltd v. Novelty, Inc.
375 Fed. Appx. 705 (9th Cir. 2010)
|5, 7, 8
|Sega Enters. Ltd v. Accolade, Inc.
977 F.2d 1510 (9th Cir. 1992)
|17 U.S.C. § 102(b)
|17 U.S.C. § 410(c)
|Fed. R. Evid. 301
|37 C.F.R. § 202.1(a)
|Guy Steele, Growing a Language (Oct. 1998)
||1, 2, 5
I. Languages and APIs provide the tools for expression, but
their vocabularies are not
A. The Java API specifications are analogous to a dictionary,
not to an outline
of a multi-volume history.
Oracle seeks to analogize its API implementations (i.e., its
Java API libraries) to "a multi-volume history, such as the
Durants' eleven-volume The Story of Civilization" and its
specifications to "the author's [sic] meticulously detailed outline
of those works." Oracle Br. [Dkt. 780] at 2. This analogy is
inapposite. Oracle's Java API libraries (which implement the Java
API specifications) do not tell a story, and do not have any
narrative structure at all. The libraries are a collection of
source code snippets, each of which performs a discrete task. There
is no beginning, middle or end to a narrative in the Java API
As Guy Steele, an early member of the Java team and now an
Oracle Software Architect, has explained, "[a] library is a
vocabulary designed to be added to a programming language to make
the vocabulary of the programming language larger." Guy Steele,
Growing a Language (Oct. 1998) at 7
("Steele").1 Thus, the API specifications are
analogous to a dictionary, not a history. The specifications
provide an alphabetical list of the methods, fields and interfaces
in the API packages — the "vocabulary" to which Steele refers
— just as a dictionary has an alphabetical list of words. The
specifications also include explanations for the methods, fields
and interfaces, just as a dictionary has a definition for each
word. And just as copyright law does not prevent Webster from
publishing a dictionary that defines the same words, in the same
alphabetical order, that Oxford does, copyright law does not
prevent Google from implementing the same APIs, in the same
alphabetical order, that Sun did. Oxford's copyright in the
Concise Oxford English Dictionary covers its definitions,
not its "selection" of words, or the "arrangement" or "structure"
of its dictionary.
Nor it is it true that the API specifications are an "outline"
for the implementations. The implementations (i.e., the libraries)
represent merely another version of the dictionary — this
one, for the computer rather than for the developer. The libraries
repeat the "declarations" from the specifications, but also include
source code that implements the APIs. The declarations are,
from the computer's perspective, the list of words in the
dictionary. The implementing code, in A 2 turn, provides the
"definitions" of those words — the code tells the computer
what the API elements are or do. The implementations are the
dictionary that the computer uses for the "vocabulary,"
Steele at 7, that the libraries add to the Java programming
It is no better to argue, as Oracle might, that the structure
and interrelationships among the API elements distinguish the APIs
from a dictionary's list of words. In human languages, words fall
within a grammatical structure (e.g., "cat" is a noun), and have
interrelationships (e.g., "learning" is the gerund form of the verb
"to learn"). Those functional characteristics are parts of the
ideas represented by the words. Not only are words and short
phrases not subject to copyright,2 the ideas embodied in
them are uncopyrightable. 17 U.S.C. § 102(b) ("In no case does
copyright protection for an original work of authorship extend to
any idea .... ").
The APIs embodied in the specifications and implementations are
an uncopyrightable system, id., not creative expression. The
purpose of the words defined in a dictionary is not to express, but
to provide a set of tools that an author can use for expression.
Similarly, the purpose of the APIs is not to express, but to
provide a set of tools — a system — for Java language
developers. The stories told by authors using the words defined in
dictionaries may be expressive; the list of words in a dictionary
is not. The programs Java language developers write may be
expressive; the building blocks provided by the APIs are not. The
code implementing the APIs and the
explanations3 of the APIs in the specifications may
be expressive4 (subject to governing copyright
limiting doctrines); the APIs themselves (including the
selection, arrangement and structure of their elements) are
functional and not copyrightable.
Oracle's claim that copyright protects the system described by
its API specifications is
foreclosed by Baker v. Selden, 101 U.S. 99 (1879), the
seminal case on what has come to be called the idea-expression
dichotomy, now codified at 17 U.S.C. § 102(b). Selden created
a system for double-entry bookkeeping, which he described in a
series of books. 101 U.S. at 100. Selden's particular system was
new, consisting of his own "peculiar arrangement of columns and
headings." Id. Baker wrote a book that described essentially
the same system, such that if Selden's system were protected by
copyright, "it would be difficult to contend that the defendant
does not infringe it .... " Id. But, even though Selden had
described his particular method in great detail, including
illustrations of the ruled lines and headings he created, the
Supreme Court denied copyright protection to the system he
The copyright of a book on perspective, no matter how many
drawings and illustrations it may contain, gives no exclusive right
to the modes of drawing described, though they may never have been
known or used before. By publishing the book, without getting a
patent for the art, the latter is given to the public.
Id. at 103. The same principle applies here. Sun created
a new computer programming language, with a diverse set of APIs. It
described the APIs in the API specifications. Copyright does not
protect the system documented by the specifications, and it is that
system that Google is alleged to have infringed. See id.; 17
U.S.C. § 102(b). As the Supreme Court held:
Charles Selden, by his books, explained and described a peculiar
system of book-keeping, and illustrated his method by means of
ruled lines and blank columns, with proper headings on a page, or
on successive pages. Now, whilst no one has a right to print or
publish his book, or any material part thereof, as a book intended
to convey instruction in the art, any person may practise and use
the art itself which he has described and illustrated therein. The
use of the art is a totally different thing from a publication of
the book explaining it. The copyright of a book on book-keeping
cannot secure the exclusive right to make, sell, and use
account-books prepared upon the plan set forth in such book.
Whether the art might or might not have been patented, is a
question which is not before us. It was not patented, and is open
and free to the use of the public. And, of course, in using the
art, the ruled lines and headings of accounts must necessarily be
used as incident to it.
Baker, 101 U.S. at 104. Sun described the Java language
APIs through its specifications. While copyright may protect the
descriptions in the specifications, "any person may practise and
use the art itself," see id. — any person may
implement the APIs. Oracle did not assert a patent covering its
APIs, and the APIs are "open and free to the use of the public."
See id. And, of course, in using the APIs, the selection,
arrangement and structure of the APIs "must necessarily be used as
incident to it." See id.
B. The APIs are free for anyone to use, just as the Java
is free for anyone to use.
The Court has asked for an explanation of "the mechanism by
which the Java programming language is free and open for anyone to
use but the APIs are not," and has asked, "If the Android platform
does not infringe Oracle's copyrights by using the Java programming
language, how has Google infringed Oracle's copyrights by using by
using the Java APIs?" Request [Dkt. 793] at 1. The answers are that
the APIs are also free for anyone to use, and Google has not
infringed Oracle's copyrights by implementing the Java APIs.
Oracle has repeatedly conceded that anyone can use the Java
programming language.5 In light of Oracle's concessions, the
Court has twice stated that the language is free and open for all
to use, including Google. See Order Striking First Cockburn
Report [Dkt. 230] at 2 ("it is undisputed that the Java programming
language is in the public domain and anyone was free to use it
without charge, as Android does"); Copyright MSJ Order [Dkt. 433]
at 3 ("The Java programming language has been made freely available
for use by anyone without charge. Both sides agree on this."). At
the Copyright MSJ hearing, Oracle confirmed to the Court that it
stood by its prior concessions:
THE COURT: I think you've said in the past that anyone can use
the Java progressing [sic] language.
MR. JACOBS: We have, because we make no claim that that is a
violation of our copyright rights.
THE COURT: That is a — are you trying to reclaim something
MR. JACOBS: No.
THE COURT: I'm going to be disturbed if that's true. I heard
you say in the past Java programming language is in the public
domain and anyone can use it. Now, if you are saying "oh, we're
just not making that," that reminds me of an earlier case. So be
clear on this. Are you taking back what you said earlier?
MR. JACOBS: I'm not taking back what I said earlier in any
way, Your Honor.
THE COURT: All right.
9/15/11 Tr. at 12-13 (emphasis added).
The Court has also asked whether the "statements that made the
Java programming language available for all to use expressly
reserve the Java APIs?" Request [Dkt. 793] at 1. The answer is no.
Indeed, to the contrary, Oracle has disclaimed any reliance on
distinguishing between the Java programming language and the APIs.
9/15/11 Tr. at 13 ("I think what I'm suggesting is that what the
analytical move I don't think we have to make is to somehow in some
deep technical way distinguish between a programming language and
an application programming interface for purposes of argument [sic]
The APIs at issue are part of the Java programming
language. See Steele at 7. Moreover, regardless of whether
Oracle is allowed to argue that APIs are not part of the language
that it concedes everyone is free to use, if the Court accepts
Oracle's argument that the APIs are "expressive," that type of
assertion would allow one to claim copyright over any newly created
language, including even human languages, or newly coined words in
a language — an improper result.7 Designing a new
system for expression necessarily requires numerous design choices
(for example, whether to make a programming language object
oriented). Languages can have complex grammars, with detailed
interrelationships between different elements. Some languages have
more or fewer words for expressing similar concepts. This cannot
and does not change the underlying fact that languages (and the
APIs at issue) are not themselves expressive — they
are uncopyrightable systems that allow expression.
See 17 U.S.C. § 102(b).
II. Oracle, not Google, has the burden of persuasion on the
issue of copyrightability.
Oracle relies on a single footnote in Lanard Toys Ltd. v.
Novelty, Inc., 375 Fed. Appx. 705, 711 n.48 (9th Cir. 2010),
an unpublished and non-precedential case, for the proposition that
Google has the burden of proving that the API elements are not
copyrightable. Oracle is wrong:
the presumption of copyrightability does not apply to the APIs
and their elements. And even if it did apply, it would shift only a
burden of production, not of persuasion.
A. Oracle's registrations do not entitle it to a presumption
that the selection,
arrangement and structure of its APIs are copyrightable.
A "certificate of a registration made before or within five
years after first publication of the work shall constitute prima
facie evidence of the validity of the copyright and of the facts
stated in the certificate." 17 U.S.C. § 410(c). This means,
for example, that Oracle's timely registration of J2SE 5.0 is prima
facie evidence that (a) the copyright for J2SE 5.0 is valid, and
(b) the facts stated in the registration certificate are valid.
As the Court has previously explained, a presumption regarding a
registered work is not a presumption regarding "specific
elements of a registered work." Copyright MSJ Order [Dkt. 433]
at 8. Whether Oracle has a valid copyright for the J2SE
platform, however, is irrelevant, and thus so too is a
presumption applicable to the registered work. The facts
stated in the registration do not support the presumption Oracle
seeks either, because they do not refer to the APIs at all, let
alone the selection, arrangement and structure of the API elements.
For example, the titles listed in the J2SE 5.0 certificate of
registration — "Java 2 Standard Edition, Version 5.0," with
the alternative titles "J2SE 5 0, Java 2 Platform, Standard
Edition, Version 5.0," see Am. Compl. [Dkt. 36], Ex. H
— do not suggest a copyright on the APIs or their elements.
The only other potentially relevant facts in the certificate state
that the registered work is a derivative work of prior versions of
the platform, and that the material added by this work "and in
which copyright is claimed" are "[n]ew and revised computer code
and accompanying documentation and manuals." See id. While
that registration language might give notice that Sun sought to
copyright its implementations ("computer code") and its
documentation ("documentation and manuals"), no reference is
made to the APIs themselves, or to the selection, arrangement and
structure of the API elements.9
Finally, the basic premise that Oracle relies upon to explain
why it is entitled to a presumption of copyright validity is that
the Copyright Office has examined the material deposited and
concluded that it constitutes copyrightable subject matter. Oracle
Br. [Dkt. 780] at 5 (citing Lanard Toys, 375 Fed. Appx. at
71110). First, as already noted, this at
best applies to the entire registered work, and not specifically to
the selection, arrangement and structure of the APIs. Second, the
Sun source code deposits were only excerpts. For example, the
source code deposit for J2SE 5.0 included only 50 pages of
source code, see Trial Ex. 607, a mere fraction of the over
11,000 pages Oracle claims the specifications fill in printed form,
see Oracle Br. at 2.
B. Oracle has the burden of persuasion at all times; any
presumption of validity
places only a burden of production on Google, not a burden
Even if the certificate of registration raises a presumption of
validity, this at most shifts to Google a burden of
production not of persuasion. Fed. R. Evid. 301 ("In
a civil case, unless a federal statute or these rules provide
otherwise, the party against whom a presumption is directed has the
burden of producing evidence to rebut the presumption. But this
rule does not shift the burden of persuasion, which remains on the
party who had it originally."). In a published and precedential
decision, the Ninth Circuit has explained that to rebut the
presumption of copyrightability based on timely registration, "an
infringement defendant must simply offer some evidence or proof to
dispute or deny the plaintiff's prima facie case of infringement."
Entertainment Research v. Genesis Creative Group, 122 F.3d
1211, 1218 (9th Cir. 1997) (citation omitted). If the defendant's
evidence raises a "serious question" whether the material in
question is copyrightable, then the defendant has "rebutted the
statutory presumption," and this "shift[s] the burden of proving
validity — the threshold issue for copyright infringement
lawsuits — back to" the plaintiff. Id.
Thus, when the Lanard Toys court stated that the
defendant had the burden of "proof," this at most could have been a
reference to a burden of production, not of
defendant in Lanard Toys, however, "did not present any
expert testimony or other relevant evidence to prove that any
functional elements of these toys were not subject to copyright
protection," 375 Fed. Appx. at 711, and thus failed to satisfy even
a burden of production.11
Testimony from Google's witnesses, and indeed Oracle's own
expert, will show that the APIs and their elements are not
copyrightable. Google will therefore discharge any burden of
production that it might have, even assuming any presumption
of copyrightability applies here. Oracle, however, will retain the
burden of persuasion. Entertainment Research, 122
F.3d at 1218; Fed. R. Evid. 301.
C. Functionality, scenes a faire, and merger are all
part of the copyrightability
inquiry, and thus issues for which Oracle bears the burden of
Whether the elements of the APIs are functional requirements for
compatibility is part of the section 102(b) inquiry, and thus
should be addressed in deciding copyrightability. When the Ninth
Circuit held that "functional requirements for compatibility" are
not protected by copyright, it cited section 102(b). Sega
Enters. Ltd. v. Accolade, Inc., 977 F.2d 1510, 1522 (9th Cir.
1992) (citing 17 U.S.C. § 102(b)). In Sega, the court
held that intermediate copying of implementing code was a fair use
when done for the purpose of determining functional requirements
for compatibility. That is, the fair use analysis in Sega
applied to the implementing code, not to the functional
requirements for compatibility. "Copying" functional requirements
for compatibility is allowed by virtue of section 102(b), without
any need to address fair use.
Scenes a faire and merger similarly are doctrines that
should be considered in deciding the issue of copyrightability.
Google agrees that it has the burden of coming forward with
evidence about the applicability of these doctrines, but Google's
burden is again one of production. The ultimate question
that the Court must answer is whether the allegedly copied elements
of the APIs are protected, and on that issue Oracle retains the
burden of persuasion. As Google demonstrated in its opening
brief, placing the burden of persuasion on Oracle is consistent
with Ninth Circuit cases that have found for the defendant based on
a lack of evidence, while relying on the doctrines of
scenes a faire or merger. See Sega, 977 F.2d at
n.7; Allen v. Academic Games League of America, Inc., 89
F.3d 614, 618 (9th Cir. 1996).
III. Originality and copying are, at least in part, not
A. The API packages as a whole meet the "extremely low"
originality, but they are not copyrightable for reasons of
Google witnesses will offer substantial evidence that the Java
APIs were not created out of whole cloth. Instead, the APIs build
on previous programming languages and long-accepted conventions.
The packages as a whole, however, are not completely lacking in
originality. Thus, while reserving the right to present evidence
that many aspects of the APIs are unoriginal, Google does not
dispute that the APIs as a whole meet the "extremely low" threshold
for originality required by the Constitution. Feist Pubs., Inc.
v. Rural Tele. Serv. Co., 499 U.S. 340, 345 (1991). The jury
therefore need not be asked to address whether the APIs are
Originality, however, is of limited significance. First,
originality is beside the point where, as here, the material at
issue is not copyrightable. Second, even if the elements of the
APIs are "original" in the sense required by the Constitution, any
copyright to the selection, arrangement and structure of the API
elements is, at most, "thin." Among other things, this is relevant
to the second fair use factor, which "reflects the fact that not
all copyrighted works are entitled to the same level of
protection." Sega, 977 F.2d at 1524. Because any copyright
protection for the APIs is, at most, thin, the second factor favors
a finding of fair use. See id.
B. The parties agree that Android implements 37 API packages
from J2SE, but
disagree whether that constitutes actionable copying.
There is no dispute that Android incorporates substantially the
same selection, arrangement and structure of API elements as J2SE
does for the 37 API packages at issue — as does Apache
Harmony, the open source project that served as the starting point
for much of the code in the Android libraries at issue. There
further is no dispute that, aside from portions of 12 out of over
50,000 Android files, none of which are still part of Android, the
Android code implementing the APIs is not copied.12
The parties disagree, however, whether the Android APIs use
protected elements of
J2SE. See Jada Toys, Inc. v. Mattel, Inc., 518 F.3d 628,
636 (9th Cir. 2008). "[T]he party claiming infringement may place
no reliance upon any similarity in expression resulting from
unprotectable elements." Apple Computer, Inc. v. Microsoft
Corp., 35 F .3d 1435, 1446 (9th Cir. 1994) (quotation marks and
citation omitted). For the reasons given above and in Google's
opening brief, Oracle will not be able to prove that any
protected elements of J2SE were copied.13
IV. To prove indirect infringement, Oracle must prove that a
third party infringed.
Oracle correctly notes that to prove contributory infringement
it must prove, as one element of its claim, that Google knew or had
reason to know of "the infringing activity of others." Oracle Br.
[Dkt 780] at 9. To prove vicarious infringement, Oracle must prove,
among other things, that Google profited directly from "the
infringing activity of others." Id. at 10. For both of
Oracle's indirect infringement theories, then, Oracle must
prove that third parties infringed. Oracle cannot rest on
evidence that Google infringed; that is relevant only to
Oracle's direct infringement case. Oracle also cannot rest
on evidence that Google allegedly provided the means for
infringement, or directed that its partners act in a manner that
allegedly infringes. Unless Oracle proves that third parties
actually did infringe, any alleged inducement or material
contribution by Google is irrelevant.
Moreover, to prove vicarious infringement, Oracle must prove
that Google profited directly from the infringing activity
of others. Oracle cannot rely on indirect profits, such as
revenue Google receives from third party advertisements shown on
Android handsets manufactured by other third parties.
Dated: March 23, 2012
KEKER & VAN NEST LLP
By: /s/ Robert A. Van Nest
ROBERT A. VAN NEST
Attorneys for Defendant
||Copyright MSJ Order [Dkt. 433] at 7; see also 37 C.F.R.
§ 202.1(a) ("[w]ords and short phrases such as names, titles,
and slogans" are "not subject to copyright").
||Oracle claims that the explanations in Google's specifications
infringe. First, Google believes it will be entitled to judgment as
a matter of law on this point. Second, Oracle has no damages theory
tied to this alleged form of infringement.
||When Oracle cites the "more than 11,000 pages" of "expression"
in Oracle's API specifications, see Oracle Br. [Dkt. 780] at
2, the majority of this is its explanations. The fact that a
dictionary, including its definitions, is thousands of pages long
does not make the list of words defined copyrightable.
||2/9/11 Tr. at 8 ("the Java programming language, we're not
asserting that we own that programming language for purposes of
this case"); 7/21/11 Tr. at 50 ("THE COURT: But you admit that the
Java programming language is open to anybody. MR. JACOBS: Yes.");
9/15/11 Tr. at 12 ("we are making no claim for the
protect[a]b[i]lity under copyright of the Java programming
language, in and of itself").
||Oracle may point out that it placed copyright notices on its
specifications. The specifications, however, are not the APIs
themselves, and thus the copyright notices on the
specification did not "expressly reserve" copyright to the
Java APIs. See Copyright MSJ Order [Dkt. 433] at 10
(distinguishing between APIs and API specifications).
||A newly coined word is uncopyrightable under the words and
short phrases doctrine. See 37 C.F.R. § 202.1(a).
||Oracle's brief cites page 711, but the material it quotes
appears in footnote 4 on that page.
||Oracle notes that it also obtained other copyright
registrations, including for an "early version" of the API
specifications. See Oracle Br. [Dkt. 780] at 1 n.1. First,
none of these registrations were pled in Oracle's Amended
Complaint. See Am. Compl. [Dkt. 36], Ex. H. Second, even the
narrowest of these registrations is for API specifications,
which include explanations of the APIs in addition to the APIs
themselves. See Copyright MSJ Order [Dkt. 433] at 11
("API specifications are written documentation.") None of
the registrations are limited to the APIs or the selection,
arrangement and structure of their elements, and none of the
registrations state that Sun was seeking to copyright the APIs or
the selection, arrangement and structure of their elements. Thus,
none of those registrations can give rise to a presumption
regarding the APIs or their elements.
||As noted above, the correct citation is to footnote 4.
See 375 Fed. Appx. at 711 n.4.
||All of the cases Oracle cites are consistent with this view
— that is, that the statutory presumption shifts a burden of
production to the defendant, but not a burden of
||Google does dispute that the descriptions in its
specifications are virtually identical or substantially similar to
the descriptions in Oracle's specifications. And as to the portions
of the 12 Android files, Google contends any similarities are de
minimis and thus non-actionable.
||To the extent that the Court concludes that any of the material
at issue is protected by copyright, Google further contends that
its use is a fair use, and that its equitable defenses bar Oracle s
claims, as Google explained in its opening brief.
ORACLE’S MARCH 23, 2012 BRIEF
REGARDING COPYRIGHT ISSUES
Google finally admits what everyone has known all along: “the Android specifications for the 37 API packages at issue have substantially the same selection, arrangement and structure of API elements as the J2SE specifications.” (ECF No. 778 (“Google Br.”) at 3 (emphasis added).) This was no accident. Google intentionally copied Oracle’s copyrighted Java API specifications.
Google tries to excuse its copying by claiming that no API can be copyrighted, regardless of its level of creative expression. But no court has ever so held, nor that a structure as rich, complex, and creative as the 37 Java API packages at issue in this case is ineligible for copyright protection. Much of Google’s submission re-hashes its summary judgment briefing, repeating arguments the Court has already rejected, at the expense of the questions it was asked to brief.
Google also tries to justify its copying on “compatibility” grounds. But Google did not have to copy the Java APIs to be compatible with the Java programming language. And Android is not compatible with Java. Google took only what it wanted from the Java specifications and left out the rest. As a result, many Java-compliant programs will not run on Android, and programs written for Android will not run on the Java platform. Compatibility is a misnomer.
Notwithstanding the above, the parties agree on many of the procedural issues the Court identified. Oracle identifies and discusses the points of agreement and disagreement below.
I. COPYRIGHTS IN SUIT
The parties appear to agree on the asserted Oracle Java works from which Google copied: (a) 37 Java API design specifications and implementations and (b) 11 Java software code files. (Google Br. at 1.) However, Oracle’s allegations are not limited only to versions 1.4 and 5.0 of the Java 2 Standard Edition, as Google implies. (See id.) The registrations at issue were identified in response to interrogatories and are listed in Oracle’s opening brief. They are also incorporated and listed in the registration for J2SE 5.0. (See ECF No. 780 (“Oracle Br.”) at 1, 4.)
A. Google Copied The 37 Java API specifications
Google concedes that “[t]here is no dispute that the Android specifications for the 37 API packages at issue have substantially the same selection, arrangement and structure of API elements as the J2SE specifications.” (Google Br. at 3.) It follows that Android’s selection,
arrangement and structure of the names of the elements is similar as well. As a result, Google would be liable for infringement even if it could prove these individual API elements and names are unprotectable, “if those elements are numerous enough, and their selection and arrangement original enough that their combination constitutes an original work of authorship.” (See ECF No. 5 433 at 8 (quoting Lamps Plus, Inc. v. Seattle Lighting Fixture Co., 345 F.3d 1140, 1147 (9th Cir. 2003).) Google cannot possibly prove that the selection and arrangement of the thousands of elements in the specifications was the result of something other than original creative effort.
B. Google copied source code, object code and comments from 11 Java code
files into Android
Google does not dispute that it copied from the 11 Oracle source code files. Google argues that the infringement claim is moot because it removed the copied code after it was caught.
Not so. Oracle’s counsel confirmed after Google filed its brief that Google still makes copied code available for download from its website. But even if Google had in fact deleted the code, Oracle’s claim for injunctive relief would still not be moot. Oracle does not have to take Google’s word that it will not start using the code it copied again once this suit is over. See Walling v. Helmerich & Payne, Inc., 323 U.S. 37, 43 (1944) (“Voluntary discontinuance of an alleged illegal activity does not operate to remove a case from the ambit of judicial power.”).
Google’s damages argument is also incorrect. The Court ruled only that “the jury will be instructed that if Google is found not liable for infringing the selection, arrangement, and structure of the API packages, then Dr. Cockburn’s copyright damages analysis is inapplicable.” (ECF No. 685 at 2.) The Court did not hold Oracle was not entitled to any damages. And Oracle may elect statutory damages “at any time before final judgment is rendered,” 17 U.S.C. § 504(c)(1), although the Supreme Court suggests the election may not be made after a jury awards actual damages. See Feltner v. Columbia Pictures Television, 523 U.S. 340, 347 n.5 (1998). Costs and attorneys’ fees can also be awarded to the prevailing party. 17 U.S.C. § 505.
Google’s code copying is also relevant because it proves Google’s access to Oracle’s copyrighted materials, puts the lie to Google’s “clean room” claim and proves Google’s copying was knowing and willful. Google cannot hide its line-for-line copying from the jury.
ORACLE’S COPYRIGHT LIABILITY CLAIMS
A. Direct Infringement
1. Google Must Demonstrate the Works Are Not Copyrightable
The parties disagree over who has the burden on copyrightability. Google’s brief does not challenge ownership or registration. Oracle’s copyright registration entitles it to a presumption of validity, shifting the burden to Google to demonstrate that the works are not copyrightable. (See Oracle Br. at 4-6 (citing cases).) See also Transgo, Inc. v. Ajac Transmission Parts Corp., 768 F.2d 1001, 1019 (9th Cir. 1985) overruled on other grounds in Bellevue Manor Assoc. v. United States, 165 F.3d 1259, 1256 (9th Cir. 1999) (“This presumption shifts the burden of proof to the challenging party to demonstrate why the item in question is not copyrightable.”). Google, citing Jada Toys, Inc. v. Mattel, Inc., 518 F.3d 628, 636-37, n.6 (9th Cir. 2008)—where copyrightability was “tangentially” disputed and the presumption was not addressed—ignores the presumption.
Google is required to overcome the presumption of copyrightability as to each element it is challenging. In Swirsky v. Carey, the court held the defendant bore the burden of overcoming the presumption of originality as to the first measure of the chorus of a copyrighted song. 376 F.3d 841, 851 (9th Cir. 2004) (“Carey can overcome this presumption only by demonstrating that Swirsky’s chorus is not original.”). Swirsky was recently followed in Straughter v. Raymond:
As an initial matter, defendants misapprehend the burden of proof based on their faulty argument that plaintiff is not entitled to a presumption of copyright validity. See, e.g., Songwriters’ Supp. Mem. at 6 (“Plaintiff does not enjoy a presumption of copyright validity or originality, and therefore, must demonstrate that the 18 elements at issue are original to him.”). As discussed above, it is defendants’ burden to rebut the statutory presumption of validity.
2011 U.S. Dist. LEXIS 93068, at *22-24 (C.D. Cal. Aug. 19, 2011) (applying Swirsky to find defendants failed to carry burden). (See also Oracle Br. at 5-6 (citing cases).)
2. Google Cannot Demonstrate That The Java APIs Do Not
Google’s challenge to the copyrightability of the Java APIs relies on the same cases and arguments it made in its failed summary judgment motion and other briefing. Google does not challenge the copyrightability of the source code it copied.
Contain Copyrightable Expression
Google’s argument that the APIs are unprotectable “methods of operation” again relies on
the First Circuit’s decision in Lotus v. Borland. But Lotus is not the law in the Ninth Circuit: “Whether the non-literal components of a program, including the structure, sequence and organization and user interface, are protected depends on whether, on the particular facts of each case, the component in question qualifies as the expression of an idea, or an idea itself.” Johnson Controls, Inc. v. Phoenix Control Sys., Inc., 886 F.2d 1173, 1175 (9th Cir. 1989).
Further, Lotus is inapposite. The consumer menu command hierarchy at issue in Lotus was far simpler than that of the Java APIs, which are comprised of thousands of elements, layers of complex interdepencies, and data structures. Google’s expert and employees concede the creativity and skill required to design them. (See Oracle Br. at 9, 12-13.)
In the 17 years since Lotus was decided, no other circuit court has adopted its reasoning, and several have rejected it. The Tenth Circuit, for example, has expressly disagreed with Lotus:
We conclude that although an element of a work may be characterized as a method of operation, that element may nevertheless contain expression that is eligible for copyright protection. Section 102(b) does not extinguish the protection accorded a particular expression of an idea merely because that expression is embodied in a method of operation at a higher level of abstraction.
Mitel, Inc. v. Iqtel, Inc., 124 F.3d 1366, 1372 (10th Cir. 1997). (See also ECF No. 339 at 9-11.)
Additionally, Google continues to distort Sega. The Ninth Circuit held:
We conclude that where disassembly is the only way to gain access to the ideas and functional elements embodied in a copyrighted computer program and where there is a legitimate reason for seeking such access, disassembly is a fair use of the copyrighted work, as a matter of law. Our conclusion does not, of course, insulate Accolade from a claim of copyright infringement with respect to its finished products.
Sega Enters Ltd. v. Accolade, Inc., 977 F.2d 1510, 1527-28 (9th Cir. 1993).
This case could hardly be more different. Unlike Sega, Oracle accuses Google’s finished
product of infringement. Unlike Sega, Google had no need to copy to gain access to any ideas and functional elements expressed in the Java APIs because they were published on Sun’s website, subject to copyright. And, whereas the Sega defendant copied a four letter code (S-E-G-A) consisting of only 20 to 25 bytes of data mandatory for its program to function with the Sega console, id. at 1515-16, Google copied API elements spanning 11,000 printed pages, and even its own expert concedes it would have been “technically possible” for Google to write its own APIs
for the 37 packages at issue. (Astrachan Dep. 251:21-252:2; 253:2-4.)
Atari Games Corp. v. Nintendo of Am., Inc., 975 F.2d 832 (Fed. Cir. 1992) is much more on point. The Federal Circuit applied Ninth Circuit law to find the key to Nintendo’s console was entitled to copyright protection because it contained a “unique sequence” of code, and “[e]xternal factors did not dictate the design.” Id. at 840. Atari could reverse engineer the code to learn its unprotected features, but could not replicate it without infringing the copyrights. Id. at 844.
Indeed, Google’s entire compatibility argument is a fallacy. Its copying was not required for compatibility. Android is not compatible with Java. Google copied the specifications to tap into the developer community Sun had created through years of work and investment. Google
took only those parts of the Java APIs it wanted and left out the rest, creating its own APIs in some instances and modifying others. The result is incompatibility and fragmentation.
3. The Court Can Refer Threshold Issues Of Fact To The Jury
Both parties agree it is unlikely the Court will need to refer threshold issues of fact to the
jury. The parties dispute only whether the Court can do so. (See Google Br. at 3-4, n.3.) Cases
in this Circuit have recognized that fact issues relating to copyrightability—in particular to
originality—may be submitted to the jury. See Kikker 5150 v. Kikker 5150 USA, LLC, 2004 U.S.
Dist. LEXIS 16859, at *27 (N.D. Cal. Aug. 13, 2004) (“Here the Court cannot say, as a matter of
law—although a jury may well say, as a matter of fact—that the originality required by the
copyright rules is lacking.”). One case has held disputed fact issues relating to originality must be
submitted to the jury. See N. Coast Indus. v. Jason Maxwell, Inc., 972 F.2d 1031, 1034 (9th
Cir.1992) (district court erred by not allowing issue of whether fashion design was sufficiently
similar to preexisting work to lack originality to go to jury). See also Comment to Ninth Circuit
Model Civil Trial Jury Instruction 17.2 (“Generally, whether a subject matter is copyrightable is a
question of law to be determined by the court.”) (emphasis added). Here, the Court could refer a
fact issue to the jury through properly structured jury instructions or verdict forms.
Google intentionally modeled the selection, arrangement and structure of the elements in
the 37 Android APIs at issue on their Java counterparts, and does not dispute copying the
source code files. (See, e.g., Google Br. at 3.) There is accordingly no need for the Court to determine whether the standard of substantial similarity or virtual identity applies, as Google contends. (See id. at 10.) “‘Substantial similarity’ is not an element of  copyright infringement.” Range Road Music, Inc. v. East Coast Foods, Inc., 2012 U.S. App. LEXIS 3173, 5 at *10 (9th Cir. Feb. 16, 2012). It is irrelevant where, as here, there is direct evidence of copying:
A showing of “substantial similarity” is irrelevant in a case like this one, in which the Music Companies produced evidence that the public performances entailed direct copying of copyrighted works. See id. (noting that a demonstration of substantial similarity is only necessary to prove infringement “[a]bsent evidence of direct copying”).
Id. (quoting Funky Films, Inc. v. Time Warner Entm’t Co., 462 F.3d 1072, 1076 (9th Cir. 2006).)
Further, Google is wrong that Oracle would need to show “virtual identity.” The Court
previously rejected Google’s attempt to apply a “virtual identity” standard on summary judgment.
(See ECF No. 433 at 11.) This case is nothing like Ets-Hokin v. Skyy Spirits Inc., where there was
a narrow range of protectable expression because there are “not very many” ways of shooting an
advertising photograph of a blue vodka bottle. 323 F.3d 763, 764, 766 (9th Cir. 2003). The range
of creative expression reflected in the APIs is exponentially more complex, with many different
possible structures and design choices extending across thousands of elements.
Google’s brief does not challenge originality, nor could it prevail on such a challenge.
B. Indirect Infringement
Google’s brief also does not address indirect infringement.
III. GOOGLE’S AFFIRMATIVE DEFENSES
A. Merger and scenes a faire
The parties disagree on burden. In the Ninth Circuit, merger and scenes a faire are treated
as defenses to infringement, and Google has the burden of proof. (See Oracle Br. at 10.) See also
Satava v. Lowry, 323 F.3d 805, 810 (9th Cir. 2003) (“The Ninth Circuit treats scenes a faire as a
defense to infringement rather than as a barrier to copyrightability.”) (citing Ets-Hokin).
Google cites no authority to the contrary. Instead it contends certain cases “implicitly”
placed the burden on the plaintiff. (See Google Br. at 9-10.) Google is incorrect. Google infers
the Ninth Circuit placed the burden on plaintiff in Sega because it “held there was no infringement by relying on the absence of evidence showing alternatives to the defendant’s copying.” (Id. at 9.) This is not true. Sega discusses the evidence in detail and concludes: “In summary, the record clearly establishes that disassembly of the object code in Sega's video game cartridges was necessary in order to understand the functional requirements for Genesis compatibility.” Sega, 977 F.2d at 1525-26. Defendant simply satisfied its burden of proof.
Google also argues that under merger and scenes a faire, the APIs as a whole are uncopyrightable. The Court rejected this sweeping approach in its order denying summary judgment. (ECF No. 433 at 9.) Google must make a showing as to individual elements. (See id.)
To prove merger, Google must show “the idea underlying the copyrighted work can be expressed in only one way, lest there be a monopoly on the underlying idea.” (Id. (quoting Satava, 323 F.3d at 812 n.5).) Google cannot possibly meet this burden as to the APIs as a whole, or entire categories or packages. Oracle is not claiming “a monopoly” on the idea of an API or an API package. It had innumerable design choices for the complex array of packages at issue and is claiming copyright protection for the particular choices it made as to the selection, arrangement, and structure of elements in them. This case is nothing like Allen v. Academic
Games League of Am., Inc., where the court found the rules of a game were not copyrightable because, “[t]o hold otherwise would give Allen a monopoly on such commonplace ideas as a simple rule on how youngsters should play their games.” 89 F.3d 614, 618 (9th Cir. 1996).
Similarly, for scenes a faire, Google must prove individual elements are “commonplace expressions [that] are indispensable and naturally associated with the treatment of a given idea.” (ECF No. 433 at 8 (quoting Swirsky, 376 F.3d at 850).) Google does not even try to show this. It cannot. The APIs express an elaborate set of interdepencies and relationships within and across different packages, that are neither commonplace nor preordained. (Oracle Br. at 2.)
Google turns scenes a faire on its head, arguing that because the Java APIs are widely
used by developers, and developers wish to have them available, they have become unprotectable
scenes a faire. (See Google Br. at 7-8.) Google miscites Computer Associates. Google’s citation
refers to external constraints faced by the plaintiff in developing its copyrighted work. See
Computer Assocs. Int’l, Inc. v. Altai, Inc., 982 F.2d 693, 710 (2d Cir. 1992) (court must “examine the structural content of an allegedly infringed program for elements that might have been dictated by external factors.”) (emphasis added). Google’s argument was rejected by the Tenth Circuit in Mitel. See Mitel, 124 F.3d at 1375 (“The court’s analytical focus should have remained upon the external factors that dictated Mitel's selection of registers, descriptions, and values.”).
Google continues to rely on Baystate Techs. v. Bentley Sys., 946 F. Supp. 1079 (D. Mass. 7 1996), a case from the First Circuit that is bound by Lotus. Baystate is contrary to Ninth Circuit law on merger and scenes a faire, and is factually distinguishable. (See ECF No. 339 at 17.)
B. Fair Use
The parties agree Google will need to make its fair use case to the jury. (See Google Br. at 11.) Although Google does not mention it, Google bears the burden of proof on fair use. See Perfect 10, Inc. v. Amazon.com, Inc., 508 F.3d 1146, 1158 (9th Cir. 2007).
C. De Minimis Copying
The parties agree the Court instructs the jury on what “work” to consider as the reference
for determining whether Google’s copying was de minimis, but disagree over who has the burden of proof. (See Google Br. at 14.) It is Google. See Merch. Transaction Sys., Inc. v. Nelcela, Inc., 2009 U.S. Dist. LEXIS 25663, at *61 (D. Ariz. Mar. 17, 2009) (“Thus, Nelcela will not escape liability unless it can show that the protectable elements in the Lexcel software constitute an
insignificant (quantitatively and qualitatively) portion or aspect of the Lexcel software.”). Google relies only on cases from outside the Ninth Circuit.
D. Equitable Defenses
The parties agree the equitable defenses are for the Court to decide. (See Google Br. at
14.) Google’s brief does not address the burden, but it is on Google. (See Oracle Br. at 14.)
The equitable defenses are baseless and there is insufficient evidence to justify bringing
them to the jury even for an advisory verdict. For example, while reasonable reliance is an
element of equitable estoppel, laches, and implied license, Google deliberately chose to develop
Android knowing it did not possess the required license, deciding to “Do Java anyway and defend
our decision, perhaps making enemies along the way.” (ECF No 398-6.)
Google argues that Apache Harmony and GNU Classpath “include implementations of all 37 of the API package specifications at issue, and have done so openly for years” and thus it was perfectly acceptable to copy the Harmony APIs. (Google Br. at 8.) But Google was well aware that Sun’s field-of-use restrictions prohibited it from using Harmony’s API specifications in
mobile devices. Google knew of Sun and Apache’s highly publicized dispute over this exact issue. Indeed, Google signed a public letter urging Sun to lift the restriction. But Sun never did. Google’s documents show that it knew using Harmony code did not give Android any kind of license from Sun or Oracle. Similarly, GNU Classpath is irrelevant because the GPL open source license has express restrictions that limit commercial use, which Google never followed.
Google’s equitable defenses are lawyer-crafted hindsight ― a patchwork of statements on which Google did not rely, and could not reasonably have relied, such as blog entries or internal statements it learned about later. Google’s documents reflect over and over that it knew the API specifications at issue were copyrighted and it could not simply take them. And during the period Google claims it believed it was free to go forward, the parties continued to negotiate a license. Even as late as August 2010, Mr. Lindholm told Google’s top executives it still needed a license, just as he and others had said five years before. Google’s equitable defenses are a sham.
The evidence relating to the equitable issues significantly overlap with willfulness. Proof of willful infringement can negate Google’s equitable defenses. Haworth, Inc. v. Herman Miller, Inc., 1993 WL 761974, at *3-4 (W.D. Mich. July 20, 1993); see also Wang Labs., Inc. v. Mitsubishi Elecs. Am., Inc., 1994 WL 471414, at *2 (C.D. Cal. Mar. 3, 1994), aff’d on other
grounds, 103 F.3d 1571 (Fed. Cir. 1997) (willfulness bears on equitable estoppel defense). The jury should not be asked to render any advisory verdict on these defenses, and the Court should defer its ruling on the defenses until after the third phase of trial.
IV. JAVA PROGRAMMING LANGUAGE VERSUS ORACLE’S JAVA API
The Court has asked the parties to “explain the mechanism by which the Java programming language is free and open for anyone to use but the APIs are not,” and “If the Android platform does not infringe Oracle’s copyrights by using the Java programming language,
IMPLEMENTATIONS AND DOCUMENTATION
how has Google infringed Oracle’s copyrights by using Java APIs?” (ECF No. 793.) The short answer is that Oracle owns the copyrights to its Java API specifications and source code; those rights are distinct from any rights Oracle has in the Java language, which are not asserted in this case. (Oracle’s statements to the Court on this issue can be found at ECF No. 87 at 8:5-9:8, ECF 5 No. 110 at 17:1-22:18, and ECF No. 445 at 12:9-17:9.)
The Java language and the Java API specifications are two different things. Only a very small number of elements in the Java APIs are required for the Java programming language. Oracle’s Java API specifications and source code implementations are original works of authorship, written partly in Java and partly in English. These works contain the expression of
the Java API designers’ ideas. Google copied expression from Oracle’s works into its own API specifications and source code. The English language may be free for anyone to use, but a book or poem written in English is copyrightable, and when others copy from it without permission, they infringe. Works written in the Java programming language are copyrightable as well.
Finally, the Court asks: “Did Sun statements that made the Java programming language available for all to use expressly reserve as to the Java APIs?” The answer is “yes.” Sun expressly and publicly asserted its copyrights and reserved its rights as to the Java APIs. There has never been any uncertainty on this point. The API documentation reserves all rights, and the API specification license only permits use on specified terms. See, e.g., JavaTM 2 Platform
Standard Edition 5.0 API Specification, http://docs.oracle.com/
javase/1.5.0/docs/api/index.html (“Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms.”); http://docs.oracle.com/javase/1.5.0/
docs/relnotes/license.html (specification license terms). The API specification license requires complete compatibility, no derivation from Oracle source code or binary materials, and passing Oracle’s compatibility test suites. Android fails on all counts.
Dated: March 23, 2012
MORRISON & FOERSTER LLP
By: /s/ Michael A. Jacobs
Attorneys for Plaintiff
ORACLE AMERICA, INC.
|Authored by: feldegast on Friday, March 23 2012 @ 11:57 PM EDT|
|so they can be fixed|
My posts are ©2004-2012 and released under the Creative Commons License
P.J. has permission for commercial use.
[ Reply to This | # ]
|Authored by: feldegast on Friday, March 23 2012 @ 11:58 PM EDT|
|please make your links clickable|
My posts are ©2004-2012 and released under the Creative Commons License
P.J. has permission for commercial use.
[ Reply to This | # ]
- HP Whitelist Grrrrrr's - Authored by: mcinsand on Saturday, March 24 2012 @ 05:39 AM EDT
- Why patent lawyers are clueless about the software industry - Authored by: YurtGuppy on Saturday, March 24 2012 @ 07:30 AM EDT
- Guy Steele's 1998 OOPSLA keynote: Growing a Language - Authored by: hardmath on Saturday, March 24 2012 @ 10:56 AM EDT
- FaceBook asserts a trademark claim to the words Book and Wall - Authored by: complex_number on Saturday, March 24 2012 @ 11:22 AM EDT
- CBC: Canadian bands from the '90s enjoying digital era freedom - Authored by: Anonymous on Saturday, March 24 2012 @ 01:39 PM EDT
- Iceland - Public sector has one year to flee from Microsoft and co - Authored by: Anonymous on Saturday, March 24 2012 @ 10:30 PM EDT
- 'Cyber-illusionist' Marco Tempest reveals his tricks - Authored by: Gringo_ on Sunday, March 25 2012 @ 01:28 PM EDT
- If the MPAA made cars - Authored by: Anonymous on Sunday, March 25 2012 @ 02:11 PM EDT
- Java on your system presents a serious security risk - Authored by: Anonymous on Sunday, March 25 2012 @ 03:21 PM EDT
- software patent holders steal from little kids - Authored by: Anonymous on Sunday, March 25 2012 @ 04:46 PM EDT
- I Won The Windows Phone Challenge, But Lost "Just Because" - Authored by: Anonymous on Monday, March 26 2012 @ 02:31 AM EDT
- IPad prior art -- Star Trek - Authored by: darkonc on Monday, March 26 2012 @ 04:52 AM EDT
- New Amiga to run Linux - Authored by: JamesK on Monday, March 26 2012 @ 08:31 AM EDT
- Earth's deepest spot desolate, foreboding - Authored by: Gringo_ on Monday, March 26 2012 @ 10:42 AM EDT
- Earth's deepest spot desolate, foreboding - Authored by: stegu on Monday, March 26 2012 @ 10:56 AM EDT
- Earth's deepest spot desolate, foreboding - Authored by: Anonymous on Monday, March 26 2012 @ 12:56 PM EDT
- Google News's deepest spot desolate, foreboding - Authored by: Anonymous on Monday, March 26 2012 @ 02:20 PM EDT
- Earth's deepest spot desolate, foreboding - Authored by: Anonymous on Monday, March 26 2012 @ 05:26 PM EDT
- Earth's deepest spot desolate, foreboding - Authored by: Anonymous on Monday, March 26 2012 @ 07:25 PM EDT
- Not all that Off topic, Oracle sued for wasting money on pointless litigation ... - Authored by: cricketjeff on Monday, March 26 2012 @ 11:21 AM EDT
- Certiorari Granted - Authored by: Anonymous on Monday, March 26 2012 @ 12:15 PM EDT
- Suggestions Please - Collaboration Web Site - Authored by: Anonymous on Monday, March 26 2012 @ 12:36 PM EDT
- More inconsistency from ZDNet - Batterygate! - Authored by: tiger99 on Monday, March 26 2012 @ 02:22 PM EDT
- Chinese Wall, Australian Style - Authored by: Anonymous on Monday, March 26 2012 @ 02:28 PM EDT
- Law and software are not that different - Authored by: Anonymous on Monday, March 26 2012 @ 07:00 PM EDT
|Authored by: feldegast on Friday, March 23 2012 @ 11:59 PM EDT|
|please make links clickable|
My posts are ©2004-2012 and released under the Creative Commons License
P.J. has permission for commercial use.
[ Reply to This | # ]
- PACER Fee Hike - What does this mean to Groklaw? (n/t) - Authored by: Anonymous on Saturday, March 24 2012 @ 01:29 PM EDT
- Hitler reacts to Mayo v. Prometheus - Authored by: Gringo_ on Saturday, March 24 2012 @ 11:22 PM EDT
- Hitler reacts to Mayo v. Prometheus - Authored by: SilverWave on Sunday, March 25 2012 @ 07:36 AM EDT
- Firefox switching to HTTPS Google search by default (and the end of referrer leakage) - Authored by: JamesK on Sunday, March 25 2012 @ 07:38 AM EDT
- Sign of the Times - Authored by: Anonymous on Sunday, March 25 2012 @ 03:00 PM EDT
- AOL Said to Hire Evercore to Find Patent-Portfolio Buyer - Authored by: stegu on Monday, March 26 2012 @ 08:46 AM EDT
- A Matter of Patent Law Despotism: The Nonsensical Reasoning in Mayo - Authored by: cybervegan on Monday, March 26 2012 @ 05:08 PM EDT
- Supreme Court kills DNA (many/most) DNA patents - Authored by: Anonymous on Monday, March 26 2012 @ 06:44 PM EDT
- How Linus Torvalds Helped Bust a Microsoft Patent: bad Groklaw link - Authored by: Anonymous on Tuesday, March 27 2012 @ 05:43 PM EDT
|Authored by: feldegast on Saturday, March 24 2012 @ 12:00 AM EDT|
|Thank you for your support|
My posts are ©2004-2012 and released under the Creative Commons License
P.J. has permission for commercial use.
[ Reply to This | # ]
|Authored by: Anonymous on Saturday, March 24 2012 @ 12:11 AM EDT|
|Google: This is ridiculous. Stop with this farce, admit to the court and to |
the world that this lawsuit was bogus from the get-go, and pay our legal
Oracle: No! This is still a stickup! Give me your wallet or I'll squirt...
er... I mean shoot!
Bah! What a soap opera this is!
[ Reply to This | # ]
- I can see the settlement meeting now... - Authored by: Anonymous on Saturday, March 24 2012 @ 12:43 AM EDT
- Does the judge read Groklaw? - Authored by: Anonymous on Saturday, March 24 2012 @ 08:23 AM EDT
- Not scary! - Authored by: tiger99 on Saturday, March 24 2012 @ 09:23 AM EDT
- Not scary! - Authored by: Anonymous on Saturday, March 24 2012 @ 11:14 AM EDT
- Not scary! - Authored by: Anonymous on Saturday, March 24 2012 @ 04:01 PM EDT
- Not scary! - Authored by: Anonymous on Saturday, March 24 2012 @ 04:06 PM EDT
- Not scary! - Authored by: PJ on Saturday, March 24 2012 @ 04:59 PM EDT
- astroturf - Authored by: IANALitj on Saturday, March 24 2012 @ 06:16 PM EDT
- astroturf - Authored by: Anonymous on Monday, March 26 2012 @ 09:19 AM EDT
- Not scary! - Authored by: PJ on Saturday, March 24 2012 @ 05:02 PM EDT
- Correlation != Causality (n/t) - Authored by: Anonymous on Saturday, March 24 2012 @ 03:32 PM EDT
- Give me your wallet or I'll squirt - Authored by: Wol on Saturday, March 24 2012 @ 12:49 PM EDT
- "The phrase can be considered offensive, particularly to American Indians." - Authored by: webster on Saturday, March 24 2012 @ 02:16 PM EDT
|Authored by: Anonymous on Saturday, March 24 2012 @ 06:13 AM EDT|
|My mind hurts after trying to comprehend Oracles position.|
If I have a Java source code I can use use Harmony to compile it. This imply
that it can be run by a JVM, but it does of course depend on the capabilities of
the JVM. The hardware and operating systems must support the provided packages.
In the case of Android there is no such JVM and somehow Oracle distort this into
the idea that this means Google infringed on the API specifications.
I simply don't get it...if Oracle mean that things below the java namespace is
not free to use and that a third party (remember much of android was not written
by google) applying a separate tool outside both Javac and JVM to process these
written to disk bytecodes make Google infringe Oracles copyright this pretty
much means you can not ever write import into your program without exposing
yourself to intruding on Oracles copyright. If Oracle prevails we are basically
looking at the perfect storm in the software world...the patent battles would be
nothing compared to the reduced interoperatibility if copyrights on APIs are
[ Reply to This | # ]
|Authored by: Anonymous on Saturday, March 24 2012 @ 06:33 AM EDT|
|Only a very small number of elements in the Java APIs are
required for the
Java programming language.|
Either the language is free and open to
use, and therefore the
API's are as well (because Oracle admits they are
or Java is not free and open to use.
[ Reply to This | # ]
- Oracle admits the API is required for the Java language - Authored by: Anonymous on Saturday, March 24 2012 @ 08:26 AM EDT
- Oracle admits the API is required for the Java language - Authored by: Ian Al on Sunday, March 25 2012 @ 07:24 AM EDT
- That would be zip, doo dah, nada - Authored by: Anonymous on Sunday, March 25 2012 @ 08:21 AM EDT
- That would be zip, doo dah, nada - Authored by: PJ on Sunday, March 25 2012 @ 04:05 PM EDT
- That would be zip, doo dah, nada - Authored by: PJ on Sunday, March 25 2012 @ 04:09 PM EDT
- That would be zip, doo dah, nada - Authored by: PJ on Sunday, March 25 2012 @ 04:11 PM EDT
- That would be zip, doo dah, nada - Authored by: Ian Al on Monday, March 26 2012 @ 04:55 AM EDT
- on the nail.... - Authored by: Anonymous on Monday, March 26 2012 @ 08:28 AM EDT
- on the nail.... - Authored by: Anonymous on Monday, March 26 2012 @ 09:33 AM EDT
- correction - Authored by: Anonymous on Monday, March 26 2012 @ 04:18 PM EDT
- And while I'm enjoying myself..... - Authored by: Anonymous on Monday, March 26 2012 @ 09:39 AM EDT
|Authored by: hardmath on Saturday, March 24 2012 @ 06:47 AM EDT|
|This seems to be Oracle's response to Judge Alsup's request for briefings by the|
parties on how the Java APIs might be protected given that the Java programming
language is not. On that narrow topic Oracle's legal team must be getting an
aerobic benefit from all the hand waving: they are different because they're
different, and no reasonable person can argue otherwise.
In the Equitable Defenses section, Oracle explicitly identifies Sun's
field-of-use restrictions as the reason Google cannot rely on a license to
Harmony, the Apache implementation of Java, as a basis to copy the APIs.
Despite the "highly publicized" dispute between Sun and Apache (in
which per-acquisition Oracle sided with Apache, a fact conveniently omitted or
perhaps alluded to with their comment about Google not relying on "blog
entries or internal statements"), Sun never took legal action to enforce
said restrictions, and their statements to Apache were equivocal. The only
clear fact is that Sun failed to license the TCK (Technology Compatibility Kit)
for Java SE to Apache. Such omission is scarcely a resounding vindication of
those field-of-use restrictions.
Although not as directly relevant to Google's use of the APIs, Oracle's claim
that the GNU Classpath GPL license "has express restrictions that limit
commercial use" strikes me as misstatement, one to which we Groklawinians
will of course take serious offense.
Do the arithmetic or be doomed to talk nonsense. -- John McCarthy (1927-2011)
[ Reply to This | # ]
|Authored by: Anonymous on Saturday, March 24 2012 @ 07:25 AM EDT|
Who is going to touch any Oracle Software with a 10 foot
pole after this? (I sure as hell am not going to)
Who wants to take the risk being sued like this even if you
do win at the end of the day? Who has that kind of time and
money for Lawsuits.
What absurd claims is Oracle going to make next? (like they
own the API to databases and all derived works or something
Isen't Java dead already and beginning to smell? There ARE
other programming languages, is this really worth it?
(personally I think RDMS are dead too and they have been
smelling for a very long time, at least since object
relational mapping came up, but probably much longer, they
never actually worked well or met performance
requirements... SQL and the architectural disconnect to
modern programming languages always sucked ... but I
Is the Judge concerned this case is going to go Nuclear?
(I would be... isen't it so that he sort of looses no
matter who wins? possibly being exposed to harsh criticism
from the loosing party and the public onslaught from
surrounding community). Aren't the politcal stakes from this
case quite high?
[ Reply to This | # ]
|Authored by: Anonymous on Saturday, March 24 2012 @ 07:59 AM EDT|
Possible settlement terms could be:
- Some sort of lump sum cash
settlement from Google. Google pays a fixed sum (e.g. 50 million USD) and
Android Dalvik becomes a "fully licensed" Java when used in mobile, embedded,
and other similar devices. Oracle would save face and Google would be free to
continue on as before.
- Android Dalvik "officially" becomes a joint
Google and Oracle project, although Oracle may not actually participate. Again,
Oracle saves face and Google continues on as before. Oracle gets the ability to
claim big numbers for "Java" adoption in their advertising.
gets a fixed payment for a limited term (e.g. 5 years) license. Google continues
on as before, while simultaneously deprecating Dalvik/Java and promoting a new
unencumbered language (e.g. Dart) to take its place. In this case Oracle "wins"
on paper but loses in the long term as the relevance of Java is decreased.
Something to keep in mind is that not all Android software
uses Dalvik/Java. Some developers are writing their software in C or C++ so they
have a common codebase for other phones (e.g. iPhone) instead of re-writing
everything from scratch for each platform. This is especially true for many of
the larger and more complex apps.
It is convenient for Google
to use the Java language with their platform, but it's not essential.
Developers will write apps for Android because it's the leading phone OS. When
Android first started out that wasn't the case, but things have changed a lot
since then. Consumers don't know or care about Java, they just care if the phone
Oracle's real bargaining position here is that they can
create a temporary transitional headache for Google, but long term there is
nothing essential about the Java language itself. In the early days of Android,
Java was the language that most phone developers knew. Since then there has been
a large influx of developers from other fields who would welcome the ability to
rather than Java. Google would just need a reasonable strategy to gradually
transition from Java to something else.
What might help Google at this
point would be to issue some quick public demos showing some other easy to use
They don't have to make any promises about actually making it available on
Android, they just need to give Oracle a short, sharp reminder that Java isn't
[ Reply to This | # ]
|Authored by: Ian Al on Saturday, March 24 2012 @ 01:13 PM EDT|
|In their motions Oracle accuse Google of copying elements of 37 out of 160+ API
packages. Where is their proof that those copied elements went into 37 Android
packages that, in their specification, 'have substantially the same selection,
arrangement and structure' of APIs as the 37 equivalent J2SE package
Have the expert reports listed the 37 package
specifications in JavaSE and Android and given examples of how the
specifications contain substantially the same selection, arrangement and
If they were able to show that, then they should have
claimed that Google had substantially copied the specification selection,
structure of all 37 packages in their complaint.
is, unless they only thought up selection, arrangement and structure of the API
Specification after they realised how few 'elements' had actually been copied.
I have searched the amended Oracle complaint for each word and have
found the following:
The infringed elements of Oracle America’s
copyrighted work include Java method
and class names, definitions, organization,
and parameters; the structure, organization and content
of Java class libraries;
and the content and organization of Java’s documentation.
not accuse Google of copying the selection, arrangement and structure of the API
specification in their complaints. Are they not supposed to request a further
amendment to their complaint following discovery, if the original two miss the
Software Patents: It's the disclosed functions in the patent, stupid!
[ Reply to This | # ]
|Authored by: Anonymous on Saturday, March 24 2012 @ 04:14 PM EDT|
|My impression from reading Oracle's brief is that they aren't even trying to win|
on copyrights. It does not look like a serious effort to me. (IANAL)
Judge Alsup asked some questions. Some obvious inferences are that the questions
reflected his concerns and it would be a good idea to address those concerns in
more than an offhand way.
Question #1: “[E]xplain the mechanism by which the Java programming language is
free and open for anyone to use but the APIs are not”
Oracle's Answer: They are separate things. Oracle said the API's are not free.
Oracle isn't saying the same thing about the Java language, at least not here.
That's a mechanism?
Question #2: “If the Android platform does not infringe Oracle’s copyrights by
using the Java programming language, how has Google infringed Oracle’s
copyrights by using Java APIs?”
Oracle's Answer: Google did that by doing it.
I'm sure the judge will be satisfied with that explanation!
Yes, I'm paraphrasing, but not that much. Meanwhile, Google is the party that
could have gotten away with glib responses if either side could ("There is
no such mechanism" and "We didn't infringe; It would be logically
impossible to do that.") but Google gave a much better answer than the
minimum necessary in its brief.
[ Reply to This | # ]
- Throwing in the towel? - Authored by: Anonymous on Saturday, March 24 2012 @ 04:42 PM EDT
- Throwing in the towel? - Authored by: PJ on Saturday, March 24 2012 @ 04:57 PM EDT
- More... - Authored by: Anonymous on Saturday, March 24 2012 @ 07:30 PM EDT
- More... - Authored by: Anonymous on Saturday, March 24 2012 @ 10:31 PM EDT
- Doh! - Authored by: Anonymous on Sunday, March 25 2012 @ 01:52 PM EDT
|Authored by: sproggit on Saturday, March 24 2012 @ 04:58 PM EDT|
|I've read the Oracle brief and it leaves me largely skeptical, save perhaps for|
Oracle claim that even after being advise of a copying infringement (comprising
some 11 files), that Google have failed to remove them and continue to make them
available for download.
I dare say that a detailed search of Google's Android downloads may yield the
truth of it, but I wonder if the precise language used by Oracle is telling. I
am reminded of the SCO vs IBM case. SCO accused IBM of copyright infringement
and then refused to be specific as to what had been copied. That nonsense went
on for years. The same situation may be happening here.
Oracle gives a clue as to some copied code. Google removes the code to which
they were directed, but in truth Oracle had already discovered more but not been
precise or helpfully complete when specifying it for Google. Thus, Google did
not remove all the code.
This creates a situation in which Oracle can then truthfully go back to the
court with the content of this letter. To paraphrase: "We told Google that
they were distributing our copyright material. They're still doing so. This is
just typical of this willful infringer..."
My reference to willful infringement here is entirely deliberate. It occurred to
me when I read that submission that Oracle could easily use an argument like
this to push for willful infringement and thus secure greater damages in the
event that they prevail at trial.
My question is, would this be allowed by the Court? If the original Oracle
disclosure to Google was deemed to be incomplete, imprecise or otherwise vague,
would that be sufficient to permit the Court to overturn any finding of willful
infringement with the view that Oracle were insufficiently transparent when
making their complaint.
Does anyone have a view as to the approach Oracle have taken here. Are they
being transparent, or is this the BSF tactic of claiming that there is an
infringing needle in a haystack of code? Also, who gets to make the
determination as to whether or not the details of infringement, as provided by
Oracle, were sufficiently detailed and complete? Would that be the Court or the
[ Reply to This | # ]
|Authored by: Ian Al on Sunday, March 25 2012 @ 11:14 AM EDT|
|PJ found this Oracle description of the various Javas.|
Here is what Sun said
(OraGoogle-696-3) they would do with ME at their presentation to Google about a
Unlike Java SE, Java ME is not a piece of software, nor is it
a single specification. This difference can be confusing, even for developers
who are already familiar with Java SE. Instead, Java ME is a platform, a
collection of technologies and specifications that are designed for different
parts of the small device market. Because Java ME spans such a variety of
devices, it wouldn't make sense to try to create a one-size-fits-all
Java ME, therefore, is divided into configurations,
profiles,and optional packages. Configurations are specifications that detail a
virtual machine and a base set of APIs that can be used with a certain class of
device. A configuration, for example, might be designed for devices that have
less than 512 KB of memory and an intermittent network connection. The virtual
machine is either a full Java Virtual Machine1 (as described in the
specification) or some subset of the full JVM1. The set of APIs is customarily a
subset of the Java SE APIs.
A profile builds on a configuration but
adds more specific APIs to make a complete environment for building
applications. While a configuration describes a JVM1 and a basic set of APIs, it
does not by itself specify enough detail to enable you to build complete
applications. Profiles usually include APIs for application life cycle, user
interface, and persistent storage.
An optional package provides
functionality that may not be associated with a specific configuration or
profile. One example of an optional package is the Bluetooth API (JSR 82), which
provides a standardized API for using Bluetooth networking. This optional
package could be implemented alongside virtually any combination of
configurations and profiles.
'Open Source Distribution'
The Dalvik platform is very
efficient and secure with a VM for every app. The Java ME requires lots of
optimisation in order to suit the device. As you can see, that is where Sun
expected to make money off of Java ME.
Google would use
either the Apache licenced Harmony code or the GPL licensed
'Sun's Commercial Distribution' (on the top of Harmony or
'Sun value added features, Qualified and tested on various
HW, Global support
and maintenance, Technical Consultation and Documentation,
parties components integrated, Indemnification' (of Google by
'Sun Customisation, Porting, Testing, and Integration'
'Source and/or binaries targeted to customer specific platforms, OS, chipset,
native drivers, etc., 3rd party software components, Device quality testing
tools and services, Porting services, Mobile Platform Customisation.'
The revenue that Sun expected for 2009 was,
87M open source
installations Nothing, nada, squat
73M Customised Source $292M
39.5M Customised Binary $118.5M
35M Commercial Source
Unlike Java ME. Google were
able to make a one-size-fits-all platform and were able to make it
possible for developers used to JavaSE to code in the Java language for
I assume that the combination of monetisation and the need to
customise Java to get adequate performance was the reason that Sun did not want
Java SE on mobile devices. That is never going to happen, now, because Sun and
Oracle had an inadequate product and were too greedy.
Software Patents: It's the disclosed functions in the patent, stupid!
[ Reply to This | # ]
|Authored by: webster on Monday, March 26 2012 @ 12:25 AM EDT|
[Preamble for oneself with apologies to the coders. This
actually took some research.]1
is that 1) API's are not copyrightable material by precedent.
There can be no direct infringement by use of API's. If this is so, what
follows is all unnecessary, as is a trial.
Google's back-up position is
2) that if the API's are copyrightable material, they
have a license from ASF (aka Apache) to use (and distribute)
the JAVA API's. ASF has a license to use the JAVA API's. [Is there a license
from another source?]
If Oracle [and/or SUN hereafter] is claiming
"indirect infringement," then Google's position is that Oracle has to prove it,
as they must everything as plaintiff, i.e. that Apache, a third party, infringed
their API copyrights. Oracle hates this because ASF does have a
This then leads us to the Oracle-ASF controversy in which
Oracle merely withheld the TCK and the JAVA name from ASF. Oracle had no
problem with ASF's use of JAVA and its API's so long as they kept to "SUN-set"
limits. And that limit was a "field of use" restriction barring mobile use.
Certainly certifying the "JAVA" name and using the TCK have great value, but not
so much as ASF could get themselves to pay Oracle. So we have the JAVA-esque
Harmony that can't be 'caid or sertified' as JAVA to the disdain of JAVA purists
and impatient PHB's. So Harmony of ASF limps along without being able to use
the trade name JAVA with its product and without being able to certify JAVA
compatibility with an Oracle TCK. ASF dare not. Apache quit the Executive
Committee of the Java Community Process (JCP) over this. Remember the Monopoly
tried to embrace, extend and extinguish JAVA; the Monopoly had to stop and pay
damages. Oracle is normally vigilant in their control.
ASF because they saw the burgeoning mobile field and wanted to reap their just
desserts from their JAVA assets. If you wanted to use these assets in the
mobile "field of use," you had to pay. Everyone understands this. Everyone
also understands that you can use versions the JAVA language and its API's to
write programs, but what good are they if you can't keep them up to JAVA snuff,
certified per the name and test kit. Oracle thought that opening up the
language with its necessary API's would encourage its widespread use and
consequent needs for their products and services. This appeared to work on the
desktop, but mobile was a new, possibly fertile frontier. Oracle wanted to
catch a wave of opportunity that a mobile platform presented. Java could easily
adopt to mobile if the price was right. It never was. There were
Apple was the first to refine the crude, mobile
platform. They showed what astounding things could be pumped out with artistic
design and expansive functionality. Google jumped quickly behind. Oracle
remained fossilised in the flash-eons of the moble age. Despite a dynamic JAVA
line, it could never capitalize on it.
If Oracle had said from the
beginning, "Don't use our API's, we'll sue you," No one would have used them.
But they let ASF have and distribute the language and the API's in Harmony, and
that is what they did. Oracle left a loophole. Google found
it. They use the API's and little or nothing else. They care nothing for the
Java language, JRE or the TCK. Google has their own in Android and just
transform the Java API's to Android API's.
So Oracle who has given the
world their API's in hopes that it uses them and becomes beholden to their
products, is miffed that Google has taken just their API's and ignored their
other products. They want them back with compensation.
In order not to
be left behind, Oracle has tried this desperate claw-back of their API's from
Google. They wish they can close the loophole.
There is no factual
dispute about these API's; Oracle owns them and Google uses them. Google has a
license. Will the Judge make a summary
*An ambiguity or inadequacy
in the law or a set of rules.
1[JAVA is a system of parts.
JRE is JAVA Runtime Environment (1). Computer manufacturers put this program on
every type of computer so that it can run programs written in the JAVA
programming language (2). This keeps the programs from having to be written for
every version of every operating system. The JAVA people keep up with that.
They like to say "Write Once, Run Everywhere." It is very handy and valuable.
The JAVA language has some libraries or API's [Application Programing
Interfaces] (3) that hook in or shake hands with the JRE. The JRE recognizes
the API's as invoked by the program and its variables. The API library
prescribes the vocabulary, definitions, grammar, punctuation, and spacing, as it
were, that the programmers must follow. Programmers can write a JAVA program
that can work on any type of computer with any operating system.
can't develop a program very well by writing it in JAVA and running it on a
machine with JRE. If a programmer doesn't do it just right, it won't run and it
won't tell him why. For testing a programmer needs a technology compatibility
kit (TCK)(4). The JAVA people have some of these for various JAVA products with
licenses and a prices.]
[ Reply to This | # ]
- Loophole* - Authored by: Anonymous on Monday, March 26 2012 @ 01:17 AM EDT
- Loophole* - Authored by: Anonymous on Monday, March 26 2012 @ 03:08 AM EDT
- Loophole* - Authored by: Anonymous on Monday, March 26 2012 @ 03:48 AM EDT
- Links? - Authored by: stegu on Monday, March 26 2012 @ 08:54 AM EDT
- Known Bugs - Authored by: Anonymous on Monday, March 26 2012 @ 02:17 PM EDT
- Loophole* - Authored by: Anonymous on Monday, March 26 2012 @ 03:27 PM EDT
- No, you're the one overanalyzing it - Authored by: pem on Monday, March 26 2012 @ 11:55 AM EDT
- Loophole* - Authored by: Anonymous on Monday, March 26 2012 @ 02:04 AM EDT
- Loophole* - Authored by: bugstomper on Monday, March 26 2012 @ 07:16 PM EDT