Blockchain for Developers Course - Johannesburg

Thu Oct 27, 09:00 - Thu Oct 27, 14:30

Bandwidth Barn

ABOUT

The aim of this course is to provide junior and senior developers with hands-on experience in developing applications around the Bitcoin Protocol. At the end of the course you will know how to:
  • setup a development environment by installing and configuring the Bitcoin Core software
  • deploy a Bitcoin Server
  • use the Bitcoin Core RPC API to create wallets, check balances and make payments
  • use 3rd party libraries and APIs to abstract away many of the complexities of using the Bitcoin protocol
The course will not cover the internal aspects of Bitcoin such as its Proof of Work, transaction and blockchain structures and cryptography. Please enrol for the Blockchain Advanced course to learn more about these concepts.

This course is for developers who understand the basics of programming. The course will provide the information you need to understand bitcoin, the blockchain and how to start building blockchain-based applications. It also includes examples of applications that have been built using the blockchain, in South Africa as well as internationally.

PREREQUISITES
  • Own laptop with ability to access WIFI provided by the Blockchain Academy
  • Basic programming knowledge
  • Basic familiarity with Javascript syntax and Node.js
  • Basic command line knowledge (navigating and creating directories, listing directory contents)
  • Windows users: please install a program like PUTTY
  • Mac and Linux users: you will not need extra software
The programming samples are at a junior developer level. The development OS will be Linux but because the commands are very simple students with only basic DOS experience should be comfortable. Development servers will be accessed over SSH.

COURSE CONTENT
 
Modules that will be covered are:

Section 1 - Basic Concepts                                                                    
Cryptographic Hash Functions
Example
Cryptographic Signatures
Blockchain
Transactions
Addresses
Wallets

Section 2 - Getting Started                                                                   
Setting up the Development Environment
Development runtime and languages
Node.js

Section 3 - Bitcoin Core                                                             
Compiling from Source
Pre-compiled Executable
Installing Bitcoin Core on Windows
Installing Bitcoin Core on Ubuntu
Bitcoin Core GUI
Bitcoin Core Daemon
Configuration File
Permissions
Bitcoin Daemon
Credentials
Running BitcoinD in testnet
Testnet Faucets
Data Directory
Configuration Parameters
Running as a Daemon
Start the daemon At Boot
Command Line Interface
Commands
Stopping the daemon
Getting Help
Getting Blockchain Info
Getting Wallet Info
Listing Accounts
Create a new Address
Send bitcoins to an Address
Backup Wallet
Validate an Address

Section 4 - 3rd Party Bitcoin Libraries and Web APIs                             
Web APIs
Blockchain.info
Sample Application
Libraries
Blockchain.info
Sample Application
Bitcore
Sample Application    
 
Course attendees will receive printed training material and a Certificate of Completion.
A light lunch will be served at 12:00pm. Refreshments are available during the day. 

Please note: The course content is subject to change slightly.
Students receive 25% discount on this course. Contact us if you qualify for the discount.