Que es open source y como funciona

Durante muchos años, el software open source se conoció con el nombre de “software libre”. En 1983, Richard Stallman estableció oficialmente el movimiento del software libre en el Proyecto GNU. El movimiento del software libre se organizó en torno a la idea de la libertad del usuario: la libertad para ver el código fuente, modificarlo y redistribuirlo; es decir, ponerlo a disposición de los usuarios y adaptar su funcionamiento de forma que satisficiera sus necesidades.

El software libre es la contraparte del software propietario o de “código cerrado”. El software de código cerrado está altamente protegido. Solo los propietarios del código fuente tienen el derecho legal de acceder a él. La modificación o la copia del código fuente cerrado están prohibidas por ley, y el usuario solo paga por el uso del software tal y como está; no puede modificarlo para usos nuevos ni compartirlo con la comunidad.

Sin embargo, la denominación “software libre” ha generado mucha confusión. El software libre no implica necesariamente que sea gratuito, sino que los usuarios pueden utilizarlo como lo deseen. La comunidad ha intentado explicar que el término “libre” hace referencia a la libertad y no significa “libre de costo”. Christine Peterson, quien acuñó la expresión “open source”, intentó abordar este problema reemplazando “software libre” por “open source”: “el problema con la denominación principal anterior, ‘software libre’, no eran sus connotaciones políticas, sino que su aparente enfoque en el precio suponía una distracción para los usuarios nuevos. Se necesitaba un término que se enfocara en el aspecto principal del código fuente, y que no confundiera inmediatamente a aquellos que no estaban familiarizados con el concepto”.

Peterson propuso la idea de reemplazar “software libre” por la expresión “open source” a un grupo de trabajo que se dedicaba en parte a llevar las prácticas del software open source a un mercado más amplio. El grupo quería que el mundo supiera que los sistemas de software eran mejores cuando se compartían, es decir, si eran colaborativos, abiertos y modificables; que se les podían dar usos nuevos y mejores; que eran más flexibles y económicos; y que contaban con mayor durabilidad sin depender de un proveedor.

Eric Raymond, uno de los miembros de este grupo de trabajo, publicó algunos de esos mismos argumentos en su ensayo sumamente influyente “La catedral y el bazar”, en 1997. En 1998, en parte como respuesta a ese ensayo, Netscape Communications Corporation implementó la tecnología open source en su proyecto Mozilla y lanzó el código fuente como software libre. Posteriormente, ese código open source se convirtió en la base para Mozilla Firefox y Mozilla Thunderbird.

El hecho de que Netscape respaldara el software open source supuso una presión adicional para que la comunidad pensara cómo destacar los aspectos empresariales prácticos del movimiento del software libre. Como resultado, se consolidó la división entre el software open source y el software libre: “open source” es la expresión que abogaría por los aspectos metodológicos, empresariales y de producción del software libre. Por su parte, el término “software libre” permanecería como una etiqueta para hacer hincapié en los aspectos filosóficos de estas mismas cuestiones, ya que se encontraban sujetas al concepto de la libertad del usuario.

A principios de 1998, se fundó la organización Open Source Initiative (OSI), lo cual formalizó la expresión “open source” y estableció una definición común para todo el sector. Pese al recelo y la desconfianza empresarial que se generó en torno al movimiento desde finales de la década de 1990 hasta principios de la década del 2000, este avanzó progresivamente de su rol secundario en la producción de software a la posición de estándar del sector que ocupa en la actualidad.

El open source es la palabra que se emplea para llamar a un tipo de software, que se distribuye con una que permite al usuario, si tiene las capacidades necesarias, poder utilizar el código fuente para modificarlo y realizar cambios y mejoras. Este tipo de programa tiene características únicas ya que al poder acceder a su código, se puede leer y modificar, provocando así que por cuantas más personas cualificadas pase mejor será el resultado final del programa, mejorándolo incluso en comparación a su “nacimiento” o primera modificación.

Nos remontamos a los años 1950 y 1960 cuando las tecnologías de internet tenían un entorno colaborativo y abierto. La red Advanced Research Projects Agency Network (ARPANET) que es lo que ahora conocemos como el internet actual, propiciaba el trabajo colaborativo y abierto y los grupos de compañeros de trabajo compartían el código fuente.
De este modo, cuando llegó el internet moderno, la ya estaba muy cimentada por la colaboración y el trabajo conjunto entre compañeros.

El funcionamiento es básico y sencillo. Este tipo de programas se lanza bajo una licencia open source pudiendo así que cualquier usuario pueda modificar, ver y editar el código fuente.

Un open source tiene que cumplir los siguientes requisitos:

  • Se puede copiar, modificar o regalar a terceras personas con coste 0.

  • El programa tiene que tener el código fuente. No se permite que no aparezca el código fuente o que aparezca solamente parte de él, tiene que aparecer por completo y se tiene que permitir modificaciones.

  • La licencia del software tiene que permitir modificaciones y cambios

  • Se puede requerir la la integridad del código del autor, es decir, las modificaciones tiene que ser completamente visibles

  • No se puede restringir la licencia a nadie, todo el mundo tiene que tener acceso a él. Si por lo que sea tiene alguna restricción, hay que mencionarlas.

  • El software se tiene que poder utilizar en cualquier ámbito laboral, además se tiene que permitir la finalidad comercial.

  • La licencia es apta para cualquier persona que reciba el programa.

  • Si el software es parte de un producto mayor, tiene que estar con la misma licencia

  • La licencia no puede excluir ningún software, es decir, si la licencia tiene algún software incorporado, no tiene que haber ningún problema para distribuirlo en conjunto.

  • La licencia tiene que poderse compartir sea de la forma que sea, mediante web, CD o lo que sea.

