Blog

El Frente de Judea contra los romanos

Hay una famosa escena en La Vida de Brian de los geniales Monty Python, en la que varios miembros del Frente de Judea, que intrigan contra el imperialismo de Roma, se plantean que al fin y al cabo “¿qué han hecho los romanos por nosotros?”. Y entonces todos empiezan a desgranar los avances que habían traído los romanos: el alcantarillado, el acueducto y las carreteras… y la irrigación, la sanidad, la enseñanza, el vino, los baños públicos, el orden público…

Sé que no es una analogía precisa, pero es una situación que me recuerda un poco a cuando se ataca a las grandes tecnológicas norteamericanas, asumiendo que son meros monstruos capitalistas (o imperialistas, según) que no aportan ningún valor añadido más allá del puramente crematístico asociado a su modelo de negocio. No es cierto.

No me gusta el apelativo big four, sobre todo porque no son solo 4, e incluso obcecándose con ese número, no hay consenso sobre de qué cuatro hablamos: Apple, Google y Amazon estarían quizá garantizadas, pero como discriminas entre Microsoft o Facebook, o cómo te olvidas de las contemporáneas Twitter o Uber, o compañías legendarias como IBM, hp o Intel.

Ok, esta es una cuestión secundaria, semántica, subjetiva, y además responder a la pregunta de qué han hecho las \(big N\) por nosotros es más una tarea para una tesis que para una entrada de blog. Veamos que hacen hoy algunas de estas empresas por nosotros, especialmente en proyectos de código abierto en el sector de Internet que cualquiera puede explotar, incluso comercialmente.

Google

El ecosistema de aplicaciones de código abierto de Google es sencillamente abrumador. Veamos los más importantes:

  • Android es un sistema operativo para dispositivos móviles basado en Unix. Google compró el proyecto allá por 2005 y lo lanzó en 2008. Hoy copa cerca del 75% del mercado, y cualquiera puede acceder a su código fuente y hacer lo que quiera con él.
  • TensorFlow es una biblioteca para aprendizaje automático e inteligencia artificial que Google desarrolló en 2010 y que liberó como código abierto a través de una licencia Apache 2.0 en 2015. Cuenta con 140k estrellas en su repositorio de GitHub.
  • Angular es un framework basado en Angular.js ideal para crear aplicaciones adaptables nativamente a cualquier dispositivo. El repositorio de GitHub cuenta con 56.1k estrellas y una activa comunidad de desarrolladores.
  • Kubernetes es un sistema de virtualización de sistemas operativos (containers) que vienen a ser el corazón cerebro de lo que popularmente llamamos la nube. Fue desarrollado por Google en 2014 pero rápidamente se integró en la Cloud Native Computing Foundation de Linux a la que se sumaron como socios fundadores compañías como Twitter, Intel, Cisco ó IBM entre otras, y que hoy, unos pocos años después, está formada por un montón de empresas.
  • Go es un lenguaje de programación que ha ido ganando tracción hasta situarse casi al nivel de lenguajes más asentados en el mercado como Python o JavaScript, si no entre los más usados si entre los más queridos según stack overflow. Utiliza licencia de código abierto BSD, y por ejemplo Hugo, la tecnología detrás de este blog, está íntegramente programada en Go.

Microsoft

Microsoft ha provocado siempre una relación de amor-odio a sus usuarios, desde sus inicios yo diría, aunque quizá desde Windows 7 y especialmente tras Windows 10, esa percepción puede haber cambiado, y movimientos como los que describo brevemente a continuación, ayudan.

Si bien Microsoft es una compañía que se ha mantenido desconectada del concepto de software libre (aunque muchos de sus productos eran virtualmente gratis para los usuarios particulares, ¿Alguien pagó por MSDOS, BASIC, Windows u Office en los 80’ o en los 90’?), se ha debido replantear su política quizá tras perder las batallas críticas del siglo XXI, los buscadores y los sistemas operativos móviles, Bing no es rival para Google, y sus sistemas operativos para estos dispositivos han sido un chiste para Android.

Así que en 2018 liberó el código de su gestor de archivos, compró por 7500 millones de dólares la catedral del código abierto que es GitHub, y liberó como código abierto distintas partes de Windows, incluyendo el entorno de programación .NET y sus librerías.

