Oracle mismo copi贸 la API de Amazon S3, y eso est谩 perfectamente bien


Los abogados de Oracle comparan la reimplementaci贸n de la API de Java en Android con la copia del contenido de Harry Potter, pdf

A principios de este a帽o, la Corte Suprema de los Estados Unidos considerar谩 un importante caso de Oracle contra Google , que determinar谩 el estado legal de la API de acuerdo con la ley de propiedad intelectual. Si el tribunal se pone del lado de Oracle en su demanda multimillonaria, podr铆a sofocar la competencia y consolidar el dominio de los gigantes de la tecnolog铆a, posiblemente incluido el propio Google.

Al mismo tiempo, el negocio de Oracle se bas贸 originalmente en la implementaci贸n del lenguaje de programaci贸n SQL desarrollado por IBM, e incluso ahora la compa帽铆a ofrece un servicio en la nube con API de Amazon S3, y esto es completamente normal. La reimplementaci贸n de la API ha sido una parte natural del desarrollo de la inform谩tica desde el inicio de la industria.

Oracle acusa a Google de copiar ilegalmente la API de Java, incluida una lista de comandos con nombre vinculados a estructuras gramaticales. El sistema operativo Android es espec铆ficamente compatible con la API de Java para facilitar a los programadores de Java la transferencia de software y conocimiento a la nueva plataforma. Para hacer esto, Android copi贸 con precisi贸n los comandos correspondientes de la API de Java y las estructuras gramaticales. El argumento de Oracle es que dicha "reimplementaci贸n" de la API de Java se puede comparar con la copia del trabajo de un autor, como la novela literaria Harry Potter (este es un ejemplo real citado por los abogados de Oracle ), y Google viola los derechos de autor de Oracle sobre los nombres de los comandos y estructuras de Java API

Pero la API de Java no es la 煤nica API, y Android no es la 煤nica reimplementaci贸n. Las API son omnipresentes en la industria de TI actual, y la reimplementaci贸n es fundamental para mantener la competencia a fin de evitar el monopolio de las grandes empresas, dijo Charles Duan, Director de Pol铆tica de Tecnolog铆a e Innovaci贸n del Instituto R Street.

Duan da un ejemplo de la popular plataforma de almacenamiento Amazon S3. Para permitir la escritura y extracci贸n de archivos desde S3, Amazon ha desarrollado una API completa y detallada para interactuar con el servicio. Por ejemplo, para obtener una lista de archivos guardados ( ListObjects ), enviamos un comando GET con el host y los par谩metros de tipo encoding-type , continuation-token y x-amz-date . Para trabajar con Amazon S3, el software debe usar estos y muchos otros nombres de par谩metros espec铆ficos exactamente.

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

Amazon es un claro l铆der en el mercado de servicios en la nube, y sus competidores ofrecen la reimplementaci贸n de la API S3, mientras que tienen que imitar nombres de equipos, etiquetas de par谩metros, prefijos x-amz , estructura gramatical y organizaci贸n general de la API S3. En otras palabras, todo lo que, seg煤n Oracle, est谩 protegido por derechos de autor.

Entre las compa帽铆as que ofrecen una copia de la API de Amazon S3, est谩 el propio Oracle . Por compatibilidad, la API de compatibilidad de Amazon S3 copia numerosos elementos de la API de Amazon, hasta etiquetas x-amz.



Oracle asegura que la legalidad de sus acciones se basa en la licencia de c贸digo abierto Apache 2.0, que permite la copia y modificaci贸n gratuitas del c贸digo. Por ejemplo, Amazon SDK para Java tambi茅n viene con una licencia Apache 2.0.

Pero la pregunta es si la ley de propiedad intelectual es generalmente aplicable a objetos como la API. Eso es lo que debe establecer la Corte Suprema.

驴Qui茅n invent贸 la API?


El t茅rmino y el concepto de una "biblioteca de subrutinas" apareci贸 por primera vez en el libro de Hermann Goldstein y John von Neumann "Problemas de planificaci贸n y codificaci贸n para una herramienta de computaci贸n electr贸nica" - Parte II, Volumen III (Instituto de Investigaci贸n Avanzada de la Universidad de Princeton, 1948), copia de archivo .org . El contenido del tercer volumen:



