Patents i programari lliure

La manera tradicional de protegir el programari ha estat a través dels drets d’autor: els desenvolupadors i les empreses de programari obtenen una protecció automàtica sobre el seu programari i poden oferir llicències a tercers per a la seva explotació, sota llicències propietàries o lliures. Els drets d’autor protegeixen l’expressió de les idees i conceptes implementats en el programa (interfície d’usuari, gestió de dades, regles de negoci, etc.); és a dir, el codi. Aquests drets permeten que altres desenvolupadors, sense necessitar el consentiment de l’autor original, examinin el programa i el reescriguin, sense copiar línies de codi, per a obtenir les mateixes funcionalitats, crear interfícies interoperables i fins a interfícies gràfiques d’usuari molt similars. (Vegeu Protecció del programari mitjançant els drets d’autor).

No obstant això , amb una lectura breu de la premsa tècnica, es podrà observar que la majoria de casos legals relacionats amb el programari no toquen el tema de drets d’autor, sinó el de patents. Podem citar per exemple els casos: Eolas vs. Microsoft, NTP vs. RIM (Blackberry), Symantec vs. Microsoft. Una primera conclusió ens portaria a pensar que la millor manera de protegir el programari son les patents.

Conceptes bàsics sobre les patents

Les patents ofereixen al seu titular el drets d’impedir que tercers, entre altres activitats, reprodueixin, utilitzin, distribueixin, comercialitzin, qualsevol producte o procés que “implementa” el procés o producte patentat (vegeu Introducció a les patents). Per realitzar alguna d’aquestes activitats s’ha d’obtenir una llicència o deixar l’activitat en qüestió. Aquest és un control sobre la invenció més ampli que el que permeten els drets d’autor.

Patents de programari

Actualment hi ha un debat important a nivell mundial sobre la conveniència o no de poder patentar el programari. Els partidaris, normalment empreses amb carteres de patents i “Patent Trolls” (empreses que solament tenen patents com actius i viuen de drets de llicència), argumenten que la majoria de les invencions actuals involucren alguna forma de programari i que el programari té un efecte tècnic (no és pura matemàtica) i per tant cal permetre que es patenti el programari. Els no partidaris, la comunitat de programari lliure en particular, argumenten que el programari és una expressió de regles matemàtiques, sense afectar les “forces de la naturalesa”, és un producte intel·lectual i està, almenys a Europa, exclòs de la patentabilitat. Un altre problema de la patentabilitat en el context del programari és que impediria en certa manera la creació d’interfícies per a interoperabilitat de programes, el qual és específicament permès sota el règim legal dels drets d’autor.

Sense entrar en els detalls (millor explicats a Caliu), en el marc legal de patents a Europa, s’exclouen els programes “en si” de la patentabilitat (si un entén l’Oficina Europea de Patents, “programari en si” és programari que no inclou o no s’associa amb altres elements tècnics tals com una màquina o un dispositiu de maquinari). Tot i això, la OEP ha concedit patents sobre programari des de fa uns 10 anys, fins i tot programari que implementa mètodes de negoci, també exclòs pel conveni. L’any passat, es va intentar incorporar la patentabilitat (limitada?) del programari en el marc legal de la Unió Europea, amb la fallida i rebutjada Proposta de Directiva sobre les Invencions Implementades per Ordinador.

En els EEUU i algunes altres jurisdiccions (Japó, Austràlia), tot i el gran debat sobre la utilitat i legalitat de la patentabilitat del programari, es permet patentar “qualsevol cosa inventiva i útil”, fins i tot un programa. Es calcula que s’han concedit més de mig milió de patents sobre el programari.

Per tant, tot i els grans dubtes sobre la seva validesa, qualsevol persona implicada en la creació o explotació de programari lliure ha de ser conscient de la problemàtica de les patents de programari i ha de tenir­-les en compte a l’hora de gestionar els aspectes legals del seu projecte. Com que les patents protegeixen el codi i les idees que hi ha al darrere, no es pot fer una reenginyeria d’un procés patentat o reescriure una aplicació des de zero; cal trobar una altra manera d’obtenir la mateixa funcionalitat, obtenir una llicència o tractar d’invalidar davant els tribunals la patent si el seu titular tracta de reclamar drets de llicència.

Els riscos

El titular d’una patent pot denunciar l’activitat infractora i impedir l’ús del procés o producte patentat, encara que aquesta explotació sigui involuntària. Per als creadors i intermediaris en la cadena de subministrament de programari, es pot infringir una patent en el desenvolupament, la distribució, la comercialització o la integració de programari en altres productes. Discutiblement, la distribució en xarxa d’un producte infractor posarà en risc de demandes al distribuïdor en els països on hi ha accés a la distribució del producte, encara que no hi hagi una patent concedida (o vàlida) en el país d’origen.