Actualmente la sección Open Source de Microsoft es bastante extensa, y sus principales activos son:

  • Visual Studio Code es un editor de código abierto hijo de la IDE de programación Visual Studio. Yo soy un fiel usuario desde hace como dos años, la gran mayoría de lo que codifico e incluso de lo que escribo lo hago desde vscode y me parece una maravilla. Su repositorio en GitHub tiene alrededor de 90k estrellas, y co-lidera con su padre VS las preferencias de los desarrolladores según las métricas de stackOveflow de 2018 que se pueden ver a continuación:

  • TypeScript es la versión de JavaScript que ofrece Windows bajo licencia de código abierto Apache 2.0. Su repositorio cuenta con 57k estrellas, y es ya el sabor preferido de JavaScript.
  • El Windows Subsystem for Linux trajo a Windows las bondades de Linux allá por 2016, aunque para entonces los que necesitaban Linux en su PC tenían varias soluciones funcionales (diferentes particiones, máquinas virtuales, o en último caso el popular emulador de shell Cygwin). Windows ha insistido y Windows 10 incorpora de manera nativa el WSL 2 que presenta algunas mejoras y que de alguna manera muestra las cartas de la compañía respecto a la comunidad GNU.
  • La shell propia de Windows ha mejorado mucho desde Windows 7, la Power Shell puede hacer sin problemas el tipo de cosas que se hacían típicamente con Linux, además es de código abierto, y convive armoniosamente con el WSL 2en el Windows Terminal que se lanzó el año pasado, también de código abierto.

Facebook

Aunque Facebook tiene una buena colección de proyectos de código abierto en las principales tecnologías modernas y emergentes, no es tampoco comparable con Google o Microsoft. Su principal éxito en este campo es sin duda el framework de JavaScript React que lidera el número de descargas frente a su principal competidor, el mencionado antes Angular de Google.

Vía npm trends

Twitter

Twitter es una empresa comprometida con la filosofía de código abierto, y cuenta hoy con 104 proyectos en sus repositorios de GitHub que pueden ser consultados también aquí. Los más populares son los siguientes:

  • Bootstrap es un entorno de desarrollo front end para webs y aplicaciones diseñado para ser nativamente adaptativo y compatible con los dispositivos móviles. Su repositorio es uno de los que cuentan con más estrellas (casi 140k) en GitHub, y sigue liderando el mercado en este tipo frameworks.
  • Bower es un gestor de dependencias similar a (y basado en) npm aunque aligerado y optimizado para Front End. Su repositorio cuenta con más de 15k estrellas, y aunque sigue siendo mantenido, los propios administradores recomiendan la migración a Yarn desde finales de 2017.

IBM

IBM ha sido durante décadas la tecnológica norteamericana de referencia, llevaba ya muchos años relegada a un papel de mera consultoría. Y no porque renegara del modelo open source, de hecho desde 2002 tenía una alianza con Red Hat, una de las principales compañías de código abierto especializada en distribuciones Linux, para el proyecto Red Hat Enterprise Linux. En 2018 IBM compra Red Hat por 33400 millones de dólares, y hoy cuenta con una surtida cartera de proyectos open source con más de 1200 repositorios en GitHub abarcando muchas de las tecnologías citadas en esta entrada.

Uber

Incluyo Uber no sólo por motivos sentimentales (fui un usuario temprano de StumbleUpon desde 2004 o por ahí, entre el primer millón de usuarios, antes de que existieran Facebook o Twitter, y el creador del asunto no era otro que Garrett Camp, muy activo en la plataforma, y que a la sazón fue cofundador de Uber), sino porque tiene méritos propios para estar en esta lista, con una variedad de proyectos en diferentes tecnologías, desde inteligencia artificial a desarrollo web pasando por herramientas geoespaciales y de visualización.

Conclusión

¿Qué han hecho entonces las grandes tecnológicas por nosotros?

Pues hacen mucho más de lo que a primera vista parece que es simplemente lucrarse de sus respectivos negocios, o la parte obvia de su valor añadido:

Muchas de las tecnologías más recientes, o la evolución de las más antiguas, tienen el soporte de estas (y otras) grandes compañías o bien liberando su código, o bien participando y aportando recursos a los principales proyectos que configuran hoy el esqueleto de Internet a prácticamente todos los niveles.

comments powered by Disqus