paint-brush
Comment devenir développeur Web3par@colina
4,270 lectures
4,270 lectures

Comment devenir développeur Web3

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

Trop long; Pour lire

Web3 est une vision d'Internet où les utilisateurs ont plus de choix, de contrôle et de propriété. Il s'agit d'un nouveau paradigme techno-social où les données peuvent être enregistrées sur des chaînes de blocs, symbolisées ou gérées et accessibles sur des réseaux décentralisés, open source et peer-to-peer. Les salaires des développeurs Web3 sont attractifs et la possibilité d'avoir un impact est sans précédent. Nous avons rassemblé les meilleures ressources dans un guide de démarrage simple et impartial pour devenir un développeur web3.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail

Coins Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Comment devenir développeur Web3
ChainSafe Systems HackerNoon profile picture

Web3 est une vision d'Internet où les utilisateurs ont plus de choix, de contrôle et de propriété.

Il s'agit d'un nouveau paradigme techno-social où les données peuvent être enregistrées sur des chaînes de blocs, symbolisées ou gérées et accessibles sur des réseaux décentralisés, open source et peer-to-peer.

Le mouvement crypto attire de nombreux développeurs, et il est facile de comprendre pourquoi. Les salaires des développeurs Web3 sont attractifs et la possibilité d'avoir un impact est sans précédent. Intéressé à rejoindre?

Nous avons rassemblé les meilleures ressources dans un guide de démarrage simple et impartial. Plongeons-nous !

Source : BlockWorks

Feuille de route du développeur Web3

Vous pouvez emprunter différents chemins pour devenir développeur web3 et, par conséquent, aucune séquence exacte d'étapes à suivre.

Il y a aussi beaucoup d'informations à digérer, donc pour éviter d'être submergé, il est préférable de prendre les choses progressivement. Voici à quoi ressemble le menu de base.

Compétences de développeur Web3 — Fondation

Web3 est sans autorisation - il n'y a pas de barrière à l'entrée. Toute personne motivée peut apprendre à coder. 

Il convient toutefois de noter que l'aptitude mathématique, les compétences analytiques et la capacité à résoudre des problèmes de manière créative peuvent vous donner un avantage.

Pour travailler dans l'espace, vous devez connaître les structures de données et les algorithmes. Vous devez connaître les bases de la programmation et de la technologie blockchain.

Si vous êtes un débutant absolu, nous vous recommandons de commencer par cette introduction à l'informatique .

Fondamentaux du développeur Web3

Chaîne de blocs

Le terme « blockchain » englobe un large éventail d'innovations connexes qui affectent de nombreux aspects différents de la société. Mais en bref, une blockchain est une base de données décentralisée régie par ses utilisateurs.

Si vous êtes un nouveau venu, voici une excellente introduction à Blockchain et un glossaire pour comprendre la terminologie. Bitcoin est la première et la plus célèbre blockchain, donc la lecture du livre blanc Bitcoin est la première étape.

Il existe également de bons explicatifs qui rendent le livre blanc Bitcoin plus accessible aux débutants.

Ensuite, vous devrez avoir un aperçu d'Ethereum , la blockchain programmable. Pour un contexte général, d'autres bons endroits pour commencer sont les chaînes YouTube comme Andreas Antonoplous ou Whiteboard Crypto .

Pour plus de profondeur: suivez ce cours gratuit de 8 modules par Patrick McCorry, le premier Ph.D. du Royaume-Uni. diplômé en crypto-monnaie.

Cryptographie

Étant donné que les blockchains fonctionnent avec un modèle de réseau peer-to-peer décentralisé, il n'y a pas de serveur ou de nœud unique. Dans ce contexte, un nœud est un logiciel sur un ordinateur relié à un réseau qui sert une copie des modifications actuelles et historiques d'un grand livre distribué.

Alors que les nœuds de la blockchain n'ont pas nécessairement besoin de se faire confiance, le système doit protéger les informations de transaction. Entrez la cryptographie - un ingrédient essentiel pour protéger les informations de transaction et assurer la cohérence des données.

