Oracle-Google: nem másolhatóak az API-k
A Java egységének védelmében az Oracle gyorsan ellehetetleníti a teljes szoftveres iparágat - állítják az aggódó szakértők. A Linux kerneltől az Oracle saját Solarisáig szinte minden szoftvertermék megsértené az API-khoz fűződő szerzői jogokat - amelyek az új döntés értelmében léteznek.
Nagy győzelmet aratott az Oracle pénteken, miután az amerikai szövetségi fellebbviteli bíróság igazat adott neki a Google ellen indított, Androidhoz kötődő szerzői jogi perben, másodfokon. A döntés megfordítja az elsőfokú döntést, amelyben Willian Alsup bíró gyakorlatilag mindenben a Google mellett döntött és kimondta, hogy a szerzői jog nem védi az API-kat.
Másodfokon az Oracle nyert
A Google az Androidban a Java klónozott alternatíváját használja, amely azonos API-kon keresztül érhető el, műszaki szempontból azonban új implementáció. Az Oracle érvelése szerint azonban nem csak saját Java-implementációját védi szerzői jog, hanem a Java API-kat is - jogásznyelven SSO (structure, sequence, organization), vagyis minden, az API-t reprodukáló termék megsérti a cég szellemi tulajdonhoz fűződő jogait. Az Oracle 6,1 milliárd dolláros kártérítést kért, jogdíjat minden eladott androidos telefon után és (mint szellemi résztulajdonos) beleszólást a platform jövőjébe. Az Oracle álláspontja adott pontig érthető, a cég a Java egységét igyekszik védeni, amelyet a Google által készített Dalvik-implementáció megtör, az Android ugyanis nem a teljes Java-stacket, csupán egyes elemeit veszi át.
Első fokon a bíró a Google-nek adott igazat, a cég gyakorlatilag minden releváns ponton győzelmet aratott az Oracle fölött. Az ítélet kimondta, hogy az SSO-t nem védi szerzői jog, csupán a specifikus implementációt. "Ameddig a metódus implementálására szolgáló kód különbözik, a szerzői jogi törvény értelmében bárki szabadon írhat önálló kódot a Java API-ban található függvény vagy metódus megvalósítására" - állította William Alsup bíró 41 oldalas indoklásában. Alsup egyébként matematikusi diplomával rendelkezik és az ügy kedvéért megtanult Javában programozni is, állítása szerint így pontosabban megértette a per tétjét, illetve a kifogásolt részletek jelentőségét. A döntés értelmében tehát az API szabadon klónozható volt. Az ítélet szerint természetesen tilos a forráskód átvétele, a Google-t elmeszelte néhány sor átvételéért, amiért a cég némi kártérítést is fizetett.
A másodfokú eljárásról már korábban kiszivárgott, hogy az ügyet meghallgató panel igen szkeptikus a Google álláspontjával kapcsolatban - ezt igazolta vissza a pénteken publikált ítélet is. A döntés szerint nem csak a szoftver tulajdonképpeni kódja, hanem a megvalósított funkció is szellemi termék, amelyet szerzői jog véd, ezt pedig az API-kompatibilitással rendelkező alternatív szoftverek megsértik. A kártérítésről a bíróság egyelőre nem döntött, az Oracle jóvátételi igényét azonban korábban már 1 milliárd dollárra mérsékelte a bíróság, így maximum ekkora lehet a kártérítés.
Megilleti-e a szerzői jog a négylyukú keréktárcsa feltalálóját?
Az API-k a modern szoftverek világában hasonló szerepet játszanak, mint az autó kerekeit rögzítő csavarok és anyák - lehetővé teszik, hogy egy meglévő rendszerhez egy másik csatlakozzon, ez pedig lehet más fejlesztő terméke is. Grafikus API-k teszik lehetővé, hogy játékok fussanak egy operációs rendszeren, és hálózati API-k teszik lehetővé, hogy böngészőt használhassunk a számítógépünkön. Nem túlzás azt állítani, hogy a modern számítástechnika alapja a modularitás, a különböző részek pedig ilyen API-kon keresztül kapcsolódnak össze egymással.
Az Oracle problémája, hogy az API-kon alapuló szoftverarchitektúra nem csak azt teszi lehetővé, hogy "az autón kereket cseréljünk", hanem azt is, hogy az autót cseréljük le, miközben megtartjuk a dísztárcsákat. Esetünkben: az Oracle-féle Java helyére a Google a saját fejlesztésű szoftverét illesztette úgy, hogy a Java API-kkal való kompatibilitást megtartotta - vagyis a javás alkalmazások (némi módosítással) futnak a Google rendszerén is.
A Gitlab mint DevSecOps platform (x) Gyere el Radovan Baćović (Gitlab, Data Engineer) előadására a november 7-i DevOps Natives meetupon.
Az API-k szerzői jogi védelme jóval túlmutat az Androidon. Az első áldozat a szabad szoftveres közösség lehet, számos nyílt forráskódú szoftver ugyanis pontosan úgy indult, hogy egy zárt programhoz nyújtott API-kompatibilis, de szabad implementációt. A legjobb példa pont a Linux kernel, amely a UNIX-alternatívaként, POSIX-kompatibilitással született. Az ítélet értelmében ez illegális.
Az ügy visszásságát mutatja, hogy a legtöbb szoftvercég mellett maga az Oracle is negatívan érintett lehet benne. A vörös emblémás óriás a szabad szoftveres licencel rendelkező OpenSolaris projektből ugyanis rengeteg API-kompatibilis implementációt visszaemelt zárt operációs rendszerébe, az ítélet értelmében ehhez nem lett volna joga - állítja legalábbis Bryan Cantrill OpenSolaris-fejlesztő a Hacker Newsre írt posztjában. Cantrill szerint ez is jól mutatja, hogy "maga az Oracle sem tartja be a elferdített és elfajult elvet", amelyre az ügyét felépítette.
Oracle örül. Google elkeseredett
Az ítéletre adott reakciók a papírformát tükrözik. Az Oracle üdvözölte a másodfokú döntést, amely a cég szerint "győzelem az egész szoftveripar számára, amelyet a szerzői jogok védelme hajt az innováció útján". A Google szerint "az ítélet káros precedenst teremt a számítástechnika és a szoftverfejlesztés számára", a cég most a következő jogi lépéseket fontolgatja.
Hogy az ügy hogyan folytatódik, abban fontos szerepet játszik, hogy egy függőben maradt kérdésben hogyan dönt a bíróság. Miután az eldőlt, hogy az API-kat védi a szerzői jog, most arra kell választ adni, hogy a "fair use doktrína" hatálya alá esik-e az Androidban hasznosított kód - ha igen, akkor a Google nem köteles kártérítést fizetni.