domingo, 7 de octubre de 2007

Diferencias entre Software Propietario y Software Libre (FLOSS)

Con este post iniciaré una serie de artículos de análisis sobre las diferencias comerciales y de modelo de negocios entre el "software propietario" y el "Free/Libre Open Source Software (FLOSS)".

Aprovecharé también de plantear mi posición personal en estos temas. Lo considero adecuado, ya que participo en diversas instancias profesionales y gremiales, y en particular, soy miembro de la mesa FLOSS convocada por el Ministerio de Economía, en el contexto de la discusión de la Estrategia Digital para Chile.

Desde ya, declaro que tengo el "alma dividida": por una parte, adscribo varios de los principios filosóficos y reconozco muchas de las ventajas técnicas del FLOSS. Pero también considero importantes algunos aspectos del software propietario, especialmente en temas comerciales y de modelo de negocios.

En mi rol como profesional y empresario, para mi realidad personal debo considerar modelos económicos sustentables que me permitan pagar las cuentas de fin de mes. Y para mi país, tengo la responsabilidad de colaborar en conciencia con criterios adecuados para el diseño de un modelo de desarrollo nacional basado en conocimiento y tecnología.

So my friends, let's rock and roll.

Las denominaciones

Generalmente se utiliza el concepto de "software licenciado" como sinónimo de "software propietario", pero en estricto rigor, plantear que son equivalentes es un error.

Como toda obra intelectual, toda aplicación de software es "licenciada" (es decir, tiene una licencia de uso) y se reconocen derechos de "propiedad intelectual", dependiendo de la decisión del "autor" o "creador" del software. Cuando hay cesión de derechos, aplica lo que defina el "dueño de los derechos".

Por lo tanto, las aplicaciones de software de cualquier tipo, sea "propietario" o "libre/FLOSS", tienen todas una licencia de uso.

La distribución del FLOSS

Hay muchas diferencias entre el software "propietario" y el software FLOSS, e incluso dentro del propio ámbito del FLOSS.

Una distinción filosófica del Free Software respecto del software propietario, es la apertura "total" del conocimiento incluido en el software.

Una distinción técnica entre el software "propietario" y el FLOSS, es la apertura del código fuente de las aplicaciones junto con la distribución "binaria".

En el FLOSS, se permite la distribución y modificación del software, pero manteniendo el espíritu original de las condiciones definidas por el autor, en términos de uso y distribución "libres" (sin restricción).

Para que una aplicación cumpla con la denominación de "Open Source Software", debe incluir la distribución del código fuente del software y cumplir con las 10 definiciones entregadas por la Open Source Initiative (OSI).

Por su parte, el "Free Software" (seremos insistentes en que NO debe confundirse con "gratuito") es mucho más restrictivo y la definición está dada por la Free Software Foundation (FSF).

La distribución del "software propietario"

En el caso del "software propietario", la distribución se restringe a quienes adquieren una "licencia de uso" (generalmente por la vía de un pago), para un "paquete de aplicación" o "producto". Pero la distribución se restringe al código "binario" (los programas ejecutables de las aplicaciones), quedando el código fuente en propiedad de los creadores del software. Y dependiendo de las condiciones de la licencia, existirán diversos "usos" permitidos a los "usuarios".

En algunos casos muy particulares para "productos" o "paquetes", y dependiendo de las condiciones del acuerdo entre el desarrollador de software y el cliente, se realiza una transferencia del "código fuente" de la aplicación. Una tendencia creciente es el "aseguramiento", implementado a través de un procedimiento de "software escrow", donde bajo ciertas condiciones (típicamente bancarrota o falta de mantención y soporte), el cliente puede acceder y modificar el código para usos futuros.

Pero en cualquiera de las condiciones anteriores, no se transfiere los derechos de propiedad ni se da una libertad total al cliente que recibe dicho código.

Por último, no todo "software propietario" es pagado. Existen muchos desarrolladores que por razones estratégicas y comerciales, transfieren licencias de uso a "precio cero" (o sea, son gratis). Pero eso NO significa que sean aplicaciones FLOSS. Son simplemente aplicaciones propietarias, pero gratuitas.

Los desarrollos "a medida"

Un último caso es una situación en la cual un cliente financia servicios profesionales (Horas Hombre) para que un desarrollador de software le "programe" una aplicación de software específica, financiando totalmente el desarrollo.

En dicho caso, se aplica el principio de "el que financia es el dueño de los derechos de propiedad". Pero cuidado. Siempre y cuando las componentes básicas que se utilizan en el desarrollo no sean de tipo FLOSS. De ser así, el desarrollo debería automáticamente ser de uso y propiedad pública, o al menos, deberían aplicarse las licencias de las componentes básicas y sus restricciones. Una forma interesante de verlo es considerar la "falta de restricciones", principio generalmente conocido como copyleft.

En este tema, es importante que los CIOs de las compañías comprendan bien los aspectos de licenciamiento al solicitar un desarrollo de software, en forma independiente de si los desarrollos son sobre software propietario o con plataformas FLOSS. Me ha tocado ver situaciones en las cuales por desconocimiento de las partes, se cometen ilegalidades o no se respetan ciertos principios. Mi opinión es que en el tema de los derechos de propiedad del software, la demanda y la oferta en Latinoamérica todavía están muy inmaduras. Es un tema que al menos en la Agenda Digital 2.0, quiero proponer como una acción específica de divulgación masiva.

