El impacto de las comunidades abiertas en la evolución del proyecto Linux

538

Por Tim Burke, vicepresidente de Red Hat, en exclusiva para Tecnopia.org

El sistema operativo Linux cumple 25 años. El kérnel de Linux es muy distinto de lo que era hace un cuarto de siglo. Debió ampliarse para abarcar nuevas tecnologías y conservar su nivel de estandarización, lo que lo convierte en el referente de la innovación en el centro de datos moderno. Así como el kérnel creció, también creció el proyecto en magnitud y en complejidad, a un ritmo más acelerado que el de los departamentos de Investigación y Desarrollo (I&D) de cualquier gigante tecnológico.

tecnopia-linux-infographic
Presione en imagen para ver en amplificada.

El origen es hoy muy valioso (para la empresa)

En los comienzos de Linux, la etapa de desarrollo o el mismo proyecto comunitario proporcionaba los bits clave del código para que Linux funcionara. Era habitual tener cinco versiones distintas del mismo controlador (es decir, el disco, la red, los gráficos). Existía un proyecto de desarrollo y numerosas “bifurcaciones” a las cuales las compañías les “añadían valor”. Esto se debía principalmente a que al principio las compañías no vislumbraban el valor a largo plazo de una fuente autorizada, y muchas de ellas no estaban familiarizadas con la interacción con la comunidad. Esto hacía que la experiencia fuera insatisfactoria para los usuarios en un intento por encontrar la versión “adecuada”.

tecnopia-44218-linuxdistrotimeline-7
Presione en imagen para ver en amplificada.

El problema es que esto generaba ramificaciones; a medida que los controladores y las tecnologías como Real-Time se difundían, dejó de haber un punto de veracidad único. Los encargados de mantener esas ramificaciones cambiaban de puesto o de función y las ramificaciones morían allí, dejando a los clientes sin actualizaciones. Para evitar esto, hoy las empresas no intentan mantener sus propias bifurcaciones; en su lugar, entienden la importancia del proceso de desarrollo y han comenzado a colaborar activamente con el proyecto del kérnel, en lugar de intentar encontrar un atajo para su propia versión.




La descentralización como fórmula del éxito

Como ocurre con muchos proyectos de código abierto, la estructura de gobierno inicial del proyecto Linux requería que todo el código fuera examinado por su creador, Linus Torvalds. Por supuesto, esto funcionó mientras el proyecto era relativamente pequeño, pero a medida que creció la demanda de Linux, y el kérnel se volvió cada vez más complejo, esta estructura dejó de ser sostenible.

Presione en imagen para ver en amplificada.
Presione en imagen para ver en amplificada.

Hoy el proyecto posee varios subsistemas, cada cual con una persona a cargo de mantenerlo, quien supervisa un nicho específico del kérnel, como la conexión de redes o los sistemas de archivo. Dentro de cada uno de estos subsistemas, hay otros individuos que supervisan componentes aún más especializados. La cantidad de tecnologías que el proyecto debe atender a través del kérnel hoy demanda este tipo de jerarquía, una que posibilite el control distribuido y la especialización.

Un proyecto global para satisfacer necesidades globales

En un inicio, la mayoría de los aportes de Linux provenían de Europa y América del Norte. Sin embargo, esto se expandió rápidamente a otros países principalmente porque, desde sus inicios, la comunidad fue un foro con base en Internet. Hubo diversos factores, incluyendo la aceptación del modelo colaborativo por parte de las corporaciones, así como de índole cultural.

No obstante, Linux es una verdadera comunidad global forjada a través del trabajo duro dedicado al proyecto con el fin de interactuar con culturas empresariales, donde la colaboración y las comunidades abiertas no son habituales. Aún queda mucho trabajo por hacer en términos de inclusión de la diversidad, pero Linux es un proyecto verdaderamente mundial, dado que las personas han aprendido cómo vincularse y asesorar a sus pares.

Presione en imagen para ver en amplificada.
Presione en imagen para ver en amplificada.

La colaboración sigue siendo un factor clave

Linux no fue el primer sistema operativo de código abierto, pero sí fue el más exitoso. A nivel de la comunidad, no existen otros proyectos de sistemas operativos que puedan compararse con la apertura y el carácter inclusivo que ofrece Linux.




Desde el principio, Linux fue una comunidad abierta. Por momentos fue combativo y caótico, pero fue eso lo que le ayudó a prosperar. Si estos otros sistemas operativos eran “mejores” técnicamente que Linux o no, es algo que podría generar polémica; Linux contaba con un mejor enfoque comunitario y triunfó mediante el fomento de la colaboración tanto corporativa como individual. Podría decirse que es “un sistema operativo por la gente y para la gente”.

Presione en imagen para ver en amplificada.
Presione en imagen para ver en amplificada.

¿Qué sigue?

Al igual que sucedió durante sus años de formación, Linux necesita seguir evolucionando, como comunidad y como tecnología. Al nivel de la comunidad, es necesario asegurar que todas las personas sean bienvenidas a colaborar. La sangre nueva es la que mantiene a los proyectos de código abierto activos, y esas caras nuevas e ideas frescas pueden ayudarnos eventualmente a anticipar y abordar los problemas informáticos del futuro, posiblemente antes de que siquiera existan.

Presione en imagen para ver en amplificada.
Presione en imagen para ver en amplificada.

En cuanto a la tecnología, hace tiempo que Linux se ha enfocado en la infraestructura, en la que los administradores de tecnología hacen los ajustes manualmente y configuran cuidadosamente los sistemas para propósitos muy específicos. Con el crecimiento de DevOps, este énfasis puesto en la infraestructura necesita dar lugar a una mayor automatización y programación, con el fin de ayudar a reducir la necesidad de hacer ajustes manuales y proporcionar configuraciones prescriptivas predeterminadas, para aquellos desarrolladores que sólo quieran “desarrollar” en lugar de configurar un caso de uso específico de un servidor. Se trata de seguir logrando que Linux sea muy fácil de usar y que se aplique en un mayor número de escenarios, para el desarrollador y el área de operaciones, desde el primer momento.




La colaboración es la esencia de Linux, pero en lugar de una colaboración interna, que ha sido el distintivo del proyecto, los próximos 25 años de la comunidad estarán definidos por cómo Linux colaborará fuera de los límites de la iniciativa. Linux necesita continuar reduciendo las diferencias con otras comunidades, como OpenStack o los diversos proyectos de plataforma como servicio, a fin de garantizar la supervivencia continuada no sólo de Linux sino también del código abierto. De hecho, analicemos la innovación altamente disruptiva que existe actualmente en la nube, DevOps y el análisis de datos. Todos los avances destacados en dichas áreas se basan en Linux. Cada una de estas áreas de innovación posee una estrecha dependencia con la evolución de Linux, por ejemplo en virtualización, seguridad y aislamiento de recursos, redes y aceleración de IO. Linux es el componente básico de un conjunto mucho más amplio de capacidades de código abierto que están cambiando literalmente el mundo. En el futuro nos espera una gran cantidad de trabajo, y sumamente difícil, que requerirá más que nunca del poder de la comunidad para triunfar.

Para Linux, han sido 25 años extraordinarios. Y nuestros esfuerzos colectivos tendrán aún más impacto en los próximos 25 años.