A Newbie’s Guide to Blockchain, web3, and Dapps (w/o real money)

Rounak Banik
Scrappy Squirrels
Published in
14 min readOct 4, 2021
Metamask is a gateway to using blockchain apps

Introduction

Unless you’ve been living under a rock, you’re probably aware that blockchain and cryptocurrencies have taken the world by storm. It is impossible to browse the news, Twitter, or any other social media without coming across references to things like Bitcoin, NFTs, dexes, dapps, Ethereum, etc.

You can love crypto to a fault, hate it with a fiery passion, or not understand it at all. But what you shouldn’t do is ignore it (Think Different, anyone?).

The fact that you clicked on this article tells us that you aren’t trying to either. And if you’re like most people, you probably faced two big problems.

  1. Getting into crypto is overwhelming
    The crypto space has evolved at a breathtaking space so much so that even the most prominent figures in the space have admitted that they didn’t foresee certain developments (such as Vitalik Buterin, Founder of Ethereum, not anticipating the NFT boom).
    Additionally, the crypto community isn’t exactly shy about introducing new jargon. You must have heard people throwing words like staking, DeFi, proof of work, fungibility, gas prices, etc. In such a scenario, it may be difficult to understand where exactly to begin.
  2. Getting into crypto is expensive
    For all its talk about ‘democratizing finance’, it may come across as a rude shock when you realize how expensive it really is to do basic things in the crypto world (such as buying an ETH domain, minting an NFT, or even transferring money). Trying to enter the space will easily set you back by a few hundred dollars.

This article, therefore, serves as a gentle introduction to the space without requiring you to spend a fortune. We will not be diving deep into the theory of blockchains (we have reserved that for a later article). Instead, we will do the following:

  1. Set up a Metamask Wallet
  2. Publish a message directly to the blockchain
  3. Mint an NFT

We will do this on a test network. A test network mimics a real one but uses fake money instead. Once you feel comfortable, you can spend real money, and do the aforementioned task on a main network too (which will be the subject of yet another future article).

Along the way, we will explain why we’re doing what we’re doing, and the significance of it. Don’t worry if some of the terms above don’t make sense; we will explain everything you need to know. Ready? Let’s go!

Setting up a Metamask Wallet

2023 Update

Rinkeby is now deprecated. Goerli and Sepolia are the two supported Ethereum testnets.
One option for Metamask is to set up a new network using an external RPC provider like Alchemy. RPC providers allow developers to read and write to the blockchain faster and more reliably.
To connect to an external RPC provider, just click “Add a Network” in your Metamask wallet. Then, you add the chain ID you want (for example, Sepolia is always 11155111) and add in your Alchemy API key from your Alchemy dashboard.

The first thing we’re going to do is set up a Metamask wallet. Open your Chrome Browser, and navigate to this website: https://metamask.io/download.html.

Go ahead and install the Metamask Chrome Extension. The process should be fairly straightforward and self-explanatory. Metamask will ask you to set a password, give you a secret recovery phrase, and generate an account for you (with public and private addresses).

Make sure you pin the Metamask extension to Chrome. If all went well, you should be able to click on the little Fox icon and see a popup like this:

Congratulations! You have just set up a crypto wallet. You are now in a position to interact with every popular dapp on the Ethereum Blockchain.

But let’s take a step back. What just happened? What did we do, and why did we do it?

Signup and Account Creation in the Decentralized World

We want to interact with the Ethereum blockchain system. Unlike centralized systems (like banks, TikTok, Facebook, or PayPal), there is no gatekeeper to the Ethereum system. Anyone can create an account number and password, and interact with the system. There is absolutely no one who can stop you. In other words, the system is permissionless.

There are some obvious problems that arise out of this. If there is no gatekeeper who is controlling access and security, how does this even work? Who makes sure that no two people have the same account number? How do we verify that someone is who they say they are?

