BLOG
El código abierto ha revolucionado la tecnología, impulsando plataformas como Linux, Android y Bitcoin. Infórmate sobre la importancia del código abierto, explora la pila de código abierto de Blink y descubre cómo la colaboración de la comunidad impulsa la innovación.
¿Quién iba a pensar que la filosofía del código abierto se convertiría en una de las escuelas de pensamiento predominantes en el mundo? Al principio, la idea del software de código abierto -también conocido como OSS- parecía tan contraintuitiva que la mayoría de la gente pensaba que sería una nota a pie de página en la historia. Sin embargo, míranos ahora.
Por un lado, la mayor parte de Internet funciona con servidores Linux, Android es el sistema operativo más popular y toda la gente guay utiliza el reproductor multimedia VLC. Por otro lado, Microsoft pagó 7.500 millones de dólares por la plataforma colaborativa para desarrolladores GitHub y Google abrió su plataforma de aprendizaje automático TensorFlow y dedica considerables recursos a mantener comprometida a su comunidad mundial de desarrolladores.
Por otro lado, la filosofía del código abierto está en el mero centro de la red Bitcoin. Podríamos incluso argumentar que Bitcoin no sería viable si no fuera de código abierto. El hecho de que todo el mundo pueda auditar el código es fundamental para que la red no necesite un tercero de confianza para autenticar las transacciones.
Los monederos -incluido Blink- y el software relacionado heredaron estas características y adoptaron la forma de hacer las cosas del código abierto. Y, no es por presumir, pero la red Bitcoin es el desarrollo más importante que el mundo ha visto desde Internet.
Por tanto, podríamos decir que el código abierto está ganando, pero...
Tradicionalmente, el software es en su mayoría "propietario" o de "código cerrado". Eso significa que la organización, el equipo o la persona que lo ha creado conserva el control total sobre el software. Sólo ellos pueden modificarlo, estudiarlo o incluso leerlo para asegurarse de que hace lo que se supone que debe hacer. En el otro extremo del espectro, el software de código abierto cede el control y anima a la colaboración de completos desconocidos.
O, como dice Oracle:
"En términos generales, el código abierto se refiere al diseño y la ingeniería de un producto o solución que se hace abierto y accesible para la participación de la comunidad. Es un método de trabajo descentralizado que aprovecha las comunidades para encontrar nuevas soluciones a los problemas dentro de sus industrias y sus comunidades."
Así es. La descentralización no empezó con Bitcoin, la red la heredó del movimiento de código abierto. De hecho, lea lo que IBM tiene que decir sobre el tema y vea si le recuerda algo:
"El término "código abierto" también se refiere de forma más general a un enfoque basado en la comunidad para crear cualquier propiedad intelectual, como el software, a través de la colaboración abierta, la inclusión, la transparencia y las actualizaciones públicas frecuentes."
Bitcoin está inextricablemente ligado a la filosofía del código abierto. Ampliemos esta idea.
En su obra magna "Mastering Bitcoin", Andreas Antonopoulos reconoce la apertura de la red Bitcoin y cómo la filosofía del código abierto es el pegamento mágico que lo mantiene todo unido:
"Bitcoin es un proyecto de código abierto y el código fuente está disponible bajo una licencia abierta (MIT), libre de descargar y utilizar para cualquier propósito. Código abierto significa más que simplemente libre de usar. También significa que bitcoin es desarrollado por una comunidad abierta de voluntarios."
Esa "comunidad abierta de voluntarios" colabora a través de plataformas para desarrolladores como GitHub. A través de repositorios públicos, organizan el desarrollo del software de forma transparente. El código y su historial están siempre disponibles. Todo el sistema tiene características similares a la cadena de bloques, el libro de contabilidad abierto en el corazón de la red Bitcoin.
El espíritu del código abierto está presente en todo el ecosistema Bitcoin, desde clientes como Bitcoin Core y Bitcoin Knots, hasta mineros DYI como BitAxe, pasando por monederos como Wasabi, Green Wallet o Blink.
Para que los sistemas de código abierto funcionen, deben existir unas normas. La principal es la licencia de distribución que el proyecto decida utilizar. Mientras que algunos podrían ir a por todas y conceder permiso para utilizar el software creado para "cualquier propósito que deseen", OpenSource.com presenta otras opciones:
"Algunas licencias de código abierto -lo que algunos llaman licencias "copyleft"- estipulan que cualquiera que publique un programa de código abierto modificado debe publicar también el código fuente de ese programa junto con él. Además, algunas licencias de código abierto estipulan que cualquiera que modifique y comparta un programa con otros también debe compartir el código fuente de ese programa sin cobrar una tarifa de licencia por ello."
El proceso de desarrollo de los proyectos de código abierto también tiene sus propias reglas. El código es de libre acceso, pero "la base de código principal la mantiene una sola persona o un grupo de personas". ¿Cómo lo consiguen? Citemos de nuevo a Oracle para explicarlo:
"El versionado es la práctica de mantener e iterar sobre el código fuente en beneficio de los esfuerzos de desarrollo colaborativo. Los colaboradores de código abierto utilizan un repositorio central -GitHub, por ejemplo- para cargar y mantener el código fuente. Cuando un desarrollador realiza una contribución al código, se sube a la base de código principal, donde se inspecciona antes de fusionarse con el código fuente principal."
Es sólo una explicación general, por supuesto. Sin embargo, lo creas o no, todo el ecosistema del código abierto funciona básicamente así. Y esa forma colaborativa de funcionar se está apoderando del mundo.
Nada es perfecto. Aunque el código abierto puede impulsar un proyecto y conseguir que muchos desarrolladores de todo el mundo lo aborden desde la mayoría de los ángulos posibles, hay puntos ciegos. Vayamos a "The WIRED Guide to Open Source Software" para conocer una historia real que te pondrá los pelos de punta:
"En 2014, investigadores de seguridad revelaron graves vulnerabilidades en dos proyectos cruciales de código abierto: OpenSSL y Bash, que forman parte de muchos de los principales sistemas operativos. Ningún software está libre de posibles problemas de seguridad, pero el hecho de que estos problemas pasaran desapercibidos durante tanto tiempo puso de manifiesto un gran problema para el código abierto: Muchos proyectos de código abierto de gran renombre dependen de componentes de código abierto menos conocidos gestionados por voluntarios que tienen poco tiempo para solucionar problemas y carecen de dinero para contratar auditores de seguridad."
Sin embargo, ¿es un riesgo en Bitcoin? Potencialmente. Manténgase alerta. No confíe, verifique.
Puede consultar la pila de código abierto de Blink aquí
Empieza a recibir y enviar bitcoins ahora