Les blockchains reposent sur la cryptographie, il vaut donc la peine de se familiariser avec certains concepts fondamentaux.

Cela signifie connaître les bases de la cryptographie asymétrique et de ses applications, y compris les algorithmes de signature, la génération de paires de clés publiques-privées, etc. Commencez par cet aperçu ou des sites comme The Joy of Cryptography .

Tokenomics

Tokenomics est un autre aspect important à comprendre car de nombreuses applications Web3 sont alimentées par des jetons. Et pour comprendre la tokenomics, vous devez d'abord comprendre l'argent. Le moyen le plus rapide de le faire est de lire Une brève histoire de l'argent .

Source : Nakamoto

Maintenant, nous pouvons aller à l'intersection de la valeur et de la technologie - une introduction à l'Internet de la valeur . Pour plus de contexte, consultez Tokenomics 101 , un guide du débutant sur la finance décentralisée (DeFi), et associez-le à Why Web3 Matters .

Bien que ces ressources soient destinées à vous aider, une réflexion indépendante est essentielle. Ne comptez pas uniquement sur des sources secondaires.

Au lieu de cela, téléchargez MetaMask , rejoignez une organisation autonome décentralisée (DAO), essayez Files et explorez via des plateformes comme Rabbit Hole . Utilisez la technologie et faites-vous votre propre opinion.

Choisissez votre chemin de développement Blockchain

Il n'y a pas d'approche unique pour devenir un développeur de blockchain. Vous pouvez devenir développeur back-end, développeur front-end ou les deux. Vous pouvez également travailler au niveau du protocole ou vous concentrer uniquement sur les contrats intelligents.

Bien sûr, dans chaque catégorie, il y a beaucoup de variations. Vous pouvez travailler sur la recherche blockchain, développer des spécifications, des algorithmes, la conception de tokenomics ou des outils.

Vous pouvez vous concentrer sur les environnements de développement intégrés, les frameworks, les bibliothèques et les intergiciels, ou passer votre temps au niveau de la couche applicative, en travaillant sur des contrats intelligents, le développement UX/UI, la conception, etc.

Pour la plupart, la création d'une application sera la voie de moindre résistance. Vous pouvez également décider de vous concentrer exclusivement sur la rédaction de contrats intelligents et d'ignorer tout l'apprentissage requis pour être un développeur Web complet.

Travailler sur la couche de protocole implique de comprendre les spécifications d'une blockchain donnée et de contribuer à une implémentation.

L'infrastructure est un élément essentiel de tout réseau décentralisé. En effet, sans développeurs de protocole (core), il n'y a pas de blockchain.

ChainSafe construit actuellement des implémentations pour Ethereum , Filecoin , Mina et Polkadot, et nous soutenons vivement quiconque suit cette voie.

Langages de programmation

Quelle que soit la direction que vous choisissez, vous devrez apprendre certains des langages de programmation utilisés dans le web3. Il existe de nombreuses options, mais certaines des plus populaires incluent Solidity, TypeScript, JavaScript, Python, Go et Rust.

Il est également important de se rappeler que devenir développeur de blockchain ne signifie pas abandonner tout ce qui a précédé. En ce sens, les trois grands sont HTML, CSS et JavaScript.

Au-delà de cela, décidez si vous voulez vous concentrer sur le front ou le back-end. Si vous vous spécialisez dans le développement front-end, vous voudrez apprendre des frameworks comme React, Vue, Angular ou Sauron .

Ce sont les bases nécessaires pour construire le front-end d'une application décentralisée (dApp). Les DApps sont des applications construites sur une blockchain avec un front-end standard et un back-end sur la blockchain.

Si vous voulez vous concentrer sur le back-end, vous voudrez apprendre Rust, Go ou Solidity. Voici quelques tutoriels pour vous aider à démarrer :

HTML et CSS
Java
Scénario

Réagir

vue

Angulaire
Rouiller

