COS 471: Web3 - Blockchains, Cryptocurrencies, and Decentralization

Spring 2023

General Information

J.P. Singh
Robert S. Fish

Instructors

J.P. Singh (jps at cs dot princeton dot edu)
Robert S. Fish (rfish at cs dot princeton dot edu)

Graduate TAs

Sunayana Rane (srane at princeton dot edu)
Nicolaas Kaashoek (nicolaas at princeton dot edu)

UCAs

Ellen Su
Julio Cezar Castro Lins Barroso

Required Books

Pritzker, Yan. Inventing Bitcoin. 2019.
Narayanan, A., Bonneau, J., Felten, E., Miller, A., and Goldfeder, S. Bitcoin and Cryptocurrency Technologies. 2016.

Recommended Books

Voshmgir, S. Token Economy. 2019.
Ammous, S. The Bitcoin Standard. 2018.

Meeting time and place

Wednesday 1:30-4:20PM, Robertson Hall 016.
Attendance is required. No more than one absence will be permitted.

Discussions

Discussions take place on our Ed board.
We'll use Canvas as well.

Office Hours

Course staff have scheduled office hours:

  • Robert: Wednesdays from 4:30pm in Corwin 037
  • Sunayana: Mondays 6-7pm on Zoom
  • Nick: Thursdays 2-3pm in CS building room 401
Office hours are also available via appointment

Description

This course serves as an introduction to the fast-developing world of Web3, focused on the applications of blockchains, cryptocurrencies, and decentralization through technology.

Students will learn about blockchains and the decentralization of trust and power through technology, launch a cryptocurrency token, and build an application on a blockchain. We will also discuss applications, ethical implications, and policy questions around decentralization.

Weekly meetings may include a topical lecture, a guest speaker, and a class discussion. In some weeks students may be asked to prepare and give a presentation or a short talk.

Grading

  1. Component Points
  2. Class Participation 60
  3. Class Reflections 27 each
    1. Drop two lowest
  4. Assignments 140
    1. Assignment 1 40
    2. Assignment 2 100
  5. Presentation 100
  6. Project 350
    1. Midterm Proposal 100
    2. Final Deliverable 250

Written Reflections

Make sure you do the readings and assignments before the class next by which they are listed.

Readings are essential to this class. Without them you will be lost in the class discussions. Treat them as seriously as any other assignment.

In addition, there will be a class reflection due after each session. You should write about the lecture given that week or, if there was a guest speaker, the talk given by that speaker.
Each writeup should be 1-1.5 pages, single spaced.
All writeups are worth 27 points, and must include the following:

  1. A key message that you found interesting and not so obvious that you took away from the talk.
  2. Something in the talk that you disagreed with, or you feel is controversial, and why.
  3. A question someone in class asked of the speaker, the speaker's answer, and your thoughts on the answer including whether you agreed or disagreed with it, and why.
Each component will be graded on a simple 9 point rubric. Each of the following metrics is worth three points. Where a 3 = exceeds expectations, a 2 = met expectations, a 1 = below expectations, and a 0 = insufficient answer.
Writeups should be submitted via Canvas by 11:59 on Friday following a lecture

Participation

We will post an Ed board for each speaker where you are encouraged to post interesting questions for the speaker.
Using this Ed board can contribute to your participation score. We encourage you to post a thoughtful question or comment before lecture.

Lateness

The penalty for late work is 10% per day late. Three "late day penalty waivers" are given to each student. Please note on your submission that you are using a late day.
In a group assignment, all members of a group will need to use a late day waiver if work is turned in late (or receive a penalty).

No work can be turned in after Dean's Date.

Schedule

