Oracle je sam kopirao API s Amazona S3 i to je potpuno normalno

Oracle je sam kopirao API s Amazona S3 i to je potpuno normalno
Odvjetnici Oraclea uspoređuju ponovnu implementaciju Java API-ja u Android s kopiranjem sadržaja “Harryja Pottera”, pdf

Američki Vrhovni sud početkom ove godine saslušat će važan slučaj. Oracle protiv Googlea, koji će odrediti pravni status API-ja prema zakonu o intelektualnom vlasništvu. Ako sud stane na stranu Oraclea u njegovoj tužbi vrijednoj više milijardi dolara, to bi moglo ugušiti konkurenciju i učvrstiti dominaciju tehnoloških divova, uključujući vjerojatno i sam Google.

Istodobno, Oracleovo poslovanje u početku je bilo izgrađeno na implementaciji programskog jezika SQL koji je razvio IBM, a čak i sada tvrtka nudi uslugu u oblaku s API-jem iz Amazona S3, što je sasvim normalno. Ponovna implementacija API-ja prirodni je dio razvoja računalne znanosti od samog početka industrije.

Oracle optužuje Google za ilegalno kopiranje Java API-ja, uključujući popis imenovanih naredbi povezanih s gramatičkim strukturama. Operativni sustav Android posebno je kompatibilan s Java API-jem kako bi Java programerima olakšao prijenos softvera i znanja na novu platformu. Da bi to učinio, Android je točno kopirao odgovarajuće Java API naredbe i gramatičke strukture. argument Oracle je da se takva "ponovna implementacija" Java API-ja može usporediti s kopiranjem autorskog djela, poput književnog romana "Harry Potter" (ovo pravi primjer koji su dali Oracleovi odvjetnici), i Google krši Oracleova autorska prava na imena i strukture Java API naredbi.

Ali Java API-ji nisu jedini API-ji, a Android nije jedina ponovna implementacija. U današnjoj IT industriji, API-ji su sveprisutni, a ponovno uvođenje ključno je za održavanje konkurencije kako bi se spriječilo da velike tvrtke monopoliziraju sčitaet Charles Duane je direktor politike tehnologije i inovacija na Institutu R Street.

Duane daje primjer popularne platforme za pohranu Amazon S3. Kako bi omogućio pisanje i dohvaćanje datoteka sa S3, Amazon je razvio sveobuhvatan, detaljan API za interakciju s uslugom. Na primjer, da biste dobili popis spremljenih datoteka (ListObjects) šaljemo naredbu GET koja specificira host i parametre tipa vrsta kodiranja, nastavak-žeton и x-amz-datum. Kako bi radio s Amazonom S3, softver mora točno koristiti ove i mnoge druge specifične nazive parametara.

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 je očiti lider na tržištu usluga u oblaku, a njegovi konkurenti nude ponovnu implementaciju S3 API-ja, dok moraju imitirati nazive naredbi, oznake parametara, prefikse tipa x-amz, gramatička struktura i opća organizacija S3 API-ja. Drugim riječima, sve što Oracle tvrdi zaštićeno je autorskim pravima.

Među tvrtkama koje nude kopiju Amazon S3 API-ja su tu je i sam Oracle. Radi kompatibilnosti, Amazon S3 Compatibility API kopira brojne elemente Amazon API-ja, sve do x-amz oznaka.

Oracle je sam kopirao API s Amazona S3 i to je potpuno normalno

Oracle tvrdi da se zakonitost njegovih postupaka temelji na licenci otvorenog koda Apache 2.0 koja dopušta besplatno kopiranje i modificiranje koda. Na primjer, Amazon SDK za Javu također dolazi s licencom za Apache 2.0.

Ali pitanje je primjenjuje li se zakon o intelektualnom vlasništvu uopće na stvari poput API-ja. To mora utvrditi Vrhovni sud.

Tko je izumio API?

Pojam i koncept "biblioteke potprograma" prvi put se pojavio u knjizi Planning and Coding Problems for an Electronic Computing Instrument - Part II, Volume III (Princeton University Institute of Advanced Study, 1948) Hermana Goldsteina i Johna von Neumanna. kopija na archive.org. Sadržaj trećeg toma:

Oracle je sam kopirao API s Amazona S3 i to je potpuno normalno