Aller

Développeur DApp

Développement front-end

Le front-end d'un dApp est construit avec certains des frameworks mentionnés ci-dessus. Les dApps populaires incluent des choses comme Uniswap, Aave, Augar, Foundation, Wormhole, etc.

La chose clé à savoir sur les dApps est qu'elles sont (en théorie) en dehors de la compétence d'une seule autorité ou entité car elles fonctionnent sur la blockchain.

Pour comprendre comment le front et le back-end d'une dApp interagissent, vous devez comprendre le développement front-end et les principes de base du développement back-end standard.

Consultez : La feuille de route complète du développement frontal .

Avec les bases, vous devrez décider sur quel écosystème vous souhaitez vous concentrer. Chaque écosystème a des caractéristiques uniques et des compromis différents . Ethereum a le plus d'activité, de partage d'esprit de développeur et de dApps de production existants.

Pour commencer avec Ethereum, vous souhaiterez probablement utiliser Truffle , un framework de développement populaire. Cela simplifiera le processus et vous aidera à éviter les erreurs courantes lors de la construction de vos propres projets. Voici un tutoriel adapté aux débutants pour cela.

Développement back-end

Le back-end d'une dApp n'est pas le même qu'un back-end "standard".

La première différence est qu'avec une dApp, la blockchain est la principale source d'état des données stockées par rapport aux bases de données ou au stockage d'objets que les backends standard utilisent généralement.

Bien que les objectifs techniques soient similaires, il n'est généralement pas recommandé de plonger dans le back-end sans avoir une orientation ferme dans le développement Web traditionnel.

Cependant, si vous voulez aller de l'avant, apprendre le développement backend signifie connecter des bases de données, créer vos propres API REST, construire la logique métier qui alimentera vos outils, etc.

Pour le back-end, voici votre liste de choses à faire : Apprendre Node , Express , HTTP , comment développer des API et commencer à déployer des applications.

Twitter Francesco Ciulla

Développeur de contrats intelligents

Les contrats intelligents sont des scripts programmables déployés sur une blockchain pour exécuter des opérations logiques en toute confiance sur une machine virtuelle.

Écrits en Solidity , Vyper , DAML ou dans un autre langage, les contrats intelligents permettent aux applications décentralisées de tirer parti de la sécurité cryptoéconomique d'une blockchain, de l'intégrité des données historiques et de la fiabilité d'une utilisation non autorisée tout en étant ouvertement accessibles à tous pour la vérification et l'analyse des données.

La solidité est le langage de contrat intelligent le plus populaire. Solidity est typé et compilé statiquement, ce qui signifie que vous devez générer un binaire avant de l'exécuter. Solidity a une excellente documentation, et il est similaire à JavaScript en termes de temps nécessaire pour apprendre.

Pour apprendre Solidity, voici une autre ressource . Et rappelez-vous, vous n'aurez aucune idée de ce que vous faites, et ce n'est pas grave car personne ne le sait au début.

Avant d'écrire du code, vous devrez définir votre environnement de développement. Cela signifie que Remix IDE , un outil populaire pour écrire, compiler et déployer des contrats, ou des outils comme Hardhat et Brownie peuvent également être utiles lorsqu'un environnement de développement local est nécessaire.

Et aucune introduction au développement Web3 ne serait complète sans Speed ​​run Ethereum , qui est un excellent endroit pour commencer à assembler certaines pièces.

Pour en savoir plus sur le processus du début à la fin, y compris sur l'utilisation des frameworks mentionnés ci-dessus, commencez ici .

Il convient également de mentionner qu'il n'est pas nécessaire de coder à partir de zéro au début. Vous voudrez apprendre à couvrir des besoins spécifiques et à mettre en œuvre des règles automatisées appropriées avec le temps.

Mais il existe de nombreux modèles de contrats intelligents que les débutants peuvent utiliser. OpenZeppelin est un endroit pour trouver des bibliothèques de contrats intelligents testées au combat. Il y en a beaucoup d'autres.

