cajas_persona

El software de código abierto (OSS) constituye la base de nuestra vida digital.

Y, naturalmente, el OSS es la base de la infraestructura nativa de la nube más moderna. De hecho, un informe reciente de CNCF encontró un aumento en los proyectos de código abierto para apoyar el movimiento nativo de la nube. El estudio de CNCF encontró que el 96% de las organizaciones ahora usan Kubernetes. Y en el último año, otros proyectos de código abierto nativos de la nube también han crecido exponencialmente. Por ejemplo, la adopción de contenedores creció un 500 % año tras año y el software de monitoreo Prometheus creció un 53 %.

¿Crees que una aplicación no utiliza software de código abierto? Piénsalo de nuevo: la mayoría de las veces, estarías equivocado. De hecho, el 90% de las empresas ahora usan código abierto . Pero a raíz de incidentes como Log4j , toda esta confianza en el código abierto para la arquitectura nativa de la nube ha despertado la preocupación de si podemos o no confiar en la seguridad y confiabilidad de estos proyectos . El asesor de seguridad nacional, Jake Sullivan , declaró recientemente que "el software de código abierto es una preocupación clave para la seguridad nacional". Por supuesto, puede ser complicado validar la procedencia de cada proyecto y comprender completamente sus funcionalidades de bajo nivel. Debido a su gran complejidad, convertirse en un experto en cadaherramienta de código abierto que una empresa incrusta tardaría varias vidas.

Aún así, los beneficios del código abierto superan con creces las preocupaciones potenciales: además de estar disponible gratuitamente, el código abierto aumenta la portabilidad y la interoperabilidad dentro del mercado tecnológico. Además, con tantos desarrolladores contribuyendo a un proyecto, las debilidades y vulnerabilidades se pueden descubrir y abordar más rápidamente. Aún así, según James Arlen , CISO, Aiven, las empresas deberían considerar asumir un papel más activo en el fomento de estos proyectos centrales. Recientemente compartió conmigo algunas acciones específicas que las empresas pueden tomar para nutrir el OSS del que tanto dependen.

Promoción del bien común

El software de código abierto puede ayudar a las organizaciones a evitar ser rehenes de una sola nube, lo que permite entornos de múltiples nubes. Pero cosechar los beneficios del código abierto requiere aportes comunitarios. Según Arlen, las empresas tienen la responsabilidad de incentivar la mejora del OSS como parte del bien común. Entonces, ¿cuáles son algunas formas de apoyar y mejorar el código abierto?

Un método es la contribución monetaria directa. Arlen describe cómo en Aiven, la empresa paga los salarios de los miembros del equipo de seguridad que dedican la mitad de su tiempo a trabajar explícitamente en proyectos de código abierto. Además, la compañía ha contribuido con incentivos financieros para el descubrimiento de errores de código abierto, incluso cuando los mantenedores oficiales del proyecto de código abierto no tenían un programa de recompensas por errores. “Un compromiso con el código abierto ayuda a equilibrar los motivos capitalistas con la naturaleza de bien público del código abierto”, dijo.

Además de las contribuciones monetarias directas, Arlen alienta a más desarrolladores a desempeñar un papel activo en la contribución a los paquetes principales que afectan el ecosistema más amplio, ya que las vulnerabilidades en un paquete subyacente, como Fedora, podrían afectar muchos servicios upstream. A menudo, las exposiciones no son intencionales y solo surgen cuando se combinan dos tipos de código, como fue el caso de un error encontrado en una implementación de Apache Flink-as-a-service, dice Arlen.

Uno para todos y todos para todos

Los proyectos de código abierto han florecido gracias al importante esfuerzo comunitario. Arlen lo compara con cómo Wikipedia usurpó a la Enciclopedia Británica como medio para organizar la comprensión colectiva de la sociedad. Apoyar el código abierto requiere esfuerzo, pero hay un punto óptimo cuando todas las partes sienten que dieron demasiado, dice Arlen. “El código abierto es realmente una implementación del Teorema de Nash. Si no todos ganan, todos ganamos”.

Suena como un tropo idealista, pero es cierto que tendemos a llegar más lejos cuando nos ayudamos unos a otros. Por lo tanto, las empresas tienen una razón ética para contribuir directamente a los proyectos que consumen. Si bien eso puede parecer una carga enorme, el esfuerzo no tiene que ser tan sustancial. “Si todos envían un artículo, en un abrir y cerrar de ojos tenemos Wikipedia”, dice Arlen. “Lo mismo sucede en el código abierto”.

Y las contribuciones tampoco tienen que ser puramente técnicas. Por ejemplo, ciertamente hay espacio para que los escritores técnicos desarrollen una mejor documentación para proyectos de código abierto. “Las contribuciones deben tener un resultado material, pero no es necesario que sean significativas”, explica Arlen. Si todos se ofrecieran como voluntarios, digamos, cuatro horas al mes para corregir un error en los proyectos de código abierto, el mundo del software sería intrínsecamente más seguro. En ese sentido, ningún conjunto de pruebas capta todo. Otra forma útil de contribuir es enviar informes de errores a los mantenedores del proyecto.

Retribuya al código abierto nativo de la nube

“Cualquier tecnología lo suficientemente avanzada es indistinguible de la magia”, en palabras de Arther C Clarke. Y muchos paquetes de código abierto funcionan como magia para el espectador. “No hay ser humano que entienda todo Linux o todo macOS”, dice Arlen.

Como tal, es imposible evitar las vulnerabilidades por completo, y la complejidad no dejará de existir ya sea que el software esté abierto o cerrado. Pero la transparencia del código abierto es otro de sus grandes puntos fuertes, ya que permite una mayor visibilidad de los errores y vulnerabilidades.

No podemos deshacernos del código abierto. Los mejores paquetes de código abierto de CNCF, por ejemplo, han estado madurando durante años y miles de equipos de software confían en ellos. Y aunque el uso directo de paquetes de código abierto requiere superar algunos obstáculos de mantenimiento, existen muchas abstracciones para agilizar su uso. Por ejemplo, la mayoría de las empresas adoptan Kubernetes a través de servicios gestionados como EKS o GKS. Aún así, el código abierto está en la base de estas plataformas y debe fomentarse.

En lugar de castigar el código abierto por sus deficiencias, necesitamos construir patrones sociales que respalden esta idea del bien común, dice Arlen. Tal vez algún día, esto podría materializarse como un cuerpo de "guardabosques" digital respaldado por el gobierno, cuyas responsabilidades incluyen el mantenimiento de la infraestructura digital de la que depende el mundo, especula.

Mientras tanto, los usuarios de código abierto tienen algunos elementos procesables: retribuir a la comunidad, introducir programas de recompensas por errores y contribuir como pueda, incluso si es irrelevante, aconseja Arlen.

 

Fuente: containerjournal | somoslibres

¿Quién está en línea?

Hay 16405 invitados y ningún miembro en línea