Ethereum Development Course - Blockchain at Berkeley

This course will teach you how to become an experienced solidity developer
Free tutorial
Rating: 4.1 out of 5 (414 ratings)
11,445 students
Ethereum Development Course - Blockchain at Berkeley
Free tutorial
Rating: 4.1 out of 5 (414 ratings)
11,445 students
effectively develop a secure full stack Decentralized Applications (dApps) on Ethereum.

Requirements

  • Basic Javascript skills, Download Truffle and Metamask
Description

Blockchain at Berkeley and leaders of well-respected Blockchain start-ups like Consensys, BlockApps, Virtue Poker, and UJO Music have pooled their experience and knowledge to design a curriculum to turn you into an effective developer of secure Decentralized Applications (dApps) on Ethereum.

The Blockchain Development Bootcamp is comprised four modules of full stack programming on the Ethereum Blockchain:

[FREE] Module 1: Developer Environment Setup and Hello World

  1. Getting Started
    1. Ethereum and Solidity Recap
    2. A Starting Example
      1. The bank contract
  2. Hands-on Development
    1. Installing Dependencies
    2. Project Structure
    3. “Hello World!” (Greeter) Contract
      1. Truffle Init
  3. Connecting to the Real World
    1. Attaching Frontend
    2. Web3 api
    3. Create-react-app
    4. Truffle Migrations
  4. Finishing Touches
    1. Javascript Console
    2. Contract Interaction and Final Questions

Module 2: Solidity In-Depth

  1. Data Types and Associated Methods
    1. Typing and your contracts storage
      1. Typing in solidity
  2. Data Structures
    1. Your contracts storage
    2. Structs
    3. Mappings
  3. Simple Operators
  4. Global Variables
  5. Functions and More
    1. Accessor functions
    2. Events
    3. Modifiers
  6. Branching and Loops
  7. Objects and Contracts
    1. Calling external contract
    2. Inheritance
    3. Import
  8. Other Keywords
    1. Throwing
    2. Selfdestruct

Module 3: Advanced Dapp Development

  1. Greeter Review
    1. Git clone if needed
    2. Testrpc window, npm install/start window, truffle migrate, EthereumSetup.js
    3. Truffle console and final product
    4. How to fetch chain state
      1. What is the web3 api
      2. What is a contract abi?
      3. Why do I have to change the address every time
  2. Web3 API
    1. Pulling information from the blockchain
    2. Modify greeter app that uses web3 to retrieve:
      1. Wallet address
      2. Balance (BigNumber note. Have people try to get as decimal and fail)
      3. Latest block number
      4. Latest block timestamp
      5. Latest block hash
      6. Gas price
  3. Developer Tools I: MetaMask and Deployment
    1. Metamask Chrome Setup
    2. Communication between your browser and your blockchain
    3. Sending and Signing Transactions
    4. Live deployment to Kovan testnet
    5. Live deployment to Ethereum Mainnet

Module 4: Security and Attacks Vectors

  1. Philosophy and Fundamentals
  2. Basic Security
    1. Solidity defaults
    2. .send() vs .transfer vs .call().value()
    3. “Smart” smart contract standards
  3. Attack Vectors
    1. Data races
    2. Integer overflow
  4. Community tools
    1. OpenZeppelin
    2. Oyente
    3. SolCover



Who this course is for:
  • The ideal individual for this course is someone who is interested in developing DApps and wants an in depth walkthrough on how to start. This course stands to benefit college students, experienced developers, or anyone seeking a comprehensive solidity course. Unless you are a seasoned Ethereum developer already, this is the course for you!
Curriculum
1 section • 8 lectures • 41m total length
  • Introduction to Development
  • 1.1 Setup
  • 1.2 - Greeter Contract
  • 1.3 - Deploy and Console
  • MO1.4.1 - Linking Frontend - Create-react-app
  • MO1.4.2 - Linking Frontend - Using Web3
  • MO1.4.3 - Linking Frontend - Final Edits to App.js
  • MO1.4.4 - Linking Frontend - Launching the Dapp
  • Quiz 1

Instructor
Blockchain at Berkeley Organization
  • 4.1 Instructor Rating
  • 1,389 Reviews
  • 31,186 Students
  • 2 Courses

Universities are hubs for cutting-edge research and visionary ideas. Premised on this idea,
Blockchain at Berkeley brings together an eclectic team of individuals, ranging from computer
scientists to business leaders, to develop what we see as the technology of the future:
blockchain. While still nascent and often misunderstood, blockchain offers the potential for
massive disruption in many industries. By positioning ourselves as the bridge between
academia and the public sphere, Blockchain at Berkeley provides the knowledge and education
this rapidly-evolving space so desperately needs.