A própria Oracle copiou a API do Amazon S3, e isso é completamente normal

A própria Oracle copiou a API do Amazon S3, e isso é completamente normal
Os advogados da Oracle comparam a reimplementação da API Java no Android com a cópia do conteúdo de “Harry Potter”, pdf

A Suprema Corte dos EUA ouvirá um caso importante no início deste ano. Oráculo x Google, que determinará o status legal da API sob a lei de propriedade intelectual. Se o tribunal ficar do lado da Oracle no seu processo multibilionário, poderá sufocar a concorrência e cimentar o domínio dos gigantes da tecnologia, possivelmente incluindo o próprio Google.

Ao mesmo tempo, o negócio da Oracle foi inicialmente construído sobre a implementação da linguagem de programação SQL desenvolvida pela IBM, e ainda hoje a empresa oferece um serviço em nuvem com API do Amazon S3, e isso é completamente normal. A reimplementação da API tem sido uma parte natural do desenvolvimento da ciência da computação desde o início da indústria.

A Oracle acusa o Google de copiar ilegalmente a API Java, incluindo uma lista de comandos nomeados vinculados a estruturas gramaticais. O sistema operacional Android é especificamente compatível com a API Java para facilitar aos programadores Java a transferência de software e conhecimento para a nova plataforma. Para fazer isso, o Android copiou exatamente os comandos e estruturas gramaticais correspondentes da API Java. Argumento Oracle é que tal "reimplementação" da API Java pode ser comparada à cópia da obra de um autor, como o romance literário "Harry Potter" (este um exemplo real dado pelos advogados da Oracle) e O Google viola os direitos autorais da Oracle sobre nomes e estruturas de comandos da API Java.

Mas as APIs Java não são as únicas APIs e o Android não é a única reimplementação. Na indústria de TI atual, as APIs são onipresentes e a reintrodução é fundamental para manter a concorrência e evitar que grandes empresas monopolizem считает Charles Duane é diretor de política de tecnologia e inovação do R Street Institute.

Duane dá o exemplo da popular plataforma de armazenamento Amazon S3. Para permitir a gravação e recuperação de arquivos do S3, a Amazon desenvolveu sistemas abrangentes e API detalhada interagir com o serviço. Por exemplo, para obter uma lista de arquivos salvos (ListarObjetos) enviamos um comando GET especificando os parâmetros de host e tipo tipo de codificação, token de continuação и data x-amz. Para funcionar com o Amazon S3, o software deve usar exatamente esses e muitos outros nomes de parâmetros específicos.

GET /?Delimiter=Delimiter&EncodingType=EncodingType&Marker=Marker&MaxKeys=MaxKeys&Prefix=Prefix HTTP/1.1
Host: Bucket.s3.amazonaws.com
x-amz-request-payer: RequestPayer

A Amazon é líder absoluta no mercado de serviços em nuvem, e seus concorrentes oferecem reimplementações da API S3, enquanto têm que imitar nomes de comandos, tags de parâmetros, prefixos de tipo x-amz, estrutura gramatical e organização geral da API S3. Em outras palavras, tudo o que a Oracle reivindica é protegido por direitos autorais.

Entre as empresas que oferecem uma cópia da API Amazon S3 estão há também o próprio Oracle. Para compatibilidade, a API de compatibilidade do Amazon S3 copia vários elementos da API da Amazon, até as tags x-amz.

A própria Oracle copiou a API do Amazon S3, e isso é completamente normal

A Oracle afirma que a legalidade de suas ações se baseia na licença de código aberto Apache 2.0, que permite a cópia e modificação gratuita de código. Por exemplo, SDK da Amazon para Java também vem com uma licença Apache 2.0.

Mas a questão é se a lei de propriedade intelectual se aplica a coisas como APIs. Isto é o que o Supremo Tribunal deve determinar.

Quem inventou a API?

O termo e o conceito de "biblioteca de sub-rotinas" apareceram pela primeira vez no livro Planning and Coding Problems for an Electronic Computing Instrument - Part II, Volume III (Princeton University Institute of Advanced Study, 1948) de Herman Goldstein e John von Neumann. copie em archive.org. Conteúdo do terceiro volume:

A própria Oracle copiou a API do Amazon S3, e isso é completamente normal

