Google batte Oracle: Android fa un uso corretto delle API Java

Google si è appellata al fair use durante il processo contro Oracle per l'uso delle API Java su Android, e la giuria ha creduto all'argomentazione della società
di Nino Grasso pubblicata il 27 Maggio 2016, alle 10:01 nel canale TelefoniaGoogleOracleAndroid
84 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - infoDa un lato, ci sarebbe da dire che le API non cascano dal cielo, e chiunque abbia mai sviluppato una libreria lo sa. Quindi a primo impatto vorrei che il mio lavoro fosse tutelato.
Dall'altro, visto che si parla di dichiarazioni di interfacce, forse non ha molto senso pretendere che ognuno se le riscriva partendo dalla documentazione, visto che, gira e rigira, comunque si dovrà arrivare allo stesso codice. Quindi si potrebbe pure permettere di copiare i file con le dichiarazioni.
Non riesco a capire come "schierarmi".
La legge tutela già entrambi i punti di vista ammettendo il copyright su API e codice dichiarativo ma prevedendo l'istituto del fair use. Google ha copiato lo stretto indispensabile a mantenere la compatibilità con il software Java (API e codice dichiarativo, quest'ultimo può cambiare solo con modifiche di forma e non di sostanza) e reimplementato tutto il resto, ha aggiunto milioni di righe di codice come contributo originale, ha fornito alla comunità il risultato sotto una licenza open, ha avuto il benestare di Sun che allora era la proprietaria di Java... comprensibilmente la giuria ha stabilito che si trattasse di fair use e sono d'accordo con lei.
Ecco l'originale, contenuta in W/CPython, riportata da GTKM:
[CODE]PyAPI_FUNC(PyCodeObject *) PyCode_New(
int, int, int, int, PyObject *, PyObject *, PyObject *, PyObject *,
PyObject *, PyObject *, PyObject *, PyObject *, int, PyObject *)[/CODE]
Ed ecco la versione riscritta da zero:
[CODE]PyCodeObject *PyCode_New(
int argcount, int nlocals, int stacksize, int flags,
PyObject *code, PyObject *consts, PyObject *names, PyObject *varnames,
PyObject *freevars, PyObject *cellvars, PyObject *filename, PyObject *name,
int firstlineno, PyObject *lnotab);[/CODE]
Direi che MOLTO DIVERSE ci sta benissimo, com'è anche evidente che sono tutt'altro che ASSOLUTAMENTE IDENTICHE.
Cosa non ti è chiaro di questo:
[I][INDENT]"Poi, replicando a te che [U]affermavi che fosse impossibile riscrivere il codice dichiarativo[/U] visto che ci sarebbe un solo modo (e l'hai di nuovo ribadito nel commento sotto), ti ho dimostrato in che modo [U]è possibile tirare fuori del codice dichiarativo DIVERSO[/U] partendo da quello originale."[/INDENT][/I]
Scusa ma sembra di parlare ad un muro: Il copyright protegge il lavoro creativo la tua riscrittura della dichiarazione non ha niente di creativo dal punto di vista del SW, hai solo reindentato e messo dei nomi ai parametri. Le due dichiarazioni sono funzionalmente identiche e quindi la seconda è una violazione del copyright.
E' per questo che dico che la tua opinione sul copyright non ha senso.
Litocat non ha postato la legislazione in materia ma solo le istruzioni del giudice alla giuria. Lo so benissimo che una volta stabilito che qualcosa è soggetto a copyright l'unico modo per poterlo riutilizzare è utilizzare il fair use. Quello che ho postato io è l'articolo del Copyright Act che stabilisce cosa non è soggetto a copyright e le API sono sempre ricadute sotto uesto articolo in quanto "method of operation"
Sinceramente non ho capito la tua posizione:
Secondo te dovrebbe essere possibile reimplementare liberamente una libreria o no?
Perché è questa la conseguenza finale di questo caso. Per adesso Google è riuscito ad affermare il fair use, domani qualcuno che volesse scrivere un emulatore per la prossima Playstation 5 potrebbe dover affrontare una causa e potrebbe non vincerla.
Eppure queste cose sono state fatte fin dagli albori dell'informatica (e l'articolo 102b del copyright act serve anche a permetter questo)
Op-ed: Oracle attorney says Google’s court victory might kill the GPL
Premesso che quella è l'opinione di un avvocato di Oracle, Lei va oltre a quanto dicevi te: secondo te come conseguenza di questa sentenza si sarebbero potuti copiare gli header dei software GPL, lei dice che si può copiare qualunque parte di un sw GPL.
La mia risposta è che
[LIST=1]
[*]Sta facendo FUD
[*]Secondo me nessuno ti citerà mai in tribunale se copi gli header di un sw GPL. Se invece copi il codice implementativo ti ci voglio a farti riconoscere il fair use
[/LIST]
Per favore, se risponderai a questo post cerca di rispondere in maniera più organica evitando di rispondere ad ogni singola frase. Diventa pesante anche per gli altri seguire la discussione.
Da un lato, ci sarebbe da dire che le API non cascano dal cielo, e chiunque abbia mai sviluppato una libreria lo sa. Quindi a primo impatto vorrei che il mio lavoro fosse tutelato.
Dall'altro, visto che si parla di dichiarazioni di interfacce, forse non ha molto senso pretendere che ognuno se le riscriva partendo dalla documentazione, visto che, gira e rigira, comunque si dovrà arrivare allo stesso codice. Quindi si potrebbe pure permettere di copiare i file con le dichiarazioni.
Non riesco a capire come "schierarmi".
Il tuo lavoro è tutelato nella parte implementativa. Estendere la tutela alla parte dichiarativa sarebbe un vincolo troppo forte che bloccherebbe l'interoperabilità
La giuria ha agito bene date le premesse iniziali. Non concordo sulla prima parte in quanto secondo me (ed altri più esperti di me) la legge americana non ammette il copyright su API, almeno non sulla parte dichiarativa. (articolo 102b del Copyright Act)
La corte di appello ha combinato un casino
Le 11500 righe sono interamente di codice dichiarativo, quindi era pure una causa facile, a 'sto punto.
Le 11500 righe sono interamente di codice dichiarativo, quindi era pure una causa facile, a 'sto punto.
La legge è chiara ed i precedenti pure. Non si sa bene come la corte di appello ha dichiaratoche le API di Java erano soggette a copyright.
Come ho già detto la decisione ha sorpreso tutti ed è stata contestata degli esperti.
La corte di appello ha combinato un casino
Non è solo la corte di appello, dopo la sentenza di appello google ha fatto ricorso alla corte suprema sostenendo che la corte d'appello avesse sbagliato a ritenere che le api fossero protette da copyright. E la corte suprema ha rigettato il ricorso.
La corte suprema riceve circa 7000 richiesta l'anno e ne valuta circa 100 tra queste 7000. Il rifiuto di valutare il caso in questione non comporta nessun giudizio di merito sul caso da parte della corte suprema
E' per questo che dico che la tua opinione sul copyright non ha senso.
Intanto aver messo dei nomi è un enorme cambiamento, se permetti. O a te piace avere a che fare con parametri di cui conosci soltanto il tipo? Sì, puoi lavorarci, ma è LEGGERMENTE più complicato, non credi? E vedo che continui a ignorare anche l'assenza di macro nella seconda dichiarazione.
Comunque se per te sono la stessa cosa, è inutile continuare questa parte della discussione.
Riguardo al copyright, la violazione c'è se COPI (copy-right) il lavoro che è già stato fatto da qualcuno per scrivere quella roba, e che è coperto dal diritto d'autore, per l'appunto. Qui NON mi sto riferendo alle API di per sé, ma ai byte grezzi dei file. Ovviamente sempre al netto del fair use.
Sinceramente non ho capito la tua posizione:
Secondo te dovrebbe essere possibile reimplementare liberamente una libreria o no?
Perché è questa la conseguenza finale di questo caso. Per adesso Google è riuscito ad affermare il fair use, domani qualcuno che volesse scrivere un emulatore per la prossima Playstation 5 potrebbe dover affrontare una causa e potrebbe non vincerla.
Eppure queste cose sono state fatte fin dagli albori dell'informatica (e l'articolo 102b del copyright act serve anche a permetter questo)
La mia posizione (quindi come vorrei che fosse la normativa sul copyright) è che il fair use per il copyright non dovrebbe essere consentito, poiché frutto del lavoro dell'autore.
Non mi sto riferendo alle API qui, ma al codice grezzo (incluso quello dichiarativo, visto che è sempre codice).
In queste condizioni in ogni caso sarebbe possibile reimplementare (da zero) le API (sia nella parte dichiarativa, sia ovviamente in quella implementativa), e dunque potresti sia riscrivere librerie sia scrivere emulatori per l'architettura che ti piace.
Questo sempre che le API non siano soggette a copyright, come ha riportato litocat.
Personalmente, e come già detto, su questa precisa questione non ho ancora preso posizione.
La mia risposta è che
[LIST=1]
[*]Sta facendo FUD
[*]Secondo me nessuno ti citerà mai in tribunale se copi gli header di un sw GPL. Se invece copi il codice implementativo ti ci voglio a farti riconoscere il fair use
[/LIST]
Ma in linea teorica è possibile, perché il fair use non fa distinzione fra codice dichiarativo e implementativo: parla solo di codice.
Comunque, sì: la tizia è andata ben oltre rispetto a quanto avevo ipotizzato. Ho riportato il suo pezzo soltanto perché sostanzialmente copriva (largamente) la mia idea, ed è su un sito abbastanza autorevole (che peraltro ha seguito scrupolosamente la vicenda).
Ho diviso in 3 macro-blocchi: spero che sia più chiaro così.
Dipenderebbe tutto dalla licenza d'uso concessa dal proprietario. Quindi l'interoperabilità non verrebbe automaticamente e indefinitamente bloccata.
Ma il documento in questione non parla di pena di morte?
Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".