Ethereum Developer Program: plan de estudio

1

Qué es el Ethereum Developer Program

2

¿Cómo convertirse en blockchain developer?

3

Ethereum Developer Program: plan de estudio

Ethereum Fundamentals

4

Importancia del Manejo de Memoria en desarrollo Web3

5

Importancia del Manejo de Memoria: Actividades

6

Cómo se almacenan los datos en Ethereum

Week 1: Kick off the program

7

Sesión de Bienvenida al Ethereum Developer Program

8

Configuración del entorno con Hardhat y contratos inteligentes

Week 2: Smart Contracts: Upgradables with Oracles

9

Smart Contracts with OpenZeppelin and Oracles

10

Aplicación de oráculos en un contrato inteligente con Chainlink

Week 3: Ethereum Virtual Machine

11

Criptografía y Ethereum Virtual Machine

Week 4: Mastering Solidity

12

Mastering Solidity: Events and Security

13

Memory vs. Storage en Solidity

14

Consideraciones de seguridad para smart contracts

Week 5: QA Solidity

15

Sesión de proyectos de ejemplo con Angela Ocando

Week 6: Descentralized applications

16

Introducción al desarrollo de aplicaciones descentralizadas

Week 7: Fleek and Pocket

17

Infraestructura Blockchain: Pocket Network

Week 8: MakerDAO

18

MakerDAO: construir organizaciones descentralizadas

Week 9: Push Notifications

19

Push Protocol: sobrepasando los límites de usabilidad en Web3

Week 10: IPFS and ENS

20

Introducción a Zero Knowledge Proof con Starkware

Week 11: layer 2

21

Infraestructura Web3 con Lens Protocol

Week 12: Modular Blockchains

22

Capa de ejecución Modular con Fuel Labs

Week 13: Zero Knowledge

23

Layer 2 en Blockchain: Lo que necesitas saber

Week 14: Community projects

24

Talent Fest: Presentación de proyectos en Blockchain

Contenido complementario

25

Tokens y Tokenización

26

Monetización para Blockchain Developers

Quiz: Contenido complementario

Convierte tus certificados en títulos universitarios en USA

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

16 Días
6 Hrs
51 Min
41 Seg

¿Cómo convertirse en blockchain developer?

2/26

Lectura

Web3 es una visión de internet en la que los usuarios tienen más opciones, control y propiedad. Es un nuevo paradigma tecnológico y social en el que los datos pueden registrarse en cadenas de bloques -blockchain-, tokenizarse o administrarse y accederse a ellos en redes descentralizadas, de código abierto y de persona a persona.

El movimiento cripto está atrayendo a muchos desarrolladores, y es fácil entender por qué. Los salarios de los desarrolladores de web3 son atractivos y la oportunidad de generar un impacto es incomparable.

¿Te gustaría ser parte? Este post te ayudará a entender el panorama que existe.

🛣 Camino hacia blockchain developer

Puedes tomar diferentes caminos para convertirte en un blockchain developer y, por lo tanto, no hay una secuencia exacta de pasos a seguir. También hay mucha información para digerir, así que para evitar abrumarte, es mejor tomar las cosas poco a poco.

👇🏼 Así es como se ve el camino básico.

web3-roadmap.png
Fuente imagen: chainsafe

En web3 no hay barrera de entrada. Cualquier persona motivada puede aprender, sin embargo, debe tenerse en cuenta que una buena aptitud matemática, habilidades analíticas y la capacidad para resolver problemas de manera creativa pueden brindarte una ventaja.

Para trabajar en el espacio, necesitarás saber sobre estructuras de datos y algoritmos. Debes conocer los conceptos básicos de programación y tecnología blockchain.

🟢 Fundamentos de web3 que debes conocer

Blockchain

El término “blockchain” abarca una amplia gama de innovaciones relacionadas que afectan a muchos aspectos diferentes de la sociedad. Pero en resumen, una blockchain o cadena de bloques es una base de datos descentralizada gobernada por sus usuarios.

Bitcoin es la primera y más famosa blockchain, por lo que leer el whitepaper de Bitcoin es el primer paso que puedes tomar para aprender más sobre la tecnología.

Después de eso, debes conocer Ethereum, la cadena de bloques programable.

Criptografía

Dado que las blockchains funcionan con un modelo de red descentralizado de persona a persona; no hay un solo servidor o nodo. En este contexto, un nodo es una pieza de software en una computadora conectada a una red que mantiene una copia de los cambios actuales e históricos a un registro distribuido.

Si bien los nodos de la blockchain no necesariamente deben confiar entre sí, el sistema debe salvaguardar la información de las transacciones. Aquí entra la criptografía, un ingrediente esencial para proteger la información de las transacciones y garantizar la coherencia de los datos.

Blockchain se basa en la criptografía, por lo que vale la pena familiarizarse con algunos conceptos fundamentales. Esto significa conocer los conceptos básicos de la criptografía asimétrica y sus aplicaciones, incluidos los algoritmos de firma, la generación de pares de claves públicas y privadas, etc.

Tokenomics

Tokenomics es otro aspecto importante a comprender, ya que muchas aplicaciones en web3 funcionan con tokens. Y para comprenderlo, primero hay que entender cómo funciona el dinero.

Los tokens lo que logran es generar un sistema de incentivos entre los usuarios para beneficia tanto a ellos como a la plataforma.

🔀 Elige tu camino

No existe un enfoque único para convertirse en un desarrollador de blockchain. Puedes convertirte en desarrollador de backend, desarrollador de frontend o ambos. También puedes trabajar en la capa de protocolo o centrarte únicamente en contratos inteligentes.

En este programa, te impulsaremos a convertirte en Full Stack Blockchain Developer.

web3-path.png
Fuente imagen: chainsafe

Por supuesto, dentro de cada categoría, hay mucha variación. Puedes trabajar en la investigación de blockchain, el desarrollo de especificaciones, algoritmos, diseño de tokenomics o herramientas. Podrías centrarte en entornos de desarrollo integrados, frameworks, librerías y middleware, o pasar tu tiempo en la capa de aplicación, trabajando en contratos inteligentes, desarrollo de UX/UI, diseño, etc.

Para la mayoría, crear una aplicación será el camino de menor resistencia. También podrías decidir centrarte exclusivamente en escribir contratos inteligentes y omitir todo el aprendizaje requerido para ser un desarrollador full-stack.

Trabajar en la capa de protocolo implica comprender las especificaciones de una blockchain determinada y contribuir a una implementación. La infraestructura es una pieza crítica de cualquier red descentralizada. De hecho, sin desarrolladores de protocolo (core), no hay cadena de bloques.

0. Lenguajes de programación

Independientemente de la dirección que elijas, deberás aprender algunos de los lenguajes de programación utilizados en web3. Hay muchas opciones, pero algunas de las más populares incluyen Solidity, JavaScript, Python, Go y Rust.

También es importante recordar que convertirse en desarrollador web3 no significa dejar todo lo que había antes. En este sentido, los tres grandes son HTML, CSS y JavaScript.

Más allá de eso, decida si desea centrarse en la parte backend o frontend. Si te especializas en el desarrollo frontend, querrás aprender librerías y frameworks como React, Vue o Angular.

Estos son los fundamentos necesarios para construir el frontend de una aplicación descentralizada (Dapp). Las Dapps son aplicaciones creadas en una blockchain con un frontend estándar y un backend en la cadena de bloques.

Si deseas concentrarte en el backend, querrás aprender Solidity, Rust o Go.

1. Desarrollador de Dapps

Frontend

El frontend de una Dapp está construido con algunos de los marcos mencionados anteriormente. Para comprender cómo interactúan el frontend y el backend de una Dapp debes comprender el desarrollo frontend tradicional y los principios básicos del desarrollo backend estándar.

Tendrás que decidir en qué ecosistema quieres enfocarte. Cada ecosistema tiene características únicas. Ethereum tiene la mayor actividad de desarrolladores y las Dapps más grandes existentes.

Para comenzar con Ethereum, seguramente tendrás que usar un ambiente de desarrollo como Hardhat o Truffle. Esto simplificará el proceso y te ayudará a evitar errores comunes al crear tus propios proyectos.

Backend

El backend de una Dapp no es lo mismo que un backend “estándar”. La primera diferencia es que con una Dapp, la blockchain es la fuente principal del estado de los datos almacenados frente a las bases de datos o el almacenamiento de objetos que suelen utilizar los backends estándar.

