Full Roadmap to learn Blockchain development in 2021

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
if you follow crypto news every day there is something new if you want to become a blockchain developer are you supposed to understand every blockchain there is a smart way of learning blockchain development that does not require you to know everything and you don't even need to have a technical background in this video i'm going to give you a complete step-by-step learning plan for blockchain it will take you a couple of months and at the end you will be a blockchain developer if you are new here i'm julian and on eat the blogs i teach blockchain development [Music] blockchain networks are networks of computer that run what we call a blockchain client each blockchain has its own blockchain client there is one for ethereum one for bitcoin etc blockchain clients are written using low-level programming languages like csc plus plus golang rust etc to build a blockchain client you need to know one or several low-level programming languages and you need to know the operating system networking file system etc this is not for the faint of heart it doesn't mean you can do it but this is not exactly what i would call beginner friendly but there is something very very important to understand building a blockchain client is not what most blockchain developers do nope most blockchain developers build applications on top of blockchain networks we have the same distinction on the web most web developers build web app on top of web browser but they don't build web browsers to make it clear in terms of vocabulary developers who build blockchain clients do blockchain core development and developers who build apps on top of blockchain do blockchain app development but in most cases in job offers and in most conversation when people just say blockchain development they mean blockchain app development this is what i'm gonna focus on for the rest of this video [Music] this is coin market cap there are more than 9000 cryptocurrencies listed if you listen to some popular crypto youtubers all of these projects are important but it's not true first of all understand that most people care about the price of crypto but there isn't always a correlation between the market cap of the cryptocurrency and the underlying technology there are a lot of projects with a really high market cap that aren't really important second thing to understand is that a lot of blockchain projects do not have their own blockchain most projects are built inside a blockchain you can check out dub greater to have an id of the popularity of different blockchain ethereum used to be the top blockchain even though it starts to be challenged by other blockchains like binance marching which are more scalable and have lower transaction fees you need to realize a couple of things ethereum will have its own scaling solution in the near future with l2 chain like polygon and later we'll have a more robust solution with ethereum 2.0 a lot of other blockchains like binance martian or tron are based on the technology of ethereum every time there is a blockchain that uses the evm short for ethereum virtual machine it means it's based on ethereum for all of these screens of ethereum the tech stack is exactly the same as for ethereum which means if you learn ethereum you can also develop on all of these other blockchains network effects are the dominant factor in blockchain adoption after a blockchain reaches a certain size it becomes almost impossible to challenge it network effect works at different levels number of developers users investors and for all of these metrics a theorem has reached a critical size so i recommend to focus first on learning ethereum you will need to understand a couple of things like the proof-of-work algorithm what is the data structure of the ethereum blockchain public and private keys and how addresses are generated how a wallet work what is the transaction the two kind of accounts on ethereum and what is a smart contract [Music] the big mistake of many blockchain newbies is to go straight to smart contract programming even if they don't have any technical background before blockchain technology is built on top of web technologies before you can start to go more into more technical stuff you need to have this fundamental knowledge web development is huge you have many languages frameworks etc you don't need to know all of them in web development there are two parts front-end and back-end for blockchain we mostly need a front-end for front-end you need to learn four things html which is the structure of web pages css for styling javascript that's what allow you to interact with the blockchain connect to the wallet and display data to user you will also need to learn a front-end framework to easily build a dynamic ui there are a lot of frameworks and all of them are great but we need to be efficient that's why i recommend to focus on react which is pretty much the standard in the industry what i mentioned so far is consider front-end web development but we also need to learn some stuffs for back-end web development for the back-end you need to learn node.js node.js is javascript but server side what interests us mostly is npm the package manager of node.js npm is used to install dependencies and tools for blockchain development when you build the blockchain app the most important part is the smart contract smart contracts are small programs that live in the blockchain usually they are quite small a few hundred of line of code to a few thousands rarely more these programs are very different from normal programs once they are deployed you cannot change their code we say that their code is immutable however the data is not immutable you can change it contrary to a normal program it costs money to change the data of a smart contract and the more complex our code the more money it costs so we try to simplify our code in order to lower execution costs that's called gas optimization with smart contract you can move money natively this is why smart contracts are so powerful with a normal program you will have to integrate with the payment service like paypal stripe but you need to have a permission to do this and you are constrained by the api with a smart contract you can write any logic you want for moving them when you run you do what you want in terms of security it's almost impossible to hack the core blockchain protocol that means if a transaction is sent to move money from an address to another one it's impossible to hack this and change the recipient address however it is possible to introduce a bug in the code of a smart contract and have hackers take advantage of this there are a couple of programming languages for smart contracts but the most popular one is called solidity the syntax of solidity looks like javascript but it's very misleading because the way it works is very different it's also much more limited compared to javascript so we avoid to do things that are too complicated a great way to experiment with solidity is to use remix and online ide for solidity with remix you have nothing to install you just load the website and you can start writing 30 code and running your smart contract right away remix is good to get started but in real life project we usually use something a bit more robust like truffle truffle is one of the most popular framework for solitude smart contracts it's a command line tool written in node.js and you can install it very easily with npm on windows mac and linux it comes with a local ethereum network for development called ganache with ganache you can deploy your smart contract on a network completely separated from the real network of ethereum that we call mainnet on ganache you can have infinite fake ether which means you can send as many transactions as you want lose all the money it doesn't matter at all there are also so-called public test nets of ethereum that you can use to deploy your smart contract they're a little bit more realistic compared to ganache but they are also a bit more difficult to use because you don't control the network yourself it's a public network run by other computers and if you want to have some fake ether for your transaction you cannot generate it yourself but you need to use tools called faux set and sometimes these four sets don't work when you start to use public test nets you will probably need to use etherscan which is a blockchain expert with etherscan you can verify that a transaction was mine on the blockchain another service you would probably use is infrared intra is an api that runs ethereum clients for you it's not easy to run an ethereum client so infra is very useful when you want to use a public test net or mainnet the way you send transactions to a public test net or mainnet is a bit different compared to when you just use ganache locally there is a bit of a learning curve the first time you do it last thing i haven't mentioned is testing after you deploy a smart contract you cannot modify its code so it's very important that you test your smart contract before deployment and with the traffic framework you can test your smart contracts very easily so as you can see for a blockchain developer learning smart contract development is really a big box but it's not everything [Music] if you just have a smart contract on the blockchain the only way to interact with it is with the command line that's why we also need to build a front-end to let our users interact with our smart contract the smart contract plus the front-end is what we call a dap or a decentralized application the front-end can be a mobile app or a web app but in most cases this is a web app the web app of adap is 90 like your standard web application with html css javascript and optionally a front-end framework like react i told you before that you have to know the basics of web development before diving into blockchain development well now you start to understand why in your front end there will be two challenges specific to the blockchain first the integration with the blockchain for that we will use a javascript library called web3 and second the integration with the wallet in depth the user management is decentralized and users store their password themselves we actually don't use passwords in dab but the closest equivalent would be what we call private keys with private keys user can sign a transaction which is a data package that describes an action that a user wants to do with a verifiable signature that proved the user really wanted to do this action there are many ways available for ethereum but most people use a meta mask so in your learning path you start to learn how to integrate metamask and later you can learn how to integrate other wallets [Music] once you know how to write a full decentralized application including smart contract and frontend you can optionally decide to specialize even more there are many ways you can specialize in blockchain but i would recommend two ways first you can become a smart contract specialist that's a great positioning because smart contract code is very critical and there is a shortage of spot contract expert if you are really good at solidity you can earn up to 250 000 to be really good at solidity you will need to know in detail the ethereum virtual machine also called evm you will need to know also gas optimization and security the other way you can specialize is in d5 defy or decentralized finance is the main use case for blockchain the main kind of project in d5 are decentralized protocols like uni swap landing protocols like compound and automated robo advisor also called yield aggregators like yeon finance to learn d5 there are three steps first understand the fundamental concepts in d5 like the different types of tokens liquidity pools stacking liquidation flash loans and after learn the api of a few defy projects there really a tons of new projects every week but most of them are just copy paste of other projects so it's better to just know a few projects really well instead of many projects but very superficially that's why i recommend to just focus on uni swap and compound to get started after that you can build your own defined project by playing the money lego game and combining different building blocks like liquidity pool staking and also building on top of other defy projects this is permissionless you can use any smart contract you want without asking for permission so now you have a full roadmap to become a blockchain developer in 2021 the next step is to act on this plan and for this you can start by learning how blockchain work by watching this video on my channel i will see you there
Info
Channel: EatTheBlocks
Views: 135,705
Rating: 4.9548159 out of 5
Keywords:
Id: ci_AIMCF-HA
Channel Id: undefined
Length: 12min 39sec (759 seconds)
Published: Wed Apr 07 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.