paint-brush
Cómo convertirse en un desarrollador Web3por@colina
4,162 lecturas
4,162 lecturas

Cómo convertirse en un desarrollador Web3

por ChainSafe Systems8m2022/06/09
Read on Terminal Reader
Read this story w/o Javascript

Demasiado Largo; Para Leer

Web3 es una visión de Internet en la que los usuarios tienen más opciones, control y propiedad. Es un nuevo paradigma tecnosocial en el que los datos pueden registrarse en cadenas de bloques, tokenizarse o administrarse y accederse a ellos en redes descentralizadas, de código abierto y de igual a igual. Los salarios de los desarrolladores de Web3 son atractivos y la oportunidad de generar un impacto es incomparable. Hemos seleccionado los mejores recursos en una guía de inicio simple e imparcial para convertirse en un desarrollador web3.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail

Coins Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Cómo convertirse en un desarrollador Web3
ChainSafe Systems HackerNoon profile picture

Web3 es una visión de Internet en la que los usuarios tienen más opciones, control y propiedad.

Es un nuevo paradigma tecnosocial en el que los datos pueden registrarse en cadenas de bloques, tokenizarse o administrarse y accederse a ellos en redes descentralizadas, de código abierto y de igual a igual.

El movimiento criptográfico 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. ¿Interesado en unirte?

Hemos seleccionado los mejores recursos en una guía de inicio simple e imparcial. ¡Vamos a sumergirnos!

Fuente: BlockWorks

Hoja de ruta del desarrollador Web3

Puedes tomar diferentes caminos para convertirte en un desarrollador web3 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 sentirse abrumado, es mejor tomar las cosas poco a poco. Así es como se ve el menú básico.

Habilidades de desarrollador Web3 — Fundación

Web3 no requiere permisos: no hay barreras de entrada. Cualquier persona motivada puede aprender a codificar. 

Sin embargo, debe tenerse en cuenta que la aptitud matemática, las habilidades analíticas y la capacidad para resolver problemas de manera creativa pueden brindarle una ventaja.

Para trabajar en el espacio, deberá conocer las estructuras de datos y los algoritmos. Debe conocer los conceptos básicos de programación y tecnología blockchain.

Si eres un principiante absoluto, te recomendamos comenzar con esta Introducción a las Ciencias de la Computación .

Fundamentos del desarrollador Web3

cadena de bloques

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

Si es un novato, aquí hay una gran introducción a Blockchain y un glosario para comprender la terminología. Bitcoin es la primera y más famosa cadena de bloques, por lo que leer el documento técnico de Bitcoin es el primer paso.

También hay buenas explicaciones que hacen que el documento técnico de Bitcoin sea más accesible para los principiantes.

A continuación, deberá obtener una descripción general de Ethereum , la cadena de bloques programable. Para el contexto general, otros buenos lugares para comenzar son canales de YouTube como Andreas Antonoplous o Whiteboard Crypto .

Para profundizar más: tome este curso gratuito de 8 módulos de Patrick McCorry, el primer doctorado del Reino Unido. Graduado en criptomoneda.

Criptografía

Dado que las cadenas de bloques funcionan con un modelo de red descentralizado de igual a igual, 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 sirve una copia de los cambios actuales e históricos a un libro mayor distribuido.

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

Las cadenas de bloques se basan 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. Comience con esta descripción general o sitios como The Joy of Cryptography .

tokenómica

Tokenomics es otro aspecto importante a comprender, ya que muchas aplicaciones en web3 funcionan con tokens. Y para entender la tokenómica, primero hay que entender el dinero. La forma más rápida de hacerlo es leer Una breve historia del dinero .

Fuente: Nakamoto

Ahora, podemos llegar a donde se cruzan el valor y la tecnología: una introducción a la Internet del valor . Para obtener más contexto, consulte Tokenomics 101 , una guía para principiantes sobre finanzas descentralizadas (DeFi), y únala con Why Web3 Matters .

