A course on Bitcoin and cryptocurrency technologies, consisting of video lectures plus homework, programming assignments, and a textbook is being made available online starting on February 16.
Bitcoin has gone from being an exceptional phenomenon seen as risky and possibly shady, to an accepted part of the cyber landscape. So it’s no longer the preserve of its original pioneers; it’s time for more general adoption.
In response to for the demand for structured educational materials from computer science students and the Bitcoin community, last semester Arvind Narayanan and Joe Bonneau taught a course at Princeton University on Bitcoin and cryptocurrency technologies. To judge from student it was extremely successful and so they are opening it up to allcomers on the Pizza platform.
The course sets out to: cut through the hype and get to the core of what makes Bitcoin unique.
How does Bitcoin work? What makes Bitcoin different? How secure are your Bitcoins? How anonymous are Bitcoin users? What determines the price of Bitcoins? Can cryptocurrencies be regulated? What might the future hold?
The course starts on February 16th with one video lecture per week. They are presented by Arvind Narayanan, Joseph Bonneau, Edward Felten (Princeton University), and Andrew Miller (University of Maryland) and each week there will be a Google hangout with that week’s lecturer.
There is also a textbook based on the video lecturers, the first three chapters of which are already available as pdfs.
On his blog, Arvind Narayanan posts:
How does our textbook (and course) differ from other books on Bitcoin? It’s simple: this is unabashedly a computer science text and course. We connect the ideas we discuss to the rest of computer science, and separate fundamental concepts from implementation details. The hype in the Bitcoin community has sometimes gotten ahead of the technology, and we think that for cryptocurrencies to truly realize their potential, entrepreneurs must go back to the basics, rigorously understand the technology, and build on it.
The course also provides five programming assignments in which students will be asked to build various components of simplified Bitcoin-like cryptocurrencies.
The pre-requisites for the course are at least an introductory computer science class (such as CS 101) while basic programming experience as well as some knowledge of data structures and algorithms (linked lists, sorting, searching…) is strongly recommended.
To join the course you are asked to complete a short form after which you’ll be given logon credentials.