Software de código abierto frente a software de código cerrado

El código abierto es una filosofía de trabajo y colaboración seguida por los miembros de la comunidad de open source. Esta filosofía se basa en la libertad intelectual y en sus principios fundamentales: transparencia, colaboración, suministro, inclusión y comunidad. El intercambio de ideas y software desarrollado por dichas comunidades ha fomentado el avance creativo, científico y tecnológico en sectores como: educación, gobierno, leyes, salud y manufactura. Este movimiento creó una instancia para que los miembros de la comunidad global colaboren, compartan y se ayuden entre sí para lograr tanto objetivos personales como comerciales a través del código fuente.

El software de código abierto es colaborativo y depende de la producción comunitaria y la revisión por pares para utilizar, cambiar y compartir el código fuente entre los usuarios. Los desarrolladores comparten información, ideas y códigos para crear soluciones de software más innovadoras, tanto de forma colectiva como individual. Este tipo de software escalable y flexible permite que cualquier persona que tenga el código fuente pueda modificarlo, mejorarlo y redistribuirlo, para una mayor accesibilidad y reutilización. El software de código abierto opera con los principios subyacentes de la producción entre pares y la colaboración masiva, creando un proceso de desarrollo más sostenible para los usuarios finales. 

El software de código cerrado (CSS) es un tipo de software patentado que no se distribuye al público. Este tipo de software está cifrado, por lo que únicamente los autores originales que crearon el código fuente tienen derechos exclusivos para copiarlo, modificarlo, actualizarlo y editarlo legalmente. El software de código cerrado restringe lo que los usuarios finales pueden hacer con la aplicación, lo que evita que modifiquen, compartan, copien o redistribuyan el código fuente.

Además de los tipos de código abierto y cerrado, el FOSS (Software libre y de código abierto) permite a los usuarios acceder al software desde una perspectiva más filosófica. Dentro de la categoría FOSS, Free Software Foundation (FSF) protege las libertades de los usuarios y Open Source Initiative (OSI) garantiza los valores técnicos de un software confiable. Existe una amplia variedad de licencias de software libre que se pueden utilizar, modificar y vender comercialmente, tales como: Licencias GPL, LGPL y BSD.

Algunas de las licencias de software de código abierto más populares son:

  • MIT License©: MIT License es un tipo de licencia de software libre que permite a los usuarios modificar el código original con muy pocas restricciones.  
  • GNU General Public© (GPL): GNU es una serie de licencias de software libre que permite a los usuarios finales ejecutar, estudiar, compartir y modificar software. 
  • Apache®: Apache License 2.0 es una licencia de software libre que permite a los usuarios utilizar, modificar y distribuir el software, para cualquier propósito. 
  • BSD: Esta licencia tiene menos restricciones para los desarrolladores, lo que permite a los usuarios utilizar y modificar el código sin tener que compartir las modificaciones.
  • MySQL™: MySQL es un sistema de gestión de base de datos de código abierto que ofrece dos licencias distintas: MySQL Standard Edition y MySQL Enterprise Edition.
  • SUSE: SUSE Linux está desarrollado en el kernel de Linux de código abierto y se distribuye con software de aplicaciones y sistemas.
  • Ubuntu®: Ubuntu es un recurso de Linux compuesto por software libre y código abierto incluido en equipos de escritorio, en la nube y en el IoT.

Historia de Unix® y Linux

La historia del desarrollo de Unix comienza en 1969 en AT&T® Bell Labs como un producto patentado, pero licenciable. Durante los siguientes diez años, Unix desarrolló varias versiones, incluyendo la V6, que se convirtió en la primera disponible fuera de Bell Labs.

Este código pronto llamó la atención de la comunidad académica debido a la naturaleza del nuevo lenguaje. La Universidad de California en Berkeley comenzó a desarrollar su propio Unix y pronto creó una versión académica llamada Berkeley Software Distribution (licencia BSD). Al mismo tiempo, AT&T mejoró su versión de Unix y la transformó en System V. Estas dos versiones finalmente se fusionaron y crearon la séptima versión unificada de Unix para luego evolucionar hasta convertirse en programas como: Sun Solaris, FreeBSD, NetBSD y OpenBSD.

