My roadmap in web 3
Jesus Guerrero

Jesus Guerrero @jesusantguerrero

About: Hi everyone, my name is Jesus Guerrero. I am a Full-Stack developer from the Dominican Republic. I love to learn new things, share knowledge and create things..

Location:
Santo Domingo, Dominican Republic.
Joined:
Oct 6, 2017

My roadmap in web 3

Publish Date: Dec 23 '21
304 21

I decided to investigate and learn about blockchain, crypto, smart contracts and decentralized apps (dapps) A.K.A Web 3.0 from september 24, of 2021. I got curious about the term from the hype on twitter but it was more hype than truly helpful information with some valuable exceptions.

I am kind of documenting the journey and sharing my learning process hoping that can be useful for someone else but also expressing my own opinions.

The following lists express the order of my learning process but I didn't have to finish one to start the other. for example I was learning concepts yet, and doing the cryptozombies course.

1 - Learn the concepts.

It is kind of hard to assimilate and embrace an idea that challenge the status quo in so many ways. We tend to be cautious, skeptic and critic about it, specially when we heard just good things and anything negative.

By reading about the idea, the goals, the key concepts, how it works and the things web3 need to improve to materialize its final goal; we emphasize more with it.

These are a good places to start:

2 - Consume

By looking for and using some implementations of web3 applications OR Descentralized Apps(Dapps), we can understand what kind of applications we can build, the use cases and real world examples.

In my particular case I downloaded Brave browser as the implemented a nice use case to gain tokens for view to the adds, installed my metamask wallet, and started to follow people on twitter that provide useful content and resources.

3 - Get your hands dirty.

The primary blockchain to build smart-contracts and dapps is Ethereum in addition its platform Ethereum Virtual Machine (EVM) is compatible with other platforms like Polygon(Matic) for example, so by learning solidity, one of the language of EVM you can make smart-contracts for multiple blockchains.

cryptozombies is an excelent resource that cover all the things you need to know to build your first contracts and dapps. since the basics of the language, libraries, ERC721 how to use other contracts with yours, how to handle security, how to connect with oracles to how to connect your frontend with a smart contract. All this in an interactive gamified tutorial.

4 - Build, build and build.

After the cryptozombies course, I thought the right direction was to get my local environment to build my repos and code my contracts with the learnings of the course.

After some research My stack was like this:

  • Hardhat - Flexible, extensible and fast Ethereum development environment for professionals.

  • Vue 3 - The Progressive JavaScript Framework

  • ethers.js - JS library for interacting with the Ethereum Blockchain and its ecosystem

  • Brave Browser/Google Chrome with metamask extension

I choose to use Vue because I feel comfortable with it and it is my favorite framework but you can use whatever framework you like react, svelte, etc.

5 - Deploying to the world.

The next step after creating a smart contract and having a working frontend that interact with the smart contract, is deploying to let other use it and why not show case the working example in your portfolio.

This tutorial by Nader Dabit helped me with this and in addition, learned how to build a marketplace and about Polygon and Infura.

6 - Learning about cryptocurrencies

Cryptocurrencies are the fuel of Web3 they move the economy, they move the smart contracts and transactions that happens in the platforms. if you take a look at them you will see that most of these tokens have a platform behind Ether has Ethereum ecosystem, Links has Chainlink which is a set of oracles that you can use in your dapps, Solana is also an ecosystem that have its own a blockchain that allows you to build smart-contracts and so on.

  • Binance - App to buy/sell crypto
  • CoinMarketCap - App to keep track of your portfolio and market prices.
  • Whiteboard Crypto channel that explain different platforms, tokens and concepts of web3

In this step watch out with the scammers, don't take anything as financial advice and do your research before invest in a token.

7 - Iterate and get stronger.

With every step you get better and better in the next iteration you can build a more robust environment setup with an advanced hardhat setup I am planning to share the setup I did here. this will be another article

Complement your dapps with services like moralis, pinata for IPFS storage, etc.

In my case at this point I learned how to generate assets for my NFT's with hashlips

8 - Going out of the comfort zone.

Participating in hackathons at least once in life is a good way to inspire you and put you in the zone. In this state you can apply all the things you are learning, brainstorm ideas, see a lot of use cases for new technologies, interact with other developers and find communities with the same interest as you.

I participated in the chainlink hackathon I don't know if I am going to win anything yet, but the things I learned and applied are very valuable.

Conclusion.

After going through this steps and resources I gained some knowledge and built kind of fun things I hope this post help you to start building some smart contracts and have fun learning something new.

