馃嚜馃嚫 Desarrollando un paquete de red de trabajo Ouroborus para desarrolladores de JavaScript

:cuba: :es: Traducci贸n de Building a Ouroborus Networking Package for JavaScript Developers publicado en el sitio web Adapulse .

b322a683-45d4-4012-aec8-c8037d738892-800x500

Haskell, el lenguaje de programaci贸n principal de la blockchain de Cardano, es una elecci贸n perfecta para construir infraestructuras cr铆ticas en el sistema financiero moderno. Como lenguaje de programaci贸n funcional, permite a los desarrolladores producir c贸digo fiable, robusto y de alta seguridad. Sin embargo, a pesar de servir de base para los contratos inteligentes de Cardano Plutus y Marlowe, Haskell todav铆a no se encuentra entre los lenguajes m谩s utilizados en el mundo actual del desarrollo de software.

Con el c贸digo tanto on-chain como off-chain del ecosistema de Cardano implementando Haskell, la mayor铆a de los nuevos desarrolladores se sienten limitados debido a la falta de librer铆as para el trabajo en la red en otros lenguajes. Ashish, un operador de stakepool y uno de los desarrolladores detr谩s de Cardanoscan, est谩 buscando construir un paquete de trabajo en la red de Ouroboros, en JavaScript, lo cual permitir谩 a los desarrolladores interactuar con los nodos de Cardano simplemente instalando el paquete NPM.

Ashish, que dirigir谩 un equipo de otros dos desarrolladores para construir el paquete de trabajo en la red en JavaScript, dice que su equipo tiene la experiencia y las habilidades pertinentes para emprender este proyecto. El equipo, ya ha implementado parte de la capa de red dentro del sistema backend personalizado de Cardanoscan.

Descripci贸n general de la librer铆a de trabajo en la red de Ouroboros

El nodo Cardano utiliza una implementaci贸n de miniprotocolos basados en Haskell para comunicarse con otros nodos de la red. Estos protocolos son especificaciones de trabajo en la red de bajo nivel, definidos por IOHK. Si quieres comunicarte con el nodo Cardano directamente sin usar la interfaz de l铆nea de comandos (CLI) de Cardano, puedes usar un paquete de mini-protocolos para trabajo en la red. Ouroboros es una de esas librer铆as/paquetes de trabajo en la red que elimina la dependencia de CLI, d谩ndote as铆 m谩s flexibilidad de desarrollo para consultar los bloques de Cardano, obtener el estado de la red, enviar transacciones al nodo o acceder a los datos on-chain.

La librer铆a para trabajo en la red consta de dos componentes: los miniprotocolos y un analizador de datos. Los miniprotocolos ayudan a comunicarse con el nodo y proporcionan datos codificados CBOR de la blockchain Cardano. El analizador de datos, analizar谩 los datos y los convertir谩 en un objeto JSON que los desarrolladores podr谩n utilizar de forma eficiente.

Trayendo un sinf铆n de posibilidades al ecosistema de Cardano

La librer铆a de trabajo en la red de Ouroboros, basada en JavaScript, permitir谩 a los desarrolladores construir proyectos de cualquier tama帽o en Cardano. Un ejemplo es Cardanoscan, un explorador l铆der de la blockchain Cardano, que implementa esta librer铆a de red de trabajo, como uno de sus componentes principales. Los desarrolladores s贸lo tendr谩n que instalar el paquete npm Ouroboros, y empezar a construir en Cardano con una configuraci贸n m铆nima. Con este paquete, los desarrolladores pueden poner en marcha r谩pidamente herramientas como los exploradores de metadatos de Cardano, los exploradores de pools, los paneles de an谩lisis, el backend de billeteras, y los bots. La creaci贸n de paneles de control de m煤ltiples activos y el seguimiento de las actualizaciones de los pools o de cualquier otro dato on-chain ser谩n una posibilidad, incluso para los nuevos desarrolladores.

Adem谩s de las prestaciones ya mencionadas, la librer铆a tambi茅n le permitir谩 acceder a los datos brutos de CBOR con fines de depuraci贸n. El objetivo de la construcci贸n de este paquete es llevar Cardano a una comunidad de desarrolladores m谩s amplia para que podamos ver el ecosistema crecer d铆a a d铆a.