Si bien estos recursos están destinados a ayudar, el pensamiento independiente es fundamental. No confíes únicamente en fuentes secundarias.

En su lugar, descargue MetaMask , únase a una organización autónoma descentralizada (DAO), pruebe Archivos y explore a través de plataformas como Rabbit Hole . Usa la tecnología y forma tus propias opiniones.

Elija su ruta de desarrollo de Blockchain

No existe un enfoque único para convertirse en un desarrollador de blockchain. Puede convertirse en desarrollador de back-end, desarrollador de front-end o ambos. También puede trabajar en la capa de protocolo o centrarse únicamente en contratos inteligentes.

Por supuesto, dentro de cada categoría, hay mucha variación. Puede trabajar en la investigación de blockchain, el desarrollo de especificaciones, algoritmos, diseño de tokenómica o herramientas.

Podría centrarse en entornos de desarrollo integrados, marcos, bibliotecas y middleware, o pasar su 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ía decidir centrarse exclusivamente en escribir contratos inteligentes y omitir todo el aprendizaje requerido para ser un desarrollador web de pila completa.

Trabajar en la capa de protocolo implica comprender las especificaciones de una cadena de bloques determinada y contribuir a una implementación.

La infraestructura es una pieza crítica de cualquier red descentralizada. De hecho, sin desarrolladores de protocolo (núcleo), no hay cadena de bloques.

ChainSafe actualmente está creando implementaciones para Ethereum , Filecoin , Mina y Polkadot, y apoyamos mucho a cualquiera que siga este camino.

Lenguajes de programación

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

También es importante recordar que convertirse en un desarrollador de blockchain 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 delantera o trasera. Si te especializas en el desarrollo front-end, querrás aprender marcos como React, Vue, Angular o Sauron .

Estos son los fundamentos necesarios para construir el front-end de una aplicación descentralizada (dApp). Las DApps son aplicaciones creadas en una cadena de bloques con un front-end estándar y un back-end en la cadena de bloques.

Si desea concentrarse en el back-end, querrá aprender Rust, Go o Solidity. Aquí hay un puñado de tutoriales para empezar:

HTML y CSS
Java
Guion

Reaccionar

vista

Angular
Óxido

Vamos

Desarrollador DApp

Desarrollo Front-end

El front-end de una dApp está construido con algunos de los marcos mencionados anteriormente. Las dApps populares incluyen cosas como Uniswap, Aave, Augar, Foundation, Wormhole, etc.

Lo más importante que debe saber sobre las dApps es que están (en teoría) fuera del alcance de una sola autoridad o entidad porque se ejecutan en la cadena de bloques.

Para comprender cómo interactúan el front-end y el back-end de una dApp, debe comprender el desarrollo front-end y los principios básicos del desarrollo back-end estándar.

Echa un vistazo a: La hoja de ruta completa de desarrollo de front-end .

Con los conceptos básicos abajo, tendrás que decidir en qué ecosistema te quieres enfocar. Cada ecosistema tiene características únicas y diferentes compensaciones . Ethereum tiene la mayor actividad, la mentalidad de los desarrolladores y las dApps de producción existentes.

Para comenzar con Ethereum, probablemente querrá usar Truffle , un marco de desarrollo popular. Esto simplificará el proceso y lo ayudará a evitar errores comunes al crear sus propios proyectos. Aquí hay un tutorial para principiantes para eso.

Desarrollo de back-end

El back-end de una dApp no ​​es lo mismo que un back-end "estándar".

La primera diferencia es que con una dApp, la cadena de bloques 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 back-end sin tener una orientación firme en el desarrollo web tradicional.

Sin embargo, si desea seguir adelante, aprender el desarrollo de back-end significará conectar bases de datos, crear sus propias API REST, construir la lógica comercial que impulsará sus herramientas, etc.

