Explorando NASA-TOPS en comunidad: código abierto

La comunidad MetaDocente continuó su recorrido colectivo por Open Science 101 con mucho entusiasmo, centrando el debate esta vez en el código abierto. Además de discutir la complejidad de las licencias abiertas para compartir código, vimos cómo el abrir el acceso a los datos, a los resultados y a otros productos de una investigación en la que se usa código abierto es una buena práctica, que sin embargo no deja de estar relacionada con el extractivismo en sus distintas manifestaciones contemporáneas. Acá te contamos todo sobre el encuentro 4 de la Misión Exploración.

Módulo 4: código abierto

Creando y compartiendo código abierto (y accesible)

Del módulo 4 de Open Science 101 nos llevamos muy buenas recomendaciones sobre cómo considerar al código abierto en el contexto de un plan de investigación, conectado también al plan de manejo de datos. Compartimos algunas buenas prácticas, que revisamos juntos:

  • Para que el código abierto sea utilizado por más personas, seguir principios como los FAIR ayuda a que sea localizable.
  • Al momento de buscar código útil, prestar atención a la terminología usada por personas que trabajan en áreas similares a la tuya ayuda en la revisión de la literatura científica y la exploración de repositorios públicos de código como los disponibles en GitHub.
  • Si prefieres avanzar con un proyecto propio de código abierto, es importante que te tomes un tiempo durante la planificación para elegir elementos como el lenguaje de programación, el lugar donde se almacenarán el código, los datos y los productos de su análisis y la capacidad de cómputo necesaria, así como las personas que podrán colaborar en cada una de esas tareas.
  • Al encontrar software de interés, es interesante evaluar sus funcionalidades, la interoperabilidad que ofrece, su seguridad y restricciones de uso. Esta información suele estar disponible en plataformas como GitHub, cuyos repositorios permiten verificar el estado del proyecto y de su mantenimiento.
  • El control de versiones es importante para mantener un historial de cambios y revisiones de un proyecto, con la posibilidad de revertir errores y de dar crédito a cada persona por su participación. Los archivos “léame”, el código de conducta y la guía para contribuciones ofrecen soporte a quienes quieran usar los contenidos y participar del proyecto, y por eso deben ser descritos de acuerdo a ciertas buenas prácticas exploradas en el módulo y difundidas por las comunidades de Ciencia Abierta.
  • Muchas comunidades de software libre tienen foros virtuales dedicados a ofrecer soporte a usuarios. Ahí se encuentran oportunidades para evaluar el código y pedir ayuda si ocurre algún problema.
  • ¡No olvides citar la fuente del código que usaste!

Una parte de nuestro encuentro fue dedicada al tema de las licencias, que en el código abierto pueden ser más o menos restrictivas. Se trata de una vía doble: describen los derechos tanto de la persona desarrolladora como de la persona usuaria del código. Una licencia es de código abierto si permite que cualquier persona inspeccione, use, cambie y distribuya el código fuente para cualquier fin.

Las licencias permisiva y privativa nos ayudan a planificar el futuro de los trabajos derivados de un proyecto abierto. La licencia privativa requiere que futuros cambios en el software o trabajos derivados sean compartidos bajo la misma licencia que el proyecto original. En el software propietario (también llamado privativo​ o no libre), solo las personas autoras tienen esos permisos - los usuarios de software prioritario no tienen acceso al código. Aunque tengamos acceso al código fuente del software que nos interesa, es necesario que esté acompañado de una licencia permisiva para poder modificar o adaptar ese código. Si el software no hace referencia a ninguna licencia, deberemos asumir que el software no tiene permisos para ser compartido libremente.

El módulo explica las diferencias entre compartir el código para desarrollo y para archivarlo a largo plazo - en ambos casos, se usan prácticas que promueven la Ciencia Abierta y la participación comunitaria. Distintas personas en la comunidad pueden contribuir en las varias etapas de publicación y mantenimiento del código, y es importante reconocer estos esfuerzos.

Comunidades de personas con distintos roles crean, comparten y mantienen el código abierto. Fuente de la imagen: Ilustraciones de The Turing Way

La tecnología hacia los derechos y la justicia

En América Latina es muy común que nos acerquemos al código abierto por necesidad y como una alternativa más accesible frente a la escasez de recursos científicos y tecnológicos. Una persona que se inicia en el mundo de la ciencia abierta rápidamente notará la cultura de colaboración existente en las comunidades de código abierto y de software libre: son usados por necesidad, pero también por una cuestión de principios.

Nos cuenta el módulo 4 que el software libre, en pocas palabras, es aquel cuyo código fuente se distribuye sin costo y que es pasible de uso, cambio y distribución con sus permisos y derechos originales.

