Skip to content

Class at UW for blockchain / Ethereum and related technology.

Notifications You must be signed in to change notification settings

pschlump/UW-Blockchain-Class-01

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 

Repository files navigation

UW-Blockchain-Class-01

Class at UW (University of Wyoming) for blockchain. Class time: 12:00 (noon) till 12:50 PM, Monday, Wednesday, Friday.

Overview

Lecture 00 - Aug 29 - Wednesday

  1. A little bit of background on the instructor

    1. pschlump@uwyo.edu
    2. (for emergencies between 7:00AM and 9:00PM) 720-209-7888 (cell)
    3. This is a "practical" class.
    4. Class Goal - have every student in this class be able to work effectively in the Blockchain/Ethereum world. There are students in this class that are from other departments. The class has been structured to take this into account.
  2. Class policy - UW requires that I talk about cheating. stackoverflow.com and Google are your fiends - give credit where credit is due. warning: stackoverflow.com on ethereum/solidity is badly out of date becuse the technology is changing really fast. If you copy from the web - I expect a comment and a link (URL) to the source of where you got your copy.

  3. Late Policy and (3) Late Coupons I have a grader - most of the grading will be automated. You get 3 late coupons - I will send them to you in email. You can use them for handing in homework 1 week after the due date. Late coupons will be tracked on a semi-private Ethereum Blockchian with a Smart Contract.

  4. 70% from homework, 40% from tests. Midterm and Final. There will be 2 projects for the class. You will have to give a live, in person, demo of both of your projects and you must get them to work. They are required to pass the class.

  5. Class Points Total

    Points available:

    Points Class Item
    1400 Homework total
    800 2 tests

    To get a letter grade in the class:

    Points Semester Grade
    1900 or above A+
    1800 ... 1899 A
    1600 ... 1799 B
    1400 ... 1599 C
    1200 ... 1399 D

    You must demonstrate working projects to the instructor to pass the class (no matter how many points you get). The 2 projects in the class will be directly from the homework. Project one is Homework Assignments 02 to 06. Project 2 is Homework Assignments 08 to 11. Homework will be 100 or 200 points each. Midterm will be 400 points. Final will be 400 points and cumulative. You can expect programming and writen assignments in this class.

    For anybody that just wants to take on a hard project for extra credit see the instructor. It is hard. So think a letter grade for completion of an extra credit project. Code for extra credit projects will be open source under a MIT license. Also note that there are 2200 points available on a letter grading scale of 2000 points. You have a built-in 200 point extra credit in the homework and tests.

  6. textbook: An Introduction to Programming in Go, pdf for free There are no good books on Ethereum/Soliddity. Solidity has moved from version 4.12 to 4.27 this year. All of the books are out of date. So.... I will include links in assignments that you are expected to read.

  7. Class Overview

    1. What is Blockchain - what is Bitcoin / Ethereum / Other token systems
    2. Economics - Coin, ICO, Stocks Bonds, Tokens, Utility Tokens
    3. Legal Ramifications. ICOs 506(d), Subpart (s)
    4. Programming - 1/2 in go, 1/2 in Solidity (Etherem) and Web front end (JavaScript/HTML/CSS).
    5. Some Homework
    6. Write a Paper
    7. 2 tests (Midterm and Final)
    8. Why Go
    9. Enough Go to make it through this class (and be able to convincingly tell an employer that you have programmed in Go)
    10. Why Ethereum? Solidity?
    11. dApp - what is that? What is web3?
    12. A detailed understanding of the security model behind Blockchain
    13. Some advanced stuff on security - distributed computation and public/private keys, distributed key generation.

Lecture 01 - Aug 31 - Friday

  1. Economics of Blockchain and Computer Technology - why this is important
  2. Overview of blockchain, bitcoin, EOS, ripple, lightning and Ethereum

Lecture 02 - Sep 3 - Monday

  1. What is a Wallet
  2. What is a Smart Contact
  3. Into the Grunge - how to implement a blockchain

Lecture 03 - Sep 5 - Wednesday

  1. Go

Lecture 04 - Sep 7 - Friday

  1. More on Go
  2. Overview of Blocks / Transactions / Storage for our blockchain
  3. What is a blockchain?

Lecture 05 - Sep 10

  1. Stocks, Bonds, Futures, Forward Sales, Contracts
  2. ICO's and raising capital.
    1. Reg D
    2. Reg S
  3. Why ICO
  4. ERC 20 Contract
  5. How much money is out there?

Lecture 06 - Sep 12 - Wednesday - Assignment 1 due.

Lecture 07 - Sep 14

Lecture 08 - Sep 17

Lecture 09 - Sep 19 - Wednesday - Assignment 2 due.

Lecture 10 - Sep 21

Assignments and Due Dates

This is a tentative schedule:

Assignment Due Date Points
AS-01 Learn Go Sep 12 100
AS-02 Genisis Block Sep 19 100
AS-03 Merkle Trees Sep 26 200
AS-04 Transactions Oct 10 100
AS-05 Hasing Oct 17 100
AS-06 Mining Oct 24 100
Paper Due Oct 26 100
Midterm and Demo Proj 1. Week of Oct 29 400
AS-07 Solidity & Truffle Nov 7 100
AS-08 Nov 14 100
AS-09 Nov 20 100
AS-10 Nov 28 100
AS-11 Dec 7 200
Demo Proj 2 start Dec 5
ends Dec 14
Final 400

Textbook

An Introduction to Programming in Go, pdf for free

About

Class at UW for blockchain / Ethereum and related technology.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published