Conoce Atico34 - Solicita presupuesto
Software

¿Qué es el software libre? Características y ventajas

Los principios del Software Libre son simples, pero es importante no confundirse debido a la complejidad subyacente y causada por su larga historia. Aquí tienes todo lo que debes saber sobre el software libre. Conoce las cuatro libertades y su significado, los fundamentos sobre las licencias de Software Libre, las ventajas que proporciona el Software Libre, y los sinónimos mas comunes.

Concepto de software libre

¿Alguna vez te has preguntado qué es el software libre? El software libre es un término acuñado y promovido por el proyecto GNU y la Free Software Foundation. Se utiliza para software de código abierto que permite a los usuarios ver libremente el código fuente del software, modificarlo, distribuirlo y utilizarlo sin ninguna restricción.

El software disponible sin ningún pago no es necesariamente software gratuito. Según la definición presentada por la Free Software Foundation, la palabra Free en “software libre” implica la idea de libertad en lugar de no tener un coste.

Si el software está disponible para descargar sin pagar, pero el usuario no puede modificar la fuente, entonces no es un software gratuito. Es importante notar la distinción aquí. Freeware es un software por el que no tienes que pagar. El software gratuito es un software que puedes modificar y utilizar libremente para tus propios fines.

El software libre se puede lanzar bajo diferentes licencias, por ejemplo, GPL, Apache, BSD, etc.

WordPress es un ejemplo de software de código abierto publicado bajo la GPL o Licencia Pública General. Esto permite a los desarrolladores y diseñadores crear complementos y temas que amplían la funcionalidad de WordPress y lo convierten en la plataforma versátil que es. Según la GPL, la única restricción es que todas las modificaciones de WordPress deben tener la misma licencia.

Historia y evolución

Richard Stallman, conocido como “el padre del código abierto”, creía que todos merecían colaborar libre y abiertamente con otros utilizando software. En 1983, presentó el proyecto GNU, el primer sistema operativo libre, y en 1985, siguió con la creación de la Free Software Foundation para apoyar aún más a la comunidad de software libre.

A finales de la década de 1990, el reconocimiento generalizado de Linux y el lanzamiento del código fuente del navegador Netscape aumentó el interés y la participación en el software para compartir abiertamente. La etiqueta de “código abierto” se creó en una sesión de estrategia celebrada el 3 de febrero de 1998 en Palo Alto, California, poco después de que se publicara el código fuente de Netscape. La sesión de estrategia surgió al darse cuenta de que la atención en torno al anuncio de Netscape creó una oportunidad para educar y defender la superioridad de un proceso de desarrollo abierto.

Desde la década de 1990, las tecnologías de código abierto se han vuelto esenciales para las empresas de TI modernas que se esfuerzan por recopilar, organizar y conectar los puntos entre las grandes cantidades de datos espaciales al alcance de la mano. El código abierto permite a estas organizaciones aprovechar la escalabilidad ilimitada para comprender y resolver los desafíos comerciales emergentes.

Hoy en día, el software open source es ahora el núcleo de nuestros navegadores web, sistemas operativos y muchos otros aspectos de nuestra vida diaria. Según una encuesta de 2016 , el 90 por ciento de las empresas afirman que el código abierto mejora la eficiencia, la interoperabilidad y la innovación.

Un dilema del mundo real que está resolviendo el software de código abierto es la logística del transporte. Ya sea que se trate de un gobierno municipal que establece rutas óptimas de autobús y tren ligero, un hospital que proporciona a los pacientes la ruta mejor y más rápida a sus instalaciones en un momento determinado, una compañía petrolera que planifica la ubicación de sus oleoductos o un fabricante que envía sus productos de manera eficiente y rentable.

Mover personas y cosas del punto A al punto B conlleva enormes desafíos logísticos. En cada caso, es fundamental analizar información compleja basada en la ubicación.

