Spring 2022 Developers Decal
Enrollment Information
In order to begin enrolling for the course, potential students must submit an application before January 31st at 11:59PM PST. If course staff deem the student to be a good fit for the DeCal, we will give a permission code to the student so that they can be officially enrolled in the course.
Application: https://docs.google.com/forms/d/e/1FAIpQLSe0q8sg7tK33lYIq-ebrfnklZ7f7QPhrNBD6hXpww7A027jaQ
Course Listing: https://classes.berkeley.edu/content/2022-spring-indeng-198-002-grp-002
About
Welcome to Blockchain@Berkeley’s Blockchain for Developers DeCal for the Spring 2022 semester! This course is designed to provide students a comprehensive general overview of currently relevant topics in blockchain development, as well as hands-on experience in developing and deploying their own smart contracts.
Blockchain is currently one of the fastest growing industries in the technology sector, with 14 job openings for every blockchain developer. In response to this shortage of blockchain developers, this course aims to teach students the fundamentals of blockchains, the Solidity programming language, as well as industry-relevant tools such as Metamask, Infura, Truffle, and Ganache so that students will be equipped with industry-relevant experience in an accessible, collaborative environment. We hope that through this course, students will become more confident in their ability to develop and deploy blockchain-based solutions on important industry issues.
Syllabus: https://docs.google.com/document/d/1AlyadUu0SEnDyfZYphq5gqLmMnWuIM1XCwbc1bzRsow
Previous Semesters: https://blockchain.berkeley.edu/courses/archive
Week | Topic | Lecture | Homework |
---|---|---|---|
1 | Introduction to Blockchain Development: A High Level Overview | ||
2 | Solidity and Developer Tools | ||
3 | Solidity Syntax | ||
4 | Web3.js and Interacting with Ethereum | ||
5 | Security, Tokens, Wallets | ||
6 | DApp Architecture 1 | ||
7 | DApp Architecture 2 | ||
8 | Scalability, Interoperability, Zk-SNARKs | ||
9 | Special Topics W/ Guest Lectures | ||
10 | Special Topics W/ Guest Lectures | ||
11 | Special Topics W/ Guest Lectures |
Logistics
Units: 1-2
Schdule: 6:30-8:30 PM every Tuesday
Course Staff: Lawson Graham (lawsongraham@berkeley.edu), Nazli Urenli (nazlidenizurenli@berkeley.edu), Nathan Zhang (nathanzhang1@berkeley.edu)
Prerequisites: CS61A minimum, CS61B recommended, Fundamental CS Concepts needed
Course Email: dev-decal@blockchain.berkeley.edu
Class Format: The course will be split into two parts. The first half of the course will be dedicated to a quick overview of blockchain (with a special focus on Ethereum, as we will develop and deploy smart contracts through the Ethereum ecosystem) and learning to work with various developer tools. The second half will feature a series of guest lecturers that will introduce students to additional blockchain development applications.
Each class will be divided into two parts as well. The first hour of each class will be dedicated to a lecture covering the topics planned for that week. We will then switch gears in the second hour of class to focus on more hands-on work with that week’s topics.
Grading
Grading is P/NP for this course and based on completion. In order to pass the course, students will need to complete the final project, finish all the homework, and attend all lectures.
Homework: In blockchain development, you can only learn by doing. There will be homework dispersed throughout the course and will be based on the content of the lecture in the previous week. Each lecture will be structured in a way that homework can be completed within the class. First half of each class covers the concepts, and the second half focuses on hands-on understanding through doing the homework. All homework check-offs will be graded on completion due at the beginning of next lecture. To pass the class, you must submit all the homework on time except two of your choice.
Homework will be posted weekly on the course GitHub repository: https://github.com/BerkeleyBlockchain/Dev-Decal-Spring-2022/
Project: There will be a final project due by the end of dead week. It will be a simple project where you create your own Ethereum backed token. It is a perfect opportunity for you to put into practice the concepts you learned in lecture into a significant blockchain based application. If you have any questions about it, please contact us, we’d be happy to talk about it. Completion of the project is mandatory to pass the class.
Policies
Plagiarism and academic dishonesty is strictly prohibited and is treated with automatic failure of the course. Working collaboratively and discussing ideas are encouraged.
Please do not post your solutions on public repository on sites such as GitHub or GitLab. Please make them local or set them to private repository.
If you have any questions, please feel free to contact any course staff.
Resources
Previous Course Pages: https://blockchain.berkeley.edu/courses/archive
Course GitHub Repo, where homework skeleton code and solutions are posted
Solidity Language Documentation
General
About
Team
FAQ
Work With Us
Contact Us
Affiliate Organizations
Dekrypt Capital
CESC
FourthState Labs
Mechanism Labs
she256