A few days back I wrote an article on Codecademy’s Introduction To Blockchain Part 1
This is the follow up to the previous post which covers the second section of it.
Now, the second section is where things get interesting.
We would be able to learn how to create our own blockchain! How cool is that?
We all have many questions, doubts, etc about how the blockchain works!
We all have problems on why this transaction is taking so much time!
We all get angry when we have invested in a crypto a lot and a security breach happens!
Do you just want to complain and whine all the time, or want to take the matter into your hands and build something?
Some people say that programming is only for those who are nerds or highly intelligent and normal people can’t get it.
But let me tell you this if you enjoy doing problem solving. If you are curious about how things work when someone writes some lines of codes in a computer. Then programming can be for you. Just try it and find it out. Many people out there have tried programming at a later stage from their initial career and have loved it, not just for the monetary gain, but for the fun of it.
This course requires some knowledge of Python. If you are not familiar with Python at all, then you might want to give Python a try through any online courses. If you know any other programming languages, then you would be fine I believe.
So, let’s start the course!
2. Build Your Own Mini — Blockchain!
This one has 12 Steps in it. Those who have a problem with coding, and just want to watch for first and give it a hands on try later, you can refer to my Github Repository for answers.
Step 1: Representing Transactions
This contains an interactive code editor which lets us write a code to include our own transaction as well as to create a list for Block and to add any 3 transactions to that block.
Step 2: Creating Blocks
This contains an interactive code editor which lets us write a code for the initialization of Blocks. This is just the starting point which also shows how we capture the DateTime. Codecademy have a slight problem there, but it has a simple solution.
Step 3: Hashing and SHA256
This contains an interactive code editor which lets us write a code to hash a particular text as well as print it.
Step 4: Generating Block Hashes
This contains an interactive code editor which lets us create a hash from all the details in that block, as of how in real blockchains happen. We create a hash with all the details and initialize that block with that info.
Step 5: Creating the Blockchain Class
This one contains an interactive code editor which lets us create a Blockchain class as well as the genesis block.
Step 6: Adding Blocks to the Blockchain
This one, though it contains an interactive code editor, the answer is already in the code and you just require to run it. Either a mistake from Codecademy or maybe they thought it might be a little tough for beginners.
Step 7: Checking for a Broken Chain
This one contains an interactive code editor which shows us how we check the integrity of the Chain by looking at the hash of the chains in the blockchain.
Step 8: Hacking the Chain
This one contains an interactive code which shows how we can tamper the blockchain and though not explicitly mentioned, shows us the importance of Proof Of Work.
Step 9: Nonce and Proof of Work
This one contains an interactive code which shows how the hash is found. It is fun to learn this part as you kind of crack the hash in order to match the difficulty.
Step 10: Implementing Proof of Work
This one contains an interactive code which shows how we can implement the knowledge we acquired from the previous Step into the Blockchain.
Step 11: Adding Blocks to the Chain Securely
This one contains an interactive code which shows how now we can add new blocks much more securely than we learned earlier.
Step 12: Blockchain Summary
This one contains an interactive code which helps us to use some of the methods we have built or used before.
And with that, we come to an end. Let me first remind you that, this is just the starting point. If you want a career in Blockchain Development or just want to know for the knowledge part, this was just the beginning. I think with time, there will be many more courses like these which will help you to start from beginners to expert.
If you are a beginner, congrats on completing till here. And I hope you find more resources like these to increase your skills with time.
If you are an intermediate or an expert, still congrats on completing it! I hope you also continue to work on your skills to be better. Remember, your fight is not with anyone else, your fight is with yourself, to become better than you were yesterday.