Con el software geoespacial patentado, las suscripciones determinan no solo cuántas fuentes de datos se pueden considerar, sino también cuánto costará determinar el enrutamiento óptimo. El software geoespacial de código abierto permite a las organizaciones aprovechar los datos basados ​​en la ubicación sin incurrir en costes por usuario, por inicio de sesión o por ciclo de CPU. Al final, se puede ahorrar tiempo, dinero e incluso vidas con el código abierto.

Seguiremos viendo la proliferación del código abierto, a medida que el auge de los teléfonos inteligentes, el Internet de las cosas y los dispositivos portátiles ha creado una explosión de nuevas fuentes de datos que exigen soluciones flexibles y asequibles para administrarlo todo.

Junto con los estándares abiertos que facilitan la comunicación abierta entre ellos, estas tecnologías serán las áreas de enfoque para el software de código abierto en el futuro. El código abierto es muy prometedor y tiene potencial, ya que permite una mayor colaboración, el intercambio de datos valiosos y el acceso a recursos clave.

Características del software libre

Las principales características del software libre son:

Desarrollo distribuido basado en la comunidad

En un software libre típico, inicialmente un individuo o pocos voluntarios participan en el proyecto. Una vez que el proyecto comienza y tiene éxito, se crea una comunidad de proyecto. Posteriormente otros miembros de la comunidad contribuyen al proyecto. Las versiones concurrentes System (CVS) ayuda al desarrollo distribuido del software libre.

CVS es un sistema de control de revisiones de software cliente-servidor. Realiza un seguimiento de todos los cambios en un conjunto de archivos y permite la colaboración de varios desarrolladores. CVS en sí es un software gratuito y de código abierto distribuido globalmente.

El desarrollo de software por equipos virtuales promete la flexibilidad, capacidad de respuesta, menores costes y mejoras en la utilización de recursos.

Diseño modular

En el diseño modular, la arquitectura del software se divide en componentes llamados módulos. Debido a la naturaleza distribuida del software libre, su diseño debe ser modular para incorporarlo fácilmente en el sistema principal. La modularidad es favorable para la producción de código abierto. El diseño modular con interfaces bien definidas ayuda al desarrollo colaborativo del software libre.

Reutilización

Reutilización significa que el segmento de código fuente puede ser utilizado de nuevo para agregar nuevas funcionalidades con poca o ninguna modificación. Esto encaja muy bien con las características del proceso de producción de código abierto.

Las licencias de software libre otorgan los derechos al desarrollador para obtener el código fuente, inspeccionarlo, modificarlo y distribuirlo. La reutilización del código puede ser dentro del proyecto o fuera del proyecto, es decir, en otros proyectos.

Los repositorios de software libre como SourceForge ofrece grandes cantidades de código reutilizable.

Distribución y licencias

Internet es el medio de distribución de Free and Open Software de origen. Sitios web, listas de correo, blogs, foros, etc., todos contribuyen a la amplia publicidad y distribución de software libre y de código abierto. Existe un amplio rango de opciones de licencia, como GPL, LGPL, BSD, ISC, licencia artística, etc.

Mecanismos de recompensa

Al comienzo del movimiento del software libre, aparentemente era difícil percibir las oportunidades de negocio del software gratuito y de código abierto. Pero ahora, el modelo de negocio de software libre está teniendo éxito. Las fuentes de ingresos van desde donaciones para brindar servicios como consultoría, integración, soporte y formación. También vale la pena mencionar esa recompensa que no sea dinero, como la reputación y servir a la comunidad también es importante para muchos desarrolladores.

Las 4 libertades del software libre

El Software Libre se refiere a la libertad, no al precio. Garantiza a sus usuarios las cuatro libertades esenciales. La ausencia de al menos una de estas libertades significa que el software es propietario, por lo tanto Software no-Libre.

  • Utilizar: El Software Libre puede usarse para cualquier finalidad y no tiene restricciones como la expiración de la licencia o limitaciones geográficas.
  • Compartir: El Software Libre puede ser compartido y copiado virtualmente sin coste alguno.
  • Estudiar: El Software Libre y su código puede ser estudiado por cualquiera, sin acuerdos de no divulgación o restricciones similares.
  • Mejorar: El Software Libre puede ser modificado por cualquiera, y estas mejoras pueden compartirse públicamente.

