Sam Oracle je kopirao API sa Amazon S3 i to je sasvim normalno

Sam Oracle je kopirao API sa Amazon S3 i to je sasvim normalno
Oracle advokati upoređuju ponovnu implementaciju Java API-ja u Android sa kopiranjem sadržaja “Harryja Pottera”, pdf

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

Istovremeno, Oracleovo poslovanje je u početku izgrađeno na implementaciji SQL programskog jezika koji je razvio IBM, a čak i sada kompanija nudi uslugu u oblaku sa API-jem iz Amazon S3, i to je sasvim normalno. Ponovna implementacija API-ja je prirodni dio razvoja računarske nauke od samog početka industrije.

Oracle optužuje Google za ilegalno kopiranje Java API-ja, uključujući listu imenovanih komandi vezanih za gramatičke strukture. Operativni sistem Android je posebno kompatibilan sa Java API-jem kako bi se Java programerima olakšao prijenos softvera i znanja na novu platformu. Da bi to učinio, Android je tačno kopirao odgovarajuće Java API komande i gramatičke strukture. Argument Oracle je da se takva "ponovna implementacija" Java API-ja može uporediti s kopiranjem autorskog djela, kao što je književni roman "Harry Potter" (ovaj pravi primjer koji su dali Oracle advokati), i Google krši Oracleova autorska prava na nazive i strukture Java API komandi.

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

Duane daje primjer popularne Amazon S3 platforme za skladištenje. Kako bi omogućio pisanje i preuzimanje datoteka sa S3, Amazon je razvio sveobuhvatan, detaljan API za interakciju sa uslugom. Na primjer, da dobijete listu sačuvanih fajlova (ListObjects) šaljemo GET naredbu koja specificira host i parametre tipa tip kodiranja, nastavak-token и x-amz-date. Da bi radio sa Amazon S3, softver mora tač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 ponovne implementacije S3 API-ja, dok moraju imitirati nazive komandi, oznake parametara, prefikse tipa x-amz, gramatička struktura i opšta organizacija S3 API-ja. Drugim riječima, sve što Oracle tvrdi zaštićeno je autorskim pravima.

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

Sam Oracle je kopirao API sa Amazon S3 i to je sasvim normalno

Oracle tvrdi da je zakonitost njegovih radnji zasnovana na licenci otvorenog koda Apache 2.0, koja omogućava besplatno kopiranje i modifikaciju koda. Na primjer, Amazon SDK za Javu takođe dolazi sa Apache 2.0 licencom.

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

Ko je izmislio API?

Pojam i koncept "biblioteke potprograma" prvi put se pojavio u knjizi Problemi planiranja i kodiranja za elektronski računarski instrument - dio II, tom III (Institut za napredne studije Univerziteta Princeton, 1948) autora Hermana Goldsteina i Johna von Neumanna. kopija na archive.org. Sadržaj trećeg toma:

Sam Oracle je kopirao API sa Amazon S3 i to je sasvim normalno

Ovo je prvi opis metodologije programiranja za računare koji pohranjuju programe u memoriju (ranije to nije postojalo). Bio je naširoko distribuiran univerzitetima, koji su u to vrijeme pokušavali stvoriti vlastite računare. I što je najvažnije, knjiga sadrži ključnu ideju: većina programa će koristiti uobičajene operacije, a biblioteke s rutinama će smanjiti količinu novog koda i grešaka. Ovu ideju je dodatno usavršio Maurice Wilkes i sproveo u praksu u EDSAC mašini, za koju je 1967. dobio Turingovu nagradu.

Sam Oracle je kopirao API sa Amazon S3 i to je sasvim normalno
Biblioteka EDSAC potprograma je na lijevoj strani

Sljedeći korak je bio stvaranje funkcija višeg reda i punopravnih softverskih interfejsa, kao što su to učinili Maurice Wilkes i David Wheeler u pripremi programa za elektronski digitalni računar (1951).

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

Autor prezentacije "Kratka subjektivna istorija API-ja" Joshua Block daje nekoliko primjera programskih interfejsa, skupova instrukcija i biblioteka potprograma: kako su kreirani i kasnije korišteni. Ideja je da je ponovna upotreba poenta API-ja. Za to su i stvoreni. A programeri su uvijek imali priliku kopirati i prepravljati tuđe API-je:

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 Seq
DEC
1978
Heathkit
1980

IBM PC BIOS
IBM
1981
Phoenix Technologies
1984

MS-DOS CLI
Microsoft
1981
FreeDOS projekat
1998

Hayes AT skup komandi
Hayes Micro
1982
Anchor Automation
1985

PostScript
čerpić
1985
GNU/GhostScript
1988

SMB
Microsoft
1992
Samba Project
1993

Win32
Microsoft
1993
Wine Project
1996

Java 2 biblioteke klasa
sunce
1998
Google/Android
2008

Web API Delicious
Ukusan
2003
Pinboard
2009

izvor: "Kratka subjektivna istorija API-ja"

Kopiranje i ponovna upotreba API-ja (biblioteke, skupovi instrukcija) ne samo da je ispravno, već se ova metodologija programiranja direktno preporučuje u kanonima računarske nauke. Čak i prije kopiranja S3 programskih interfejsa, sam Oracle je to učinio mnogo puta. Štaviše, Oracleovo poslovanje je u početku bilo izgrađeno na implementaciji SQL programskog jezika koji je razvio IBM. Oracleov prvi vodeći proizvod bio je DBMS, uglavnom 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 na API-je može stvoriti pravno minsko polje koje utiče na sve. API-ji implementiraju i druge usluge u oblaku. Mnogi tehnički standardi, kao što su Wi-Fi i Internet protokoli, uključuju API-je. Programski interfejsi se nužno ponovo implementiraju u nekom obliku na svakom računaru i serveru na Internetu. Oracleova teorija autorskih prava može učiniti gotovo sve što radite sa svojim računarom 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 originalom. 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 Oracleove tužbe je da bi mogla spriječiti manje tehnološke kompanije da kreiraju verzije sistema koji su kompatibilni sa dominantnim platformama kao što je S3. Bez takve kompatibilnosti, programeri će biti praktično isključeni iz ponude ove kompanije.

Predstavnici industrije i programeri mogu se samo nadati da će razum ovdje prevladati, i sudije znaju osnove programiranja.

izvor: www.habr.com

Dodajte komentar