Blockchains solve the above problem using cryptography (this is where the term crypto comes from). We will skip over the details for now. All you need to know, for the time being, is this:

  1. Your account has a public address. Think of this as your bank account number, Twitter username, or email address. You can share this with anyone. Open the Metamask popup and you should see a random string of letters under Account 1. This is your public address. If someone asks you for your address, this is what you provide. It is safe.
    For instance, here is my public address: 0xc361Fc33b99F88612257ac8cC2d852A5CEe0E217
  2. Your account has a private address. Think of this as your password. You must never share your private address with anyone, under any circumstance. If your private address is compromised, your entire account is compromised. Anyone with your private address can sign transactions on your behalf and take all your money. There is no going back. No one, not even Metamask or the government, can help you in getting your money back.
    You can access your private key by clicking on Account Details and exporting the private key. If you’re a beginner and you’re not developing apps, we suggest you ignore this for the time being.

In addition to this, Metamask also provides you with a Recovery Phrase. The Recovery Phrase is a collection of 12 words that can be used to recover your account (and private key). Just like the private key, the recovery phrase is secret and must not be shared with anyone. Compromising your recovery phrase is as bad as compromising your private key. You will lose everything.

Things to Remember

  1. It is a good idea to store your recovery phrase in a physical, offline location. Write it down on a piece of paper, and store it safely.
  2. Never give out your private address or recovery phrase.
  3. If your wallet is compromised or lost, there is no way to get it back. It is your responsibility to keep it safe. With great power comes great responsibility!

Awesome! What we’ve done so far is create an account so we can interact with the Ethereum Blockchain. What can we do on Ethereum? The possibilities are endless really. We will look at 2 use cases. But before we do that, we need to get some money.

Get Fake ETH into our Metamask Wallet

Unlike most centralized services (like Facebook, TikTok, etc.), doing virtually anything on Ethereum requires money. The currency used on Ethereum is called Ether (ETH). When people talk about the ‘ethereum cryptocurrency’, they are actually referring to ether.

In the real world, we would need to use fiat money (dollars, rupees, etc.) to buy ether from a centralized exchange like Coinbase, Binance, or WazirX. We would then need to transfer this money to our Metamask wallet in order to use that ETH.

We will not be doing so in this article. Instead, we will work on the Rinkeby network. Rinkeby is a test network. What this means is that it mimics the Ethereum network but uses fake ether instead. This, obviously, also means that anything you do on the Rinkeby network (such as purchasing NFTs) does not have any real value. But that’s okay. We’re only learning now. When you’re comfortable, you can always shift to the main network, use real money, and make a real impact.

Open the Metamask extension again, and change the network to Rinkeby Test Network (from Ethereum Mainnet).

Next, go to this website to get some fake ether by following the steps on the website: https://faucet.rinkeby.io/. (Remember to tweet out only your public address!).

The Rinkeby faucet is known to not work sometimes. If you’re having trouble getting fake ETH, tweet out your public address to us at @ScrappyNFTs (do give us a follow while you’re at it ;)). We will send ether to as many people as possible.

For the tasks below, 0.02 ETH should be more than enough.

Publish a message directly to the blockchain

We have finally arrived at the fun part of this article.

In this section, you will create a Reddit-like post, and publish it to the blockchain where it will remain for eternity. Head over to this website: https://milton-frontend.vercel.app/

The Milton App

Make sure your Metamask wallet is connected to the Rinkeby network (check the previous section if you don’t know what this means). Once this is done, click on the Connect Wallet button.

This will prompt Metamask to ask you to connect your wallet to this app. Once this is done, you will see that the yellow banner at the top disappears and the Connect Wallet button is replaced with a Create a Post button.

Let’s create a post now. Click on the blue button, and fill-up the form. If you are running out of ideas as to what to post, just tell us your favorite song, and post a YouTube link. Once you’ve filled in URL, Category, Title, and Description, click on the Submit button.

Metamask will prompt you once again with a screen that looks like this:

