Ethereum was developed to take blockchain technology to a whole new level. It wanted to become a more sustainable and smarter version of its father, Bitcoin, to show the world how much blockchain can achieve.
Well, looking at its progress throughout the years, we can say that the son has made the father very proud!
The Ethereum blockchain was able to create a way for programming codes to get executed on the network through regular blockchain transactions. To do that, it developed its own programming language, Solidity, which is the offspring of some existing languages like C++ and JavaScript.
Solidity is a high-level programming language that you can use to automate specific actions on a blockchain network (Ethereum here) through smart contracts. These actions can be quite simple, like transferring a few coins to another address, or very elaborate.
The Let’s Get Smart Series!
I started my career as an Android developer and even though I changed paths, my love for programming remained untouched. After a few years of working in the blockchain and crypto space, I knew it was only about time that I dive deeper and learn smart contract development.
After learning the basics, I soon realized my journey so far can be helpful to others who wish to learn more about the blockchain space. You may be either looking for a new career or just simply aiming to add some extra knowledge to your bag.
Whatever your reasons for looking into Solidity and smart contract development, I wish this series of articles would be helpful in some way.
The Let’s Get Smarter! series is my journey in learning Solidity and getting more intimate with the smart contract world.
Now, let’s see what you should know before starting and what you will learn!
What Do You Need To Start Learning Solidity?
You would need a basic understanding of programming languages, algorithms, and how to transform them into programming code.
Knowing other programming languages will help you to learn Solidity quite faster as it follows the syntax of other object-oriented programming languages. Syntax is the collection of words, symbols, and punctuations a programming langue uses to define its rules. The resulting action is called semantics.
For example, let’s consider a specific action and see what is the syntax of two different programming languages, Java and Solidity, to execute it.
Action: show the message “Hello World!” in the console (where you see the details of your program (or smart contracts) execution)
Java:
System.out.println("Hello world");
Solidity:
console.log(“Hello World);
Both lines are doing the same thing but they are using a different language to do that. So even though they are the same, you cannot use one for the other.
The simple example above shows you why knowing at least one object-oriented programing language will be quite helpful in learning Solidity.
Where Will We Develop Our Smart Contracts?
I learned the basics using the Remix online IDE and I will use that platform throughout the series. Remix is online and easy to access. We can write our smart contracts and simply execute them on Ethereum testnets to see how they work.
I have been exploring the idea of other IDEs that support Solidity and will update the series if I decide we can use a better option than Remix.
What Will We Cover In The “Let’s Get Smart!” Series?
We will start by learning the very basic components of a smart contract. I find topic-based learning quite inefficient; for example, what good does it do if we just explore 5 different data types in Solidity in one article? We want to see things in action.
So instead of this, we will go through real-life smart contracts together. We will analyze them piece by piece and learn about each component in action!
It’s Time To Get Smart With Ethereum!
Learning is a journey that never ends! I am a newbie myself in smart contract developments, however, I hope the “Let’s Get Smarter!” series will help us both to learn more with every lesson and stick better to our learning journey.
The first lesson will be just a simple “Hello World!” smart contract as it’s unethical to start learning a programming language with any other first project!
We will go through the basic structure of a smart contract and how we can deploy and execute it on the Ethereum network.
Stay tuned!