Bitcoin

Blockchain Developer Course

The Blockchain is here to stay and you need to know how it all works. In this online course, you’ll get an in-depth hands-on understanding of Blockchain and the ever-so-important Bitcoin and Ethereum cryptocurrencies.

Apply now
clock

Part-Time

6

weeks

remote

Remote

language

English

Program overview

The aim of this course is to provide a well-rounded and comprehensive introduction to Blockchain, digital currencies and smart contract platforms. We will start by learning about the history of money and digital currencies, and how to interact with Blockchains manually via the command line. We will cover the basic cryptography such as hash functions and discrete logarithms without which Blockchains would not be possible. With the core concepts under our belt, you’ll learn about keys, wallets, addresses and transactions, building a simple command line wallet interface along the way. Afterwards we’ll learn how Blockchains actually work to facilitate and secure transactions, what blocks are made of and how proof of work and mining work to secure the Blockchain. Finally we will cover the basics of Ethereum, Solidity and how to safely write, deploy and interact with smart contracts.

Upcoming dates

Are you interested in applying for our course? Then register here and we will inform you as soon as the next course dates are published.

What you will learn

1

Digital money, Cryptography & Bitcoin basics

Day 1: To understand Bitcoin, you need to understand money. In the first session we will take a look at the history of money, followed by the history of digital currencies in particular. Then we will get familiar with hands-on exercises with the Bitcoin CLI and its JSON-RPC API. Day 2: Without cryptography, there would be no Blockchain. Before we do anything with wallets or transactions, we need to understand key cryptographic concepts. We will cover hash functions, the discrete logarithm problem, public-private key cryptography and basic elliptic curve cryptography. We will use Python to apply these concepts in practice.

2

Blockchain through the eyes of Bitcoin

Day 3: We need to prevent anyone from double-spending, censoring, or tampering with the money supply and transactions. We will learn how the Blockchain is used to accomplish this, how mining works and what is the structure of a block. We will build a script to simulate Bitcoin mining to understand how a block is made and how proof of work works. Day 4 - Transactions: Transactions are the most important part of any Blockchain. Everything else is designed to ensure that transactions can be created, propagated on the network, validated, and finally added to the global ledger of transactions. In this lesson, we will learn the internal structure of Bitcoin transactions, transaction inputs and outputs, and use the Bitcoin CLI to explore how to make and send a Bitcoin transaction manually. Day 5 - Transactions continued, Consensus, Forks, P2P network: Following up on the previous session, we will send transactions with Python wallet. This means programmatically composing a transaction from unspent transaction outputs, signing the transaction with our private key and broadcasting it to the network. Additionally, we will look at what “consensus” means in the context of blockchain, how blockchain forks and upgrades work, the P2P network and finally bring it all together with a simplified blockchain simulation.

3

All about Wallets

Day 6 - Hierarchical Deterministic (HD) Wallets, Passphrases, Backups: The most important piece of user interaction with a blockchain is the wallet. We will look at how wallets are generated, backed up and restored, what mnemonic seeds are made of, and implement all this functionality with Python. Day 7 - Address encoding, Derivation paths and chaincodes, Hardened keys, Gap limits: Using what we learned in the last session, we will build a simple Python command line application that will generate a wallet for the user, show them a mnemonic sentence backup, let them import this backup to restore their wallet and generate addresses to receive bitcoins.

4

Ethereum I: Fundamentals, Contracts & Dev toolchain

Day 8 - Ethereum blockchain basics, Accounts, EVM, Transactions: In this lesson we will start looking at Ethereum and how the concepts we’ve learned apply to Ethereum wallets and accounts. We will understand how the Ethereum Blockchain and Ethereum transactions are different from Bitcoin and how to use Ethereum as a developer to interact with smart contracts. We will start with low level deployment with the Solidity solc compiler and geth (go-ethereum) only, without any advanced developer tools. Day 9 - Smart contract common patterns, Development toolchain, Upgradable contracts: For a newcomer, the Ethereum development toolchain can be quite complex and overwhelming. We will get started by setting up a development environment using Hardhat, an Ethereum development environment. Using our setup, we will look at smart contract deployment and how to build, deploy and maintain upgradable smart contracts.

