Localhost es el mejor amigo de los desarrolladores en formación, te acompaña a dar los primeros pasos, a construir las ideas, probando varias veces hasta que ya estás listo para el siguiente nivel: desplegar, dándole vida a esa idea y permitiendo que usuarios reales puedan usar lo que has construido.

En web2 tenemos muchas opciones para hacer el despliegue como Github Pages, Netlify, entre otras, que también nos pueden servir cuando lanzamos nuestras dApps, sin embargo, dentro del desarrollo Blockchain tenemos una variable fundamental para hacer el despliegue, y ésta es en qué red estará nuestro contrato inteligente.

La elección de la red en la cual desplegarás tu smart contract es muy importante, tanto que deberías tomarla antes de si quiera escribir el código, por eso, vamos a adentrarnos en las opciones que tenemos para este despliegue, con enfoque en el ecosistema de Ethereum, para que puedas escribir tu contrato inteligente con Solidity, tomando en cuenta los pros y contras de cada una.

Testnet

Una testnet es una red de pruebas que los desarrolladores podemos utilizar para probar nuestras aplicaciones y contratos inteligentes antes de lanzarlos en la red principal (mainnet). Digamos que es un paso más allá del localhost, ya que también podríamos considerarlo un “entrenamiento” antes del debut de nuestra aplicación descentralizada.

  • Ventajas: Desarrollar en una red de prueba implican el uso de tokens de prueba, los cuales te darán la oportunidad de experimentar con ellos sin riesgo a perder dinero o tokens reales. De esta forma, podrás ver cómo es la dinámica de los gas fees para hacer el despliegue y uso de tu dApp, incluso empresas que ya han lanzado sus aplicaciones usan continuamente estas redes para probar nuevas funciones antes de lanzarlas a mainnet.

  • Desventajas: Aunque pueden ser un buen entrenamiento, las redes de prueba no siempre te darán una muestra exacta de cómo sería desarrollar en una mainnet, ya que los nodos de éstas no suelen ser tan robustos o distribuidos como en la red principal, por lo que puede funcionar de forma diferente en cuanto a costos y tiempo para las transacciones.

Es importante tomar en cuenta que, al contrario de localhost, donde con herramientas como Hardhat podemos crear wallets con una cantidad casi ilimitada de tokens para desarrollar, en Testnet tendrás que fondear tu wallet para probar tu contrato, y lo mismo pasará con cualquier persona que quieras que pruebe tu dApp.

Una de las más conocidas es Goerli, una red de prueba de Ethereum, que continúa siendo una de las más usadas por los desarrolladores, según el último reporte de Alchemy para Devs, lo cual nos demuestra que las Testnet siguen (y probablemente seguirán siendo) una de las herramientas más poderosas para desarrollar soluciones web3.

Ethereum Mainnet

Ahora, si tu objetivo es lanzar tu dApp al público, es recomendable comenzar pensando cuál es la red con mayor adopción, la primera que puede venir a la mente es la cadena principal de Ethereum o Ethereum mainnet, que de hecho cuenta con 75 millones de direcciones que poseen por lo menos 0,01 ETH.

  • Ventajas: Por su adopción, tiene una mayor cantidad de usuarios, por lo que es probable que más personas puedan usar tu dApp ya que tienen más familiaridad con la cadena principal que con otras. Asimismo, mainnet puede brindarle a tu smart contract una mayor seguridad y descentralización.

  • Desventajas: Lamentablemente, la cadena principal de Ethereum es reconocida por sus altos gas fees, por lo que desplegar tu contrato inteligente puede ser bastante costoso, especialmente en momentos de alta demanda en la red. Adicionalmente, tiene limitaciones de escalabilidad, por lo que si estás construyendo una aplicación que esperas que sea utilizada por una gran cantidad de personas, es posible que mainnet no sea la mejor opción.

Aún con las desventajas de Ethereum, sigue siendo una de las más utilizadas por la mayoría de protocolos y plataformas, creciendo anualmente la cantidad de contratos inteligentes desplegados en esta red:

Layer 2

Las desventajas de Ethereum mainnet están siendo resueltas con las Layer 2 o segundas capas construidas sobre la cadena principal, que se encargan de realizar la mayor parte del trabajo dentro de las transacciones y utilizan la cadena principal para mantener la seguridad.

  • Ventajas: Permiten crear dApps más rápidas y escalables, que pueden procesar una gran cantidad de transacciones fuera de la cadena principal, para luego empaquetar varias en un grupo para que sean enviadas y procesadas por la Ethereum mainnet. Otro beneficio es que implican costos mucho menores, por lo que desplegar tus contratos inteligentes y que tus usuarios hagan transacciones tendrá costos mucho más bajos que en la cadena principal de Ethereum.

  • Desventajas: El desarrollo podría ser un poco más complejo que en Ethereum mainnet, debido a que algunas capas 2 implican el uso de diferentes tecnologías, por lo que debes leer la documentación para verificar qué requerimientos necesitarás para construir en Layer 2. Por otro lado, desplegar en segunda capa puede implicar algunos riesgos de centralización, debido a que algunas de estas redes centralizan ciertos aspectos de la red para mejorar la velocidad de las transacciones.

Recientemente se ha visto un incremento anual de los contratos desplegados en redes Capa 2 como Arbitrum, Optimism y Polygon, por lo que podríamos prever que más desarrolladores desplegarán sus dApps en Layer 2, sobre todo porque estas cadenas están mejorando constantemente su gobernabilidad y escalabilidad.

Por fortuna, en este punto de la tecnología Blockchain, tenemos varias opciones para escoger en que red queremos desplegar, cada una tiene sus ventajas y desventajas como vimos previamente, por lo que tu elección dependerá de tu objetivo y presupuesto.

Ten en cuenta que la mayoría de protocolos comienzan con alguna red y poco a poco integran más redes con las que el usuario puede usar su dApp, esto para aprovechar las diversas opciones y brindarle al usuario el poder de elegir cuál red le beneficia más, así que decidir una red al inicio no significa casar a tu proyecto con ella para siempre.

Referencias

Hito en Ethereum: ya hay 75 millones de direcciones con ETH

Web3 Developer Report Q1 2023

Ethereum Smart Contracts Deployment Jumped 293% in 2022: Alchemy Developer Report

¡Gracias por leer este artículo! Suscríbete gratis para recibir los futuros artículos directo a tu correo y así apoyar este trabajo 💜