En 1984, Richard Stallman creó un clon gratuito de Unix llamado GNU (GNU's Not Unix). Esta versión estaba disponible para ser utilizada, modificada y redistribuida libremente, según fuera necesario. En 1991, Linus Torvalds creó el kernel del sistema operativo conocido como "Linux" o el kernel de Linux. Junto con los componentes FSF y BSD, Linux se convirtió en un sistema totalmente operativo; ahora se ejecuta en varias arquitecturas y ha sido adoptado o incorporado por antiguos proveedores de Unix.


Código abierto en empresas

El código abierto empresarial es algo más que un simple código abierto: es la integración de una única biblioteca de código abierto otorgada bajo licencia que se ejecuta en dicho código. Para que un producto sea considerado de código abierto empresarial, un equipo especializado deberá probarlo, ajustarlo y examinarlo para identificar fallas de seguridad. El código abierto empresarial también tiene otras características convenientes, tales como inicio de sesión único (SSO), integración con plataformas de SSO y gestión de directorios.

Los entornos empresariales de TI requieren de mucha inversión y planificación, lo que a menudo resulta en que el software ya está obsoleto al momento de instalar las aplicaciones. Estas aplicaciones también suelen requerir capacitación y certificación adicionales, los que se establecen en los acuerdos de nivel de servicio. Sin embargo, el código abierto empresarial tiene un ciclo de vida predecible, con información y componentes que se mueven a diferentes velocidades. El software tiene una larga vida útil para las aplicaciones más importantes; por ejemplo, Red Hat® Enterprise Linux tiene un ciclo de vida de 10 años.    

Muchas empresas y personas prefieren utilizar software de código abierto en vez del software patentado o comercial debido a su versatilidad, seguridad, evolución, comunidad, recursos de capacitación y estabilidad. Algunas de las ventajas de utilizar código abierto son: costo y ahorro, flexibilidad para personalizar el código y libertad tanto para construir como aprovechar los beneficios de una comunidad, en lugar de tratar con un único proveedor. No obstante, también tiene algunas desventajas, entre ellas: soporte limitado, poca documentación, complejidad excesiva, publicidad intrusiva y vulnerabilidades.

Para aquellos que todavía requieren de un software privado, las desventajas incluyen contar con software obsoleto, productos en serie, costos más elevados o inesperados, acuerdos confusos de licencias y dependencia total de un único proveedor. Sin embargo, algunas empresas se sienten atraídas por la idea de acudir a un solo proveedor para realizar una única compra, contar con productos escalables de nivel empresarial, obtener una interfaz profesional y actualizaciones constantes e integrar con aplicaciones y productos, sin necesidad de programar. 


Historia y evolución

Compromiso con el código abierto

Muchas empresas como IBM se han comprometido con la colaboración en código abierto y lo demuestran al respaldar a las comunidades emergentes, contribuir al desarrollo de licencias y promover tanto la gestión como los estándares.

Infraestructuras flexibles de blockchain

Hyperledger Fabric es la infraestructura de blockchain que está ayudando a los innovadores a llevar a cabo una transformación empresarial global.

Recursos

Experiencia en código abierto para empresas

Descubra cómo su empresa puede crear, implementar y escalar código abierto para fomentar un entorno empresarial colaborativo.

Proyectos abiertos emergentes

Conozca cómo nuestros desarrolladores crean código fuente abierto emergente para blockchain, contenedores e IA.

Estudio de mercado de Forrester

Descubra cómo las empresas aprovechan los beneficios de la tecnología de código abierto para utilizar software a gran escala.

Soluciones

Soluciones de servidor Linux

Incorpore Linux a su infraestructura de TI local y en la nube para obtener mayor flexibilidad y control.

Linux on IBM Z

Obtenga privacidad de datos y seguridad cibernética en la multinube híbrida con el sistema operativo Linux en el mainframe de IBM Z.

IBM LinuxONE

Conozca el software de código abierto confiable que ofrece seguridad y escalabilidad óptimas para las aplicaciones críticas.

Enterprise Linux on Power Systems™

Gestione grandes cantidades de datos para cargas de trabajo modernas con estos servidores operativos e infraestructura abierta.

Sistema operativo IBM AIX®

Aproveche los beneficios de un sistema operativo escalable y basado en estándares con ajustes de seguridad confiables, tiempo de actividad inigualable y protección garantizada de su inversión.

Aplicaciones de Red Hat en la nube de IBM

Con Red Hat, puede crear y desarrollar aplicaciones para implementarlas en la nube pública o privada de IBM.