Blockchain Ethereum

How to Become a Blockchain Developer

Figuring out how to become a blockchain developer

Cryptocurrencies and the technologies they use are changing the world. They’re everywhere — even my Grandma knows what Bitcoin is! What makes cryptocurrency so special is blockchain technology. Every cryptocurrency is built on what’s known as Distributed Ledger Technology (DLT), and blockchain is the most popular form of it. Someone who builds on a blockchain is called a blockchain developer. Would you like to learn how to become one? Of course, you would!

Everything you need is freely available on the internet. Blockchain is open-sourced. The secrets of it aren’t locked in a vault, like a recipe for Coca-Cola! If you want to learn how to become a specialized expert in this area, the first thing you need to understand is the basics of blockchain technology. Are you ready? Let’s go!

Blockchain Basics

A blockchain is a digital database for storing information. Information is stored in groups called ‘blocks’. A blockchain is a bit like an Excel spreadsheet. However, blockchains have some very special features that make them different. Blockchains are:

Blockchain Developer Decentralized

Decentralized A blockchain isn’t stored in one place — it has no center. It is stored across many different computers. These computers are called nodes. Blockchains are called peer-to-peer networks because there are no third parties like Microsoft, Google, or Facebook involved. So, not one single entity has control over the data on a blockchain, users and every blockchain developer deal with each other directly instead of through a third party.

Blockchain Developer Public
Public All the information on a blockchain is public. This means that everyone can see it.
Blockchain Developer Guided by Consensus

Guided by Consensus This means that before new information is added to the blockchain, more than half of the nodes have to agree that it is valid before it is added. It protects the blockchain from fraud.

Blockchain Developer Immutable

Immutable This means that once information is added it can’t be changed or removed. Information on a blockchain is protected by This means that it is encrypted and nearly impossible to hack.

The software that’s built on blockchains is called dApps (decentralized applications). The first dApp was built on Bitcoin’s blockchain and it’s a peer-to-peer payment system. Other blockchains — like NEO, EOS, and Ethereum – are designed to do more. These blockchains are designed to have all kinds of dApps built on them. Bitcoin was designed as an alternative to centralized banking. Platforms like NEO and Ethereum want their users to build dApp alternatives to all kinds of centralized apps, like Twitter, Google, and Uber.

As a blockchain developer, you’ll be helping to build a fully decentralized internet! That’s pretty cool, don’t you think?

The second step is deciding which blockchain you want to develop on. Two of the most popular development platforms are NEO and Ethereum. Let’s have a look at what each platform offers to its users…

Ethereum vs NEO

Ethereum was created by Vitalik Buterin and went live in 2015. NEO was originally called Antshares and was founded by Da Hongfei and Erik Zhang in 2014. It became NEO in 2017.

Blockchain Developer Vitalik Buterin ETH vs Da Hongfei NEO

Both platforms allow users to build dApps. They do this in slightly different ways. DApps are built using programming languages, just like regular software. NEO dApps can be built with a lot of different programming languages, including C# and Java. These are popular languages that most software developers know how to use. This makes using NEO easier for experienced users.

Ethereum

Ethereum has its language called Solidity. This means that even experienced developer needs to learn a new language to be a blockchain developer and start building dApps. However, Solidity is similar to other languages like C++ and Javascript. Most users will find Solidity tricky, to begin with. However, users who know Javascript or C++ will find it easier.

NEO

NEO is focused on providing platforms for the digital businesses of the future. It follows Chinese business regulations and works closely with the Chinese government. It is also currently a faster network than Ethereum. This is great for applications that will need to process a lot of transactions per second!

Blockchain Developer Ethereum

Ethereum also has links with big businesses like Mastercard and Samsung. However, Ethereum is more focused on encouraging users to develop the blockchain than NEO is. It also has the largest dApp building community of any other blockchain. This is why I believe Ethereum is the best platform for a newbie to start their development training.

In the rest of this guide, I’ll tell you everything you need to know about how to become a blockchain developer on Ethereum. Let’s start by having a look at what Solidity is and how it works…

What is Solidity?

Blockchain Developer Solidity
Solidity was developed by an Ethereum team, which was led by Dr. Gavin Wood in 2014. Solidity is used to write smart contracts. Smart contracts are used to create dApps.

Smart contracts are the rules which guide transactions on Ethereum’s blockchain. If the conditions of a smart contract are met, then the transaction will happen. If the conditions of a smart contract are not met, then the transaction will not happen. For example, let’s look at how one transaction takes place on two different blockchains. The transaction is between Diana and Ross;