La palabra “libre” no necesariamente significa “libre de costo”, pero es común que tenga esa connotación. En inglés a veces se usa el acrónimo “FLOSS” - Free/Libre and Open Source Software. Más allá de eso, es parte de un movimiento social y político – o de una filosofía – hacia la liberación del conocimiento.

Distintas organizaciones detallan el concepto de “libre” en función de distintos factores: libre para usar, revisar, cambiar, distribuir, etc. En general, la idea de código abierto está asociada al uso de licencias permisivas y a una relación más horizontal entre quienes desarrollan y quienes usan el software, lo que es particularmente conveniente en el entorno intra y extra-académico en la región.

Las comunidades que valoran las prácticas abiertas suelen operar bajo principios de transparencia, colaboración, intercambio e inclusión, y esto es lo que diferencia el software libre del código abierto. En Latinoamérica esto se complejiza aún más, porque el uso de software libre se encaja de modo muy central en el marco de la soberanía tecnológica y de las desigualdades socioeconómicas. Se trata de un movimiento muy amplio y con bastante actividad e historia en el continente.

Por ejemplo, en el sur de Brasil existe el tradicional Foro Internacional del Software Libre (FISL) que es usado ampliamente en la administración pública federal. En el marco de la Ciencia Abierta, una persona nos contó sobre su participación en el proyecto PHIL_OS, que tiene como objetivo desarrollar una filosofía de esta ciencia fundamentada empíricamente, enfatizando la diversidad de entornos de investigación en todo el mundo y articulando las condiciones bajo las cuales se puede aprovechar esa diversidad para promover buenas prácticas de investigación.

Es esencial sostener comunidades que manejen los recursos computacionales con responsabilidad. Las comunidades de software libre – que llevan décadas de existencia en la región – son espacios para compartir, aprender y crear con una perspectiva de colaboración. Por otro lado, a menudo escuchamos historias tristes: por ejemplo, cuando investigadores de instituciones o países no-marginados utilizan datos, muestras biológicas u otros recursos de regiones marginadas sin considerar adecuadamente los intereses y derechos de las comunidades locales. Para navegar este contexto con conciencia de los problemas históricos y socioeconómicos, las comunidades de código abierto son fuentes de ricos intercambios prácticos y filosóficos. Al contribuir con ellas también aprendemos y damos un paso más hacia el progreso tecnológico con justicia social y epistemológica.

¡Sírvete sin culpa!

Estos son los registros del encuentro 4 de nuestro grupo de estudio:

Nuestros materiales están disponibles en forma gratuita bajo esta licencia. Es decir, puedes reusar o editar cualquier material que aparece acá, lo único que pedimos a cambio es que cuando tomes material de acá incluyas una referencia a esta página web.

Sobre los encuentros

Entre enero y marzo de 2024 se desarrollaron 6 encuentros para explorar los contenidos del curso Open Science 101, que forma parte de la iniciativa NASA TOPS.

En respuesta a las ganas de nuestra comunidad de profundizar las discusiones, preparamos un ciclo de conversatorios sobre Ciencia Abierta. En esta serie de encuentros conversaremos sobre distintos temas que rodean a la Ciencia Abierta para intentar comprender colectivamente cómo la aprendemos, como la aplicamos y qué significa para nuestra región. Queremos reconocer sus ventajas y su potencia a través de debatir sobre su alcance y posibilidades.

Ver detalles de los encuentros

Estos encuentros ofrecen una oportunidad de intercambio y aprendizaje, para nutrirnos entre personas y comunidades con nuestras experiencias.

Agradecimientos

Esta publicación fue posible gracias a un subsidio de Chan Zuckerberg Initiative (DOI: 10.5281/zenodo.7386372), los subsidios de la NASA 80NSSC23K0854 (DOI: 10.5281/zenodo.8215455), 80NSSC23K0857 (DOI: 10.5281/zenodo.8250978) y 80NSSC23K0861 (DOI: 10.5281/zenodo.8212072) y el grant DAF2021-239366 y DOI de subsidio https://doi.org/10.37921/522107izqogv de la Chan Zuckerberg Initiative DAF, un fondo aconsejado por la Silicon Valley Community Foundation (DOI de financiador 10.13039/100014989) y el subsidio “Open Cloud Collaborative Project for Latin America and Africa (the Catalyst Project)” del mismo financiador (DOI: https://doi.org/10.5281/zenodo.8431422).

¿Te gustó esta publicación? Puedes reutilizarla libremente bajo licencia CC by 4.0, solo tienes que citarla.

Esta es la cita que te recomendamos usar para referenciarla: Melissa Black, Nicolás Palopoli (2024). Explorando NASA-TOPS en comunidad: código abierto. Zenodo. https://doi.org/10.5281/zenodo.10818513

Melissa Black
Melissa Black
Coordinación de proyectos
Nicolás Palopoli
Nicolás Palopoli
Co-Director Ejecutivo y Consejo Asesor
Siguiente
Anterior

Relacionado