Algunos desarrolladores de software tienen la percepción errada de que los "desarrollos a medida" son propiedad del desarrollador, independiente de que el cliente lo financie. No es así. Una regla sencilla es aplicar el viejo principio de que "el que pone la plata, pone la música". Esto incluye el caso de desarrolladores de software contratados por una empresa. Las creaciones intelectuales creadas durante la jornada laboral y pagadas (financiadas) mediante un sueldo, son propiedad de la empresa contratante.

Este último aspecto en cuanto al financiamiento es muy relevante, especialmente para el análisis de los aspectos comerciales: Quien financia, es el dueño de los derechos (al igual que muchas otras situaciones de la vida).

Esta distinción puede no ser compartida por algunos, pero la consideraremos como un criterio fundamental de análisis.

Mi resumen sobre la propiedad del software

En resumen, y siendo consistente con los criterios y definiciones anteriores, la guía que aplico en el modelamiento de procesos de negocios de software, distingue las siguientes situaciones:

  • En el caso de "productos FLOSS", el dueño es "la comunidad", dado que la inversión para el diseño, construcción, testing y mantención, la realizan múltiples programadores en modelos colaborativos. No existe un único dueño, ya que los dueños son "muchos". La "inversión" es principalmente tiempo (horas de trabajo) aportado por la Comunidad en diversas formas. El código fuente es público y distribuido.
  • En el caso de "software propietario", el dueño es el "desarrollador de software", quien realiza la inversión completa para el desarrollo del producto. El desarrollador transfiere a sus clientes algunos "derechos de uso" según las condiciones incluidas en el acuerdo comercial. El código fuente es propiedad de la empresa desarrolladora.
  • En el caso de los "desarrollos a medida", el dueño del producto de software es el cliente que financia los "servicios profesionales", en forma independiente de que pueda contratar más servicios profesionales para la mantención y soporte futuros. El código fuente es propiedad del cliente que contrata.
Indudablemente, para todos los casos anteriores, deben aplicarse las restricciones de las licencias de los productos básicos con los cuales se construyan las aplicaciones de software.

Las condiciones de uso y distribución NO pueden ser contradictorias (o peor aún obviadas o modificadas) por la vía de un "acuerdo comercial" específico.

La colaboración y cooperación en el mundo tecnológico

Personalmente creo que, al menos en la industria tecnológica, la colaboración y la cooperación pueden desarrollarse en diversas modalidades y múltiples ámbitos, en forma independiente de las estrategias comerciales y de desarrollo que cada individuo u organización decida, sobre la base de criterios consensuados.

Indudablemente existen matices, ya que estos temas son controversiales y de continuo debate.

Mantengo una prudente distancia de los que sostienen que el mundo debería ser totalmente "free" en al ámbito tecnológico y que quienes lucran (lucramos) de la tecnología son (somos) unos inmisericordes explotadores capitalistas. Y por otro lado, me molesta profundamente la actitud de quienes sostienen que los propensores del FLOSS en sus diversas corrientes, son grupos de "hippies hackers" que no tienen preocupaciones económicas y sostienen un sueño irreal. Los fundamentalistas de ambos bandos no aportan.

En este espacio y como presentaré más adelante, mi posición ecléctica y pragmática es "tratar de tomar lo mejor de todas las visiones".

En mi próximo artículo analizo el aporte del FLOSS a la interoperabilidad.

Stay tuned!

2 comentarios:

CRoNoS 6:08 p. m., octubre 14, 2008  

estimado

me parecio bastante interesante su articulo ya que es justo la informacion que estaba buscando ya que soy programador y estoy haciendo un trabajo de forma independiente para una empresa.
tengo una pregunta
respecto al tema que quien Financia el proyecto es dueño de la aplicacion, ¿esto esta estipulado en alguna ley?
ya que mi situacion es algo similar pero con la empresa contratante no hay contrato alguno de por medio ya que es algo echo a lo amigo, se podria decir
espero sus comentarios
saludos

Maz 10:59 a. m., octubre 15, 2008  

@cronos: Gracias por tu comentario. Me alegro de poder ayudarte.

En cuanto a tu pregunta, la Ley de Propiedad Intelectual No. 17336 vigente, es explícita en dicho punto y consistente con los principios que planteo en el post. Y si no existe un contrato que modifique la regla general, la ley define el contexto.

El artículo 8o. de la Ley dice:

"Tratándose de programas computacionales, serán titulares del derecho de autor respectivo las personas naturales o jurídicas cuyos dependientes, en el desempeño de sus funciones laborales, los hubiesen producido, salvo estipulación escrita en contrario.

Respecto de los programas computacionales producidos por encargo de un tercero para ser comercializados por su cuenta y riesgo, se reputarán cedidos a éste los derechos de su autor, salvo estipulación escrita en contrario."

Ojo que en forma independiente de que no exista un contrato firmado, también esa relación comercial se rige por los principios del Código del Comercio.

Y por último, para el tema de licenciamiento de los resultados, debes contemplar que el resultado sea acorde con las licencias de las componentes o herramientas utilizadas para la construcción de la solución (lo que menciono en el artículo).

Espero que te sirva. Gracias!

Marco.

Seguidores

  © Blogger templates Newspaper III by Ourblogtemplates.com 2008
      Header Image: Modification of Technology Curve by Wonderlane

Back to TOP