5

Ethereum II: Smart Contracts, Dapps, DeFi

Day 10 - Smart Contract Security and Best Practices: Ethereum smart contracts are a complex topic. A bug in your smart contract could mean the millions of dollars that someone entrusted to your code could be lost forever. We will write a basic token contract, covering the basic features of Solidity and how to follow best practices to write safe smart contracts. Day 11 - Dapp development: The most common usage for Ethereum is the “dApp”, a “decentralized application”. It’s time to build our own. A dApp is in essence just a regular web application, that can also interact with the Ethereum blockhain. We will learn how to treat the Ethereum blockchain as our dApp backend, how to index data from it and how to interact with it and display it in a frontend web application. Day 12 - Dapps, DeFi, NFTs, Topics of choice: In our last session we will look more in depth at the current state of Ethereum, DeFi, Dapps, Decentralized Exchanges, NFTs and how it all works. Plus, we will take a look at any topics of your choice that you would like to see covered that are not part of the main curriculum, or other topics of interest that we might not have time for during the previous sessions.

Weekly schedule

(CET)

Mo

Tue

Wed

Thu

Fr

Sat

09H00

12H00

13H00

18H00

19H00

20H00

Q&A Session

During these sessions, you are totally free to connect and ask any questions about the covered topics.

Lecture

Learn from our instructors who are experts in their respective fields and get introduced to new topics during live lectures.

Practice

Work on a set of interesting and challenging exercises related to the topics covered in the previous lesson.

Earn a Certificate of Accomplishment

Share your Certificate on social networks, printed resumes, CVs or other documents. Boost your career with the new skills that you gained.

Certificate

Upcoming events

Attend one of our events. Discover our upcoming workshops, info sessions, final presentations and webinars on trending topics.

  • Final presentations

    17. Feb 23, 06:00 PM - 08:00 PM GMT+1

    Heinrichstrasse 200, 8005 Zurich or online via Zoom

    Join us on Friday, February 17th, 2023, at 6 PM to see what our graduates have been up to in the final weeks of their bootcamp. Our talented students have been working hard to develop innovative solutions to real-world problems using Data Science and Full-stack development skills. You'll have the opportunity to hear from them as they present their projects and share their insights and experiences. Take advantage of this exciting event! Register now to reserve your spot. We hope to see you there!

    Details

  • Introduction to HTML & CSS workshop

    21. Feb 23, 05:00 PM - 06:30 PM GMT+1

    Online via Zoom

    Join us for our upcoming online HTML and CSS workshop on Tuesday, February 21st from 5-6:30 PM. Our experienced instructor will guide you through the fundamentals of HTML and CSS, including positioning, Flex, animations, etc. then take what you have learned and dive into a couple of exercises. Whether you are a beginner or have some experience with HTML and CSS, this workshop will provide valuable tips and techniques to improve your web development skills. Don't miss out on this opportunity to learn from the best and take your web development career to the next level. Space is limited, so register now to secure your spot. We hope to see you there!

    Details

  • Data analytics workshop

    23. Feb 23, 05:00 PM - 07:00 PM GMT+1

    Online via Zoom

    Join Dipanjan on Thursday, February 23, 2023, from 5 - 7 PM and get an introduction to data analytics. Dipanjan is our lead data science consultant & instructor, leading advanced analytics efforts around Computer Vision, Natural Language Processing and Deep Learning. He will lead you through python and data processing basics, talk about framing data science problems, and briefly discuss how to analyze and visualize unique patterns. At the end of the workshop, you will create a model that can predict housing prices using machine learning. If you are interested in data science and data science-related topics, this event is for you. Register today to save your seat.

    Details

  • Final presentations - part-time students

    24. Feb 23, 06:00 PM - 08:00 PM GMT+1

    Heinrichstrasse 200, 8005 Zurich or online via Zoom

    Join us on Friday, February 24th, 2023, at 6 PM to see what our part-time students have been up to in the final weeks of their Bootcamp. Our talented students have been working hard to develop innovative solutions to real-world problems using Data Science and Full-stack development skills. You'll have the opportunity to hear from them as they present their projects and share their insights and experiences. Take advantage of this exciting event! Register now to reserve your spot. We hope to see you there!

    Details

  • Online information session

    28. Feb 23, 06:00 PM - 07:00 PM GMT+1

    Online via Zoom

    Join us on Wednesday, February 28, 2023, from 6 PM until 7 PM for an exciting information session about Constructor Learning and our programs. Whether you're a beginner looking to learn a new skill or an experienced professional looking to advance your career, this information session is the perfect opportunity to learn more about our bootcamps and how they can help you reach your goals. This online information session will provide an overview of our programs, including the curriculum, career outcomes, and admissions process. You'll have the opportunity to ask questions and get insights from our instructors. Don't miss this opportunity to take the first step towards a rewarding new career in Data Science, Full-stack development, or UXUI design. Sign up now to reserve your spot in the information session. See you soon!

    Details

  • Learn how to code with Python

    15. Mar 23, 06:00 PM - 07:30 PM GMT+1

    Online via Zoom

    Join us for our upcoming online Introduction to Python programming workshop on Wednesday, March 15th, 2023, from 6 - 7:30 PM. Whether you're new to programming or looking to expand your skills, this workshop is the perfect opportunity to learn the basics of Python programming and take your skills to the next level. Led by expert Python programmer Ansam Zedan, you will be guided through the fundamentals of programming in Python, including variables, conditions, and loops. But that's not all - you'll also have the chance to personalize your own turtle and give it commands to create unique drawings on the screen. By the end of the workshop, you will have a solid understanding of Python programming and the ability to create your own digital masterpieces. Don't miss out on this exciting opportunity - register now to secure your spot! We can't wait to see you there.

    Details

