El siguiente es un artículo invitado de Erick de Moura, Cofundador en Descartes.
A pesar de más de una década de evolución, las cadenas de bloques tradicionales siguen lidiando con el proverbial «trilema de la cadena de bloques», que consiste en equilibrar la descentralización, la seguridad y la escalabilidad. Cuanto más grande se vuelve una cadena de bloques (cuantos más usuarios, más aplicaciones descentralizadas, más actividad y transacciones) mayor es la demanda sobre la infraestructura subyacente.
A medida que aumenta la adopción, disminuye la capacidad de la red para manejar la creciente demanda. El resultado: congestión en la red, aumento de las tarifas del gas y demoras en el procesamiento, nada de lo cual refleja la mejor Internet que nos prometieron.
Si bien quienes trabajamos en el ámbito de la cadena de bloques tenemos claro el valor y el potencial de la Web3, aún no hemos llegado a un acuerdo colectivo sobre la forma óptima de diseñarla. Se han propuesto innumerables soluciones, pero pocas han echado raíces.
Sin embargo, en los últimos 12 meses, hemos visto que el espacio blockchain tiende cada vez más hacia un nuevo paradigma: la modularidad. Mientras que las cadenas monolíticas (como las primeras Ethereum o Solana) se construyen con un conjunto predefinido de opciones de diseño e infraestructura, la infraestructura modular separa las funciones cruciales de la cadena de bloques en módulos separados que se pueden combinar para crear aplicaciones aún más potentes.
Este artículo explora cómo la modularidad representa no solo una actualización técnica sino un replanteamiento estratégico de la infraestructura blockchain, prometiendo un marco más sólido para aplicaciones futuras.
Explorando la tesis de la modularidad
El paso de Ethereum hacia una hoja de ruta centrada en la acumulación de transacciones fue posiblemente el primer gran cambio hacia un marco modular mediante la subcontratación de la ejecución a plataformas de capa 2 como zkSync y Optimism. Fue una admisión de que una cadena de bloques monolítica simplemente no podía optimizar cada capa de sus operaciones, más allá de un cierto umbral, lo que llevó a una importante disociación de una operación crítica de la cadena principal.
Sin embargo, utilizando Capa 2 (cuyo propósito principal es descargar las transacciones de una capa 1) para expandir la capacidad computacional de una cadena de bloques solo nos lleva mucho más lejos. Desplaza el tráfico, pero no lo elimina por completo.
Imaginemos un transbordador sobrecargado con demasiados pasajeros, con el riesgo de zozobrar. Se podría trasladar a varios pasajeros a un remolcador acoplado al buque mayor para aligerar la carga, pero eso no serviría de mucho para solucionar el problema de fondo.
La modularidad de la cadena de bloques amplía esencialmente esta idea. La tesis propone que, en lugar de que una única cadena de bloques se ocupe de todos los aspectos de las operaciones (cuyas principales áreas de enfoque actuales son la ejecución, la liquidación, la disponibilidad de datos y el consenso), estas funciones deberían estar completamente separadas en capas diferenciadas y especializadas que puedan funcionar de forma independiente y, cuando se combinen, puedan dar servicio a una variedad aún mayor de operaciones.
Puede que la modularidad haya surgido como el lema del día en el ámbito de la cadena de bloques recién en los últimos 12 meses, pero algunas soluciones modulares ya se han estado desarrollando durante años. Su lema rector es dividir, conquistar y (lo más importante) colaborar. Para funcionar, estas capas deben poder volver a apilarse entre sí, en configuraciones flexibles.
El desafío del desarrollador
Mientras eso sucede a nivel de infraestructura, los desarrolladores responsables de crear aplicaciones descentralizadas en cadena enfrentan un conjunto diferente de desafíos. La realidad es que las rampas de acceso para los desarrolladores son más empinadas de lo que muchos creen. Los nuevos lenguajes de codificación y los entornos de creación desconocidos son solo dos de los obstáculos importantes que enfrentan los desarrolladores al diseñar e implementar aplicaciones descentralizadas.
La mayor restricción es el marco impuesto por la cadena de bloques que un desarrollador elige para desarrollar; es una solución única para todos. Todo funciona en las mismas circunstancias, sujeto a las mismas fluctuaciones del precio del gas y a las mismas limitaciones de rendimiento. Las preocupaciones por la reproducibilidad y la escalabilidad han hecho que los entornos de computación en cadena sean muy restrictivos.
Un desarrollador de DeFi tiene un conjunto de requisitos totalmente diferente para crear su aplicación descentralizada que un desarrollador de juegos. Mientras que uno puede priorizar la seguridad, el otro puede centrarse más en la velocidad. Ambos tendrían que buscar una cadena de bloques con el equilibrio perfecto entre escala, seguridad, velocidad y todas las demás dimensiones críticas para su aplicación. Hay compensaciones y compromisos inherentes que deben sortearse en este proceso de selección.
Esto limita los parámetros y el espacio de diseño en el que un desarrollador puede desarrollar, dificulta el desarrollo complejo de aplicaciones descentralizadas y frena la innovación.
La modularidad elimina este obstáculo y, en cambio, permite a los desarrolladores componer la pila de cadenas de bloques óptima. Pueden integrar diferentes protocolos modulares en cada capa para adaptarse a las necesidades específicas de la aplicación que están desarrollando.
Ejecución: La puerta de entrada del desarrollador
La capa de ejecución es la puerta de entrada más sencilla para que los desarrolladores comiencen a experimentar y desarrollar dentro de un marco modular. A medida que la tecnología avanza, debe resultar más fácil y conveniente para los desarrolladores desarrollar e implementar aplicaciones descentralizadas en cadena. El diseño de herramientas y plataformas que brinden esta facilidad de uso es fundamental para que este marco sea ampliamente adoptado entre los desarrolladores.
La incorporación de herramientas familiares en nuevos entornos de codificación que hayan sido probados, comprobados y confiables puede ayudar a liberar a los desarrolladores de las limitaciones e idiosincrasias impuestas por las cadenas de bloques, es decir, la ausencia de entornos de desarrollo productivos y estables.
Las máquinas virtuales alternativas (alt-VM) introducen una diversidad de sistemas operativos en la infraestructura de blockchain que pueden proporcionar las condiciones necesarias para crear aplicaciones complejas y escalables. Permiten un entorno de desarrollo más rico y versátil que antes no existía en la cadena de bloques, lo que representa un gran avance en el campo de la blockchain.
Rollups También funcionan para permitir a los desarrolladores construir y operar su propia cadena de acumulación o “cadena de aplicaciones”. Al igual que una aplicación que tiene un servidor dedicado, las cadenas de aplicaciones pueden proteger a las aplicaciones descentralizadas creadas sobre ellas de las demandas computacionales de la red más amplia, lo que genera una experiencia más fluida y eficiente.
A través de la capa de ejecución, los desarrolladores pueden crear e implementar mejor las aplicaciones descentralizadas con la mínima fricción posible. Las soluciones efectivas deben ser convenientes y abstraer muchas de las complejidades a las que se enfrentan la mayoría de los desarrolladores de blockchain en la actualidad.
Los beneficios aquí son múltiples. El marco modular introduce una mayor capacidad de personalización y otorga a los desarrolladores flexibilidad y opciones al crear su aplicación descentralizada. Los cálculos son independientes de la cadena de bloques, lo que hace que las aplicaciones descentralizadas sean más portátiles e interoperables entre cadenas. Y con la capa de ejecución adecuada, los desarrolladores pueden crear en un entorno que les resulte familiar, seguro y sólido.
El mapa modular: cómo construir la pila óptima
Si bien nuestra solución es potente, sigue siendo un módulo o una pieza de un mosaico mucho más grande. La modularidad es un esfuerzo colaborativo, donde cada solución desempeña un papel importante; un marcado contraste con el panorama competitivo de suma cero al que muchos de nosotros estamos acostumbrados dentro del espacio blockchain.
El movimiento modular ha estimulado significativamente más innovación y experimentación. Al desacoplar cada capa de la pila de blockchain, los equipos se han dedicado a brindar soluciones hiperenfocadas a nivel de infraestructura, lo que permite una mayor versatilidad a nivel de aplicación, todo en beneficio del usuario final.
En definitiva, la interoperabilidad es el núcleo de la tesis modular. Las aplicaciones del mundo real no pueden existir de forma aislada. Dependen de entornos de ejecución complejos y enriquecidos que invariablemente se construyen sobre un sistema operativo moderno… y eso es lo que hemos diseñado.
En su configuración más simple, un rollup puede interactuar con Ethereum Actúa como la única capa de disponibilidad de datos, consenso y liquidación. Para los desarrolladores que crean aplicaciones ambiciosas que requieren configuraciones más flexibles o personalizadas, un desarrollador puede aprovechar las integraciones con Celestia y EigenDA para la disponibilidad de datos, Espresso Systems para la secuenciación y la implementación en Ethereum, Optimism o Arbitrum.
A medida que más protocolos se integren en cada nivel de la pila, los desarrolladores tendrán aún más opciones para componer la infraestructura subyacente de sus dApps. A medida que se expanda el ecosistema colaborativo de protocolos y soluciones, también lo hará el desarrollo de dApps más complejas e innovadoras, listas para el usuario final.
Un futuro mayor que la suma de sus partes
Es cierto que discutir e iniciar nuevos proyectos modulares de cadenas de bloques es más rápido que el desarrollo y la codificación necesarios para hacer realidad esta visión. Si bien nuestra solución se ha desarrollado durante los últimos seis años, el ecosistema modular en general todavía está en sus inicios. Con el tiempo, la infraestructura y las herramientas modulares se optimizarán cada vez más para que los desarrolladores puedan interactuar con las tecnologías web3 sin las pronunciadas curvas de aprendizaje y los paradigmas competitivos que actualmente actúan como barreras para el progreso.
Se necesitará tiempo, inversión y un esfuerzo sostenido para que cada pieza individual se una y cree un todo mayor que la suma de sus partes. Una vez que lleguemos a ese punto, no solo resolveremos las limitaciones inherentes de las arquitecturas de blockchain anteriores, sino que también prepararemos el terreno para un futuro más dinámico y colaborativo en el desarrollo de blockchain.