CSE4/526 Spring 2019

Blockchain Application Development

Date Topic Chapter Classnotes To do:
1/28 Course Goals and Plans Course description Desc
2/4 Blockchain Overview Bitcoin to blockchain BCOverview Read Bitcoin whitepaper
2/11 Designing a smart contract Smart contract SmartContract Work on Lab1 Design
2/13 Designing a Dapp - Part 1(concepts) Dapps - I Dapp-Inside out Lab1 - more details
2/18 Defining Dapp - Part 2(architecture) Dapps - II Dapp-working Lab1 - more details
2/20 Developing Dapp - Part 3(code) Dapps - III Dapp-code Lab1 - more details
2/25 Developing Dapp - Part 4(rules) Dapps - IV Dapp-rules Exams dates
3/4 Ethereum Concepts Basic, Crypto, Hashing Ethereum Platform Study
3/13 Midterm Review Concepts discussed in Lectures Review Study
3/24 Lab2, Buildathon Lab2 Discussion Lab2 More info on midterm, Buildathon
3/27 Midterm Exam 5.00-6.20PM NSC 225
4/1 Lab2, TruffleVM Demo Let's "ASK": Remix Demo Lab2 Register for CDSE workshop, Buildathon
4/3 Lab2, TruffleVM Demo Continue Lab2-Truffle IDE Truffle details Linux Tuorial of Ballot
4/8 Lab2, onboarding to public network Ethereum Revisit Linux Tuorial of Ballot
4/10 Lab2, walkthru development Truffle Suite IDE Code files needed
4/15 Web3 API web3.js Web3 JS API Read the Docs
4/17 Web3 API Roadmap Web3 JS API Read the Docs
4/22 Secure Hashing Handson Exploration Reverse Engineering Blind Auction Sol
4/29 Events and event Handling Define and use events Events Blind Auction Sol
5/1 Dapp Models and Standards Standards Dapp Models
5/1 Final Exam Review Blockchain Roadmap Blockchain Programming
5/9 Final Exam Review Blockchain Roadmap Notes from Review
5/13 Final Exam 7.15-10.15PM Cooke 121

Blockchain Overview

Let's explore a little bit of history, peek into the blockchain, understand smart contracts and review a whole lot of use cases from diverse domains. Bring your laptops to class. we will have some fun.

Designing a Smart Contract

Lets explore an approach in designing a smart contract. We will use a specific design approach. We will code the smart contrcat in Solidity, test it on Remix IDE.

Designing a Dapp - Part 1: Concepts

Lets explore an approach in designing a Dapp. We will first learn about the inner working of the blockchain to get an idea how it is built, what are its building blocks and protocols, where does a smart contract fit it and the role of Dapp?

Designing a Dapp - Part 2: Architecture

Let's explore the architectural model of a Dapp and the blockhain server concept. Also examine teh APIs, for accessing the smart contract functions from the web user interface. All these will give a strong foundation for coding the Dapp stack and smart contract.

Designing a Dapp - Part 3: Coding

Let's follow the design steps and develop a sample smart contract to understand the important part of Dapp development. Today we develop the smart contract for voting process (Ballot.sol) in Solidity language and test it in Remix environment. Here is a version fo Ballot.sol.

Designing a Dapp - Part 4: Rules

Today we will implement trust in Dapp. By adding modifers for implementing rules. We will also Demo a VM as a development environment. Here is a version fo Ballot.sol.

Ethereum Blockchain Concepts

In this lecture, we will go over some important concepts covering Ethereum blockchain platform.

Ethereum Blockchain Concepts

In this lecture, we will go over some important concepts covering Ethereum blockchain platform.