Els usuaris finals també poden infringir la patent, pel sol fet d’utilitzar programari infractor. Pel que fa al programari lliure, aquest grup de persones inclou organitzacions que són molt més “goloses” pels titulars de patents (sobretot Patent Trolls): grans empreses, administracions públiques, etc. La ciutat de Munic va frenar la seva implementació de la migració a GNU/Linux per considerar el risc de demandes relacionades amb 283 suposades patents infringides per aquest sistema operatiu. És important notar que les llicències sobre programari lliure, com qualsevol llicència de programari, no inclouen cap garantia a favor del llicenciatari en relació amb possibles violacions de drets de patent de tercers.

Pels que es plantegen alliberar una aplicació, l’existència d’una patent de tercers sobre qualsevol producte o procés integrat en l’aplicació farà que l’alliberament no serveixi per res: qualsevol usuari haurà d’obtenir una llicència (no necessàriament lliure!) del titular de la patent. Abans d’alliberar, s’ha de considerar si alguna part del programari està “coberta” per una patent, tasca gairebé impossible per la manera d’escriure les patents de programari i la quantitat de patents concedides. Si no es fa una recerca de patents, no es coneixen els riscos. Si es realitza la recerca, el coneixement de la patent infringida triplicaria, a EEUU, els possibles danys a pagar al titular. Així mateix, hi ha patents “submarinos”, totes aquelles sol·licituds de patents que estan pendents de publicar (durant, a Europa, o al final, a EEUU, del procés de sol·licitud); els drets de patent són retrospectius des de la data de sol·licitud, que pot ser entre 1 a 5 anys abans.

Accions

Sense exagerar els riscos associats amb les patents de programari en el marc europeu, tenint en compte la seva potencial invalides,­ hi ha diverses accions que es poden prendre si existís una patent sobre un programari que s’ha desenvolupat o s’utilitza:

  1. Reescriure el codi de manera que no infringeixi la patent.Per això, cal analitzar bé les reivindicacions, i no la descripció general del producte o procés patentat.
  2. Obtenir una llicència de patent del titular, de manera que permeti les activitats que es volen realitzar. Si aquestes inclouen l’alliberament sota llicència lliure, és dubtós que és concedeixi cap llicència. El cost de la llicència sol ser un percentatge dels ingressos obtinguts a partir del producte/procés.
  3. Intercanviar patent per patent. Els titulars de patents solen entrar en un joc de llicències creuades, intercanviant llicències sobre les seves carteres de patents. És una opció vàlida únicament pels que tenen patents.
  4. Sol·licitar una declaració d’invalidesa de la patent, davant dels tribunals, per falta de novetat, activitat inventiva o aplicació industrial (amb un cost entre 20 i 30.000 dòlars o euros, sense garantia de guanyar el judici).
  5. Ignorar la patent i usar o desenvolupar el programari de totes maneres. És l’opció més comuna, i la que va prendre la ciutat de Munic després de la “pausa” legal en el seu procés de migració.
  6. Obtenir una assegurança per a cobrir el risc.

La comunitat de programari lliure té un problema amb les patents: els projectes no tenen patents per a intercanviar, no tenen fons per a defensar­-se en els tribunals, i no tenen el temps ni els recursos per a dedicar-­se a la investigació de patents (amb l’excepció de les grans empreses involucrades en el moviment, com Novell o IBM). Dintre de la mateixa comunitat lliure s’intenta crear un espai no solament lliure de patents, amb les llicències de patents incorporades en les més recents llicències lliures (Apatxe 2.0, MPL 1.1, CDDL, OSL 2.0, etc.), sinó també un espai “perillós” per a qualsevol entitat que vulgui iniciar accions legals basades en patents: aquestes llicències també inclouen pactes de “contraatac”, que resolen les llicències en cas d’iniciar aquest tipus d’acció legal, amb diversos graus d’abast.

És difícil estimar el risc real relacionat amb les patents de programari, i dir si és major o menor que en el context de programari propietari. La disponibilitat del codi font facilita l’esbrinament i descobriment d’infraccions. El cost de les accions legals per a defensar-­se és prohibitiu per a la majoria dels projectes (s’està parlant de crear “fons de guerra”), per tant sols l’amenaça de demandes pot ser un fre pel projecte. D’altra banda, la comunitat mateixa participa en la defensa contra patents (per exemple, ha provocat la reexaminació de la patent “One­click” de Amazon) i la recerca “d’art previ” per a poder invalidar una patent. Així mateix, empreses involucrades en el moviment de programari lliure, com IBM i Sun, han promès no demandar infractors potencials de les seves patents si el programari en qüestió es distribueix sota llicència lliure. Això podria ser un indici d’optimisme, però és una gota a l’oceà.

Avís legal