Learn Solidity: Programming Language for Smart Contracts
3.9 (229 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
1,457 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Learn Solidity: Programming Language for Smart Contracts to your Wishlist.

Add to Wishlist

Learn Solidity: Programming Language for Smart Contracts

Best Solidity Tutorial Available Online to Build Blockchain Based Decentralized Application DApps on Ethereum Network
3.9 (229 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
1,457 students enrolled
Created by Toshendra Sharma
Last updated 3/2017
Current price: $10 Original price: $200 Discount: 95% off
5 hours left at this price!
30-Day Money-Back Guarantee
  • 3 hours on-demand video
  • 5 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Develop Ethereum Smart Contracts using Solidity
  • Understand the basics & advance features of Solidity & Ethereum Virtual Machine
  • Develop their own decentralized blockchain applications
View Curriculum
  • Basics of Blockchain
  • Basics of Ethereum
  • Basics of Cryptocurrencies
  • Basics of any kind programming language

Have you heard of Ethereum & Smart Contracts?

Have you ever thought of writing smart contracts or your own cryptocurrencies?

Do you know smart contracts are written in Solidity Programming Language?

Solidity is a programming language for writing smart contracts which 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 everything related to Solidity to build Smart Contracts based Blockchain application on Ethereum. We will learn what:

  • What is Ethereum, Smart Contracts & Blockchain?
  • What is Solidity & Ethereum Virtual Machine?
  • How to install & Setup Solidity Development Environment?
  • How to write first basic smart contracts?
  • Data types, control structure, functions, inheritance, mathematical operations, etc.
  • How to deploy & test smart contracts in Solidity?
  • Building 2 Applications 
    1. Voting Ballot on Blockchain
    2. FundRaiser Application

This course will enable you to build any kind of Blockchain application on Ethereum using Solidity which is most common language for writing Ethereum Blockchain.

Who is the target audience?
  • Anyone interested in being Ethereum Developer
  • Anyone interested in building decentralized application (DApps)
  • Anyone interested in Learning Solidity Language for Smart Contracts
  • Anyone interested in learning how to build their own cryptocurrency
Students Who Viewed This Course Also Viewed
Curriculum For This Course
25 Lectures
Introduction & Overview
3 Lectures 19:24

This will be the introductory lecture where I will introduce myself & take you to the entire course and explain what we are going to learn here.

Preview 04:22

In this lecture we will introduce the Blockchain, Ethereum & Smart Contracts to people who are new to this technology to revise their concepts.

Preview 10:59

Here I will explain the Solidity & Ethereum Virtual Machine at very basic level.

Preview 04:03
Solidity - Language of Smart Contracts
21 Lectures 02:31:37

Here we will see how to install solidity compiler (if needed) & Mist wallet on your local machine for development purpose. We will also learn to use online Solidity compiler and avoid using any local environment.

Installing Solidity & Ethereum Wallet

Here we will start the actual development in Solidity. We will introduce this beautiful language through one wonderful Coin example where we creator will be able to mint any number of coins at any time and transfer them to anyone's account. Users can query balance of any addresses they want using the Mist interface.

Basics of Solidity by Example: Subcoin Smart Contract

Here we will teach you the basic & advanced layout of the Solidity file. What is included & in which order. This will help you understand the contract structure so that you can plan your own smart contract easily.

Layout of a Solidity Source File & Structure of Smart Contracts

In this lecture we will go through the data types also known as value types in Solidity. When you declare a variable in Solidity you may or may not define it's type. Below are the types we will discuss:

  • int
  • uint
  • bytes
  • real
  • string
  • array
  • mapping
  • struct
  • enum
General Value Types (Int, Real, String, Bytes, Arrays, Mapping, Enum, address)

Now we will learn the standard ether units as well as date & time units:

  • block
  • tx
  • msg
  • ether
  • wei
  • finney
  • szabo
  • seconds
  • minutes
  • hours
  • weeks
  • years
Ether Units, Time Units

There are many globally available variables & functions which you can use in solidity. In this lecture we wil talk about them:

  • assert
  • addmod
  • mulmod
  • keccak256
  • sha3
  • sha256
  • rimemd160
  • ecrecover
  • revert
  • selfdestruct 
  • etc.
Globally Available Variables & Functions

Here we will talk about Arithmetic, Logical & Bitwise Operators:

  • +, -, *, **, /, %
  • &&, ||, !, ==, !=
  • &, |, ^ 
  • and many more
Operators: Arithmetic, Logical & Bitwise Operators

Here we will talk about the control structure of Solidity programming language. We will learn to use if-else, do-while, for etc loops.

Control Structure (if-else, for, while, Do-While)

Here we will talk about the scoping of the variables in Solidity.

Scoping and Declarations

Here we will talk about input & output parameters of the Solidity functions inside the smart contracts.

Input Parameters and Output Parameters

Here we will learn the different methods to make any function call & set their return types in Solidity.

Function Calls & Return Types

Here we will learn about very interesting features of Solidity called function modifiers which put some restrictions in Solidity functions in Smart Contracts.

Preview 04:52

Here we will learn how to setup a fallback functions in smart contracts.

Fallback Function

Here we will learn ho to setup an abstract contract & use it as an interface.

Abstract Contract

Now we will talk about initializing a smart contract inside another smart contracts using new keyword.

Creating Contracts via "new" Operator

Here we will learn how to implement Inheritance among smart contracts.

Inheriting Smart Contracts

In this lecture we will learn how to import Smart Contracts from one file to another file.

Importing Smart Contracts & Compiling Contracts

Here we will learn about Ethereum Events & logging to debug a smart contract.

Events & Logging

In this lecture we will talk about Exceptions in Smart Contracts. We will learn the user defined exceptions & automatic error based exceptions.


Here we will go through the complete Example of Crowd Funding Smart Contract which can be used to raise some funding on Ethereum. We will see the functions like contribute, payout, refund etc.

Complete Example: Crowd Funding Smart Contract

In this lecture we will understand a Voting Ballot system written on smart contracts.

Complete Example: Voting Ballot Smart Contract
Where Should you Go from Here?
1 Lecture 01:36
About the Instructor
Toshendra Sharma
3.9 Average rating
1,275 Reviews
13,437 Students
33 Courses
Entrepreneur in Security & Blockchain

I am a founder & CEO of RecordsKeeper, a Blockchain-based record keeping solution for businesses.

Earlier, I founded Appvigil (Wegilant) in Nov 2011 while pursuing my Masters in Application Security from IIT Bombay, India. Appvigil is the Mobile App Vulnerability Scanner on Cloud. Appvigil also offers security audit services for mobile devices and applications, and compliance with IT regulations. I was heading the team as Chief Executive Officer. The company has won NASSCOM Emerge 50 Award 2014 one of the biggest awards in India. The company got incubation in IIT Bombay's Business Incubator SINE in August 2013.

During Wegilant & before that, I have trained 15000+ students in 5 years across various college campuses in India. I have also written a book on AVR Microcontroller with the name "Robotics with AVR".

I was the part of Forbes India 30Under30 List of 2016 in Technology space.