Ovo je prvi opis metodologije programiranja za računala koja pohranjuje programe u memoriju (prije to nije postojalo). Široko je distribuiran sveučilištima, koja su u to vrijeme pokušavala stvoriti vlastita računala. I što je najvažnije, knjiga sadrži ključnu ideju: većina programa koristit će uobičajene operacije, a biblioteke s rutinama smanjit će količinu novog koda i pogrešaka. Tu je ideju Maurice Wilkes dodatno doradio i pretočio u praksu u stroju EDSAC, za koji je 1967. dobio Turingovu nagradu.

Oracle je sam kopirao API s Amazona S3 i to je potpuno normalno
Knjižnica potprograma EDSAC je na lijevoj strani

Sljedeći korak bio je stvaranje funkcija višeg reda i potpunih softverskih sučelja, kao što su učinili Maurice Wilkes i David Wheeler u Pripremi programa za elektroničko digitalno računalo (1951.).

Sam termin Sučelje aplikacijskog programa (API) pojavio se negdje krajem 60-ih.

Autor prezentacije "Kratka subjektivna povijest API-ja" Joshua Block daje nekoliko primjera programskih sučelja, skupova instrukcija i knjižnica potprograma: kako su stvoreni i kasnije korišteni. Ideja je da je ponovna upotreba bit API-ja. Za to su i stvoreni. A programeri su uvijek imali priliku kopirati i prepravljati API-je drugih ljudi:

API
Stvoritelj
Godina
Ponovna implementacija
Godina

FORTRAN biblioteka
IBM
1958
UNIVAC
1961

IBM S/360 ISA
IBM
1964
Amdahl Corp.
1970

Standardna C biblioteka
AT&T/Bell Labs
1976
Mark Williams Co.
1980

Unix sistemski pozivi
AT&T/Bell Labs
1976
Mark Williams Co.
1980

VT100 Esc Seqs
Prosinca
1978
Heathkit
1980

IBM PC BIOS
IBM
1981
Phoenix Technologies
1984

MS-DOS CLI
microsoft
1981
Projekt FreeDOS
1998

Hayes AT set naredbi
Hayes Micro
1982
Automatizacija sidra
1985

PostScript
nepečena opeka
1985
GNU/GhostScript
1988

SMB
microsoft
1992
Projekt Samba
1993

Win32
microsoft
1993
Projekt vina
1996

Java 2 knjižnice klasa
sunce
1998
Google/Android
2008

Web API Ukusno
Ukusan
2003
Ploča oznaka
2009

Izvor: "Kratka subjektivna povijest API-ja"

Kopiranje i ponovna upotreba API-ja (biblioteke, skupovi instrukcija) ne samo da je ispravno, već se ova metodologija programiranja izravno preporučuje u kanonima računalne znanosti. Čak i prije kopiranja S3 programskih sučelja, sam Oracle je to učinio mnogo puta. Štoviše, Oracleov posao je u početku bio izgrađen na implementaciji programskog jezika SQL koji je razvio IBM. Oracleov prvi vodeći proizvod bio je DBMS, većim dijelom kopiran iz IBM System R. U ovom slučaju, govorimo o ponovnoj implementaciji SQL-a kao “standardnog API-ja” za DBMS.

Nametanje prava intelektualnog vlasništva nad API-jima može stvoriti pravno minsko polje koje utječe na sve. API-ji implementiraju i druge usluge u oblaku. Mnogi tehnički standardi, kao što su Wi-Fi i internetski protokoli, uključuju API-je. Programska sučelja nužno se ponovno implementiraju u nekom obliku na svakom računalu i poslužitelju na Internetu. Oracleova teorija autorskih prava može gotovo sve što radite sa svojim računalom učiniti nezakonitim.

Kako bi izbjegli ove dalekosežne posljedice, Oracle i žalbeni sud koji je potvrdio njegove argumente pokušali su ograničiti kršenje autorskih prava na određene ponovne implementacije API-ja koje su "nekompatibilne" s izvornikom. Ali i djelomične ponovne implementacije su uobičajene. Čak iu svojoj kopiji S3 API-ja, Oracle bilježi brojne "razlike" i nekompatibilnosti s originalnim Amazon API-jima.

Glavna opasnost od Oracleove tužbe je da bi mogla spriječiti manje tehnološke tvrtke u stvaranju verzija sustava koji su kompatibilni s dominantnim platformama kao što je S3. Bez takve kompatibilnosti, programeri će biti učinkovito isključeni iz ponude ove tvrtke.

Predstavnici industrije i programeri mogu se samo nadati da će razum prevladati i ovdje suci poznaju osnove programiranja.

Izvor: www.habr.com

Dodajte komentar