Bitcoin Blockchain

Diana is selling football online for 5 Bitcoins (BTC). Ross decides to buy a football, so he sends Diana 5 BTC on the Bitcoin blockchain. Diana receives 5 BTC from Ross and sends him a football. The way that Bitcoin blockchain developers programmed it, the transaction looks like this:

Ross sends 5BTC to Diana.

That’s a good deal, right? But what if Diana doesn’t send the football? She’ll still have Ross’s Bitcoins but Ross won’t have a football. What Diana and Ross need is a smart contract. Now let’s see what the transaction looks like on the Ethereum blockchain.

Ethereum Blockchain

Diana is selling football for 70 ETH. Ross wants a football so he sends Diana 70 ETH. However, Diana won’t receive the 70 ETH until she has sent the football to Ross. As soon as Ross receives his football, Diana will receive her 70 ETH. This is what the transaction would look like on the Ethereum blockchain:

If Ross sends 70 ETH to Diana, then Diana sends a football to Ross.

Both parts of the contract have to happen for the transaction to be completed. Which transaction would you prefer?

Smart contracts written by blockchain developers with Solidity aren’t just for money transfers. They can be used for lots of different things. Solidity smart contracts can be used to guide all kinds of transactions from secure voting in elections to rental agreements. Now let’s look at how Solidity works…

How does Solidity work?

Solidity is a high-level coding language. This means that it is designed to be read and used by human beings! Computer programs are usually written in a high-level language and then translated into a low-level coding language.

A low-level coding language is designed to be read and used by computers. Low-level languages are made up of 1s and 0s. This is called binary. Some very clever human beings can write code in binary, but unfortunately, I’m not one of them!

Blockchain Developer BinaryBinary Conversion Chart | Source: sciencefriday

When a blockchain developer builds dApps and smart contracts on the Ethereum blockchain, there are rules which guide their design. For example, if you want to design a new cryptocurrency using Solidity you have to follow a set of rules called ERC20. These rules make it easier to tell how new dApps will work when they are launched on the blockchain.

Ethereum blockchain development happens in a very special place called the Ethereum Virtual Machine.

Ethereum Virtual Machine

A virtual machine is an environment where new computer programs can be written. New programs are developed in virtual machines so they can be kept separate from the rest of a system’s programs.

Blockchain Developer Solidity Ethereum Bytecodes Ethereum VM

Imagine you’re building a new kind of car. It would be a very bad idea to build and test a new car in the middle of a busy road, wouldn’t it? You would build and test your car in a factory and on empty streets. This way your new car won’t be able to damage any other cars and they won’t be able to damage your car.

This is how the EVM works. It is a factory for building new smart contracts. This makes Ethereum a great place to learn blockchain. The EVM allows users to practice blockchain programming without worrying about making mistakes. Any mistakes a new blockchain developer makes won’t affect the rest of the blockchain.

The EVM is also Turing complete. This means that whatever a computer can do, you can design using the EVM. The only limit is your imagination! Think of all the exciting new ideas being built using the EVM right now!

So, now you know what Solidity is, how smart contracts work and where they’re developed. Next, let’s look at the Solidity code you’ll be using.

Solidity Code

Learning Solidity is a lot like learning to speak a new language, but it is essential to become a blockchain developer on the Ethereum platform. Solidity basics are like nouns, adjectives, and verbs. Nouns, adjectives, and verbs are tools for creating sentences. Here are some of the tools for creating Solidity smart contracts;

  • Variables – These are used to store information on the blockchain. There are lots of different kinds of variables but here are some of the most common:
    • Booleans – These are used to store information that is either true or false. The keyword for Booleans is bool. Here’s what a Boolean variable for this guide might look like:
      Note: A keyword is a way a coding tool is written in Solidity. It’s important to write each keyword correctly to get them to work the way you want them to.

      Blockchain Developer

    • Integers – These are used to store information as a number. There are two types of the integer. Regular integers can be positive or negative numbers. Their keyword is int. Unsigned integers can only be positive numbers. Their keyword is uint.
    • Addresses – These are used to store Ethereum addresses. Each Ethereum user has its address or addresses on the blockchain. Diana and Ross, from the example earlier, would both need addresses for their smart contract to work. Their keyword is the address.
    • Strings – These are used to store text information. Their keyword is strings.
  • Functions – A function is used to do a certain job. A function can use information from variables to create new information. Let’s use a sum as an example. In the sum 2+3=5, 2 and 3 are the variables and the function is +. 5 is the information the function returns. For this sum, the keyword would be function add. This is what sums look like in smart contracts;
    Blockchain Developer
  • Structs– These are used to put variables into groups. Do you remember that new car you were building? In Solidity, you could use a struct to group information about your car! It would look something like this:
    Blockchain Developer

Beginners can find learning Solidity pretty scary but don’t worry, there are some really fun online courses to get you started.

Two courses that teach you how to become a blockchain developer are Space Doggos and CryptoZombies. See? You’re having fun already, aren’t you?

Space Doggos and CryptoZombies are both gamified Solidity lessons for beginners. This means that they both turn Ethereum blockchain into a game! Let’s see which platform will be better at helping you.

Space Doggos

learn solidity space doggos
Learn Solidity with Space Doggos!

Space Doggos allows beginners to learn blockchain development by creating characters and environments for an adventure in space.

The first lesson contains ten chapters of information and tasks to get you started. Each chapter has detailed notes on the processes being used. These include the variables, functions, and structs I talked about earlier.

Users can design their astronaut dog using real Solidity code. To do this, users need to write code for the dog’s breed, costume, and mood. The code becomes more complicated as the adventure continues.

As an introduction to the Ethereum blockchain, Space Doggos is a well-designed and entertaining platform for any upcoming blockchain developer.

CryptoZombies

CryptoZombies allows users to design a whole army of zombies. To do this, users first have to build a zombie factory. Then, users can code the way their zombies look and even the way they attack their victims! You’ll also get the chance to build a zombie battle system. You don’t get to do that very often, do you?

Blockchain Developer Crypto Zombies

CryptoZombies is very entertaining and makes a lot of difficult ideas fun. However, the lessons aren’t quite as detailed or clear as they are when you use Space Doggos.

So, if you want to command an army of the undead, then CryptoZombies is the course for you. However, I would recommend Space Doggos.

When you’ve learned everything there is to learn from Space Doggos, you might need some more advanced lessons. For this, I would recommend the BitDegree Solidity course.

More Advanced Lessons

The BitDegree solidity course is great for users who have learned Solidity basics and are ready to start blockchain programming. The course starts with environment setup and takes users through to building and launching their cryptocurrency!

solidity course Bitdegree
Learn Solidity with BitDegree

Summary

  1. Learn the basics of blockchain and cryptocurrency. To do this, you’ve got to get involved! Visit Bitcoin forums on Reddit, watch crypto vlogs on Youtube and keep up with blockchain news on Coindesk.
  2. Buy some cryptocurrency. The best way to learn about cryptocurrency is to go to an exchange and buy some. A great exchange for newbies is Coinbase. Buy a small amount of currency and use it to explore the world of crypto!
  3. Try the basics of blockchain programming on Space Doggos or CryptoZombies. These are both great places to start learning to develop on a blockchain.
  4. Sign up for a more advanced Solidity course, like the one offered here at BitDegree.
  5. Get coding! Use all your new skills to create dApps and smart contracts that are going to change the world! No pressure…

Now, you know where to start. You know how to become a blockchain developer. Let’s put it into action!

Blockchain technology is going to be a big part of our lives in the future. Blockchain development is going to be a big business.

For more information, check out our other guides to cryptocurrency, Ethereum, and blockchains.

10 Comments

Click here to post a comment

  • This piece of writing gives clear idea designed for the new viewers of blogging,
    that in fact how to do blogging and site-building.

    tippler; Micah,

  • Hello BitDegree Tutorials, this is my first day of becoming a blockchain developer… I am planning on writing a Blog and documenting my progression in becoming a successful blockchain developer I’m a complete newbie at this point and today is my first day learning so October 31st 2018 is the day that my life changed

  • I have a masters in computer science, extensive network design and implementation experience and would like to become a block chain developer. I am looking for most efficient method of gaining the skills required to enter the field.

  • It’s a pity you don’t have a donate button! I’d certainly
    donate to this brilliant blog! I suppose for now i’ll settle for bookmarking and adding your RSS feed to my Google
    account. I look forward to brand new updates and will talk about this blog with my Facebook group.

    Talk soon!

  • Am really very happy to read this from your website here,i have been watching about block chain yesterday here in my country Uganda and i have a big interested in it now.Thanks