The schedule and readings are subject to change.

    1. Date
    2. Session
    1. Feb 01
    2. Introduction to Web3 and Decentralization

      Guest Speaker: Pete Briger

    1. Feb 08
    2. History of Money | Blockchains and Bitcoin

      Guest Speaker: Lyn Alden - bio

      Read: Inventing Bitcoin (book)
    1. Feb 15
    2. Blockchain and Cryptocurrencies I

      Guest Speaker: Muneeb Ali - bio

      Turn In: Assignment One (on canvas)

      Read: Bitcoin and Cryptocurrency Technologies ch.1

      Recommended: "But how does Bitcoin work?" by Grant Sanderson (3blue1brown)
    1. Feb 22
    2. Blockchain and Cryptocurrencies II

      Guest Speakers:
      • Ron Miasnik: Blockchain overview
      • Joseph Rubin: Intro to Smart Contracts
      Read: Bitcoin and Cryptocurrency Technologies ch.2

      Recommended: Bitcoin and Cryptocurrency Technologies ch.3

      Recommended: Defining the Web3 Stack
    1. Mar 01
    2. Smart Contracts

      Guest Speakers:
      • JP Smith of Skolem: Smart Contract Auditing
      • Zaki Manian of Iqulision: Blockchain Interoperability
      Recommended: Smart contracts in Ethereum

      Recommended: Learning Solidity

      Recommended: Ethereum Whitepaper
    1. Mar 08
    2. Blockchain Interoperability Part 2 and Scaling Blockchains

      Guest Speakers:
      • Sreeran Kannan of Eigenlayer: Scaling Blockchains
      • Nick White of Celestia: Modular Blockchains
      Recommended: Defining the Web3 Stack
    1. Mar 10
    2. Turn In: Assignment Two (on canvas)
    1. Mar 15
    2. Spring Recess
    1. Mar 22
    2. Blockchain Interoperability Part 3 & Wallets

      Guest Speakers:
      • John Light of Sovryn: "Rollups, bridges, and related scaling and interoperability technologies on public blockchains", supported as a William Pierson Field Lecture
      • Theodor Marcu and John Suh '20: "Introduction to Wallets"
      Read: Wallets Devguide

      Recommended: Bitcoin and Cryptocurrency Technologies ch.4
    1. Mar 29
    2. Wallets Continued

      Guest Speakers:
      • Chintan Turakhia of Coinbase
      • Mark Hendrickson of Hiro
      Turn In: Midterm Report

      Read: Decentralized Finance: On Blockchain- and Smart Contract-Based Financial Markets

      Read: Stablecoins: The quest for a low- volatility cryptocurrency

      Recommended: Stability in Volatile Markets
    1. Apr 5
    2. Non-Fungible Tokens (NFTs)

      Guest Speakers:
      • Teo Leibowitz of Uniswap
      • Tycho Onnasch of Trust Machines


      Read: Technical Deep Dive Into and Implementation of Non-Fungible Tokens in a Practical Setting

      Read: NFTs, explained

      Recommended: Ethereum NFTs

      Recommended: 2021 NFT Year in Review

      Recommended: Altpress
    1. Apr 12
    2. Identity, Anonymity, and Pseudonymity

      Guest Speakers:
      • Tycho Onnasch of Trust Machines
      • Alessandro Chiesa of UC Berkeley and EPFL
    1. Apr 19
    2. Decentralized Autonomous Organizations (DAOs)

      Guest Speaker: Nader Al-Naji of DeSo

      Read: The Future of Work is Not Corporate — It’s DAOs and Crypto Networks

      Read: How to Solana — Chapter 5: DAOs & Governance

      Recommended: Report of Investigation Pursuant to Section 21(a) of the Securities Exchange Act of 1934: The DAO
    1. Apr 26
    2. Policy and Regulation
    1. May 03
    2. Panel Discussion Panelists:
      • Pete Briger - CEO of Fortress
      • Joe Lubin - CEO of Consensys
      • Dan Morehead of Pantera Capital
      • Mike Novogratz - CEO of Galaxy Capital
    1. May 09
    2. Dean's Date

      Turn In: Final Project

Interesting Readings

Why it's too early to get excited about Web3

Papers and Articles

Nakamoto, S. "Bitcoin: A Peer-to-Peer Electronic Cash System," 2008.
Chaum, D. "Security without Identification: Transaction Systems to Make Big Brother Obsolete," Communications of the ACM, 28(70), 1985.

Websites

Open Zeppelin (reusable smart contracts that could be helpful for final projects)
US Security and Exchange Commission on Initial Coin Offerings

Tutorials

Stacks NFT Tutorial (Clarity)

Frequently Asked Questions

May I partner with someone?
In some circumstances, yes. We will let you know when partnering is appropriate.

Will taking this course enable me to accumulate a crypto fortune?
A wise person once said that the quickest way to a $1 million fortune was to start with a $5 million fortune and then trade speculatively.