Graduación

1

Proyectos desarrollados por los estudiantes

Introducción al Ethereum Developer Program

2

¿Cómo convertirse en blockchain developer?

3

¿Qué es el Ethereum Developer Program?

4

Ethereum Developer Program: Plan de Contenido

5

Ethereum Developer Program: Guía de estudio

Semana 1: Importancia del Manejo de Memoria

6

Importancia del Manejo de Memoria

7

Importancia del Manejo de Memoria: Actividades

8

Cómo se almacenan los datos en Ethereum

Semana 2: Web3-react

9

Salto de Web2 a Web3: React

10

Salto de Web2 a Web3: Actividades

11

Web3 Stack

12

¿Qué es Web3-React y cómo usarlo en tu próximo proyecto?

Semana 3: Ethereum Virtual Machine y Criptografía

13

Infraestructura y Funcionamiento de la Ethereum Virtual Machine

14

Fundamentos de Criptografía y EVM

15

Criptografía y Funcionamiento de la Ethereum Virtual Machine: Actividades

Semana 4: Creando tu primer Smart Contract

16

Crea tu primer smart contract

17

Crea tu primer smart contract: Actividades

Semana 5: Solidity

18

Aprendiendo Solidity desde cero

Superando la primera etapa del Ethereum Developer Program

19

RETO: NFT dinámicos con datos Off Chain

Semana 6: Tokens y Tokenización

20

Tokens y Tokenización

Semana 7: Testing Tools y Despliegue

21

Testing Tools y Despliegue: Actividades de la semana

22

Testing Tools y Despliegue

Semana 9: Auditoría y Seguridad de Smart Contracts

23

Auditoría y Seguridad de Smart Contracts

24

Auditoria y Seguridad de Smart Contracts: Resumen y actividades

Semana 10: Integraciones en Web3: Web3.js vs. Ether.js

25

Integraciones en Web3: Web3.js Vs Ether.js

Semana 11: Monetización para Blockchain Developers

26

Monetización para Blockchain Developers

Recursos Adicionales

27

Consideraciones de seguridad para smart contracts

28

Memory vs. Storage en Solidity

Infraestructura y Funcionamiento de la Ethereum Virtual Machine

13/28
Recursos

La Ethereum Virtual Machine es una super computadora descentralizada que permite la ejecución de smart contracts y programas descentralizados sobre su plataforma siendo además la más importante estructura descentralizada que hoy existe.

En esta clase, Ernesto García Ethereum Developer en Open Zeppelin nos ayuda a entender este ecosistema para así, poder prepararnos y comenzar a dar nuestros pasos hacia Full Stack Blockchain Devs construyendo en Web3.

Si surgen dudas y preguntas, en el sistema de comentarios estamos en comunidad para apoyarte.

Aportes 6

Preguntas 0

Ordenar por:

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

o inicia sesión.

Hola comunidad 💚
Para entender esta clase fue muy útil para mi tener en claro estos conceptos, los dejo como aporte:

  • EVM: representación virtualizada de una máquina de ejecución. Puede ser programada diversos lenguajes: GO, Javascript, por ejemplo. Para considerar que la EVM es válida, debe cumplir con las especificaciones del yellow paper (paper técnico) y dar los outputs correctos a las instrucciones. Cada instrucción consume gas.
    A nivel código, la EVM es un loop que va ejecutando las instrucciones dadas.

  • Bytecode: es un tipo de código intermedio que interpreta comandos de un código fuente y los traduce al lenguaje de destino requerido para el hardware respectivo.
    Es siempre parte de un lenguaje de programación y comprende una colección de instrucciones que se utilizan para compilar el código de máquina requerido.

  • Compilar: proceso de transformar un programa informático escrito en un lenguaje de un programa equivalente en otro formato. Un compilador ensambla o construye. Por ejemplo, un compilador puede transformar un lenguaje de alto nivel en un lenguaje legible por la CPU.

  • Opcode: porción de una instrucción de lenguaje de máquina que especifica la operación a ser ejecutada. La EVM usa bytecodes para ejecutar instrucciones en la blockchain de Ethereum.

  • Gas: unidades que consume la EVM conforme la ejecución de instrucciones. Hay minimum gas establecido, que va a variar según las iteraciones de la instrucción. El gas siempre comienza con 21000 unidades de gas para ejecutar la EVM y va agregando unidades de gas hasta finalizar la ejecución de las instrucciones.

Además respecto a la clase, me pareció interesante:

  • gasLimit no es lo mismo que minimumGas: minimumGas es el gas mínimo requerido para iniciar la ejecución de la instrucción, en cambio mi gasLimit es una cantidad limite de gas disponible que se indica en la transacción, para que, en caso de que la ejecución de la transacción supere ese limite, la transacción muera. Es una protección frente a un uso de gas que no se dispuesto a pagar.
    -Programando en Yul, el costo del gas disminuye ligeramente.

Saludos! 🚀

Yo terminé el reto en este repositorio en GitHub. Di mi explicación y al final enlace los recursos que use para completarlo, espero les guste.

Programar sobre EVM es como programar un microcontrolador o un microprocesador.

El comando que se usa para ingresar datos en la EVM:

evm --code 0x363d3d37363df3 --input 0x12 run

El código que compartió el profe para la EVM

evm --code 0x363d3d37363df3 --debug run