Développeur de protocole

Le développement de protocoles implique d'encoder dans des systèmes logiciels les règles qui régissent le comportement d'une blockchain particulière.

Les protocoles sont généralement organisés en couches, par exemple, les couches OSI pour la mise en réseau. Cela permet un couplage facile et la possibilité de développer les couches simultanément.

Cette approche en couches a également été adoptée dans de nombreux systèmes de blockchain populaires. Cela inclut les blockchains de couche 1 (L1), les réseaux de base pour le composant le plus essentiel d'une blockchain : le consensus, qui sert de réseau de base pour le système et fournit des éléments tels que des garanties de sécurité.

Source : Gémeaux

Et la couche deux (L2) - des protocoles secondaires construits sur un L1 qui aident avec des choses comme la mise à l'échelle, les frais et les vitesses de transaction. Les L2 sont construits au-dessus d'un réseau L1 pour hériter des garanties de sécurité de la couche de base tout en déplaçant le calcul lourd vers une autre chaîne.

Certaines blockchains ont également le concept de couche 0, par exemple, Polkadot . Dans d'autres cas, la couche zéro peut également faire référence au consensus social.

Pour commencer en tant que développeur de protocole, vous devez identifier à quel écosystème vous souhaitez contribuer et à quelle couche. Une bonne première étape consiste à examiner les propositions de spécifications à venir de la blockchain que vous avez choisie pour comprendre où va le développement.

Ces détails sont généralement spécifiés dans des papiers jaunes ou des documents de spécifications. Quelques exemples sont Polkadot , Ethereum et Filecoin .

Étant donné que la plupart des blockchains populaires sont open source, il est également possible de regarder le code pour avoir une idée de la façon dont le protocole est implémenté. Prenez le temps de fouiller et de vérifier les problèmes ouverts et fermés par rapport aux implémentations de protocole.

Notez que le développement de protocole comprend également l'infrastructure construite autour des différentes couches, par exemple, des ponts (comme ChainBridge ) ou des explorateurs de blocs comme l' explorateur de chaînes Beacon . Il s'agit d'un autre chemin de développement au niveau du protocole que vous pouvez suivre.

Comment devenir un développeur Web3 - Réflexions finales

Le rythme de la cryptographie rend impossible pour quiconque de rester à jour par lui-même.

C'est pourquoi la communauté est importante. Les aspirants développeurs Web3 doivent trouver des espaces pour apprendre et aider les autres à apprendre. Quelques choses que vous pouvez faire :

1. Réseau sur Twitter
2. Rejoignez une guilde publique
3. Participez à des hackathons
4. Contribuer à des projets open source
5. Engagez-vous sur Discord

Il est également important de se salir les mains. Plonger dans Devpost est une façon de commencer.

Une autre façon consiste à créer une liste blanche dApp à partir de la deuxième piste LearnWeb3 DAO, à créer votre premier marché, application ou jeu basé sur la blockchain NFT avec BuildSpace , ou à trouver l'inspiration dans certaines des ressources ci-dessous.

S'il y a une chose à retenir de tout cela, c'est que l' action est la chose la plus importante . Pour toutes les théories, il n'y a pas de meilleure façon d'apprendre que par la pratique. Apprendre à coder n'est pas difficile.

C'est l'application des connaissances qui est un défi. Et la véritable éducation commence lorsque vous construisez votre premier projet.

Ressources pédagogiques

Université Web3
Bootcamp Consensys

DappUniversit
y
EatTheBlocks

Bootcamps Chainlink

Utiliserweb3

DéveloppeurDAO

Emplois de Développeur Web3

Carrières en crypto
Liste des tâches de chiffrement

Emplois en crypto-monnaie

Pompe Crypto
Emplois
Crypto.jobs
Emplois sans banque


ChainSafe recherche également des personnes talentueuses et passionnées ! Si vous êtes intéressé, consultez nos postes vacants et contactez-nous à ➡️➡️ [email protected] .