This is an accelerated 2-day workshop on Bitcoin and the Blockchain for developers and technologists. The first instance of the course will be limited to 15 students. It provides a comprehensive introduction to Bitcoin concepts and the inner workings of the Bitcoin protocol. This is done through a combination of theory and practical exercises using the latest Python libraries to interact with the Bitcoin network and the Blockchain.

Is this for me?

The workshop is intended for folks who have some familiarity with CS data structures (arrays, pointers, and lists) in addition to basic Python programming knowledge. We will visit topics such as hashing, cryptography, distributed consensus, and stack-based programming. You might be interested in this course if you are:

A computer science student interested in digital currencies and distributed consensus

A software engineer interested in acquiring an authoritative knowledge of Bitcoin and blockchain

A data scientist wanting to understand blockchain data structures and how to data mine the Blockchain

What will I learn?

After completing this 2-day intensive you will have a solid base upon which to build deeper knowledge in the field.

A few things you will learn:

How to mine bitcoin and how Bitcoin achieves distributed consensus

How bitcoin works at the protocol level

How to create smart contracts using Bitcoin Script

How micropayment channels work, including those used in the Lightning Network

Exercises will include:

Verifying digital signatures using ECDSA

Minting Hashcash stamps (precursor to Bitcoin)

Mining the Genesis block

Parsing the Blockchain

Decoding Bitcoin transactions

Constructing and broadcasting Bitcoin transactions

What should I bring?

Instructions will be sent out in advance. A laptop (and power cable) running Python 2.7 / 3 are required.



Are there any prerequisites?

Previous experience programming in Python is worthwhile to make best use of the workshop. Additionally, some familiarity with Linux and the command line will be helpful. We will be recommending a few resources to ensure everyone is up to speed before starting.

How is the course organized?

The course is taught over 2 days and quickly builds on itself to take you from zero to Bitcoin hero.

Day 1 (9:00-6:00):

Course Introduction

Overview of Bitcoin and Blockchain

Introduction to Crypto Anarchy

History of Cryptocurrencies

A Brief History of Bitcoin

CS and Data Structure Review

Introduction to Cryptography

Day 2 (9:00-6:00):

Bitcoin Transactions

The Bitcoin Network

Mining and the Blockchain

Bitcoin Wallets

Advanced Topics

Is food provided?

A light breakfast and lunch will be provided. We will also have plenty of coffee to keep you alert and attentive. We will allow an hour to socialize and grab food at nearby locations if desired.

Who is teaching?

Mason - Mason Borda is a software engineer at multisig wallet pioneer BitGo. He has a BSEE from Cal Poly - San Luis Obispo and an MSEE from Santa Clara University. Mason has been developing on the Bitcoin protocol since 2013 on full-stack Bitcoin infrastructure. Recent projects include GitMoney.io and the Ethereum wallet as the co-creator of the world’s first multi-signature Ethereum web wallet, Ether.li

Justin - Justin O’Brien is a PM at 21 Inc, one of the best funded Bitcoins startups. While at 21 he helped develop the curriculum for CS251P - a 1-unit Bitcoin lab for Stanford engineering students. Prior to 21 he launched an internal course at Google to teach software engineers the fundamentals behind the Bitcoin protocol. Prior to Google he received an MSc in Analytical Finance from St. Andrews.

Terms & Conditions

Cancellation policy

In certain cases, we may need to cancel due to circumstances beyond our control. If this happens, we will refund all registration fees for those who signed up. We are not responsible for any related expenses incurred by registered attendees (including but not limited to travel and hotel expenses).

Money-back guarantee

All public workshops come with a no-questions-asked money-back guarantee. If you are unhappy for any reason after attending the class, you can ask for your money back.