En este punto vamos a mencionar alguno ejemplos de programas open source:

  • GNOME (entorno de escritorio del sistema operativo Linux)

  • GNU Compiler Collection (GCC, un conjunto de herramientas de compilación para C, C ++, etc.)

  • KDE (entorno de escritorio Linux)

  • LORLS (sistema de gestión de listas de lectura)

  • Mailman (administrador de listas de correo)

  • Moodle (sistema de aprendizaje virtual)

  • Firefox (navegador web basado en Mozilla)

  • Thunderbird (cliente de correo basado en el código de Mozilla)

  • MySQL (base de datos)

  • PHP (desarrollo web)

En conclusión, el open source es un método que nos permite un desarrollo para software que lo que hace es que un programa pueda irse modificando poco a poco, mejorando e implementándose por todas aquellas personas por las que este programa pasa. De este modo, conseguiremos un programa mejor, más óptimo y de mejor calidad.

/ otros / Open Source ¿qué es y cómo funciona?

Open Source ¿qué es y cómo funciona?

El software de Open Source (o código abierto) es uno de los términos más comentado en un departamento IT y también de los más antiguos: ¡tiene más de 20 años de existencia! ¿Pero realmente sabemos lo que significa este término y en especial, sus funcionalidades?

Licencia del Open Source

En su propia web se le atribuye la definición “del término empleado para la distribución de software bajo una licencia, la cual permite al usuario acceder al código fuente cumpliendo los siguientes puntos” :

1. Redistribución de la licencia gratuita

La licencia es libre y, por tanto, no restringirá a ninguna de las partes a vender o regalar el software como un componente de una distribución que contiene programas de diferentes fuentes.  

2. Código Fuente

El programa debe incluir el código fuente y permitir la distribución tanto en el código fuente como de la forma copilada. Si hay el caso que algún producto no se distribuye con el código fuente, deberá existir algún método para obtener este código por un costo de reproducción razonable, preferiblemente descargando a través de Internet sin ningún tipo de cargo. Asimismo, el código fuente debe suponer para el programador, la solución más eficiente para modificar el programa.

3. Obras derivadas

La licencia debe permitir realizar modificaciones y obras derivadas del proyecto principal, como también que se distribuyan bajo los mismos términos que la licencia del software original.

open source web

Licencia sin discriminación

4. Integridad del código fuente del autor

La licencia puede restringir que el código fuente sea distribuido en forma modificada. Solo si la licencia permite la distribución de «archivos de parche» para modificar el programa en el momento de la compilación. Asimismo, la licencia puede requerir que trabajos derivados se renombren con un nombre o número de versión diferente del software original.

5. No a la discriminación de personas o grupos

Por un lado, la licencia nunca debe discriminar a ninguna persona o grupo de personas.

6. No a la discriminación de los campos de trabajo

Por otro lado, la licencia no debe restringir a nadie el uso del programa en un campo específico de esfuerzo. Por ejemplo, no puede restringir que el programa se use en un negocio o que se utilice en la investigación genética.

Implicaciones en productos y softwares

7. Distribución de la licencia

Asimismo, los derechos de la licencia deben aplicarse a todos aquellos a los que se les redistribuye el programa, sin necesidad de ejecutar una licencia adicional.

8. La licencia no debe ser específica de un producto

Los derechos de la licencia no deben depender de que el programa forme parte de una distribución en particular. Si el programa se extrae de esa distribución y se usa o distribuye dentro de los términos de la licencia, todas las partes deben tener los mismos derechos que la distribución del software original.

open source web

9. La licencia no debe restringir otro software

Además, la licencia no debe imponer restricciones a otro software que se distribuye junto con el software licenciado. Por ejemplo, la licencia no debe insistir en que todos los demás programas distribuidos en el mismo medio deben ser de código abierto.

10. La licencia debe ser neutral en tecnología

Finalmente, ninguna disposición de la licencia puede basarse en una tecnología o estilo de interfaz individual.

Conclusión del uso del Código Abierto

En conclusión, el OpenSource permite un método de desarrollo para software que aprovecha el poder de la revisión por pares distribuidos y la transparencia del proceso.  Asimismo, los mantras del código abierto aportan mayor calidad, mejor confiabilidad, mayor flexibilidad, menor costo y el fin del bloqueo predatorio del proveedor.

opensource icm

Esto se consigue en gracias a la comunidad, que es el conjunto de organizaciones, desarrolladores y usuarios que comparten, aportan modificaciones y realizan todo tipo de evoluciones de este tipo código distribuidos bajos este tipo de licencia.

Algunos ejemplos de proyectos basados en este tipo de distribución son Android, Apache, Audacity, FileZilla, GIMP, KeePass Password Safe, Libre Office, Linux, Mozilla Firefox, Mozilla Thunderbird, VIM Editor…

Para cualquier duda relacionada con códigos abiertos, ICM está disponible para ti.

 

El contenido de esta página fue adaptado de The Open Source Definition (Annotated)

Written by Jane