En su estado actual, el paquete de trabajo en la red s贸lo implementa las caracter铆sticas requeridas por el explorador Cardanoscan, el cual era un proyecto interno del equipo proponente. Con esta propuesta, el equipo quiere construir sobre su trabajo actual y crear una librer铆a de redes de trabajo m谩s madura, mantenible y variada en caracter铆sticas. El plan, es mostrar el trabajo existente y mejorarlo para incluir lo siguiente:

  • Protocolo de sincronizaci贸n de la cadena Chain-Sync (disponible ya una implementaci贸n limitada del protocolo)

  • Protocolo de env铆o de transacciones

  • Protocolo de extracci贸n de bloques

  • Protocolo de consulta del estado local

  • Protocolo Ping-Pong

  • Analizador de datos basado en las especificaciones CDDL

  • Implementaci贸n de MUX (para proporcionar soporte para comunicarse con m煤ltiples miniprotocolos simult谩neamente)

  • Conjunto de pruebas y ejemplos

La implementaci贸n de esta librer铆a de trabajo en la red de c贸digo abierto seguir谩 todas las especificaciones definidas por IOHK para garantizar que mantiene la integridad del protocolo Cardano. Adem谩s, el equipo tambi茅n realizar谩 la validaci贸n del hash de los bloques como parte de las suites de prueba. Desde el punto de vista del desarrollo, la construcci贸n de las caracter铆sticas de la librer铆a adoptar谩 un enfoque funcional, pero habr谩 m茅todos f谩ciles de consumir como una API para los usuarios finales (desarrolladores).

Presupuesto y plazos del proyecto

El proyecto se centrar谩 en aprovechar la implementaci贸n ya disponible del protocolo, que tiene caracter铆sticas limitadas. Tal y como se mencion贸, el paquete a煤n no est谩 avanzado, por lo que Ashish y el equipo tendr谩n que construir un paquete Nodejs de alto rendimiento con todos las caracter铆sticas listadas anteriormente. Ser谩 necesario realizar muchas pruebas manuales y trabajar con los datos on-chain, para garantizar que el paquete funcione de forma eficiente y se adhiere a las especificaciones del protocolo definidas por la IOHK.

Seg煤n las mentes que est谩n detr谩s de este proyecto, les llevar铆a entre tres y cuatro meses entregar la librer铆a para la red de trabajo, con dos desarrolladores trabajando en el proyecto a tiempo completo. Por ello, el equipo solicita una financiaci贸n total de 80.000 d贸lares para hacer realidad el proyecto de la librer铆a de red de trabajo Ouroboros. De esta cantidad, 77.000 d贸lares se utilizar谩n como salario para dos desarrolladores a tiempo completo durante el periodo de desarrollo. El equipo tambi茅n gastar谩 2.000 d贸lares en costes de m谩quinas virtuales en la nube (Relay en la red de pruebas, Relay en la red principal y nodo para pruebas/desarrollo). Los 1.000 d贸lares restantes se destinar谩n a otros gastos de infraestructura y miscel谩neas.

Reflexiones finales

Javascript es uno de los lenguajes de programaci贸n m谩s utilizados y con un nivel de dificultad de entrada bajo. Tener un paquete de JavaScript que permita a los desarrolladores construir y desarrollar sobre Cardano impulsar谩 significativamente una nueva familia de proyectos y herramientas alrededor de nuestro ecosistema.

Para obtener m谩s informaci贸n sobre la librer铆a de red de trabajo Ouroboros para JavaScript, su hoja de ruta de implementaci贸n o cualquier otra cuesti贸n relacionada con el proyecto, consulte la propuesta de proyecto del ecosistema de desarrolladores del Fund 4 en IdeaScale

2 Likes

Hola buen d铆a me gusta mucho lo que esta pasando en cardano y tengo un proyecto que me gustar铆a realizar en este ecosistema creando un token nativo 鈥 me gustar铆a saber si hay gente que quiera participar y ser parte de este gran proyecto :pray:

2 Likes

Hola @MrDanny_Tv_Oficial, bienvenido al foro.

Yo comenzar铆a buscando informaci贸n en la categor铆a de Desarrollo (est谩 en ingl茅s), all铆 se pueden encontrar desarrolladores que quiz谩s est茅n interesados en aunar fuerzas. No estar铆a de m谩s echar un vistazo dentro de esta, a la secci贸n de Token Nativos. En caso de necesitar la ayuda de un SPO, este topic y el grupo en espa帽ol para SPO en Telegram pueden servir como inicio.

Saludos, N谩poles

2 Likes