The post is unfinished because I will be adding more things as I go farther.

Thanks for reading. If you have any questions the comments are open, or if you like Twitter as well as my Github where I do some experiments and projects.

Comments 21 total

  • Les Carbonaro
    Les CarbonaroDec 23, 2021

    Thanks @jesusantguerrero for putting this together. Must say it's very refreshing to see blockchain concepts being applied to VueJS for a change. I know web3.js is front-end agnostic, but to look at all the examples out there you'd think there's no other front-end framework besides react. Thanks again.

    • Jesus Guerrero
      Jesus GuerreroDec 24, 2021

      I noticed that too, there are many react/web3 related things than other frameworks. I hope this to change next year and more resources come out in vue at least.

      Thanks for reading and glad to know it was useful for you.

  • Richard Kwok
    Richard KwokDec 23, 2021

    Nice share , I need to learn the web3

    • Jesus Guerrero
      Jesus GuerreroDec 24, 2021

      Thank you. go for it. It is an entertaining and interesting topic for sure.

  • Adel Parsa
    Adel ParsaDec 26, 2021

    Excellent share
    thanks

  • Kasun Vithanage
    Kasun VithanageDec 26, 2021

    Does web3 comes with a solution to do realtime communications?

    • Jesus Guerrero
      Jesus GuerreroDec 26, 2021

      You can send events from the contract when an action happen and send data. You can listen to those events in your frontend.

      But you wouldn't want to much data flow on chain. Moralis offer options for off-chain database with real-time.

      • Kasun Vithanage
        Kasun VithanageDec 26, 2021

        It means we still need centralized databases or cloud deployments to create realtime apps with web3?

        • Jesus Guerrero
          Jesus GuerreroDec 26, 2021

          No there's descentralized hosting options. And moralis roadmap is to be open but I put it to mention a case I know. It should be other options solving those problems without directly require centralized things.

          • Kasun Vithanage
            Kasun VithanageDec 26, 2021

            Also how is the database support? are there good decentralized DBs you spotted? BC can do transactions and other stuffs...but real world commercial apps requires much more ways to store data

            • Jesus Guerrero
              Jesus GuerreroDec 26, 2021

              I was talking with a friend of mine the other day about this. options like orbit.db seems good to try, there are others but I don't think are at the level of what we know in te current web.

              And I am more of the thinking of a combination in these early days of the stack. We can say semi-decentralized taking adventage of things were the stack shines(payments, identity, immutability, financial) rather than go wild and force to be decentralized for the sole reason of it at this point.

              The most useful examples I know Apply this.(Brave Browser, gitcoin, zed.run) and waiting to see how the space and tools evolve in my opinion.

              • Kasun Vithanage
                Kasun VithanageDec 26, 2021

                yep, i also think this hybrid approach would be good

  • Eda
    EdaDec 26, 2021

    Really enjoyed this post! Thanks for sharing.
    I'd also recommend you to checkout buildspace: buildspace.so/
    They have web3 projects that are really fun to follow along and build cool stuff!

    • Jesus Guerrero
      Jesus GuerreroDec 26, 2021

      You're welcome, glad to know you liked it.

      And thanks for sharing, I'll check it out.

  • Juan F Gonzalez
    Juan F Gonzalez Dec 26, 2021

    Great post @jesusantguerrero !!

  • Mukul Rajpoot
    Mukul RajpootDec 27, 2021

    What will be the roadmap for developing a dapp like pinterest?

    • Jesus Guerrero
      Jesus GuerreroDec 27, 2021

      Roadmap or approach? Because that is an specific implementation.

      My approach would be define the data is worth to have on chain. cause every write would on-chain require sign/GAS payment from user to add to the blockchain.

      Setup a hardhat project to define your smart contract with solidity and test it.

      Store the images and off-chain data on pinata or any other IPFS service.

      and ethers.js with my favorite framework to interact with the smart contract.

      Other option is Moralis, they offer servers, multiple chains support, db, and IPFS, etc there's a doubt I have with them about centralization/vendor-locking even though they are very accepted in the community and plan to be open source.

      • Mukul Rajpoot
        Mukul RajpootDec 28, 2021

        Thanks for replying, I am trying to learn these new tech.

  • Petros Demetrakopoulos
    Petros DemetrakopoulosDec 28, 2021

    In case you are interested in Web 3 and DAPPs check out ethairballoons, an ORM library for data storage in the Ethereum blockchain.
    github.com/petrosDemetrakopoulos/e...

  • АнонимDec 29, 2021

    [hidden by post author]

Add comment