Esta es la primera descripci贸n de una metodolog铆a de programaci贸n para computadoras con programas de almacenamiento en memoria (anteriormente no exist铆a). Se extendi贸 ampliamente a las universidades, que en ese momento intentaron crear sus propias computadoras. Y lo m谩s importante, el libro contiene una idea clave: la mayor铆a de los programas utilizar谩n operaciones comunes, y las bibliotecas con rutinas reducir谩n la cantidad de nuevos c贸digos y errores . Esta idea fue finalizada por Maurice Wilkes y puesta en pr谩ctica en la m谩quina EDSAC, por la cual recibi贸 el Premio Turing de 1967.


La biblioteca de rutina EDSAC est谩 a la izquierda.

El siguiente paso fue crear funciones de orden superior e interfaces de software completas, que Maurice Wilkes y David Wheeler hicieron en el libro "Preparaci贸n de programas para una computadora digital electr贸nica" (1951).

El t茅rmino Interfaz de programa de aplicaci贸n (API) apareci贸 en alg煤n lugar a finales de los a帽os 60.

El autor de la presentaci贸n " Una breve historia subjetiva de la API" Joshua Block ofrece varios ejemplos de interfaces de programas, conjuntos de instrucciones y bibliotecas de subprogramas: c贸mo se crearon y utilizaron m谩s tarde. La idea es que reutilizar es el significado de la API. Es por eso que fueron creados en primer lugar. Y los desarrolladores siempre tuvieron la oportunidad de copiar y rehacer las API de otras personas:

APICreadorA帽oRe implementaci贸nA帽o
Biblioteca FORTRANIbm1958Univac1961
IBM S / 360 ISAIbm1964Amdahl corp.1970
Biblioteca est谩ndar CAT&T / Bell Labs1976Mark Williams Co.1980
Unix llama al sistemaAT&T / Bell Labs1976Mark Williams Co.1980
VT100 Esc SeqsDic1978Heathkit1980
IBM PC BIOSIbm1981Tecnolog铆as de Phoenix1984
MS-DOS CLIMicrosoft1981Proyecto FreeDOS1998
Hayes AT Command SetHayes micro1982Automatizaci贸n del ancla1985
PostScriptAdobe1985GNU / GhostScript1988
SMBMicrosoft1992Proyecto samba1993
Win32Microsoft1993Proyecto de vino1996
Bibliotecas de clase Java 2Sol1998Google / android2008
API web deliciosaDelicioso2003Tabl贸n de anuncios2009
Fuente: " Una breve historia subjetiva de la API"

Copiar y reutilizar API (bibliotecas, conjuntos de instrucciones) no solo es correcto, sino que dicha metodolog铆a de programaci贸n se recomienda directamente en los c谩nones de la inform谩tica. Incluso antes de copiar las interfaces de programaci贸n S3, el propio Oracle lo hizo muchas veces. Adem谩s, el negocio de Oracle se bas贸 originalmente en la implementaci贸n del lenguaje de programaci贸n SQL desarrollado por IBM. El primer producto estrella de Oracle fue el DBMS, en gran parte copiado de IBM System R. En este caso, estamos hablando de la reimplementaci贸n de SQL como una "API est谩ndar" para el DBMS.

La superposici贸n de los derechos de propiedad intelectual en las API puede crear un campo de minas legal que todos sufrir谩n. Las API tambi茅n implementan otros servicios en la nube . Muchos est谩ndares t茅cnicos, como los protocolos de Internet y Wi-Fi, incluyen API. Las interfaces del programa se implementan necesariamente de alguna forma en cada computadora y servidor en Internet. Oracle Copyright Theory puede convertir casi todo lo que haces con tu computadora en un acto ilegal.

Para evitar estas consecuencias de largo alcance, Oracle y el Tribunal de Apelaci贸n, que confirmaron sus argumentos, trataron de limitar la infracci贸n de derechos de autor a solo unas pocas reimplementaciones de API que eran "incompatibles" con el original. Pero las reimplementaciones parciales tambi茅n son comunes . Incluso en su copia de la API S3, Oracle ha notado numerosas "diferencias" e incompatibilidades con las API originales de Amazon.

El principal peligro de la demanda de Oracle es que podr铆a evitar que las peque帽as empresas de tecnolog铆a creen versiones de sistemas compatibles con plataformas dominantes como S3. Sin dicha compatibilidad, los programadores quedar谩n pr谩cticamente bloqueados en las ofertas de esta empresa.

Los representantes de la industria y los desarrolladores solo pueden esperar que la mente triunfe y los jueces conozcan los conceptos b谩sicos de la programaci贸n .

Source: https://habr.com/ru/post/482980/


All Articles