A student run course at UC Berkeley. Learn about smart contract programming, testing, security and the underlying details of Bitcoin and Ethereum clients. Taught by Akash Khosla and Nicolas Zoghb as part of Blockchain at Berkeley.


This course is a free resource, under the Creative Commons Attribution-NonCommercial 4.0 International Public License. You must give credit to the authors (Akash Khosla and Nicolas Zoghb).

If you’re interested in supporting this initiative, you can donate to us:

ETH: 0x8C137b5d077DA6d2E1769D1850e625C966B5D94a


Funds will be used for general expenses needed to produce material (food, recording equipment, etc.) and we are also saving up for a new Blockchain at Berkeley website.

A Note From The Instructors

This course is constantly being developed. Each semester we are looking for ways to improve. We are planning a public meetup format on UC Berkeley campus. If you’re following us on the Blockchain at Berkeley twitter or following one of the co-instructors for more granular updates you’ll be informed of when it starts.

A sneak peak of Fall 2018:


Co-Instructors: Akash Khosla - Nicolas Zoghb

Teaching Assistants: Luke Strgar - Nataliya Urakhchina - Nicholas Truong - Gary Li


Blockchain is a transformative technology with massive potential, and despite the huge demand from nearly all types of companies, there is a distinct shortage of developers - see this article about how blockchain developers are being offered salaries of 250k. Blockchain at Berkeley offers this course with the aim of fulfilling this demand and giving students with minimal blockchain knowledge a chance to prepare themselves for the industry.

This course is offered concurrently with Blockchain Fundamentals, another Blockchain at Berkeley course offering which focuses on being comprehensive and theoretical and requires no computer science prerequisites. Although this course and Blockchain Fundamentals can be taken independently, with little overlapping content and co-dependencies, concurrent enrollment is strongly encouraged.

If you’re interested in working together in some way, please reach out to Akash on twitter or send an email to him. We strive to be mostly platform agnostic, but academically interesting projects are welcome to contribute. We also do speaking engagements for those interested in special topics or a tailored workshop.


We aim to deliver a holistic experience for different types of blockchain development. The course will emphasize the ins and outs of Bitcoin and Ethereum from a developer perspective along with smart contract security and best practices. Our spring 2018 offering focused mostly on Ethereum, but we have plans to offer more Bitcoin related material in order to provide a proper survey of engineering in the Blockchain space.

Blockchain at Berkeley

If you’d like to learn more about Blockchain at Berkeley we encourage you to join our community Slack. Other modes of reaching us:

Our Website