Informática geek, matemáticas, pensamiento crítico y alguna otra cosa de vez en cuando.

2010-01-02

El Hexadecimal ha sido patentado - Quiero más

(English version below)

Recientemente, la lista de correo de GMP recibió una invitación a los desarrolladores para contribuir en el recientemente creado proyecto Peer-To-Patent Australia, porque Hewlett-Packard ha enviado una solicitud de patente que podría estar relacionada con el proyecto.

Al buscar en Google el título de la patente (Binary representation of number based on processor word size), me he encontrado, para mi sorpresa, con que ya estaba concedida en Europa y EE.UU. Pero mi sorpresa ha sido aún mayor tras leer la patente.

El «invento» cubre el almacenamiento de números que se pretende representar en base B, como números en base Bn, a razón de un dígito por palabra, donde Bn es la mayor potencia entera de B que cabe en una palabra de procesador. Por ejemplo, para almacenar un número que se pretende representar en decimal en un procesador de 16 bits, la idea es guardar el número en base 10.000, ya que 104 es la mayor potencia entera de 10 que puede representarse en una palabra de 16 bits (105=100.000 se sale de rango).

Esa resulta ser la misma idea que usé por simplicidad para el contador de ciclos de mi depurador de BF (brfd 1.0) en 2001, al que le llamé «Petradecimal» (búsquense las apariciones de «Petra» en el código). En realidad, sólo puedo demostrar 2006 como fecha inferior, porque esa es la fecha en la que está archivado en la Wayback Machine, que recientemente fue admitida como prueba por un tribunal de EE.UU. Aquí está el enlace a la Wayback Machine: [1]. En la lista de correo de GMP dije por error que fue en 2005 cuando lo usé, pero esa era en realidad la fecha de una versión posterior, la 1.0.1, presentada en la entrada anterior. El tiempo pasa tan rápido...

Lo peor es que se puede argumentar que la patente cubre la conversión de/a hexadecimal en procesadores de 8, 16, 32 y 64 bits, cuando dicha conversión se realiza en bloques de una palabra de procesador cada uno.

Sin embargo, lo que quiero decir no es que esta patente no debería haber sido concedida.

Lo que está haciendo Peer-To-Patent es evitar que se patenten ciertos inventos que cuentan con precedentes, de manera que la calidad general de las patentes concedidas mejore, pero no protege contra la trivialidad. Sin embargo, el mundo no necesita patentes de software de mejor calidad. Eso es simplemente un paso que disfraza a las patentes como algo marginalmente aceptable, disimulando el verdadero problema. El mundo necesita llenarse de patentes triviales y de baja calidad, para que más y más gente se dé cuenta de cuán ridículo es el sistema de patentes aplicado al software y por qué las patentes y el software necesitan divorciarse, y así todos juntos pidamos ese divorcio a gritos.

El proyecto Peer-To-Patent está ahí para ayudar a los de la oficina de patentes, gente dedicada a tiempo completo a investigar patentes, porque incluso con su dedicación a tiempo completo, fácilmente se les puede escapar identificar algo que ya está inventado. Esto por sí mismo expone una buena parte de lo que está mal con las patentes de software. Si los investigadores dedicados a tiempo completo no pueden saber con seguridad si un invento ya está inventado, ¿cómo puede, digamos, un programador de software libre estar seguro de no pisar una mina en forma de patente mientras está haciendo su trabajo creativo diario? Y al margen de si el programador hace o no un trabajo de investigación todavía más cuidadoso que los de la oficina de patentes, hay una posibilidad de que la idea sea patentada después de todas formas, como ha sido mi caso. Tengo suerte en esta ocasión de ser capaz de demostrar que 2006 es la fecha de mi «invento». ¿Qué pasaría si no pudiera?

La existencia de Peer-To-Patent es, por tanto, un síntoma de que el sistema de patentes no funciona cuando se aplica al software, pero no el único. La existencia de la Open Invention Network para desarrollar una biblioteca de patentes encaminadas a la defensa contra los juicios por patentes, y la propuesta de un seguro contra patentes, significan que estamos en una situación en la que estamos defendiéndonos de la ley en lugar de ser protegidos por ella. Mejorar la calidad de las patentes NO es la solución. Acabar con las patentes de software, por otro lado, sí lo es. Las patentes de software deben ser eliminadas, no mejoradas.

Referencias

[1] http://web.archive.org/web/*/http://www.formauri.es/personal/pgimeno/prog/brfd10.zip

No comments: