¿Qué es el software de código abierto y por qué es importante?

¿Qué es el software de código abierto y por qué es importante?

Los geeks a menudo describen los programas como «código abierto» o «software libre». Si se pregunta exactamente qué significan estos términos y por qué son importantes, siga leyendo. (No, «software gratuito» no solo significa que puede descargarlo de forma gratuita).

Si un programa es de código abierto o no, no solo es importante para los desarrolladores, sino también para los usuarios. Las licencias de software de código abierto brindan a los usuarios libertades que de otro modo no tendrían.

Credito de imagen: Quinn Dombrowski en Flickr

La definición de código abierto

Si un programa es de código abierto, su código fuente está disponible gratuitamente para sus usuarios. Sus usuarios, y cualquier otra persona, tienen la capacidad de tomar este código fuente, modificarlo y distribuir sus propias versiones del programa. Los usuarios también tienen la opción de distribuir tantas copias del programa original como deseen. Cualquiera puede usar el programa para cualquier propósito; no hay tarifas de licencia ni otras restricciones sobre el software. OSI tiene una definición más detallada de «código abierto» en su sitio web.

Por ejemplo, Ubuntu Linux es un sistema operativo de código abierto. Puedes descargar Ubuntu, hacer tantas copias como quieras y dárselas a tus amigos. Puede instalar Ubuntu en un número ilimitado de computadoras. Puede crear mezclas del disco de instalación de Ubuntu y distribuirlas. Si está particularmente motivado, puede descargar el código fuente de un programa en Ubuntu y modificarlo, creando su propia versión personalizada de ese programa, o del propio Ubuntu. Todas las licencias de código abierto le permiten hacer esto, mientras que las licencias cerradas le imponen restricciones.

Lo opuesto al software de código abierto es el software de código abierto, que tiene una licencia que restringe a los usuarios y mantiene el código fuente para ellos.

Firefox, Chrome, OpenOffice, Linux y Android son algunos ejemplos populares de software de código abierto, mientras que Microsoft Windows es probablemente el software de código cerrado más popular.

Software libre o software libre

Las aplicaciones de código abierto generalmente están disponibles de forma gratuita, aunque nada impide que el desarrollador cobre por las copias del software si permiten la redistribución de la aplicación y su código fuente posteriormente.

Sin embargo, eso no es a lo que se refiere el «software libre». El «libre» en el software libre significa «libre como en libertad«, No» gratis como en la cerveza «. El Free Software Camp, dirigido por Richard Stallman y la Free Software Foundation, se centra en la ética y la moral del uso de software que el usuario puede controlar y modificar. En otras palabras, el campo del software libre se centra en las libertades del usuario.

Richard Stallman. Imagen de Fripog en Flickr.

El movimiento del software de código abierto se creó para centrarse en razones más pragmáticas para elegir este tipo de software. Los defensores del código abierto querían centrarse en los beneficios prácticos del uso de software de código abierto que sería de mayor interés para las empresas, en lugar de la ética y la moral.

En última instancia, los defensores del software libre y de código abierto desarrollan el mismo tipo de software, pero no están de acuerdo con la mensajería.

Tipos de licencias

Hay muchas licencias diferentes utilizado por proyectos de código abierto, dependiendo de lo que los desarrolladores prefieran para su programa.

La GPL, o GNU General Public License, es ampliamente utilizada por muchos proyectos de código abierto, como Linux. Además de todas las definiciones anteriores de código abierto, los términos de la GPL establecen que si alguien modifica un programa de código abierto y distribuye trabajo derivado, también debe distribuir el código fuente de su trabajo derivado. En otras palabras, nadie puede tomar un código fuente abierto y crear un programa de código cerrado a partir de él; tienen que devolver sus cambios a la comunidad. Microsoft ha llamado a la GPL «viral» por esta razón, porque obliga a los programas que incorporan código GPL a publicar su propio código fuente. Por supuesto, los desarrolladores de un programa pueden optar por no utilizar el código GPL si eso representa un problema.

Algunas otras licencias, como la licencia BSD, imponen menos restricciones a los desarrolladores. Si un programa tiene licencia BSD, cualquiera puede incrustar el código fuente del programa en otro programa. No tienen que devolver sus cambios a la comunidad. Algunas personas lo ven como más «gratuito» que la GPL, porque les da a los desarrolladores la libertad de incrustar el código en sus propios programas de código cerrado, mientras que otros lo ven como menos «gratis» porque les quita derechos. usuarios finales del programa derivado.

Beneficios para los usuarios

No todo son cosas áridas y sin importancia que solo les importan a los desarrolladores. La ventaja más obvia del software de código abierto es que está disponible de forma gratuita. El ejemplo de Ubuntu Linux anterior muestra claramente que, a diferencia de Windows, puede instalar o distribuir tantas copias de Ubuntu como desee, sin restricciones. Esto puede ser servidores particularmente útiles: si está configurando un servidor, puede instalar Linux en él. Si configura un clúster de servidores virtualizados, puede duplicar fácilmente un solo servidor Ubuntu. No tiene que preocuparse por las licencias y cuántas instancias de Linux puede ejecutar.

Un programa de código abierto también es más flexible. Por ejemplo, la nueva interfaz de Windows 8 decepcionó a muchos usuarios de escritorio de Windows desde hace mucho tiempo. Dado que Windows es de código cerrado, ningún usuario de Windows puede tomar la interfaz de Windows 7, modificarla y hacer que funcione correctamente en Windows 8. (Algunos usuarios de Windows lo intentan, pero es un proceso laborioso de ingeniería inversa y modificación de archivos binarios).

Cuando un escritorio Linux como Ubuntu presenta una nueva interfaz de escritorio de la que algunos usuarios no son fanáticos, los usuarios tienen más opciones. Por ejemplo, cuando se lanzó GNOME 3, muchos usuarios de escritorio de Linux también estaban deshabilitados. Algunos han tomado el código de la versión anterior, GNOME 2, y lo han modificado para que funcione en las últimas distribuciones de Linux, eso es MATE. Algunos llevaron el código a GNOME 3 y lo modificaron para que funcionara como más les gustaba: eso es Cinnamon. Algunos usuarios se acaban de mudar a oficinas alternativas existentes. Si Windows fuera de código abierto, los usuarios de Windows 8 tendrían más opciones y flexibilidad. Eche un vistazo a CyanogenMod, una popular distribución de Android administrada por la comunidad que agrega funciones y soporte para nuevos dispositivos.

El software de código abierto también permite a los desarrolladores “apoyarse en los hombros de gigantes” y crear su propio software. Obtenga información sobre Android y Chrome OS, que son sistemas operativos basados ​​en Linux y otro software de código abierto. El núcleo OS X de Apple, y por lo tanto iOS, también se construyó sobre código fuente abierto. Valve está trabajando duro para trasladar su plataforma de juegos Steam a Linux, ya que les permitiría crear su propio hardware y controlar su propio destino de una manera que no es posible en Windows de Microsoft.

Esta no es una descripción exhaustiva – se han escrito libros enteros sobre este tema – pero ahora debería tener una mejor idea de qué es realmente el software de código abierto y por qué es útil para usted.

Deja un comentario

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

Experto Geek - Tu Guía en Tendencias Tecnológicas