Tipos de licencias

Es importante tener en cuenta que no existen licencias buenas o malas y que ninguna licencia es mejor que otra. Cualquiera puede crear una licencia de código abierto que se adapte a sus necesidades, razón por la cual existen tantas.

Esto podría complicar la elección de una licencia de código abierto, especialmente para aquellos de nosotros que no estamos bien versados ​​en la ley y nunca hemos tenido una explicación detallada de las licencias de código abierto.

Veamos las licencias de software libre más utilizadas.

Licencias GPL

La Licencia Pública General de GNU es la licencia de código abierto más popular que existe. Richard Stallman creó la GPL para proteger el software GNU de convertirse en propietario, y es una implementación específica de su concepto de “copyleft”.

GPL es una licencia copyleft. Esto significa que cualquier software que esté escrito en base a cualquier componente GPL debe publicarse como código abierto. El resultado es que cualquier software que utilice cualquier componente de código abierto GPL debe publicar su código fuente completo y todos los derechos para modificar y distribuir el código completo.

Licencias estilo BSD

Las Licencias BSD o la Licencia BSD original y sus dos variantes, la Licencia BSD Modificada (3 cláusulas) y la Licencia BSD Simplificada / Licencia FreeBSD (2 cláusulas), son una familia de licencias permisivas de software libre.

La licencia BSD permite modificar y distribuir libremente el código del software en el formato fuente o binario siempre que conserve una copia del aviso de derechos de autor, la lista de condiciones y el descargo de responsabilidad.

La Licencia BSD original o la Licencia BSD de 4 cláusulas también contienen una cláusula publicitaria y una cláusula de no aprobación. La Licencia BSD modificada o la Licencia BSD de 3 cláusulas se formó eliminando la cláusula publicitaria de la Licencia BSD original. Además, la versión FreeBSD o la Licencia BSD de 2 cláusulas se formó eliminando la cláusula de no aprobación de la Licencia BSD modificada o la Licencia BSD de 3 cláusulas.

Licencias estilo MPL y derivadas

La licencia pública de Microsoft es una licencia de software de código abierto y gratuita lanzada por Microsoft, que la escribió para sus proyectos que se publicaron como código abierto.

Tiene la libertad de reproducir y distribuir trabajos originales o derivados de cualquier software con licencia de MPL. Sin embargo, no puede utilizar el nombre, el logotipo o las marcas comerciales de ningún colaborador cuando lo haga.

La MPL protege a los autores al no ofrecer explícitamente ninguna garantía expresa o garantías por el uso de su código, por lo que el autor no es responsable si el código no funciona bien en algunos casos.

Cuando distribuyes software según el MPL, no estás obligado a distribuir su código fuente. Puedes hacerlo si lo deseas, pero no estás obligado. Sin embargo, debes conservar todos los avisos de derechos de autor, patentes, marcas comerciales y atribuciones que se encuentran originalmente en el software.

Además, si distribuyes cualquier parte del software en su forma de código fuente, puedes hacerlo solo bajo la MPL al incluir una copia completa de esta licencia con su distribución. Si distribuyes cualquier parte del software en su forma de código objeto o compilado, solo puedes hacerlo con cualquier otra licencia que cumpla con el MPL.

Copyleft

Las licencias de código abierto se pueden dividir en dos categorías principales: copyleft y permisivas. Esta división se basa en los requisitos y restricciones que la licencia impone a los usuarios.

Los derechos de autor son una ley que restringe el derecho a usar, modificar y compartir obras creativas sin el permiso del titular de los derechos de autor. Piensa en música, películas, etc. que son propiedad intelectual de su creador.

Cuando un autor lanza un programa bajo una licencia copyleft, hace un reclamo sobre los derechos de autor del trabajo y emite una declaración de que otras personas tienen el derecho de usar, modificar y compartir el trabajo siempre que se mantenga la reciprocidad de la obligación. En resumen, si están usando un componente con este tipo de licencia de código abierto, también deben hacer que su código esté abierto para que lo usen otros.

