🎯 Resumen Ejecutivo
Con casi 20 años de experiencia en ingeniería de software, decidí dar un giro radical: dominar el ecosistema Blockchain y Web3 desde cero. El resultado: 8 proyectos open-source que abarcan desde tiendas online con moneda propia hasta programación dentro del kernel de Linux. Este artículo es la retrospectiva técnica de ese viaje, con enlaces al código fuente de cada proyecto.
Un Año Construyendo en Web3
El Máster en Blockchain y Web3 de CodeCrypto Academy fue un año intenso de proyectos prácticos que cubrieron el stack completo del ecosistema descentralizado: desde smart contracts Solidity hasta programación de kernel Linux con eBPF.
Esta es la retrospectiva de los proyectos más importantes que desarrollé durante el máster.
🗺️ La Ruta de Aprendizaje
El máster siguió una progresión lógica, de las bases al stack completo:
flowchart LR
A[Ethereum Basics] --> B[Solidity]
B --> C[Foundry]
C --> D[Full-Stack Web3]
D --> E[DeFi / Stablecoins]
E --> F[DAOs / Gobernanza]
F --> G[Rust]
G --> H[API REST]
H --> I[eBPF / Linux Kernel]
style A fill:#1a1a2e,stroke:#00f2ff,stroke-width:2px,color:#fff
style I fill:#1a1a2e,stroke:#00ff88,stroke-width:2px,color:#fffCada fase construyó sobre la anterior, creando una base sólida que permitió abordar proyectos cada vez más complejos.
🚀 Los Proyectos
1️⃣ 🔗 SupplyChainTracker2
Primer proyecto full-stack Web3. Trazabilidad de dispositivos educativos (netbooks) en la blockchain EVM con control de acceso RBAC, Foundry y Wagmi.
El problema que resuelve: Una escuela necesita rastrear la distribución y ubicación de netbooks a estudiantes, garantizando que el registro sea inmutable y auditable.
Stack: Solidity · Foundry · React · Wagmi v2 · Anvil
Archivos clave del repositorio:
contracts/SupplyChainTracker.sol- Contrato principal con lógica de trazabilidad y RBACtest/SupplyChainTracker.t.sol- Tests exhaustivos con Foundryfrontend/src/- Interfaz React con Wagmi para interacción on-chain
2️⃣ 📄 DocumentSignStorage
Registro notarial descentralizado. Permite firmar y registrar la existencia de cualquier documento usando hash Keccak-256 y firmas EIP-712, sin subir el archivo a la blockchain.
El problema que resuelve: ¿Cómo demostrar que un documento existía en una fecha determinada sin exponer su contenido? La solución usa criptografía para registrar solo la "huella digital" del documento.
flowchart LR
A[Documento Original] --> B[Hash Keccak-256]
B --> C[Firma EIP-712]
C --> D[Transacción On-Chain]
D --> E[Registro Inmutable]
F[Verificación] --> G[Calcular Hash]
G --> H{¿Coincide?}
H -->|Sí| I[✅ Documento Válido]
H -->|No| J[❌ Documento Modificado]
style A fill:#1a1a2e,stroke:#00f2ff,stroke-width:2px,color:#fff
style E fill:#1a1a2e,stroke:#00ff88,stroke-width:2px,color:#fff
style I fill:#1a1a2e,stroke:#00ff88,stroke-width:2px,color:#fff
style J fill:#1a1a2e,stroke:#ff0066,stroke-width:2px,color:#fffStack: Solidity · EIP-712 · Foundry · Next.js 16 · Ethers.js v6
Archivos clave del repositorio:
contracts/DocumentSignStorage.sol- Contrato de registro con firmas EIP-712web/app/- Frontend Next.js para firma y verificación
3️⃣ 🛒 Euro-Ecommerce
E-commerce descentralizado con stablecoin propia. Ecosistema completo con token EURT (ERC-20, 6 decimales), on-ramp vía Stripe, contratos modulares y dApps de cliente y admin.
El problema que resuelve: Integrar pagos tradicionales (tarjetas de crédito) con blockchain. El usuario paga con Stripe y recibe tokens EURT que usa para comprar en la tienda on-chain.
graph TB
subgraph Smart Contracts
SC[sc-ecommerce]
ST[stablecoin/sc/EURT.sol]
end
subgraph Web Apps
WC[web-customer]
WA[web-admin]
end
subgraph External Services
S[Stripe Payments]
end
S -->|On-ramp Fiat| WC
WC -->|Compra EURT| ST
WC -->|Shopping Cart| SC
WA -->|Gestión| SC
style SC fill:#1a1a2e,stroke:#00f2ff,stroke-width:2px,color:#fff
style ST fill:#1a1a2e,stroke:#00ff88,stroke-width:2px,color:#fff
style S fill:#1a1a2e,stroke:#ff00f2,stroke-width:2px,color:#fffStack: Solidity · ERC-20 · Stripe · Next.js · Wagmi
Archivos clave del repositorio:
stablecoin/sc/EURT.sol- Token ERC-20 con 6 decimales (céntimos de Euro)sc-ecommerce/contracts/- Contratos modulares de la tiendaweb-customer/- dApp del compradorweb-admin/- Dashboard de administración
4️⃣ 🏛️ DAO Governance System
Gobernanza sin gas. Sistema de votación descentralizada con meta-transacciones (EIP-712 + ERC-2771) y un Relayer interno que paga el gas en nombre del votante.
El problema que resuelve: En una DAO tradicional, cada voto cuesta gas en ETH. Esto excluye a participantes sin fondos. Con meta-transacciones, el usuario firma gratis y un servidor intermedio paga el gas.
sequenceDiagram
participant U as Usuario
participant W as Wallet
participant R as Relayer API
participant C as Contrato DAO
U->>W: Firma voto EIP-712 (gratis)
W-->>U: Retorna Signature
U->>R: POST /api/relay {signature}
R->>C: executeMetaTx(signature)
C-->>R: Vote registrado on-chain
R-->>U: 200 OK {txHash}
note over U,C: El usuario nunca paga gasStack: Solidity · ERC-2771 · Foundry · Next.js · Wagmi · Viem · TanStack Query
Archivos clave del repositorio:
contracts/GovernanceToken.sol- Token ERC-20 con delegación de votocontracts/GovernorDAO.sol- Lógica de propuestas y ciclo de vidacontracts/Forwarder.sol- Implementación ERC-2771 para meta-transaccionespackages/web/src/- Frontend Next.js con dashboard en tiempo real
5️⃣ 🦀 Northwind con Rust/Rocket
API REST en Rust. Caso de estudio full-stack con el framework Rocket y SQLx (queries validadas en compile-time) conectado a MariaDB.
El problema que resuelve: Las consultas SQL en aplicaciones web son una fuente común de bugs. Con SQLx, el compilador de Rust valida que las queries existan en la base de datos antes de compilar.
Stack: Rust · Rocket 0.5 · SQLx · MariaDB · Next.js
Archivos clave del repositorio:
src/- Código Rust con Rocket y SQLxmigrations/- Migraciones de base de datos
6️⃣ ⚡ eBPF Blockchain Node
El proyecto más experimental. Un nodo P2P que usa eBPF con XDP (eXpress Data Path) para interceptar y procesar paquetes de red a nivel de kernel Linux, implementado en Rust con el framework Aya.
El problema que resuelve: ¿Es posible ejecutar lógica blockchain directamente en el kernel? Este experimento demuestra que sí, interceptando paquetes de red antes de que lleguen al stack IP tradicional.
flowchart TD
NIC[📡 Network Interface Card] --> XDP[⚡ XDP Hook]
XDP -->|eBPF Program| K[🔧 Kernel Space]
K -->|Aya Maps| U[💻 User Space]
U -->|Rust App| P2P[🌐 P2P Node Logic]
P2P -->|Broadcast| NIC
subgraph Kernel
XDP
K
end
subgraph User Space
U
P2P
end
style NIC fill:#1a1a2e,stroke:#00f2ff,stroke-width:2px,color:#fff
style XDP fill:#1a1a2e,stroke:#ff00f2,stroke-width:2px,color:#fff
style P2P fill:#1a1a2e,stroke:#00ff88,stroke-width:2px,color:#fffStack: Rust · eBPF · Aya · XDP · LXC · Linux Kernel
Archivos clave del repositorio:
rust/ebpf-node/src/- Programa eBPF compilado para kernelansible/- Playbooks Ansible para despliegue automatizadomonitoring/- Prometheus + Grafana para observabilidad
📊 Tecnologías Dominadas
Durante el master profundicé en todo este ecosistema:
| Categoría | Tecnologías | Proyectos Aplicados |
|---|---|---|
| Smart Contracts | Solidity, Foundry, Hardhat, OpenZeppelin | Todos los proyectos Web3 |
| Web3 Frontend | Wagmi v2, Viem, Ethers.js, RainbowKit | DAO, Ecommerce, SupplyChain |
| Backend | Rust (Rocket, sqlx), Node.js, Next.js | Northwind, Relayer DAO |
| Infraestructura | Anvil, LXC, Docker, Linux, Ansible | eBPF Node, Monitoring |
| Criptografía | EIP-712, ERC-2771, Keccak-256, ECDSA | DocumentSign, DAO |
| Kernel Linux | eBPF, XDP, Aya framework | eBPF Blockchain Node |
🧠 Lo que Más Me Marcó
Si tuviera que elegir los tres aprendizajes más valiosos del año:
1. El borrow checker de Rust enseña a pensar en ownership
Es frustrante al principio, pero los errores que previene son bugs reales en producción. Data races, use-after-free, double-free: el compilador los detecta antes de que existan.
2. El estado en blockchain es radicalmente diferente
No hay transacciones rollback "gratis", todo tiene costo de gas, y la sincronización asíncrona con el UI requiere patrones específicos como optimistic updates y retry logic.
3. eBPF democratiza el kernel
Poder programar el kernel Linux con Rust sin escribir un módulo es un cambio de paradigma. Las posibilidades para observabilidad, seguridad y networking son enormes.
🔮 Próximos Pasos
El ecosistema que más me llama de cara al futuro es Solana: su arquitectura de cuentas paralelas (Sealevel), el uso de Rust como lenguaje nativo de smart contracts (programs) y el throughput cercano a los 50,000 TPS la hacen técnicamente muy interesante.
También quiero profundizar en el uso de LXC + eBPF para construir sistemas de monitoreo de red de alta performance en entornos Linux on-premise.
🔗 Todos los Repositorios
| Proyecto | Repositorio | Stack Principal |
|---|---|---|
| SupplyChainTracker | 87maxi/SupplyChainTracker2 | Solidity + React |
| DocumentSignStorage | 87maxi/documentSignStorage | Solidity + Next.js |
| Euro-Ecommerce | 87maxi/ecommerce | Solidity + Stripe |
| DAO Governance | 87maxi/dao | Solidity + ERC-2771 |
| Northwind API | 87maxi/rocket | Rust + Rocket |
| eBPF Node | 87maxi/ebpf-blockchain | Rust + eBPF |
📊 Tecnologías Dominadas
| Categoría | Tecnologías | Nivel de Dominio | Proyectos Aplicados |
|---|---|---|---|
| Smart Contracts | Solidity ^0.8.24, ERC-20, ERC-721, ERC-2771 | Avanzado | 4 proyectos DeFi/DAO |
| Blockchain | Ethereum, Solana, Anchor Framework | Intermedio-Avanzado | 3 proyectos multi-chain |
| Backend | Rust, Rocket, SQLx, Axum | Avanzado | API REST, eBPF programs |
| Frontend | Next.js 15, React, TypeScript, Wagmi | Avanzado | 4 dApps completas |
| Infraestructura | Docker, LXC, Ansible, LXC | Intermedio | Labs automatizados |
| Observabilidad | Prometheus, Grafana, Cloudflare | Intermedio | Monitoreo en tiempo real |
| Kernel/Linux | eBPF, XDP, Aya Framework | Intermedio | Blockchain node, P2P |
🔗 Recursos y Aprendizaje Continuo
Para quienes estén comenzando su journey en blockchain y deep tech, estos fueron los recursos que más me ayudaron:
- 📖 Rust Book - El mejor recurso gratuito para aprender Rust
- 📖 Solidity Docs - Documentación oficial de Ethereum smart contracts
- 📖 Anchor Framework Book - Guía completa para Solana programs
- 📖 eBPF.io - Portal oficial de eBPF
- 📖 Linux Kernel Documentation - Documentación del kernel Linux
- 🎥 EthGlobal Hackathons - La mejor plataforma para aprender construyendo
- 🎥 Solana Camp - Bootcamp gratuito de Solana
- 🛠️ CodeCrypto Academy - El programa que estructuró mi aprendizaje
💬 ¿Quieres Contribuir?
¿Te interesa blockchain, Rust o eBPF? ¿Tienes proyectos similares o quieres colaborar en algo nuevo? Me encantaría conectar.
🐛 ¿Encontraste un error en algún repositorio? Abre un issue en github.com/87maxi 💡 ¿Tienes ideas para nuevos proyectos? Abre un discussion o contactame directamente 📝 ¿Quieres escribir sobre tus proyectos? Comparte tu artículo y lo incluiré en los enlaces relacionados
Enlaces Relacionados
- 🏛️ DAO Governance: Voting sin Gas Fees — Sistema de gobernanza con meta-transacciones
- 🦀 Memoria y Rendimiento: AccountLoader en Solana RWA — Optimización de memoria con Zero-Copy
- 📊 RWA: Latencia y Costos en EVM vs Solana — Por qué Solana es ideal para tokenización
- ⚡ eBPF Blockchain Node con Rust — Programando el kernel Linux sin drivers
Retrospectiva del Máster en Blockchain y Web3 — CodeCrypto Academy 2025-2026