Muchos desconocen que cuando “compramos un programa” lo que realmente estamos haciendo es pagar por una licencia de uso de éste. El software sigue perteneciendo al desarrollador. Un ejemplo es que pese a los millones de licencias de uso vendidas, Ms-Windows pertenece a Microsoft. El software de código abierto, también llamado simplemente OS (OpenSource), se diferencia del software de código cerrado en su licencia.
La licencia de código abierto permite explícitamente:
• Utilizar el programa para cualquier propósito y sin limitaciones.
• Estudiar cómo funciona.
• Redistribuir copias del programa (no se paga por la licencia).
• Modificarlo.
Para garantizar los derechos de los usuarios de software de código abierto, toda copia debe distribuirse con la nota de copyright, una copia de la licencia y el código fuente. El copyright indica el propietario del software, para que no se lo pueda apropiar un tercero, en tanto que la licencia garantiza su condición de OS y el código fuente es la base que permite estudiar y modificar el software.
¿Cuáles son las ventajas del OpenSource?
Ventajas económicas:
• El usuario no paga por la licencia de uso del programa.
• El proveedor cobra únicamente por los servicios que presta.
• Normalmente el software asociado a una aplicación OS es también OpenSource. Con el software cerrado suele ser necesario comprar licencias de herramientas que complementen la que ya tenemos.
Independencia del proveedor y mejora de servicios:
• El cliente es independiente del proveedor ya que, al disponer del código fuente, cualquier proveedor puede proseguir donde terminó el anterior.
• Puesto que el proveedor sólo cobra por sus servicios y el cliente no tiene ninguna atadura, el primero concentra sus esfuerzos en dar un buen servicio al cliente.
Disponibilidad de los datos e integración de los procesos:
• Estando todo el código disponible, cualquier nuevo desarrollo puede utilizar los datos y procesos del cliente, integrando los distintos programas.
• Los datos generados siempre serán accesibles, sin obligar para ello al cliente a invertir en licencias.
• Al conocer el funcionamiento de los programas, podrán operar entre ellos sin restricciones.
Transparencia y seguridad:
• Al poder estudiar el código, las compañías pueden estar seguras respecto al uso que se hace de sus datos y los procesos que se utilizan. No en vano, algunos programas han resultado tener puertas traseras o realizar envíos de información sin conocimiento del usuario.
¿Cuál es el modelo de desarrollo del código abierto?
El modelo de desarrollo del software de código abierto se basa en compartir el conocimiento. Este es el esquema tradicional propio de los campos científicos y por ello fue el modelo inicial con que se desarrolló Internet, al igual que las herramientas que la hicieron posible (TC/IP, Unix, C.).
En el esquema de desarrollo de código cerrado una empresa contrata a desarrolladores para realizar un proyecto y después vende en el mercado licencias de uso con restricciones (no se puede copiar, no se puede estudiar, no se puede modificar).
En el modelo de desarrollo de código abierto una persona u organización (puede ser una compañía) coordina una amplia comunidad de desarrolladores independientes distribuidos por todo el planeta y el software se puede ver, probar y modificar aún antes de que salga una primera versión completa. Al proceder los usuarios y desarrolladores de distintos entornos económicos, sociales y legales, el resultado obtiene mayor flexibilidad, adaptabilidad y versatilidad.
¿Cuál es el negocio del código abierto?
Las empresas que se dedican al OS no ingresan dinero por las licencias del software sino por el servicio que prestan a sus clientes. Más concretamente, focalizan sus ingresos en los servicios asociados al software, tales como formación, asesoría y consultoría, certificación, desarrollos a medida.
De esta manera, los clientes no pagan por poder utilizar un programa (lo usen mucho o poco), sino que invierten en tener un proveedor de servicios, optimizando su inversión, ya que sólo costean los servicios recibidos y se mantienen independientes del proveedor. Por otra parte, uno de los servicios que puede proporcionar un proveedor es desarrollar una funcionalidad inexistente en una aplicación.
De hecho, con el código cerrado, mediante la venta de licencias, los clientes financian el desarrollo de un sistema y, generalmente, siguen pagando por su uso cuando ya se ha financiado completamente el desarrollo. En el código abierto un cliente únicamente financia, si lo desea, la funcionalidad que necesita y no existe. De este modo contribuye, además, al desarrollo del sistema, beneficiando a otras firmas en la misma medida que el desarrollo financiado por otras empresas le ha ayudado.
¿Quién responde por el software si no es de nadie?
Hay pequeños desarrollos que son organizados por un desarrollador altruista, pero en proyectos más complejos el mayor impulso viene dado muchas veces por empresas.
Estas, como ya se ha comentado, se benefician de crear un mercado más abierto y de su posición de expertos en dicho proyecto (puesto que son los principales desarrolladores). Es el caso de Zope Corporation, MySQL AB, ComPiere, Red Hat, SuSE Linux AG… o compañías “tradicionales” como IBM o Novell.
El software siempre tiene un propietario. Está indicado en la nota de copyright o copyleft. Por eso es imprescindible con cada copia del software distribuir dicha nota.
¿El OS proporciona realmente independencia del proveedor?
Sí. El uso de OpenSource proporciona independencia del proveedor.
Hay quien apunta que IBM está impulsando el uso de Linux en las empresas para que más tarde queden atadas a sus aplicaciones. Por eso lo importante no es un sistema como Linux, sino el uso de licencias de código abierto. Por ello se habla de sistemas GNU/Linux (sistemas basados en GNU con Linux como núcleo). Mientras un usuario utilice OS se mantendrá independiente del proveedor. Si decide utilizar código cerrado propiedad de IBM, Microsoft o cualquier otro, dependerá de las condiciones que éstos impongan en sus licencias, de los desarrollos que deseen hacer, etc.
¿OS también me obliga a realizar actualizaciones?
No. Se ha hecho notar por ejemplo que Red Hat no ofrece soporte para sus distribuciones antiguas, del mismo modo que Microsoft no brinda soporte para las versiones antiguas de Windows. Sin embargo hay dos diferencias muy importantes:
• Si Microsoft decide no dar soporte a una versión antigua de Windows, sin su permiso explícito nadie en ningún caso puede hacerlo, mientras que cualquiera puede mantener y soportar (o contratar para que se haga) una versión antigua de GNU/Linux.
De hecho Microsoft puede mantener, copiar y modificar cualquier versión de GNU/Linux mientras no cambie las condiciones de su licencia (mientras la mantenga como OS).
• Los programas de código abierto, no requieren el pago de una licencia por la actualización. Cada versión del Windows de Microsoft requiere de un pago para obtener la licencia de uso y/o actualización.
Hitos en la historia del software de código abierto
• A principio de los 80’, Richard M. Stallman fue el primero en formalizar la filosofía del “Software Libre”. Para ello creó la “Free Software Foundation” en 1984 y comenzó el proyecto GNU. El aporte básico y más importante es la licencia GNU-GPL (GNU General Public License) que garantiza y protege la libertad de utilizar, estudiar, copiar y modificar el software.
• En 1991 el estudiante LinusTorvald comienza el desarrollo de Linux bajo la licencia GPL, lo que acaba suponiendo un gran impulso para el proyecto GNU y el software libre en general.
• En 1998 Bruce Perens y colaboradores escriben la “Definición de Código Abierto” (“Open Source Definition”). Su objetivo era describir las propiedades técnicas del software libre.
La misma “Definición de Código Abierto” es un derivado de las “Líneas Maestras del Software Libre Debian” (“Debian Free Software Guidelines”), que deriva de la GPL (http://www.cnn.com/tech/computing/9909/03/windows.nsa.02/).
• El Oxford English Dictionary fue desarrollado de forma cooperativa voluntaria y sigue pidiendo colaboraciones (http://www.askoxford.com/worldofwords/oed/wordsearchers/).