Empty room with chairs

Application process and prerequisites

Basic programming knowledge required (Python as well as familiarity with the command line).
Simply apply to the program here.

FAQs

How is the day by day schedule?

During every session you would be introduced to a new topic for around 45 - 60 mins. For the rest of the 2 hours, you will complete guided exercises with the help of our teachers and teaching assistants.

How is this course different from other self-paced online courses?

Most self-paced courses are a good place to start, however, they do not go into the depths of problems early-stage programmers face in their day-to-day coding life nor do you get help when it really matters. That’s not the Constructor Learning philosophy. We’re here for you. Each and every learner gets the attention they deserve from our experienced staff of instructors and mentors.

Is there an interview selection for this course?

No, as long as you meet the listed prerequisites. The main goal is to help you take your first step in the world of Blockchain.

Your instructors

Team Member

Tom Vrba

Instructor

Bio
He started working with Ethereum in 2016 as part of his Master's thesis on mechanism design, learning how to work with smart contracts along the way and being a part of developing a non-fungible token before the ERC-20 token standard (think Cryptokitties and digital art) emerged. After Constructor Learning in 2018, he joined Shift Crypto to work mainly with Bitcoin and on the BitBox02 hardware wallet, which to date is his favorite hardware wallet. Since 2020 he's been working again with Ethereum, DeFi, NFTs and smart contracts and working as an independent contractor, mentor and educator.

Read more about Constructor Learning in our Blog

Read the latest news about Constructor Learning and get informed about all things around Programming and Data Science in Switzerland and Germany.

interview-with-full-stack-alumnus-sandeep-dharnia

Interview with Full-stack alumnus, Sandeep Dharnia

Published on 20-01-2023 by Claudia Boker

Read more
how-to-use-ai-to-select-stocks-that-outperform-the-market

How to use AI to select stocks that outperform the market

Published on 02-12-2022 by Ekaterina Butyugina

Read more
data-science-capstone-projects-19

Data Science capstone projects #19

Published on 02-12-2022 by Ekaterina Butyugina

Read more