Diferencias entre software libre y software de código abierto

Software libre es el software que respeta la libertad y la comunidad de los usuarios. Esto supone que los usuarios tienen la libertad de ejecutar, copiar, distribuir, estudiar, cambiar y mejorar el software.

Este concepto es malinterpretado en muchas ocasiones: no tiene nada que ver con el precio. Se trata de libertad.

El software de código abierto es algo que puedes modificar según tus necesidades, compartir con otros sin ninguna carga de violación de licencia. Cuando decimos código abierto, el código fuente del software está disponible públicamente con licencias de código abierto como GNU (GPL), lo que te permite editar el código fuente y distribuirlo.

Los criterios de licencia de código abierto se centran en la disponibilidad del código fuente y la capacidad de modificarlo y compartirlo, mientras que el software libre y el dominio público se centran en la libertad del usuario para utilizar el programa, modificarlo y compartirlo.

Freeware (por ejemplo, Skype y Adobe Acrobat ), en su término, apunta principalmente a objetivos comerciales y monetización potencial, que a menudo se utiliza como un producto “freemium”.

Ventajas del uso de software libre

El Software Libre versa sobre la libertad. En la práctica, esto proporciona numerosas ventajas para los usuarios, organizaciones, empresas y gobiernos.

  • Autonomía: El Software Libre ayuda a desarrollar y mantener un software a medida que se adapta a tus necesidades, no sólo al modelo de negocio del proveedor.
  • Colaboración: El Software Libre se puede compartir y usar por todo el mundo de manera no exclusiva, sirviendo al bien público.
  • Compartir & Copiar: Una licencia de Software Libre permite ejecutar un número ilimitado de instalaciones, sin pagar extras.
  • Sin Bloqueos: Las licencias de Software Libre refuerzan la independencia respecto de los vendedores y proporcionan más opciones en proveedores de servicios.
  • Reutilizar Código: El Software Libre proporciona la libertad de reutilizar el código para otros proyectos.
  • Innovación: Una licencia de Software Libre fomenta la innovación para tu software.
  • Competencia: El Software Libre resiste a la monopolización y mejora la competencia.
  • Seguridad: El Software Libre permite controles de seguridad independientes que ayudan a cerrar los agujeros de seguridad más rápido.

Distribución y modelo de negocio

Las empresas cuyo centro de negocios es el desarrollo de software libre emplean una variedad de modelos comerciales para resolver el desafío de cómo ganar dinero proporcionando software que, por definición, tiene una licencia gratuita.

Cada una de estas estrategias comerciales se basa en la premisa de que los usuarios de tecnologías de código abierto están dispuestos a comprar funciones de software adicionales bajo licencias propietarias, o comprar otros servicios o elementos de valor que complementan el software de código abierto que es fundamental para el negocio.

Este valor adicional puede ser, entre otros, funciones de nivel empresarial y garantías de tiempo de actividad para satisfacer requisitos comerciales o de cumplimiento, aumento de rendimiento y eficiencia mediante funciones que aún no están disponibles en la versión de código abierto, protección legal o asistencia / capacitación / consultoría profesional que son típicas de las aplicaciones de software patentado.

Una variedad de enfoques comerciales compatibles con el software libre han ganado prominencia en los últimos años. Los ejemplos notables incluyen el núcleo abierto (a veces denominado licencia dual o licencia múltiple ), software como servicio (no cobrando por el software sino por las herramientas y la plataforma para consumir el software como servicio a menudo mediante suscripción), freemium , donación- financiación basada en fondos, crowdfunding y crowdsourcing.

Existen varios tipos diferentes de modelos comerciales para obtener ganancias utilizando software libre o financiar la creación y el desarrollo y mantenimiento continuos.

A continuación tienes una lista de modelos comerciales legales dentro del software libre y las licencias de código abierto:

  • No vender código sino servicios profesionales o marcas
  • Donaciones voluntarias
  • Crowdsourcing
  • Asociación con organizaciones de financiación
  • Software con publicidad
  • Desarrollo impulsado por recompensas
  • Venta de propiedad intelectual

El Movimiento del software libre

La gente usa sistemas operativos de software libre tales como GNU/Linux por diversos motivos. Muchos usuarios lo usan porque el sistema es potente, porque es fiable, o por la ventaja de poder modificar el software para que haga lo que necesitan.

Estas son buenas razones, pero hay algo más que la simple conveniencia. Lo que está en juego es su libertad y su comunidad.

La idea del movimiento del software libre es que los usuarios de computadoras merecen la libertad de formar una comunidad. Tu debes tener la libertad de ayudarte a tí mismo, modificando el código fuente para poder hacer lo que necesitas. Y la libertad para ayudar a tu prójimo, mediante la redistribución de copias de los programas a otras personas. También la libertad para ayudar a construir tu comunidad, mediante la publicación de versiones mejoradas de manera que otras personas puedan utilizarlas.

Que un programa sea software libre depende principalmente de su licencia. Sin embargo, un programa puede no ser libre porque no se tiene acceso al código fuente, o porque el hardware no permite utilizar una versión modificada.

La definición detallada de software libre muestra cómo se evalúa una licencia para determinar si los programas son software libre.

Implicaciones políticas, económicas y sociales

El movimiento del software libre es un movimiento social con el objetivo de obtener y garantizar ciertas libertades para los usuarios de software, a saber, la libertad de ejecutar el software, estudiar y cambiar el software y redistribuir copias con o sin cambios. El software que cumple con estos requisitos se denomina software libre. La palabra ‘gratis’ es ambigua en inglés, aunque en este contexto significa ‘gratis como en libertad’, no ‘gratis como en precio cero’.

El software libre también es un movimiento político y ético que se centra en el software. El software en sí es casi secundario a la política. Se basa en una creencia moral, ética y política. La soberanía personal del usuario para controlar su propia vida digital, para hacer que sus computadoras los obedezcan, no a otra persona, es el núcleo del Software Libre. El derecho de los usuarios a ayudar a sus amigos, colegas y otras personas.

El software libre es la declaración ética y política de que defender los derechos de los usuarios es más importante que su modelo de negocio. Si su modelo de negocio requiere violar los derechos de los usuarios, entonces no tiene un modelo de negocio.

El movimiento del software libre ha sido ampliamente analizado utilizando metodologías económicas, incluidas perspectivas de la economía heterodoxa. De particular interés para los economistas es la voluntad de trabajar de los programadores del movimiento del software libre, que a menudo producen programas de mayor calidad que los comerciales, sin compensación económica.

El movimiento del software libre representa un regreso a la economía del regalo basada en el pasatiempo y la ausencia de escasez económica en Internet.

Usos del software libre

Existen multitud de usos del software libre en diversos sectores. Aquí tienes los principales.

En Administraciones públicas

Existen muchos ejemplos de software libre que utilizan y crean las administraciones públicas tanto en Europa como en todo el mundo. La migración de Múnich de sus servidores y escritorios es un caso muy conocido, pero hay una larga lista de otros ejemplos, como la migración de servidores y escritorios Linux en el Ayuntamiento de Zaragoza.

La política de estrategia de software libre de la Comisión Europea se publicó en 2014, reforzando su deseo de lanzar software libre creado por o en nombre de la Comisión, además de contribuir y participar en comunidades de desarrollo.

En España, el ejemplo más destacable de lanzamiento y uso de software es el proyecto LinEx en Extremadura, además del repositorio de códigos andaluces. Desde entonces, las administraciones españolas han creado varias versiones de Linux y su propia cuenta de GitHub.

En sanidad

El software libre ha encontrado su lugar en la infraestructura de TI de salud, respaldado por organizaciones como Open Source Electronic Health Record Alliance (OSEHRA), para servir los registros de salud electrónicos de la organización, la gestión de la práctica médica, los sistemas de información médica y más.

Los programas open source benefician a las organizaciones de atención médica de muchas maneras, la primera es financiera. No cobra tarifas de licencia por su código, lo que libera fondos para otras iniciativas de TI.

Las organizaciones que usan código de fuente abierta pueden escribir actualizaciones de su software con este código a conveniencia del desarrollador, sin considerar restricciones presupuestarias.

En educación

El uso de software libre en escuelas y universidades fomenta la escolarización de la comprensión sobre la formación de productos y defiende el principio científico.

La educación es una de las áreas de actividad más importantes para que los jóvenes y estudiantes tengan la oportunidad de entrar en contacto con el conocimiento en lugar de una mera escolarización de productos. Por lo tanto, la FSFE inició un grupo de trabajo sobre software libre en la educación para centrarse en estos esfuerzos.

Entre otros argumentos a favor del software libre, aquí están cuatro de los beneficios clave para la educación:

  • Compartir: el uso de software gratuito permite a las escuelas enseñar a los niños a compartir y cooperar.
  • Aprender a programar: La posibilidad / libertad de jugar motiva a los niños a aprender más.
  • Fácil de administrar: el software libre es estable, seguro y confiable. Ofrece acceso sin restricciones al código fuente, permitiendo así modificarlo o adaptarlo a las necesidades de las escuelas.
  • Licencias: Con el software libre, los profesores pueden entregar una copia a cada alumno. No hay riesgo de engañar a ningún niño para que utilice una copia ilegal.

Ejemplos de software libre

Estos son algunos de los tipos de software libre más populares:

  • CRM: el software CRM permite a las empresas gestionar las interacciones con los clientes y cumplir sus requisitos más fácilmente.  Estas son las mejores soluciones CRM de software libre:
    • Freshsales: este software se adapta a empresas de todos los tamaños y les permite administrar contactos y desarrollar estrategias de éxito del cliente. También ofrece gestión de clientes potenciales, marketing por correo electrónico, gestión de integración, asistencia telefónica y por correo electrónico.
    • Flowlu: este tipo de software libre CRM también es ideal para pequeñas y grandes empresas de diferentes industrias. Sus características incluyen cotización, facturación, gestión de clientes potenciales, gestión de proyectos, integración de API y más.
    • Hubspot CRM: este software es más adecuado para pequeñas y medianas empresas en bienes raíces, construcción, venta minorista y otros nichos. La gestión de contactos, la programación de correo electrónico, la gestión de reuniones y el chat en vivo son solo algunas de las funciones que ofrece.
  • Gestión de proyectos: dentro de este software, cabe destacar:
    • Trello: esta herramienta es ideal tanto para individuos como para equipos pequeños. Permite administrar proyectos individuales y flujos de trabajo en curso. Algunas de sus características incluyen agregar fechas de vencimiento, adjuntar archivos e hipervínculos, menús desplegables personalizados y más.
    • Zoho: este software permite a las empresas realizar un seguimiento de su tiempo, obtener informes personalizados e integrarse con otros servicios, incluido Google. Además, también hay un chat integrado que hace que la comunicación entre los miembros del equipo sea fácil y rápida.
    • Lunes: esta herramienta cubre un espectro de tareas de gestión de proyectos que incluyen actualizaciones por correo electrónico, tableros personales y públicos, etiquetado de personas, visualización visual del progreso y más.
  • Videojuegos: en el sector de los videojuegos destacamos el siguiente software libre:
    • Battle for Wesnoth: este juego puede ejecutarse en Windows, Android, Mac e iOS. Es un juego de estrategia táctica por turnos que ofrece una gran variedad de mapas, unidades, clases y campañas.
    • OpenTTD: este videojuego de software está disponible en Windows y Android. Es una réplica de Transport Tycoon Deluxe que tiene nuevas características. Los desarrolladores pueden crear complicadas redes ferroviarias al tiempo que permiten a los jugadores encontrar sus propias soluciones y diseños.
    • Xonotic: este juego puede ejecutarse en Windows, Mac OS y Linux. Ofrece una variedad de armas para elegir y utiliza acciones emocionantes que los desarrolladores de juegos pueden modificar para hacerlo más emocionante.