Claves por las que el software libre interesa tanto a las corporaciones

Si quieres conocer cuales son las claves por las cuales el software libre está hoy en el punto de mira de grandes corporaciones que ayer eran sus grandes enemigos, quédate a leer la siguiente entrada y sabrás de primera mano todo lo que les parece especialmente atractivo.

Grandes equipos de programadores

GNU/Linux ha demostrado que los equipos de desarrolladores grandes, distribuidos, aunque desorganizados pueden crear software viable.

Antes de la llegada de GNU/Linux, la mayoría del software era desarrollado por pequeños equipos de programadores que trabajaban en estrecha coordinación entre sí. Ese era el enfoque recomendado por informáticos de hace unos decenios, que advertían que añadir más programadores a un proyecto tendía a disminuir su eficiencia. Y estaban muy equivocados.

Desde el principio, el kernel de Linux se desarrolló con un enfoque diferente, en el que programadores de todo el mundo, que en la mayoría de los casos no se conocían, escribieron e integraron el código de forma rápida y poco organizada. Gracias a la publicación temprana y frecuente, consiguieron que funcionara y hoy día es el kernel más usado en informática en supercomputadoras y dispositivos móviles.

El éxito de Linux cono kernel, que Eric S. Raymond en su día resumió de forma célebre comparando el desarrollo de Linux con un «bazar» en contraposición al enfoque de «catedral» utilizado por la mayoría de los equipos antes de Linux- allanó el camino para el mundo actual de los equipos de ingeniería de software altamente distribuidos.

Reutilización de software

Parte de la razón por la que Linux se hizo muy popular entre los ingenieros de software con relativa rapidez fue que Linux -y el software libre en general- facilita la reutilización del código escrito por otras personas.

Hoy en día, la reutilización de software de terceros es habitual, incluso entre los equipos de desarrollo cuyos productos no son de código libre. Es difícil imaginar la construcción de una aplicación hoy en día sin hacer uso de las bibliotecas de software de origen, las API de terceros u otros recursos externos a su propio proyecto.

Es cierto que proyectos como GNU, que precedió al kernel de Linux en siete años, promovían la reutilización de código antes de que apareciera el núcleo. Pero, podría decirse que Linux fue el proyecto que trajo las prácticas de codificación libre a la corriente que tanto parece interesar a ciertas grandes empresas, ayudando a crear el modelo de ingeniería de software de componentes de software modulares y reutilizables.

 

Gestión actual del código fuente

Linus Torvalds, que creó el núcleo de Linux cuando era estudiante en Helsinki, es el más famoso por ese trabajo. Pero un hecho a menudo olvidado es que Torvalds es también el padre de Git, el masivamente popular gestor de código fuente libre.

Torvalds creó Git para ayudar a gestionar el código fuente de Linux. Si Linux no existiera, tampoco existiría Git. Tampoco existiría GitHub, ni GitLab, ni GitOps. Y, lo que es más importante, sin la idea de software libre y colaborativo de Richard Stallman, tampoco existiría la cultura de intercambio y colaboración abierta que sostienen estas tecnologías.

 

Estrategias de despliegue de software «App Store»

Apple puede atribuirse el mérito de haber lanzado la primera App Store, un lugar donde los desarrolladores pueden compartir aplicaciones, y los usuarios pueden instalarlas fácilmente, utilizando un catálogo online centralizado.

Pero al igual que con muchas cosas que ha hecho Apple, el concepto de App Store (que ahora es una estrategia de despliegue de software apilado como servicio, especialmente pero no sólo en el ecosistema móvil) se parece mucho a lo que los desarrolladores de GNU/Linux estaban haciendo a través de los repositorios de software mucho antes de que las tiendas de aplicaciones se convirtieran en algo común en el mundo del software propietario, como tambien lo es la Tienda de Windows.

Los repositorios de software en GNU/Linux hacen más o menos lo mismo que las tiendas de aplicaciones: Permiten a los usuarios seleccionar las aplicaciones que quieren de una lista centralizada y en línea, y luego instalarlas con unos pocos clics o bien órdenes de terminal.

Es cierto que empresas como Apple parecen tener el mérito de crear tiendas de aplicaciones muy fáciles de usar de hacer clic e ir, pero no es un invento de ellos. Y la historia del concepto de tienda de aplicaciones en general implica a más actores que sólo la comunidad de Apple. Aún así, creo que se podría argumentar con fuerza que, sin GNU/Linux y los repositorios de software de GNU/Linux, las tiendas de aplicaciones tal y como las conocemos hoy no existirían.

 

Entusiasmo de la comunidad

Por último, pero no menos importante, probablemente el mayor impacto duradero de GNU/Linux en el modelo de ingeniería de software se reduce a lo que podría llamarse entusiasmo de la comunidad.

Me refiero a la forma en que GNU/Linux en particular, y el software libre en general, ha animado a los desarrolladores de todo tipo a considerar las contribuciones a la comunidad como uno de sus objetivos finales.

En un mundo de código libre en el que las contribuciones a los proyectos de código pueden ser aceleradores de carrera, y el código de licencia libre se reutiliza ampliamente, los desarrolladores entienden que hay un valor real en la construcción de software que puede beneficiar a tantos usuarios como sea posible.

 

Tal vez los desarrolladores valorarían a la comunidad en su conjunto si GNU/Linux y el código libre nunca hubieran aparecido. Pero me cuesta imaginar un mundo en el que corporaciones como Microsoft y Google trabajaran juntos en la construcción de software para GNU/Linux si GNU/Linux no hubiera popularizado el concepto de proyectos de software impulsados por la comunidad que nadie posee realmente, pero que todos pueden utilizar. Y más que imaginar, me cuesta y temo pensar que estas corporaciones lo que verdaderamente tienen ciertamente intenciones de ir comprando todos los proyectos para una vez en sus manos, prescindir de la comunidad y gobernar algo que no nació para ser gobernado.

5 5 votes
Article Rating
Article Categories:
Opinión

Comments

Subscribe
Notify of
guest
4 Comentarios
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Diego Cascorro

Por eso quieren enterrar el GNU a favor de los desarrollos «abiertos».
Lo mío pa mi, lo tuyo pa mi.

¡4 libertades o nada!

Aidan

No es que quieran enterrar GNU, pero sin duda se están yendo por el lado de Linux y el Código Abierto, a nivel empresarial pueden implementar Clang/LLVM, LLDB y todas las alternativas que quieran, si es que logran reemplazar todas las herramientas de GNU (veo muy difícil que se deshagan de Bash o Glibc, por mucho dinero que haya para desarrollar), pero eso solo sería entre ellos, a nivel comunitario GNU se mantendrá, casi todas las distribuciones de esta índole utilizan sus herramientas, así es esto, no una sola cosa.

mnemonic

Acabo de leer esto…
Intel Software Defined Silicon llega a Linux para activar funciones de hardware con licencia adicionales.
Sin comprar nuevos procesadores, Intel Software Defined Silicon permitirá activar capacidades de hardware adicionales si compra una licencia / actualización. Los detalles exactos no parecen ser públicos todavía sobre las «actualizaciones» que tendrán, pero Intel está preparando actualmente el soporte del controlador del kernel de Linux.
https://lore.kernel.org/all/20210924213157.3584061-2

Last edited 24 days ago by mnemonic
mnemonic
4
0
Would love your thoughts, please comment.x
()
x