|
Authored by: PolR on Monday, June 03 2013 @ 05:25 PM EDT |
If you see something wrong. [ Reply to This | # ]
|
- posting -> posing - Authored by: Anonymous on Monday, June 03 2013 @ 05:33 PM EDT
- SDK - Authored by: PolR on Monday, June 03 2013 @ 05:46 PM EDT
- SDK - Authored by: PJ on Monday, June 03 2013 @ 06:41 PM EDT
- Emporor -> Emperor - Authored by: Anonymous on Monday, June 03 2013 @ 06:09 PM EDT
- Chris Sontage --> Chris Sontag - Authored by: lnuss on Monday, June 03 2013 @ 06:32 PM EDT
- 404 Broken link to Groklaw's copy of CCIA pdf at start of article [N/T] - Authored by: bugstomper on Monday, June 03 2013 @ 07:55 PM EDT
- Not so. It's about is about 37 Java APIs -> Not so. It's about 37 Java APIs - Authored by: MDT on Tuesday, June 04 2013 @ 12:43 AM EDT
- nauseum ->nauseam - Authored by: Anonymous on Tuesday, June 04 2013 @ 08:45 AM EDT
- Correction: "header files" only C, C++, not Java - Authored by: Anonymous on Tuesday, June 04 2013 @ 11:43 AM EDT
|
Authored by: Anonymous on Monday, June 03 2013 @ 05:25 PM EDT |
I checked with tech folk who *do* know, and I believe this is
correct information. Mr. Spafford writes (or maybe Mr. Hollaar contributed this
part):
An API thus consists of two different types of source
code: a design that prescribes the expected behavior and structure of the API;
and an implementation that performs the design.
In the
latter part of the sentence, I think he's conflating an API with an
SDK.
An API is a specification of the interface used to integrate with
or make use of libraries or services. The API is usually expressed as source
code, but only in the sense of header files, not in the sense of implementation.
From the perspective of the person writing an application that
interfaces with an API, you are sort of correct, but in the perspective of the
person writing a new implementation of the API itself, which Google did with
Dalvick, I believe that he is correct.
From the perspective of the
person writing an implementation of the API itself, you would have to write the
headers that define the entry points, and then you would have tio write the code
that actually implements the functions defined by the entry points.
If
Google only wrote the headers that defined the API entry points and provided an
SDK, then there would be nothing behind the entry points to actually do any of
the work.[ Reply to This | # ]
|
|
Authored by: PolR on Monday, June 03 2013 @ 05:26 PM EDT |
This jobs needs to keep going. Big thanks to the volunteers. [ Reply to This | # ]
|
|
Authored by: PolR on Monday, June 03 2013 @ 05:28 PM EDT |
You know the drill. [ Reply to This | # ]
|
- Surface RT’s now-free keyboard nicely sums up Microsoft’s tablet failure - Authored by: DannyB on Monday, June 03 2013 @ 06:09 PM EDT
- JOY! Joy! joy! The 500 ton Prenda Shoe Has Dropped - Authored by: Anonymous on Monday, June 03 2013 @ 07:23 PM EDT
- Introducing Windows Red: A serious plan to fix Windows 8 - Authored by: Anonymous on Monday, June 03 2013 @ 07:33 PM EDT
- Equity Boom Built on Quicksand - Authored by: Anonymous on Monday, June 03 2013 @ 08:41 PM EDT
- California To Wal-Mart: Enough! No More Taxpayer Subsidized Profits For You - Authored by: Anonymous on Tuesday, June 04 2013 @ 02:03 AM EDT
- Supreme Court Favors Ex-Wife Over Widow In Battle For Life Insurance Proceeds - Authored by: Anonymous on Tuesday, June 04 2013 @ 02:29 AM EDT
- found illegal Monsanto crop - Authored by: Anonymous on Tuesday, June 04 2013 @ 05:25 AM EDT
- Windows 8 continues to fail - Authored by: Gringo_ on Tuesday, June 04 2013 @ 08:18 AM EDT
- President Obama Comes Out Strongly Against Patent Trolls; Here Are The Details - Authored by: DannyB on Tuesday, June 04 2013 @ 08:50 AM EDT
- 3 judges nominated for Federal Appeals Court for the Federal Circuit - Authored by: Anonymous on Tuesday, June 04 2013 @ 11:51 AM EDT
|
Authored by: PolR on Monday, June 03 2013 @ 05:29 PM EDT |
You know the drill for this too. [ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, June 03 2013 @ 05:54 PM EDT |
That explains Ellison's actions.
Wayne
http://madhatter.ca
[ Reply to This | # ]
|
|
Authored by: stegu on Monday, June 03 2013 @ 06:03 PM EDT |
Prohibiting competitors from accessing de facto standard interface
specifications would lock users into a particular operating system or network
software environment, and would inhibit the transfer of data between users with
different computing environments.
Now, wouldn't that be a wet
dream for Microsoft? Let's hope it stays a dream, or we can kiss all software
interoperability goodbye.
What I don't think they are considering is the
possibility that if people are not allowed to get anything in or out of
Microsoft's walled garden, cannot communicate over the walls with anyone outside
or use anything but Microsoft's tools to do the gardening while inside, people
might stop coming altogether and leave the garden to rot.
[ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, June 03 2013 @ 06:13 PM EDT |
Clearly, SCO's middle name must begin with a 'C'. "Bunk" doesn't
work.
I'm looking for a synonym of "bunk" that begins with 'C'. The only
one I've come up with so far violates PJ's comment policy...
MSS2[ Reply to This | # ]
|
|
Authored by: PJ on Monday, June 03 2013 @ 07:52 PM EDT |
Woah. Can you rephrase please? [ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, June 03 2013 @ 09:07 PM EDT |
...or are the arguments as one-sided as they apprear? [ Reply to This | # ]
|
|
Authored by: hedronist on Monday, June 03 2013 @ 10:28 PM EDT |
As I started reading this and came across "... the amici supporting Oracle,
including Eugene Spafford and the the BSA ..." I felt my mind warp, as if a dose
of pure 750mcg LSD had finally kicked in after 30 years.
I haven't tracked
Spafford in a long time, but I remember in Olden Times on Usenet when I had a
lot of respect for him. All of that went up in a puff of pixie dust.
I've
promised my nieces and nephews that I won't turn into that guy, you know,
the crazy old geezer geek who embarrasses them at their wedding, but when I see
people who, at least at one time, appeared sane and human (Joy, McNealy,
Wegbreit, Simonyi, and now Spafford) turn into Somethig Else®, I wonder how long
it will be before I start drooling from one side of my mouth and defending
Charles Simonyi (who I used to work for). [ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, June 04 2013 @ 05:20 AM EDT |
m$ would not only benefit from a copyright law that favours their monopoly to
control who can interoperate with windows. The other goal they are achieving by
attacking linux, android and java is to kill off their main competition in the
different market segment.
If it was not for linux, android and java, then what would have been the
alternative to microsoft products? I can't see any serious.
So, PJ, the idea you had for an investigation of M$ anti-competitive behaviour
by lending patents to trolls to attack their main competition is very good IMO.[ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, June 04 2013 @ 05:23 AM EDT |
Re: Microsoft's words, in:
Congress has determined that computer
software is eligible for copyright protection. 17 U.S.C. § 101. Copyright
protects computer software in several important respects. It covers the literal
lines of code that comprise software, generally preventing their reproduction or
distribution without permission from the rightsholder. But copyright also covers
certain non-literal elements of the software as well. For example, the
"structure, sequence, and organization" of a software product -- above and
beyond the 1s and 0s that make up the program at its literal level or the exact
words of the human-readable source code -- can, in some instances, be protected
by the copyright in the work. As a result, copyright infringement in a software
case can occur even when the defendant did not copy the underlying developers'
code, where the defendant has copied some other, non-literal element of the
software subject to copyright protection.
Microsoft has just
declared a full 100% of its fan base amongst software developers and development
firms, guilty of copyright infringement.
It's also defined its own policy of
"Embrace, Extend, Extinguish" to be copyright infringement. Don't know how their
lawyers will take that, since it's their lawyers who have made these highly
incriminating public statements, where they can't be withdrawn unless publicly
repudiated.
Wesley Parish [ Reply to This | # ]
|
|
Authored by: Ian Al on Tuesday, June 04 2013 @ 05:51 AM EDT |
It is customary to provide light-pulls rather than light switches as the control
interface to the lighting in a bathroom. Otherwise, you can touch the control
and have an excessively intimate acquaintanceship with the controlled
electricity, when there is moisture present.
APIs don't exist. They are abstract ideas. You can write down the API
definitions as a text in order that programmers can read about the abstract
ideas and use them in their programs. The compiled programs interwork in a
binary way with Application Binary Interfaces. You can't touch those, either.
They are abstract ideas used by the folk implementing the APIs and other
inter-program relationships.
APIs, ABIs, libraries, jump tables and the like are all intangible, abstract
ideas. They are an agreement between the authors of two or more programs. The
programs do not access interfaces to other programs. Instead, the programmers
agree that, when the two programs are in memory, that a program may leave data
at agreed locations in memory and then cause a processor jump instruction to
another agreed location at which the machine instructions for the second program
start.
The full agreement is that the second program will manipulate the data put into
the memory locations by the first program in an agreed manner and will place any
results of the data manipulation in another agreed set of memory locations.
The API is the agreement between program writers and the ABI is the place in
memory where the agreement is executed.
To the processor, one memory location is much like another. Only the addresses
are different. It is only abstract ideas in programmers' minds that makes them
functionally different.
If you are a programmer and you don't remember having made an agreement to the
use of specific memory locations then you are right. The memory addresses used
as the basis for the agreement are virtual. They will change from one computer
session to the next and from one computer to the next.
As you rise through the levels from the BIOS (or equivalent) to the Operating
System kernel, to the OS user space, to the dependent programs and to the
sub-dependencies (Java programs running on Java are dependencies and
sub-dependencies of the Operating System), you rise through a complex system of
programming agreements. Most are hidden agreements that are not seen by
application programmers. Application programmers, typically, only see the most
abstract agreement in computer science; the API.
Since APIs, ABIs, libraries and jump tables are all abstract ideas, they don't
exist in the material world. The agreements can be written down. The agreement
writings are expression fixed in a medium and, thus, potentially subject to
copyright protection.
If a lawyer writes an agreement document, it will be factual and procedural.
Lawyers don't get paid for creative expression. The agreements are not
protectable by copyright. The writers of API and ABI definitions are not paid
for creative expression, either. Why would they be? They are paid for the
written terms of the agreement.
Neither APIs nor ABIs are protectable by copyright. Any creative expression
added to the written agreement is an illegal attempt to avoid copyright law and
make false copyright claims.
---
Regards
Ian Al
Software Patents: It's the disclosed functions in the patent, stupid![ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, June 04 2013 @ 05:55 AM EDT |
One of the key reasons why Oracle can do their tap-dance is that old school APIs
was something you declared in separate header files. Lots of the discussion even
here on Groklaw keep that notion when reality is that Java and similar languages
have no seperate header files.
The API of a Java function is not found in separate files but is any code line
that start with the word public.
There is still need for having a seperate documentation file that can be
exchanged with other developers, but in the Java case that file is generated
from the source-code by the tool javadoc that comes with the JavaSDK instead of
header file written by the API designer.
I think talking about API and header files as the same thing makes
communications with the lawyers harder. Header files is only one way to
communicate APIs and it is bad to confuse these when the language at question do
not use header files.[ Reply to This | # ]
|
|
Authored by: tiger99 on Tuesday, June 04 2013 @ 06:02 AM EDT |
Funnily enough, a few people actually do just that, including Steve Gibson, who produces some
security tools that every Windoze user needs. It is not necessarily as tedious a
process as some would have us believe.I write all of my Windows
and other utilities in 100% pure assembly language. This results in the
smallest, fastest, and most efficient programs possible. I created the "Small is
Beautiful" kit to help interested assembly language programmers get started
writing Windows programs in pure assembly language. Link[ Reply to This | # ]
|
|
Authored by: maroberts on Tuesday, June 04 2013 @ 07:47 AM EDT |
An SDK is a Software Developers Kit, it includes (but is not limited to) APIs,
documentation, tools to assist interfacing with the product concerned, libraries
of the actual code etc.
Some of the SDK is no doubt copyrightable, but the APIs themselves should not
be.[ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, June 04 2013 @ 09:08 AM EDT |
The actual "goes-into" and "comes-out-of" aren't sufficient
for implementing all functions. While something like "sin(float)" is
apparently obvious, some devious language designer could specify that
"sin(float)" will return the cosine of a number, and that to get the
sine of a number, one should use "tan(float)", although no sane person
would use that language. For the more subtle differences, functions quite often
have side effects which need to be documented. For example, as an undesirable
side effect, the sin function could also reset the random number generator to
reset the sequence of random numbers it generates. There are actual functions
with that intended purpose, but the function is generally better named.
For Java, that the API consists both of the literal function calls, but also the
Javadoc and the Java specifications (including JSR). One does not need to see
the implementation to be able to reimplement a well documented function, as the
Javadoc and specification should make clear what side effects happen.
All this is to say that the statement of an API consisting of the behavior and
structure as well as an implementation is too big a leap. If one needs an
implementation to really understand what an API does, the API is insufficiently
specified. This was true for early C implementations, which was one on the
driving factors for creating ANSI C.
But, Spafford/Hollar actually undermine the Oracle arguments by saying an API
includes an implementation, since the Android implementation did not include the
same implementation as included in the Oracle implementation if Java. If one
were to define API as including an implementation, then independent
implementations would not violate copyright, just as Android's did not (except
for a very small number of lines which are not considered in this appeal).[ Reply to This | # ]
|
|
Authored by: Anonymous on Tuesday, June 04 2013 @ 10:08 AM EDT |
Had to look that one up. Neat word. =)
Wiktionary:
punctilious
Strictly attentive to detail; meticulous
or fastidious, particularly to codes or conventions.
As used
in the CCIA brief:
BSA punctiliously faults the district court for
finding that Oracle’s APIs were not copyrightable, rather than that they were
not infringed when Google copied them ....
I'm always learning
something new here on Groklaw.
[ Reply to This | # ]
|
|
Authored by: albert on Tuesday, June 04 2013 @ 10:25 AM EDT |
Senior VP Matt Reid: former MS & Gates Foundation consultant.
Senior VP Jodie Kelley: came from Fannie Mae.
Board of Directors includes folks from:
Microsoft
Apple
Adobe
Siemens
Autodesk
McAfee
Symantec
Rosetta Stone
Mathworks
and a few others I don't recognize.
Members include:
IBM
Oracle
Intuit
Intel
I imagine their 'creativity' is directed at drawing blood from stones.
[ Reply to This | # ]
|
- Re: BSA - Authored by: Anonymous on Tuesday, June 04 2013 @ 11:28 AM EDT
- Re: BSA - Authored by: albert on Tuesday, June 04 2013 @ 01:55 PM EDT
|
Authored by: Anonymous on Tuesday, June 04 2013 @ 10:57 AM EDT |
How can the BSA say that Oracle didn't contribute to its amicus when Oracle in
one of its members. Aren't members financing BSA and its actions ?[ Reply to This | # ]
|
|
Authored by: cassini2006 on Tuesday, June 04 2013 @ 12:24 PM EDT |
Bill Gates copied CP/Ms API when developing DOS. Specifically, DOS
implements a bunch of INT 21h calls that are "surprisingly similar" to their
CP/M equivalents. I bet some of this API still exists in Microsoft
Windows.
Additionally, all of the clone PC BIOSes copied the API from the
original IBM PC's BIOS. IBM no longer makes PCs, but I bet they still own the
copyrights.
Similarly, I'm sure Oracle has databases and servers that copy
other peoples APIs. At a minimum, Oracle SQL probably has at least one
non-standard API extension that is a copy of someone else's non-standard API
extension.
If Oracle wins this case, this APIs are copyrightable concept
could cripple the entire computer industry.
[ Reply to This | # ]
|
|
Authored by: Anonymous on Monday, June 17 2013 @ 12:51 AM EDT |
There is one more topic that protects the non-copyright of APIS. Namely the
American with Disabilities act. This is now considered part of Civil Liberties.
An API, amongst many other things allows a software product to be easily
integrated with devices and programs providing access for users with
disabilities, such as blindness. This feature is called accessibility. A
software maker is not required to provide this accessibility (If it was, most
web sites would be illegal now, as they are often for no good reason void of
text and full of graphics, and useless to blind people, web site designers go as
far as making the text all graphics in order to tweak the fonts and look and
feel ...), but restricting the free access to an API would grant the company the
right to ignore ADA, and explicitly deny users with disabilities the same
opportunities of employment and professional development. [ Reply to This | # ]
|
|
|
|
|