Construyendo un ecosistema de código abierto más seguro y sostenible

Una vez más, una vulnerabilidad de seguridad crítica ha arrojado luz sobre la realidad actual del código abierto. Los aficionados no remunerados que mantienen los llamados ‘proyectos de Nebraska’, llamados así por el ahora omnipresente cómic de XKCD, ‘Dependency’, llevan el peso del mundo moderno sobre sus hombros.

Todo el software tiene errores, incluidas vulnerabilidades críticas de seguridad. Los proveedores propietarios son famosos por el martes de parches. Algunos buscan evidencia de que pagar a los mantenedores aumenta la seguridad, pero seamos honestos: los aficionados al código abierto ya hacen un muy buen trabajo produciendo software de alta calidad. Sí, a través de esfuerzos como OpenSSF, debemos identificar, priorizar, auditar y corregir de manera proactiva las vulnerabilidades en componentes críticos. Incidentes como el que afecta a XZ Utils deberían impulsarnos a hacerlo.

Incidentes como XZ también deberían animarnos a dejar de agotar a los mantenedores. El agotamiento del mantenedor de XZ, Lasse Collin, fue un factor decisivo en el éxito del ataque de ingeniería social de XZ. Lo hizo más vulnerable a la presión para aceptar la personalidad de ‘Jia Tan’ como co-mantenedor. XZ es otro síntoma de alto perfil de la crisis subyacente de sostenibilidad del código abierto.

Dependencia. XKCD N° 2.347

La sostenibilidad del código abierto, como yo la defino, es “cuando cualquier persona inteligente y motivada puede producir software de código abierto ampliamente adoptado y recibir un pago justo sin pasar por obstáculos”. Saltar obstáculos adopta muchas formas: iniciar una empresa de consultoría, trabajar en software propietario, producir contenido educativo. Todos ellos pueden subsidiar el trabajo de código abierto de un individuo, lo cual es fantástico, pero no lo sustentan directamente. Cuando las cosas se ponen difíciles, el código abierto sale perdiendo, porque los incentivos no están alineados.

Hasta que afrontemos la economía del código abierto y solucionemos los incentivos, seguiremos quemando a los mantenedores. El código abierto es como un restaurante. La mayoría de las empresas cenan y corren. Los enfoques basados ​​en impuestos, como los fondos soberanos de tecnología, pueden ser parte de la respuesta. Los modelos de reparto de ingresos, como el que HeroDevs y OpenJS anunciaron recientemente, son otro enfoque prometedor. En última instancia, necesitamos que las empresas de toda la economía den un paso al frente y paguen a quienes los mantienen. FOSS Funders es un comienzo, pero aún queda mucho trabajo por hacer.

Abrir las compuertas corporativas es un desafío, quizás el más difícil. Justo detrás hay otro: ¿a dónde debería ir el dinero? ¿Cómo podemos asignar fondos de manera más eficiente a los mantenedores de una manera que garantice un ecosistema próspero y productivo? Las plataformas directas al mantenimiento, como GitHub Sponsors y Thanks.dev, son un método, pero esto puede suponer demasiada carga para las empresas para interactuar con la larga cola de sus dependencias. Cada vez más veo que las fundaciones de código abierto tienen una gran oportunidad aquí. De hecho, la nueva legislación europea está formalizando su papel como administradores del software de código abierto.

Necesitamos proporcionar a desarrolladores individuales como Lassie Collin un camino claro a seguir cuando tengan éxito con un proyecto de código abierto. Quizás las fundaciones en el futuro incentiven la innovación “adquiriendo” proyectos populares y pagando al autor original para que se haga cargo del mantenimiento. Luego, una vez dentro de una fundación, los modelos de “toma lo que quieras” pueden proporcionar incentivos económicos compatibles con la motivación intrínseca en el corazón del código abierto. Ya existen herramientas como Open Collective Expenses y Liberapay Teams para ayudar con esto.

Los incidentes de seguridad como el XZ siempre estarán con nosotros. Deberíamos trabajar para disminuirlos. También deberíamos trabajar para ofrecer recompensas económicas adecuadas a quienes, año tras año, distribuyen excelente software de código abierto. Con un enfoque reflexivo, podemos equilibrar la libertad individual y la creatividad en el corazón del código abierto con el rigor y la seguridad que requiere el mundo moderno.

Chad Whitacre es jefe de código abierto en Sentry, especialista en monitoreo del rendimiento de aplicaciones y seguimiento de errores. Ingeniero de software de carrera, también trabajó durante un tiempo en la empresa de seguridad cibernética Proofpoint, entre otras.

Exit mobile version