Saltar al contenido

¿Qué es el Software de Código Abierto?

Tabla de contenidos


Un software de código abierto es un tipo de software distribuido libremente que le permite acceder y modificar el código por cualquier usuario. Este tipo de software se centra más que en la distribución gratuita del software en los beneficios de acceso y modificación del código por parte de la comunidad que lo utiliza. Si quiere conocer sobre la evolución, beneficios y uso del software de código abierto le brindamos más información a continuación.

Logo de la Iniciativa para el Código Abierto
Logo de la Iniciativa para el Código Abierto.

El código abierto trae varios beneficios para los usuarios y desarrolladores, ya que entre más programadores accedan, modifiquen y redistribuyan el código de fuente de un programa mayor será la evolución y mejora del mismo. A diferencia del software convencional los usuarios de software de código abierto pueden corregir errores, adicionar funcionalidades y modificar la interfaz de las aplicaciones sin depender de alguna empresa para ello.

Breve historia del Software de Código Abierto

Con la fundación de la Free Software Foundation (FSF) por Richard Stallman en 1985 el software libre comienza a hacerse popular. El término código abierto se usó por primera vez en 1990 por las comunidades de software libre como reemplazo del nombre en inglés del software libre. El concepto de software libre se refiere a la libertad, no al costo. El movimiento surgido a partir de la creación de FSF defiende la libertad que deben tener los usuarios de las aplicaciones acceder, cambiar, actualizar, corregir y agregar al código para satisfacer sus necesidades y poder distribuirlo o compartirlo libremente con otras personas.

Entre los grandes aportes e impulsos al movimiento del software libre se encuentra GNU: un sistema operativo libre. Con la introducción de Linux como kernel de GNU se logró una distribución completamente libre. En la década de los 90 la popularidad del movimiento aumentó, en este tiempo varias compañías comienzan a mostrar interés en este. Se liberaron los códigos de fuente de algunos productos de grandes empresas y se comienza a comercializar las primeras computadoras con GNU/Linux.

En los años 2000 el uso de software de código abierto continuó en ascenso. Linux se convertiría en la base de los sistemas operativos de grandes compañías. Apple presentaría el sistema operativo de sus computadoras llamado Darwin en el año 2000. En 2008 Google presentó Android, uno de los sistemas operativos más importantes en la historia de la informática, este está basado en el kernel de Linux. Aumentaron también los repositorios de código libre en Internet y las comunidades y empresas de desarrollo de software libre. La FSF continuó como activista dedicada a apoyar los derechos de los usuarios relacionados con el uso del código fuente de las aplicaciones y las garantías de libertad sobre las mismas. 

Premisas del software de código abierto

El código abierto debe cumplir varios requisitos para que una aplicación pueda considerarse dentro de este movimiento:

  1. Libre redistribución: el software debe poder ser regalado o vendido libremente.
  2. Código fuente: el código fuente debe estar incluido u obtenerse libremente.
  3. Trabajos derivados: la redistribución de modificaciones debe estar permitida.
  4. Integridad del código fuente del autor: las licencias pueden requerir que las modificaciones sean redistribuidas solo como parches.
  5. La licencia no debe discriminar a ninguna persona o grupo: nadie puede dejarse fuera.
  6. Sin discriminación de áreas de iniciativa: los usuarios comerciales no pueden ser excluidos.
  7. La licencia no debe ser específica de un producto: el programa no puede licenciarse solo como parte de una distribución mayor.
  8. Distribución de la licencia: deben aplicarse los mismos derechos a todo el que reciba el programa
  9. La licencia no debe restringir otro software: la licencia no puede obligar a que algún otro software que sea distribuido con el software abierto deba también ser de código abierto.
  10. 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.

Beneficios del software de código abierto

Entre los principales beneficios del uso de software de código abierto se encuentran acceso al código de fuente, distribución de forma gratuita y evitar la dependencia del software propietario. El acceso al código de fuente de cualquier aplicación es vital para la libre modificación, corrección y adición de funcionalidades por parte de los usuarios. También es importante para la verificación de problemas de seguridad que pueda tener cualquier aplicación.

La distribución gratuita es fundamental para que una mayor cantidad de usuarios pueda acceder a aplicaciones. Aparejado a lo anterior está la dependencia que se crea entre usuario y empresa cuando estos dependen exclusivamente de ellas para obtener mejoras y actualizaciones. La libertad de no depender de ninguna empresa da una mayor seguridad y la posibilidad de acceder a características desarrolladas y distribuidas por la comunidad de forma inmediata.

La colaboración entre desarrolladores permite la mejora del software y la reducción de los tiempos de desarrollo de aplicaciones. Esto beneficia a los usuarios, ya que la corrección de errores se hace de forma más rápida y se lanzan nuevas funcionalidades en menor tiempo.

Licencia Pública General

La Licencia Pública General (GPL por sus siglas en inglés) es la licencia más extendida en el movimiento de código abierto. GPL le garantiza a los usuarios de las aplicaciones bajo esta licencia la libertad de modificar, compartir, usar y acceder al código de fuente de la misma. Los primer propósito de la misma es indicar que el programa bajo esta licencia es libre. El segundo propósito es proteger la apropiación del programa para evitar la restricción de estas libertades a los nuevos usuarios. La licencia GPL la creó Richard Stallman para el proyecto GNU.

Es importante que entienda que el código de las aplicaciones modificadas y redistribuidas bajo la licencia GPL debe permanecer abierto. Por lo general las aplicaciones de código abierto se distribuyen de forma gratuita. Debe saber que esta licencia permite comercializar el producto realizado y puede haber costos extras de soporte y asistencia sobre una aplicación de código abierto.

Software de código abierto de uso cotidiano

Las aplicaciones y sistemas operativos basados en código libre son muy comunes en la actualidad. Ejemplos muy comunes son los principales sistemas operativos de dispositivos móviles: iOS y Android, ambos están basados en proyectos de código abierto. Swift, el lenguaje de programación creado por Apple para el desarrollo de aplicaciones para iOS y Mac OS X, pasó a ser de código abierto en el año 2015.

GIMP editor de imágenes de código libre
GIMP editor de imágenes de código libre.

Entre las aplicaciones que más utilizamos se encuentran los navegadores web, entre los más populares se encuentran Chrome, Mozilla Firefox y Microsoft Edge lanzado recientemente. Firefox es un proyecto de código abierto que cuenta con una gran comunidad de colaboración. Chrome y Edge por su parte, se basan en el proyecto del navegador de código abierto Chromium en el cual se desarrollan y prueban nuevas funcionalidades por parte de la comunidad.

El reproductor multimedia VLC es otra de las aplicaciones de código abierto más extendido y usado por los usuarios. OpenOffice es una suite de herramientas para el trabajo ofimático también de código abierto muy extendida sobre todo entre los usuarios que usan distribuciones de sistemas operativos basados en el kernel de Linux. Otros ejemplos son: Osmand, Telegram, Signal, Kodi, Open Radio y NewPipe. De forma general existen aplicaciones de código abierto muy utilizadas en casi todos los ámbitos.


Artículos relacionados que te podrían resultar interesantes:


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *