El Software Libre Es El Futuro, Y Por Eso - Vista Alternativa

Tabla de contenido:

El Software Libre Es El Futuro, Y Por Eso - Vista Alternativa
El Software Libre Es El Futuro, Y Por Eso - Vista Alternativa

Vídeo: El Software Libre Es El Futuro, Y Por Eso - Vista Alternativa

Vídeo: El Software Libre Es El Futuro, Y Por Eso - Vista Alternativa
Vídeo: Cuando Nature se toma el software libre en serio: Python como alternativa - CAChemE.org 2024, Mayo
Anonim

El software de código abierto es algo común en el siglo XXI. Una organización llamada Open Source Initiative fue fundada en 1998, aunque los ejemplos de desarrollo de código abierto han sido numerosos antes. Como su nombre lo indica, la principal diferencia entre estos desarrollos y el software cerrado (propietario) es que el código del primero está disponible públicamente y cualquier desarrollador puede inspeccionarlo o cambiarlo a su propia discreción. Todos estamos familiarizados con al menos un desarrollo de código abierto: el sistema operativo Android de Google.

Sí, sí, el sistema instalado en el 70-80 por ciento (según varias estimaciones) de los teléfonos inteligentes en el mundo es completamente abierto, y cualquiera puede cambiar su código fuente como le plazca. Prueba de ello es la gran cantidad de horquillas de Android, en las que se basa el firmware personalizado para smartphones. Aquí, sin embargo, hay un matiz más importante: de hecho, todo el sistema operativo Android pierde una parte considerable de su funcionalidad sin los servicios del propio Google. Bueno, estos últimos, por supuesto, están cerrados y completamente controlados por la corporación de software. La epopeya de los últimos años, en la que participó Huawei, es una prueba más de ello.

El software gratuito se adapta a las necesidades de los usuarios, no al revés

norte

A diferencia del software propietario, el software de código abierto es generalmente muy flexible. Hay una razón simple para esto: uno de los "principios básicos del código abierto" es que "el usuario debe ser percibido como un co-desarrollador". Este principio, junto con otros, fue descrito por Eric Raymond en su ensayo de 1997 "Catedral y Bazar". Según él, el usuario debe tener garantizado el acceso al código fuente y, además, solo se fomenta la participación activa del usuario en el desarrollo. Esto puede manifestarse de diferentes formas: desde ediciones directas del código o la documentación, hasta una simple recopilación de informes de errores (informes de errores).

Bueno, dado que el usuario es en parte un desarrollador, es bastante obvio que el producto final será más adecuado para sus necesidades que el software inicialmente cerrado. Para realizar cambios en este último, el consumidor debe ponerse en contacto con la empresa desarrolladora (lo que no siempre es fácil de hacer), transmitirle su visión y esperar. Espere mientras ella (posiblemente) haga estos cambios. Todo parece lógico: compró el producto terminado en la forma en que se vende y acordó usarlo exactamente como lo pretendía el desarrollador. Puede tomar un ejemplo de otra área: cuando compra un automóvil, no está tratando de comunicarse con la fábrica de automóviles y obligarla a usar un motor más potente en este modelo y el sistema de escape es más ruidoso. Exactamente de la misma manera que no recurrirás a él para hacer un yate sobre la base de esta máquina, por ejemplo. Tal vez,si fuera un cliente mayorista muy importante, el fabricante lo habría encontrado a mitad de camino en algún momento, pero ciertamente no cambiará todo el proceso de producción por usted. Y más aún para admitirlo.

La misma situación está en el software. Cuando compra un sistema operativo propietario, como Windows para su escritorio, acepta que lo utilizará como lo pretendía el fabricante. Es decir, instálelo (o preinstale) en una PC normal con arquitectura y hardware compatibles, no “eliminará” ningún componente crítico de allí y no intentará utilizarlo para otros fines. Por ejemplo, como sistema operativo de servidor o como sistema operativo para un teléfono inteligente. O no puede hacer esto en absoluto, o enfrentará múltiples dificultades y limitaciones.

Aquí hay un ejemplo de un teléfono inteligente basado en Windows de escritorio: Fujitsu F-07C, presentado en 2011. Sin embargo, el sistema operativo Symbian todavía se usaba para la parte del teléfono
Aquí hay un ejemplo de un teléfono inteligente basado en Windows de escritorio: Fujitsu F-07C, presentado en 2011. Sin embargo, el sistema operativo Symbian todavía se usaba para la parte del teléfono

Aquí hay un ejemplo de un teléfono inteligente basado en Windows de escritorio: Fujitsu F-07C, presentado en 2011. Sin embargo, el sistema operativo Symbian todavía se usaba para la parte del teléfono.

Video promocional:

Los sistemas operativos de código abierto son otro asunto. Si consideramos Linux como un elemento común de todas sus distribuciones, entonces será muy difícil encontrar un objetivo o una arquitectura "de hierro" para la que no existe Linux. Aquí está el sistema operativo para el Gran Colisionador de Hadrones, y software automotriz, y todo tipo de cosas "inteligentes", y los servidores troncales más grandes y computadoras domésticas banales. Y muchas de estas distribuciones también siguen siendo de código abierto. Esto significa que cada usuario de dicho producto puede participar activamente en su creación, completándolo según sus necesidades. El mismo sistema para el LHC es una versión modificada de Scientific Linux, que fue desarrollada conjuntamente por científicos de todo el mundo. A su vez, esta versión de Linux se basa en la distribución de Red Hat, que también ha sido "dopada" para uso científico. Así,Los científicos del CERN recibieron la herramienta que mejor se adapta a sus objetivos específicos, sin crear toda la arquitectura del software desde cero.

Pero hace unos años, el CERN anunció la transición a otra distribución: CentOS. Scientific Linux será compatible hasta 2024, pero no recibirá nuevas versiones
Pero hace unos años, el CERN anunció la transición a otra distribución: CentOS. Scientific Linux será compatible hasta 2024, pero no recibirá nuevas versiones

Pero hace unos años, el CERN anunció la transición a otra distribución: CentOS. Scientific Linux será compatible hasta 2024, pero no recibirá nuevas versiones.

El software de código abierto es más fácil de controlar

El código fuente disponible públicamente permite la llamada "Ley de Linus", que dice: "Con suficientes observadores, aparecen errores". En pocas palabras, si todos los desarrolladores pueden ver el código fuente, es muy probable que el error se solucione mucho antes. El mismo principio funciona para la seguridad del software: si el código fuente está abierto, las vulnerabilidades y lagunas introducidas al azar y deliberadamente se encontrarán en él más rápidamente. En el caso de las soluciones patentadas, la búsqueda de errores puede llevar mucho más tiempo e incluso las vulnerabilidades pueden ocultarse de forma segura en el código fuente.

Muchos recuerdan el escándalo de 2013 cuando Edward Snowden publicó información clasificada sobre el programa PRISM de la Agencia de Seguridad Nacional de EE. UU. Según los documentos publicados, los datos de todos los gigantes de Internet, de una forma u otra, cayeron en la NSA, y las propias empresas contribuyeron a esto o no resistieron activamente. Por supuesto, no se trata solo de que todas estas empresas utilicen y produzcan software de código cerrado. Además, existen factores tanto políticos como puramente humanos. Pero una sola oportunidad para que un observador externo estudie los mecanismos de movimiento de datos personales podría brindar mucha más protección que cualquier cifrado. Después de todo, el cifrado es, de hecho, un candado que cierra la información con una llave. Y no importa qué tan seguro sea de piratería, no lo salvará de situaciones en las que un atacante tenga una copia de la clave.

Image
Image

Las grandes organizaciones se están moviendo hacia el software de código abierto

Los principios anteriores pueden no ser tan importantes para el usuario medio (al menos por ahora), pero son muy importantes para las llamadas "empresas", grandes organizaciones en las que las fallas y las fugas son extremadamente indeseables, si no completamente inaceptables. Lo mismo puede decirse de las organizaciones sin fines de lucro: los mismos proyectos científicos, así como las instituciones estatales y municipales. Un ejemplo sorprendente de esto es la administración de la ciudad alemana de Munich, que ha decidido, si es posible, transferir la infraestructura de TI del gobierno de la ciudad a soluciones de código abierto. Varias otras ciudades alemanas también planean cambiar al código abierto, pero el ejemplo de Munich es especialmente notable. El hecho es que el municipio local fue un pionero mundial en este asunto: la primera transición al software de código abierto comenzó en 2003. Asumió el abandono de ambos programas propietarios separados como Adobe, SAP y Microsoft, y el sistema operativo cerrado de dicha empresa de Redmond.

Image
Image

Incluso desarrollaron su propia distribución llamada LiMux (Linux + Munchen), y el plan de transición requería aumentar la cantidad de PC que ejecutan este sistema operativo al 80 por ciento para 2013. Pero muchos factores llevaron al hecho de que los empleados mantuvieran dos sistemas en paralelo en sus estaciones de trabajo: LiMux condicionalmente "principal" y Windows condicionalmente "adicional". Esto sucedió debido al hecho de que algún software especializado no tenía una versión para Linux y, si la tenía, a menudo funcionaba de manera inestable. En 2017, la administración anunció un regreso a los productos de Microsoft, pero este año hubo un nuevo giro. El nuevo gobierno proclamó el lema "Dinero público, código público" y adoptó un acuerdo sobre la transición de la infraestructura de TI de la ciudad al software de fuente abierta. Todo lo que no esté relacionado con datos confidenciales,gradualmente (a medida que expiren los contratos actuales) pasará a software con código disponible públicamente, por lo que el gobierno quiere garantizar la máxima transparencia de su trabajo.

Image
Image

Incluso los gigantes tecnológicos reconocen la necesidad de participar en el desarrollo de código abierto

Al parecer, ¿por qué deberían las empresas más grandes del mundo de la información, que ganan dinero con sus productos patentados, ingresar al código abierto? Después de todo, esto contradice casi directamente la lógica y el sentido común.

El conocido Microsoft se adhirió a este enfoque durante bastante tiempo. Culminó con el liderazgo de Steve Ballmer, quien declaró en 2001: "Linux es un cáncer que engulle cualquier propiedad intelectual que toque". Pero desde entonces todo ha cambiado mucho. La corporación no solo posee ahora el bastión más importante del código abierto mundial, Github, sino que cada año acerca gradualmente sus productos al mundo del código abierto. Por ejemplo, en 2015, abrió su marco. NET a los desarrolladores, y en 2018, la corporación publicó algunas partes del código fuente del juego Minecraft utilizado por los desarrolladores.

Y el juego en sí se ha convertido en una especie de comunidad informal de código abierto: juntos crean los proyectos más complejos aquí, y recientemente han creado un emulador de computadora en el que puedes jugar Doom
Y el juego en sí se ha convertido en una especie de comunidad informal de código abierto: juntos crean los proyectos más complejos aquí, y recientemente han creado un emulador de computadora en el que puedes jugar Doom

Y el juego en sí se ha convertido en una especie de comunidad informal de código abierto: juntos crean los proyectos más complejos aquí, y recientemente han creado un emulador de computadora en el que puedes jugar Doom.

Y en 2019, dio un paso inusual: agregó el kernel de Linux a Windows 10 para el funcionamiento de un subsistema llamado Windows Subsystem Linux (WSL). Antes de eso, todas las versiones del sistema operativo de la compañía Redmond solo podían emular Linux, pero ahora es un subsistema absolutamente completo, que obviamente está dirigido a desarrolladores que prefieren este entorno. Con el mismo propósito, se creó la Terminal de Windows, con la que se puede acceder tanto al conocido PowerShell / CMD como al kernel de Linux.

Image
Image

Todos estos cambios están sucediendo en una gran corporación por una razón. Su nuevo liderazgo comenzó a darse cuenta de que la idea del código abierto es cada año más importante para los desarrolladores y que con el tiempo el código abierto aplastará a una parte importante de la comunidad. Y aquí es donde entra en juego el viejo principio de "si no puedes luchar, lidera". Fue la base para el liderazgo en el mundo del código abierto lo que llevó a Microsoft a comprar un activo tan poco rentable como Github. Esta situación también se observa en otras empresas importantes: muchos proyectos similares utilizan la potencia de la computación en la nube de AWS de Amazon, Apple a principios de este año comenzó a contratar de forma masiva a empleados clave directamente del mundo de la computación en la nube (incluido AWS), y Google está una especie de estándar de "código abierto" entre las organizaciones comerciales. Todo el código fuente está abierto no solo para su sistema operativo móvil Android, sino también para el motor del navegador Chromium e incluso para el sistema operativo Chromium de escritorio.

