domingo, 29 de julio de 2012

Software Libre u Open Source ?


Hoy en día el software libre y el open source o codigo abierto son dos términos que son muy mencionados por las comunidades de desarrollo de software. Pero ¿Cual es la diferencia de ambos? ¿Por cual debemos inclinarnos ? ¿Que ventajas y desventajas ofrecen ? En este espacio voy a realizar una pequeña síntesis sobre éstas inquietudes.

Software libre(SL) significa darle el control a uno o varios usuarios sobre un software, ademas de tener las siguientes libertades:

  • La libertad de ejecutar el programa para cualquier propósito (libertad 0).
  • La libertad de estudiar cómo funciona el programa, y cambiarlo para que haga lo que usted quiera (libertad 1). El acceso al código fuente es una condición necesaria para ello.
  • La libertad de redistribuir copias para ayudar a su prójimo (libertad 2).
  • La libertad de distribuir copias de sus versiones modificadas a terceros (libertad 3). Esto le permite ofrecer a toda la comunidad la oportunidad de beneficiarse de las modificaciones. El acceso al código fuente es una condición necesaria para ello.
Sus principios se centran en la colaboración y difusión del conocimiento con la finalidad de obtener ventajas económicas y tecnológicas. SL no significa que siempre es gratis, ya que podemos haber pagado por él pero podemos tener la libertad de modificar su código fuente y hasta vender copias.

Por otra parte, open source es una metodología que promociona la libre distribución y acceso del código fuente, y se cumplen los siguientes criterios:

  • Libre redistribución
  • El código fuente debe estar incluido u obtenerse libremente.
  • Trabajos derivados: la redistribución de modificaciones debe estar permitida.
  • Integridad del código fuente del autor: las licencias pueden requerir que las modificaciones sean redistribuidas sólo como parches.
  • Sin discriminación de personas o grupos
  • Sin discriminación de áreas de iniciativa
  • Distribución de la licencia: deben aplicarse los mismos derechos a todo el que reciba el programa
  • La licencia no debe ser específica de un producto
  • La licencia no debe restringir otro software
  • La licencia debe ser tecnológicamente neutral: no debe requerirse la aceptación de la licencia por medio de un acceso por clic de ratón o de otra forma específica del medio de soporte del software.
Luego de ver las características de cada uno puedo decir:

  • EL SL y el código abierto poseen valores fundamentales diferentes ya que el segundo está más orientado a los beneficios prácticos de poder acceder al código, que a las cuestiones éticas y morales del SL.
  • El código abierto es una metodología de programación, el SL es un movimiento social
  • El SL respeta la libertad del usuario en cambio la filosofía del código abierto se enfoca en como hacer mejor software.
  • El código abierto únicamente tienen en cuenta la licencia del código fuente, mientras que el SL considera si el dispositivo le permitirá ejecutar su versión modificada del programa
  • La organización que respalda el SL es la FSF(Free Software Foundation) y el código abierto es la OSI(Open Source Initiative)
A pesar de las diferencias que existen en la definición de ambos conceptos, son completamente equivalente desde el punto de vista práctico, ya que estos dos movimientos trabajan juntos en el desarrollo práctico de proyectos.

Referencias:

- http://opensource.org/
- http://www.gnu.org
- http://www.fsf.org