O'Reilly logo
live online training icon Live Online training

Building Smart Contracts on the Blockchain

Setup Ethereum Blockchains and learn how to create your own smart contracts

Ravi Agarwal

Blockchain technology has indicated potential to completely shift to an era of programmable assets, enabling trust online, ownership of digital data, money, identity, and contracts. Today, every industry is building capabilities and experimenting to leverage Blockchain to improve their businesses. This online course begins with setting the context for why Blockchain has become mainstream in such a short span of time. It further explores Blockchain key constructs, such as distributed network, consensus protocol, and encryption. Discover how Blockchain actually works, through an example of bitcoin Blockchain and a practical demonstration to understand how transactions are stored on Blockchain. You’ll also learn about various Blockchain use-cases in industries worldwide, to develop understanding on how could this technology help in your area. You’ll also gain an understanding of the Ethereum platform and core concepts such as Gas, EVM, etc. We’ll explore Remix IDE and Truffle framework to create, deploy, and test smart contracts. In addition, learn how to setup your own private Ethereum Blockchain using Ganache. Furthermore, you will learn how different innovative solutions are built using cryptocurrencies, and how Blockchain is powering new ways of fundraising through initial coin offering (ICO). We’ll also review different token issuance specifications such as ERC20, ERC223 and ERC721. You’ll become familiar with emerging market trends and regulatory stand from different countries.

What you'll learn-and how you can apply it

  • Insights about Blockchain and key concepts like distributed network, consensus, and encryption
  • Understand how Blockchain works, through a demo
  • Discuss the compelling use-cases of Blockchain across different industries
  • Understand Ethereum Blockchain and core concepts
  • Setup your private Ethereum Blockchain and different frameworks
  • Learn the step-by-step process to create, deploy, and test Smart Contracts
  • Gain insights into different cryptocurrencies
  • Learn about Initial Coin Offering (ICO)
  • Learn about related market trends

This training course is for you because...

You are interested in how Blockchain technology is transforming different industries.

Prerequisites

This training is suitable for all enthusiasts, with no prior knowledge of Blockchain, however basic understanding of the following topics would be advantageous:

  • Computer science and programming knowledge (any language)
  • Familiarity with https://remix.ethereum.org and http://truffleframework.com/

Materials, downloads, or Supplemental Content needed in advance

Recommended Preparation:

Building Blockchain Projects (book)

About your instructor

  • Ravi is a Blockchain professional providing extensive business consulting and IT solutions in Banking / Consumer Lending domain across different geographies including UK, USA, Canada and APAC for clients.

    He has delivered business and technology solutions across transformational themes that provided direct revenue generation and efficiency. Some of recent engagements were in the areas of digital strategy, process optimization, business value realization and regulatory compliance.

    He is expert at exploration and implementation with Blockchain and Crypto-currencies over different platforms such as Ethereum, Corda, Hyperledger.

    Ravi is known in the community and often invited speaker at Blockchain conferences.

Schedule

The timeframes are only estimates and may vary according to how the class is progressing

Day 1

Blockchain foundational (60 mins including labs)

  • Why Blockchain
  • Key constructs of Blockchain
  • Public/Private Key Cryptography
  • How Blockchain works with bitcoin
  • Proof of Work/ Consensus
  • Blockchain types and different use-cases across industries
  • Characteristics of Blockchain use-cases
  • Labs (10 mins)

Break (5 mins)

Exploring Ethereum Essentials (60 mins including labs)

  • Introduction to Ethereum
  • Gas - Price and Limit
  • Ether and Ether Mining
  • Ethereum vs Bitcoin
  • What is a Smart contract
  • Smart contract with a simple use case
  • Ethereum Frameworks – Web3.js, eth.js
  • Development Environment – Remix IDE and Truffle Framework
  • Ethereum Wallet - Metamask
  • Ethereum Networks – Koven, Ropsten, Rinkeby
  • Test Ether
  • Labs (30 minutes)

Solidity basics (30 mins)

  • Introduction to Solidity
  • Basics (version pragma and comments)
  • Structure of a contract
  • Keywords
  • Data Types and Data Structures
  • Looping and Conditional Statements
  • Inheritance

Break (10 mins)

Creating basic Smart Contract using Remix (60 mins including labs)

  • Exploring Remix IDE
  • Creating multiple different smart contracts
  • Deploying smart contract on different Ethereum environment
  • Testing smart contract
  • Labs (50 minutes)

Q&A and Quiz

Day 2

Creating basic Smart Contract using Remix (120 mins including labs)

  • Introduction to the Truffle Framework
  • Introduction to personal Ethereum Blockchain - Ganache
  • Setting up systems with pre-requisite software
  • Writing smart contract for a use case
  • Compiling and migrating the smart contract
  • Deploying smart contract services on the test Blockchain network
  • Creating test cases to validate business rules in smart contract
  • Communicating between smart contracts and HTML pages using web3.js and Metamask
  • Running the DApp on the Ethereum node
  • Labs (90 minutes)

Break (10 mins)

Introduction to Crypto-currency and ICO (60 mins including labs)

  • What is Crypto-currency?
  • Types of crypto-currencies
  • How to buy, sell and store crypto-currencies
  • Types of cryptocurrency wallet
  • What is an ICO
  • Ecosystem of an ICO
  • Learning about Ethereum token specifications ERC20, ERC223 and ERC721
  • Labs (20 minutes)

Break (5 mins)

Summing up (30 mins)

  • Market trends in Blockchain and crypto-currencies
  • Recap of Blockchain learning

Q&A and Quiz