Si bien los objetivos técnicos son similares, generalmente no se recomienda sumergirse en el backend sin tener una orientación firme en el desarrollo web tradicional.

Sin embargo, si este es el camino que deseas seguir, aprender el desarrollo de backend significará conectar bases de datos, crear sus propias API REST, construir la lógica comercial que impulsará sus herramientas, etc.

Para el backend, esta es tu lista de tareas pendientes: aprende Node, Express, HTTP, cómo desarrollar APIs y comienza a implementar aplicaciones.

2. Desarrollador de smart contracts

Los smart contracts o contratos inteligentes son scripts programables implementados en una blockchain para ejecutar operaciones lógicas en una máquina virtual.

Escritos en Solidity, Vyper, DAML u otro lenguaje, los contratos inteligentes permiten que las aplicaciones descentralizadas aprovechen la seguridad de blockchain y la criptografía, la integridad de los datos históricos y la confiabilidad del uso no autorizado, al mismo tiempo que son accesibles abiertamente para cualquier persona para la verificación y el análisis de datos.

Solidity es el lenguaje de contratos inteligentes más popular. Solidity se escribe y compila estáticamente, lo que significa que debe generar un binario antes de ejecutarlo. Solidity tiene una excelente documentación y es similar a JavaScript en términos del tiempo requerido para aprender.

Antes de escribir cualquier código, debes configurar tu entorno de desarrollo. Esto significa que Remix-IDE, una herramienta popular para escribir, compilar e implementar contratos, o herramientas como Hardhat y Brownie también pueden ser útiles cuando se necesita un entorno de desarrollo local.

Un gran recurso de introducción al desarrollo de smart contract es el “Speed Run Ethereum”.

También vale la pena mencionar que no es necesario hacer código desde cero al principio. Tendrás que aprender cómo cubrir necesidades específicas e implementar reglas automatizadas adecuadas con el tiempo. Pero hay muchas plantillas de contratos inteligentes que los principiantes pueden usar. OpenZeppelin es un lugar para encontrar librerías de contratos inteligentes probadas.

3. Desarrollador de protocolo

El desarrollo de protocolos implica la programación de las reglas que rigen cómo debe comportarse una blockchain en particular.

Los protocolos generalmente se organizan en capas, por ejemplo, las capas OSI para redes. Esto permite un fácil acoplamiento y la capacidad de desarrollar las capas al mismo tiempo.

Este enfoque en capas también se ha adoptado en muchos sistemas de cadenas de bloques populares. Esto incluye cadenas de bloques de capa uno (L1), las redes base para el componente más esencial de una cadena de bloques: el consenso, que sirve como red base para el sistema y proporciona cosas como garantías de seguridad.

Y la capa dos (L2): protocolos secundarios integrados en una L1 que ayudan con aspectos como el escalado, las tarifas y la velocidad de las transacciones. Los L2 se construyen sobre una red L1 para heredar las garantías de seguridad de la capa base mientras se mueve el cómputo pesado a otra cadena.

Algunas cadenas de bloques también tienen el concepto de capa 0, por ejemplo, Polkadot. En otros casos, la capa cero también puede referirse al consenso social.

Para comenzar como desarrollador de protocolos, debes identificar a qué ecosistema deseas contribuir y en qué capa. Un buen primer paso es mirar las próximas propuestas de especificaciones de una cadena de bloques elegida para comprender hacia dónde se dirige el desarrollo.

Estos detalles generalmente se especifican en “yellow papers” o documentos de especificaciones. Algunos ejemplos son Polkadot, Ethereum y Filecoin.

Dado que las cadenas de bloques más populares son de código abierto, también es posible mirar el código para tener una idea de cómo se implementa el protocolo. Tómate un tiempo para investigar y verificar los problemas abiertos y cerrados contra las implementaciones del protocolo.

Ten en cuenta que el desarrollo de protocolos también incluye la infraestructura construida alrededor de las diferentes capas, por ejemplo, puentes (como ChainBridge) o exploradores de bloques como el explorador de cadenas Beacon. Esta es otra ruta de desarrollo que puedes seguir.


Aportes 2

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Material muy valioso, este programa está muy bien estructurado y con objetivos claros.

“[*How to become a web3 developer*](https://blog.chainsafe.io/how-to-become-a-web3-developer-8849ab20b686)*”.* el link no funciona