Esta é a primeira descrição de uma metodologia de programação para computadores que armazena programas na memória (anteriormente isso não existia). Foi amplamente distribuído às universidades, que na época tentavam criar seus próprios computadores. E o mais importante, o livro contém uma ideia chave: a maioria dos programas usará operações comuns e bibliotecas com rotinas reduzirão a quantidade de novos códigos e erros. Esta ideia foi posteriormente refinada por Maurice Wilkes e posta em prática na máquina EDSAC, pela qual recebeu o Prémio Turing de 1967.

A própria Oracle copiou a API do Amazon S3, e isso é completamente normal
A biblioteca de sub-rotinas EDSAC está à esquerda

O próximo passo foi criar funções de ordem superior e interfaces de software completas, como Maurice Wilkes e David Wheeler fizeram em Preparing Programs for the Electronic Digital Computer (1951).

O próprio termo Interface do Programa de Aplicação (API) apareceu em algum lugar no final dos anos 60.

Autor da apresentação "Uma breve história subjetiva da API" Joshua Block dá vários exemplos de interfaces de programação, conjuntos de instruções e bibliotecas de sub-rotinas: como elas foram criadas e posteriormente usadas. A ideia é que a reutilização seja o objetivo de uma API. Foi para isso que eles foram criados em primeiro lugar. E os desenvolvedores sempre tiveram a oportunidade de copiar e refazer APIs de outras pessoas:

API
Criador
Ano
Reimplementação
Ano

Biblioteca FORTRAN
IBM
1958
Univac
1961

IBM S/360 ISA
IBM
1964
Amdahl Corp.
1970

Biblioteca C padrão
Laboratórios AT&T/Bell
1976
Mark Williams Co.
1980

Chamadas de sistema Unix
Laboratórios AT&T/Bell
1976
Mark Williams Co.
1980

VT100 Esc Seqs
Dezembro
1978
Kit de saúde
1980

BIOS do PC IBM
IBM
1981
Phoenix Technologies
1984

CLI do MS-DOS
Microsoft
1981
Projeto FreeDOS
1998

Conjunto de comandos Hayes AT
Hayes Micro
1982
Automação de âncora
1985

PostScript
adobe
1985
GNU/GhostScript
1988

SMB
Microsoft
1992
Projeto Samba
1993

Win32
Microsoft
1993
Projeto Vinho
1996

Bibliotecas de classes Java 2
Espreguiçadeiras
1998
Google/Android
2008

API da Web deliciosa
Delicious
2003
Quadro de anúncios
2009

Fonte: "Uma breve história subjetiva da API"

Copiar e reutilizar APIs (bibliotecas, conjuntos de instruções) não é apenas correto, mas esta metodologia de programação é diretamente recomendada nos cânones da ciência da computação. Mesmo antes de copiar as interfaces de programação S3, a própria Oracle fez isso muitas vezes. Além disso, os negócios da Oracle foram inicialmente construídos com base na implementação da linguagem de programação SQL desenvolvida pela IBM. O primeiro produto carro-chefe da Oracle foi um SGBD, em grande parte copiado do IBM System R. Neste caso, estamos falando da reimplementação do SQL como uma “API padrão” para um SGBD.

A imposição de direitos de propriedade intelectual sobre APIs pode criar um campo minado jurídico que afeta a todos. APIs implementam e outros serviços em nuvem. Muitos padrões técnicos, como protocolos Wi-Fi e Internet, incluem APIs. As interfaces de programação são necessariamente reimplementadas de alguma forma em todos os computadores e servidores na Internet. A teoria dos direitos autorais da Oracle pode tornar ilegal quase tudo que você faz com seu computador.

Para evitar estas consequências de longo alcance, a Oracle e o tribunal de recurso que confirmou os seus argumentos tentaram limitar a violação de direitos de autor a certas reimplementações de API que são “incompatíveis” com o original. Mas também reimplementações parciais são comuns. Mesmo em sua cópia da API S3, a Oracle observa inúmeras “diferenças” e incompatibilidades com as APIs originais da Amazon.

O principal perigo do processo da Oracle é que poderá impedir que pequenas empresas tecnológicas criem versões de sistemas compatíveis com plataformas dominantes como o S3. Sem essa compatibilidade, os programadores ficarão efetivamente excluídos das ofertas desta empresa.

Os representantes da indústria e os promotores só podem esperar que a razão prevaleça aqui, e os juízes conhecem o básico da programação.

Fonte: habr.com

Adicionar um comentário