Para el back-end, esta es su lista de tareas pendientes: aprenda Node , Express , HTTP , cómo desarrollar API y comience a implementar aplicaciones.

Twitter de Francesco Ciulla

Desarrollador de contratos inteligentes

Los contratos inteligentes son scripts programables implementados en una cadena de bloques para ejecutar operaciones lógicas sin confianza en una máquina virtual.

Escritos en Solidity , Vyper , DAML u otro idioma, los contratos inteligentes permiten que las aplicaciones descentralizadas aprovechen la seguridad criptoeconómica de una cadena de bloques, la integridad de los datos históricos y la confiabilidad del uso no autorizado, al tiempo que son accesibles abiertamente para cualquier persona para la verificación y el análisis de datos.

La solidez es el lenguaje de contrato inteligente 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.

Para aprender Solidez, aquí tienes otro recurso . Y recuerda, no tendrás idea de lo que estás haciendo, y eso está bien porque nadie lo sabe al principio.

Antes de escribir cualquier código, deberá configurar su 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.

Y ninguna introducción al desarrollo de web3 estaría completa sin Speed ​​run Ethereum , que es un excelente lugar para comenzar a juntar algunas de las piezas.

Para obtener más información sobre el proceso de principio a fin, incluido cómo usar los marcos mencionados anteriormente, comience aquí .

También vale la pena mencionar que no es necesario codificar desde cero al principio. Querrá 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 bibliotecas de contratos inteligentes probadas en batalla. Hay muchos otros.

Desarrollador de protocolos

El desarrollo de protocolos implica la codificación en sistemas de software de las reglas que rigen cómo debe comportarse una cadena de bloques 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.

Fuente: Géminis

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 blockchains 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, debe identificar a qué ecosistema desea contribuir y en qué capa. Un buen primer paso es mirar las próximas propuestas de especificaciones de su cadena de bloques elegida para comprender hacia dónde se dirige el desarrollo.

Estos detalles generalmente se especifican en papeles amarillos 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ómese un tiempo para hurgar y verificar los problemas abiertos y cerrados contra las implementaciones del protocolo.

Tenga 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 Beacon chain explorer . Esta es otra ruta de desarrollo a nivel de protocolo que puede seguir.

Cómo convertirse en desarrollador de Web3: pensamientos finales

El ritmo de la criptografía hace que sea imposible que alguien se mantenga actualizado por su cuenta.

Es por eso que la comunidad importa. Los aspirantes a desarrolladores web3 necesitan encontrar espacios para aprender y ayudar a otros a aprender. Algunas cosas que puedes hacer:

1. Red en Twitter
2. Únete a un gremio público
3. Participa en hackatones
4. Contribuir a proyectos de código abierto
5. Participa en Discord

También es importante ensuciarse las manos. Sumergirse en Devpost es una forma de comenzar.

Otra forma es crear una dApp de lista blanca a partir de la pista de segundo año de LearnWeb3 DAO, crear su primer mercado, aplicación o juego basado en blockchain de NFT con BuildSpace , o encontrar inspiración en algunos de los recursos a continuación.

Si hay algo que sacar de todo esto, es que la acción es lo más importante . Para todas las teorías, no hay mejor manera de aprender que haciendo. Aprender a codificar no es difícil.

Es la aplicación del conocimiento lo que es un desafío. Y la verdadera educación comienza cuando construyes tu primer proyecto.

Recursos educativos

Universidad Web3
Bootcamp de Consensys

Universidad Dapp

comerlosbloques

Campamentos de entrenamiento de Chainlink

Usarweb3

DesarrolladorDAO

Empleos de Web3 Developer

Carreras criptográficas
Lista de trabajos criptográficos

Empleos de criptomonedas

Criptomoneda
Trabajos
Crypto.jobs
Trabajos sin banco


¡ChainSafe también está buscando personas talentosas y apasionadas! Si está interesado, consulte nuestras posiciones abiertas y comuníquese con ➡️➡️ [email protected] .