Más de 2000 proyectos de Google son de código abierto
Más de 2000 proyectos de Google son de código abierto

Más de 2000 proyectos de Google son de código abierto.

Al mismo tiempo, la empresa californiana realiza exitosos productos comerciales basados en ellos, utilizando código con mínimas diferencias. En términos generales, si desea crear su propia bifurcación (bifurcación) de Android y utilizar las últimas fuentes, solo la ausencia de los servicios de Google lo distinguirá del sistema operativo original. Sí, en el mundo moderno, estos mismos servicios juegan casi un papel clave (nuevamente, volvemos a la situación con Huawei). Pero el hecho es que puede crear su propio sistema operativo móvil, a la par con los de los gigantes tecnológicos del mundo, de forma absolutamente legal y 100% gratuita. Si, por supuesto, tiene suficientes conocimientos y habilidades.

El código abierto no significa "gratis" en absoluto

Y aquí llegamos al hecho de que la percepción de los productos de código abierto como gratuitos también está retrocediendo lentamente hacia un lado. Sí, los principios de la comunidad de código abierto están estrechamente ligados a la distribución gratuita de código, pero no excluyen su comercialización. RedHat es un ejemplo de un enfoque que combina estas dos cosas aparentemente incompatibles. Fedora es la distribución de Linux que desarrolla y es completamente de código abierto. Sin embargo, la empresa sigue siendo una empresa comercial: gana dinero con una suscripción de servicio para clientes comerciales y con el soporte técnico. El año pasado, la empresa fue comprada por otro gigante tecnológico, IBM, pero esto no afectó el modelo comercial de RedHat. El kit de distribución ha estado y permanecerá abierto,y la compañía planea ganar dinero ahora no solo en suscripciones, sino también en computación en la nube. Por cierto, en 2018 la empresa ganó casi 500 millones de dólares, lo que parece ser un indicador muy significativo para una empresa cuyo producto principal se puede descargar de forma totalmente gratuita.

Image
Image

Otra distribución popular de Linux, Ubuntu, también está siendo desarrollada por una empresa comercial. A pesar del código fuente abierto de Ubuntu, su empresa desarrolladora Canonical ganó alrededor de $ 11 millones en 2019. No es el indicador más grande, pero sin embargo es una ganancia estable, y no puede haber ninguna "asociación sin fines de lucro" aquí. El modelo comercial aquí es el mismo que el de RedHat: venta de suscripciones de servicios.

Image
Image

Conclusión

Lo que es especialmente interesante es que el código abierto se puede encontrar no solo en software, sino también en hardware. Por ejemplo, no todo el mundo sabe que la plataforma Arduino es de código abierto y cualquiera puede hacer absolutamente legalmente su propia copia de este microordenador. Esto, por cierto, está siendo utilizado con éxito por empresas chinas. Sin embargo, el nombre Arduino en sí es una marca registrada, y la empresa de fabricación gana dinero no solo con la producción de las placas en sí, sino también con la licencia de la marca.

Arduino Uno
Arduino Uno

Arduino Uno.

Puede estar seguro de que el código abierto continuará su marcha victoriosa por todo el planeta e incluso más allá. Por ejemplo, la compañía mundialmente famosa Elon Musk SpaceX anunció recientemente que ya ha lanzado 32 mil microsatélites en la órbita de la Tierra para proporcionar la red Starlink, mientras que su sistema operativo está basado en el mismo Linux. Y el control de la cápsula Crew Dragon se confía en parte a un sistema de monitores táctiles, cuya interfaz se basa en el código fuente del motor del navegador Chromium.

Centro de control de la cápsula Crew Dragon
Centro de control de la cápsula Crew Dragon

Centro de control de la cápsula Crew Dragon.

Pero si el cambio hacia la apertura total del código se aprobará sin dolor o si seguiremos siendo testigos de conflictos sobre esta base, el tiempo lo dirá. Sospecho que el código abierto pronto se convertirá en el estándar para todos los desarrolladores, y las soluciones propietarias ocuparán un nicho bastante estrecho, aunque todavía muy notable. Este proceso acelerará no solo a la propia comunidad de desarrolladores, sino también a los usuarios y, especialmente, a los gobiernos de los países. La tendencia hacia la transparencia de todo y de todos crece cada año, y el software no será una excepción. ¿Qué piensas sobre esto?

Recomendado: