• Course level: Beginner


Solidity is a programming language for writing smart contracts that run on Ethereum Virtual Machine on Blockchain. It is a contract-oriented, high-level language whose syntax is similar to that of JavaScript and it is designed to target the Ethereum Virtual Machine.

In this course, I will teach you all the basic knowledge to use the programming language Solidity with the aim of creating smart contracts in the ecosystem of Ethereum. You’ll learn how to write a smart contract from the basics of his code, how to build an intelligent contract using the REMIX IDE browser, how to leverage Truffle’s capabilities to test your code and avoid common writing errors.

At the end of this course, you will be able to write simple smart contracts in a completely independent way and you will have the necessary knowledge to master the Solidity programming language.

Who this course is for:

  1. Who has heard about blockchains and is interested in knowing what they are and how they can program. This course is dedicated to all beginners who want to learn the basics of Solidity and how the use of this programming language can help us creating Smart contracts.

What Will I Learn?

  • At the end of the course, you will be at an intermediate level of Solidity knowledge, you will be able to write yourself in complete autonomy about simple smart contracts, you will understand how they work, how to invoke a function within a smart contract, and how to create a private blockchain.

Topics for this course

33 Lessons


Tutorial 1 The Basics00:00:00
Tutorial 2 Inheritance00:00:00
Tutorial 3 Custom Modifiers and Error Handling00:00:00
Tutorial 4 Imports and Libraries00:00:00
Tutorial 5 Event logging and Transaction Information00:00:00
Tutorial 6 Data Types (Array, Mapping, Struct)00:00:00
Tutorial 7 Extending String Functionality and Bytes00:00:00
Tutorial 8 Debugging Solidity Using Remix00:00:00
Tutorial 9 ERC20 Tokens and Creating your own Crypto Currency00:00:00
Tutorial 10 ERC223 Tokens and Creating your own Crypto Currency00:00:00
Tutorial 11 Deploying Tokens and Creating your own Crypto Currency00:00:00
Tutorial 12 Functional Assembly00:00:00
Tutorial 13 Instructional Assembly00:00:00
Tutorial 14 Transferring Ethereum between contracts00:00:00
Tutorial 15 Public vs External00:00:00
Tutorial 16 Time Based Events00:00:00
Tutorial 17 Polymorphism00:00:00
Tutorial 18 Randomness and Gambling00:00:00
Tutorial 19 Nested Arrays and Storage00:00:00
Tutorial 20 Parameter Mapping and Multiple Return Values00:00:00
Tutorial 21 Truffle, Atom and TestRPC00:00:00
Tutorial 22 Developing an ICO/Crowdsale with TDD00:00:00
Tutorial 23 State Modifiers (view, pure, constant)00:00:00
Tutorial 24 Multisig Wallet00:00:00
Tutorial 25 Multisig Wallet cont. Multi Authentication00:00:00
Tutorial 26 Auditing, Security and Testing (Long, but important)00:00:00
Tutorial 27 Getting started with browser development using Metamask00:00:00
Tutorial 28 Address book on the blockchain powered by Angular00:00:00
Tutorial 29 What is WEI and how is Ether defined?00:00:00
Tutorial 30 Gas Explained00:00:00
Tutorial 31 Interacting with RPC using Java and web3j00:00:00
Tutorial 32 Transferring ether with Java using web3j00:00:00
Tutorial 33 Deploying and using a contract using Java and web3j00:00:00

Enrolment validity: Lifetime


  • To participate in this course successfully you will need to know how to use a computer. I'll give you all the basic information you need to understand what a blockchain is and how it works, you don't need to have any other knowledge but if you are able to program in other languages (such as JavaScript for example) it's definitely an advantage.