Llevo 5 meses aprendiendo Solidity: Desplegué mi primer dApp en Sepolia (solo 2 recursos valieron la pena) 💻

Llevo 5 meses inmerso en Solidity y el ecosistema Web3. La verdad, me encontré con una cantidad brutal de ruido, tutoriales desactualizados y "gurús" que solo venden humo. Perdí semanas intentando entender conceptos básicos con recursos que, en lugar de aclarar, confundían aún más.

Finalmente, logré desplegar mi primera dApp en Sepolia. El camino fue arduo y, para ser franco, solo un par de recursos valieron la inversión de mi tiempo. Comparto mi experiencia para que no tropieces con las mismas piedras y puedas enfocarte en lo que realmente funciona.

Recursos que realmente funcionaron

  • El curso de Patrick Collins en FreeCodeCamp (solidity-course-fcc): Invertí dos meses en él. Su enfoque en Hardhat, testing riguroso con Waffle, y la integración completa con un frontend fue crucial. Cubre desde ERC-20 hasta oráculos, dándote una visión 360 del desarrollo.
  • La documentación oficial de Solidity y Ethers.js: Suena obvio, pero la verdad está en la fuente. Para entender el gas model o cómo manejar Events de manera eficiente, no hay atajos. La usé no para memorizar, sino para consultar problemas específicos y verificar comportamientos.

El stack que usé para desplegar

  • Hardhat: Lo elegí por su facilidad de configuración y su Hardhat Network para desarrollo local, que simula la EVM. Sus scripts de despliegue son claros y el plugin de verificación de contratos es un salvavidas.
  • Ethers.js (v5): Es mi librería preferida para interactuar con contratos desde el frontend. Su API es intuitiva para conectar la wallet (Metamask), enviar transacciones firmadas y leer datos on-chain de forma eficiente.
  • React + Vite: Como framework frontend. Vite para un setup rápido del entorno de desarrollo. La integración con Ethers.js es muy sencilla, permitiéndome enfocarme en la lógica de la dApp.
  • Alchemy (RPC): Utilicé su plan gratuito para obtener un un endpoint estable en la red Sepolia. Fundamental para desplegar y testear la interacción del frontend con el contrato real.

Errores que me costaron horas (y cómo los resolví)

  • Gas demasiado bajo para el despliegue o transacciones: La transacción fallaba silenciosamente en Sepolia o en la red local. Solución: Aprender a usar gasLimit y gasPrice correctamente en hardhat.config.js o en las llamadas de Ethers.js. Herramientas como Tenderly o Etherscan son clave para debuggear las fallas.
  • Conexión fallida entre frontend y Metamask: A menudo, olvidaba verificar si window.ethereum existía o si el usuario había aprobado la conexión inicial. Solución: Un useEffect robusto en React que maneje el estado de conexión y los errores de usuario.
  • Fallos en el testeo por dependencias desactualizadas o incompatibles: Mi package.json era un campo de minas. Solución: Mantener las dependencias al día con npm-check-updates y fijar versiones mayores para evitar rupturas inesperadas.
  • Entender los modificadores de visibilidad (public, external, internal, private): Confundirlos generaba vulnerabilidades de seguridad o funciones inaccesibles. Dediqué tiempo a auditar contratos de ejemplo para internalizar su uso correcto.

Seré honesto: la curva de aprendizaje de Web3, especialmente Solidity, es empinada y frustrante. No vas a convertirte en un experto en dos semanas ni a "crear el próximo Ethereum" en un mes. Pero sí puedes construir dApps funcionales si dedicas tiempo a entender los fundamentos, persigues los errores sin rendirte y te enfocas en el testing. La mayor frustración es la falta de feedback claro en los errores de la EVM, obligándote a depurar con paciencia.

Si estás debuggeando tu primera dApp o te sientes perdido con la documentación, r/EstudiaCripto es para eso—aquí hablamos de código real y soluciones técnicas, no de especulación. ¿Qué herramientas o trucos les han servido más para optimizar su tiempo de aprendizaje?

Posted May 28, 2026, 5:19 PM UTC

10
Loading comments…