There are two important things to note here:

  1. The price of this transaction is 0.
    The large 0 at the top indicates that the price to post your link is 0. This means that I, the creator of this website, will not receive any money when you create this post.
  2. There are non-zero gas fees involved.
    Even though I’m not charging you anything to post, you still have to pay ‘gas fees’ to perform this transaction. As we had mentioned earlier, doing virtually anything on Ethereum costs money. The money that you pay for gas goes to the miner who will ‘mine’ this transaction for you. I, the creator of this app, will not receive this money. We will look into what gas is a little later.

If this was the main network, you would be spending real money to create this post. But since this is Rinkeby, it will only cost you fake money. Go ahead and confirm the transaction.

The transaction will take about 15–20 seconds to mine. Once successful, you should be able to see your post on the website. (There is also a 90% chance that you’ll win 0.0001 ETH which means you will almost always get your money back and more!). This is a post I just created:

This doesn’t look that impressive at the outset. Reddit has been doing this since 2005. What’s so special?

Go to this website: https://rinkeby.etherscan.io/.

In the search bar, type your public wallet address. The first result is a record of the transaction you just performed. Here is mine:

This is proof that the post you created has been successfully written to the public blockchain where it will now remain forever.

Think of apps like Facebook, TikTok, and Instagram. There is a lot of data they collect from you, and they claim ownership over it. These apps will never hand this data out willingly (even with your consent). The reason they continue to remain dominant is because of this steadfast control over the data they collect, and the network effects they guard.

In contrast, in this case, it is not just my website, Milton, that can access this data. Anyone anywhere in the world can now create an app that consumes this data and build on top of it. This data is for everyone to see and use. It is more democratic and decentralized.

So what exactly happened here? Let’s break it down.

Signing transactions

When you clicked on Connect Wallet, you basically authenticated yourself as the owner of the account that you’re using (think of it as logging in).

When you submitted the form, what you actually did was issue a request to run a piece of code (called a smart contract) that I had uploaded to the blockchain.

Since this piece of code would end up creating data that would continue to persist on the blockchain, you had to pay gas fees for it. Why do gas fees exist? For two reasons:

  1. Limit the amount of code being run and data being written to the blockchain
    There is only one copy of a particular blockchain that everyone shares. In such a scenario, unrestricted access to writing data onto the blockchain will result in the system becoming too massive to handle.
    Running code also incurs a gas fee. This is done so that no malicious actor runs code that has the potential to run forever. Since there is a fee involved to run a piece of code, running complex code will lead to higher fees.
  2. Compensate miners for their work
    The Ethereum blockchain (as well as other permissionless, trustless, public blockchains like Bitcoin) is not controlled or owned by a single entity. It is instead maintained by thousands of computers called miners. The job of the miners is to verify and perform transactions sent in. This is a process that consumes a lot of energy and time, and therefore they need to be compensated. The gas fees help in doing just that.

Once the gas fee was paid, one of the miners in the blockchain picked up your request to run my code. Running the code wrote the data you sent onto the blockchain. This transaction was put onto a block containing other transactions, and finally, the block was verified by other miners in the network and added to the existing chain of blocks.

Don’t worry if this doesn’t make too much sense. As long as you understand that you wrote data onto a public, permissionless system, that could be read and used by anyone, you’re good to go. We will explain gas fees, transactions, and mining in much more detail in a separate article.

Mint an NFT

2021 may as well be considered as the year of NFTs. The magnitude of impact it has had over art, culture, music, and games is unlike any other. Since the start of this year, there has been an explosion in the number of NFT projects around the world.

Scrappy Squirrels

The most popular ones, like Cryptopunks and Bored Apes, are worth hundreds of millions of dollars. This tutorial and publication were also created as part of an NFT project called Scrappy Squirrels.

So what are NFTs?

NFTs stand for non-fungible tokens. In laymen's terms, NFTs are a system that allows you to assign ownership to data and digital assets. It is impossible to cover in detail what NFTs are, how they work, and what they represent in this article. We will devote an entire article to this subject. For the time being, the one-liner above is sufficient.

In this section, we will be minting an NFT. What you will be doing in this section is what collectors do when a new (and sometimes, highly anticipated) collection is released.

Head over to the following website: https://buildspace-pokemon.vercel.app/

This should seem familiar. Connect wallet as you did earlier, and then click on Mint NFT. Metamask should prompt you to confirm the transaction. You will notice that the NFT’s price is 0. You are only paying for gas. (In most real-world NFT projects, you will be paying a price for the NFT too).

The transaction, like before, should take about 15–20 seconds. Once done, it will display an Opensea link. Click on it to view your NFT.

This is the NFT I generated:

This NFT is pretty basic: just some text on a colored background. But this is effectively how every NFT project works. You mint on their website, and then display/sell it on Opensea.

Opensea is the world’s largest and most popular NFT marketplace. It is the defacto destination for collectors to buy, sell, and trade NFTs.

One thing to note here is that we didn’t ask Opensea to upload the NFT to its platform. Opensea was able to do it automatically. This was because our NFT minting data was available publicly on the blockchain.

If you wanted to create a platform like Opensea tomorrow, you wouldn’t have to worry about network effects. You would be able to read data off the blockchain and display the NFT above on your website too without needing me or Opensea to authenticate or intervene.

Did you enjoy the minting process? Is your curiosity piqued? If yes, then consider joining the Scrappy Squirrels Discord community. We will be launching our NFTs soon, and you will get a chance to mint one! We will also be running contests and giveaways within the server. We hope to see you there!

2023 Update

If you’re more inclined towards creating and deploying smart contracts, you can do so in 5 minutes using Remix with Metamask and Alchemy.

Here’s the Remix steps to deploy with a node provider of your choice:

  1. Add and compile the contract code in Remix. You can use this beginner hello world code
  2. Add your chosen RPC provider (Alchemy, etc) as a network in Metamask. You do this by clicking on “Add a network” in Metamask. I usually call this new network: “[Network name] via Alchemy”. Get the URL by logging into Alchemy and grabbing the HTTP API key.
  3. If it’s an Ethereum testnet, get testETH from faucets to add to your Metamask. Here are Alchemy’s free faucets: Sepolia or Goerli
  4. Connect Metamask to Remix. If you’re having issues, remove another connected wallet first before connecting Metamask
  5. Deploy your contract by choosing the “Injected Provider” as the deployment environment. This injected provider comes from your selected provider in Metamask. Make sure the right Alchemy network that you want to use is selected in Metamask

If you’re looking for a slightly harder challenge using Hardhat to deploy an NFT smart contract, try this popular hello world tutorial

Conclusion

We have covered a lot of ground in this tutorial. If you’ve reached this far, congratulations! You are now a part of the blockchain community.

Where to go from here?

We suggest joining a few NFT and Crypto Communities on Discord. The Scrappy Squirrels Discord Community would be an excellent place to start. Through Scrappy Squirrels, we are hoping to create a community that is very beginner-friendly and centered around learning and collaboration. We also regularly resources for all kinds of beginners (developers, artists, collectors, gamers, etc).

Also, make sure you follow this publication. We will be posting follow-up articles soon. Some of the things we are going to cover are as follows:

  1. How Bitcoin & Blockchain Works
  2. How Ethereum builds upon Bitcoin
  3. A Complete Guide to NFTs
  4. How to build your own Dapp (Like Milton above)
  5. How to create your own NFT Project
  6. …and much more!

If you have any questions, please leave them in the comments below (or reach out to us on our Discord).

About Scrappy Squirrels

Scrappy Squirrels is a collection of 10,000+ randomly generated NFTs. Scrappy Squirrels are meant for buyers, creators, and developers who are completely new to the NFT ecosystem.

The community is built around learning about the NFT revolution, exploring its current use cases, discovering new applications, and finding members to collaborate on exciting projects with.

Join our community here: https://discord.com/invite/5WeaXPjDrb

--

--