The course consists of six, 90 minute online lectures, and six self-paced labs that each take between one to three hours to complete.
The labs can be taken at your own pace between the taught sessions.
In order to complete the labs, you will use the VS Code editor. This must be installed on your own laptop or home computer.
Software requirements for VS Code are listed here: https://code.visualstudio.com/Docs/supporting/requirements
Course Delivery
This course will run from 15 – 26 March 2021, with online sessions delivered at 12:00 – 13:30 (UK time) on Mondays, Wednesdays and Fridays.
Session dates:
- Monday 15 and 22 March 2021
- Wednesday 17 and 24 March 2021
- Friday 19 and 26 March 2021
A world clock, and time zone converter can be found here: https://bit.ly/3bSPu6D
Lectures and self-paced labs
Lecture 1: What is Blockchain?
This online series will start by covering the context behind blockchain and understand why it is important. You will be taken through some of the problems that organisations face that are relevant to the adoption of blockchain, and how the technology solves those problems.
Self paced 1: Using a Blockchain
By experiencing a blockchain application from a user’s perspective, this lab will help you to understand the importance of the business network and the benefits of using distributed ledger technology.
Lecture 2: Status, Technologies and Use-Cases
This section of the course will focus on the status of blockchain in 2021, including what they can do and key trends.
We’ll look at the range of blockchain technologies and how they vary, including private vs. public, permissioned vs. un-permissioned and the use of traditional assets, crypto-assets and tokens.
Self-paced 2: Choosing a Blockchain Use-Case
In this session you will consider good blockchain use-cases and form a proposal for a relevant problem that might be applicable for a blockchain solution.
Lecture 3: Designing Blockchain Applications
Effective planning of a blockchain system is critical, and this session goes through the initial set of things you need to consider.
Here we will cover the steps for designing a blockchain system, from choosing the right use-case to ensuring that the assets, business network and transactions get modelled efficiently.
Self-paced 3: Modelling a Blockchain Application
This will be an opportunity for you to create a model for a blockchain application, deciding how the various components can be described programmatically.
Lecture 4: Blockchain Technical Concepts
With our use-case modelled, we will now start diving into the blockchain technology itself, starting with a discussion of the computer science principles that underpin blockchain.
We’ll look at the data structures that typify all blockchain implementations and the different algorithms for implementing consensus between the nodes on the network.
Self-paced 4: Creating a simple blockchain
In this fully-guided lab you will implement a simple blockchain in JavaScript.
In order to complete this lab, you’ll need to install a copy of the free VS Code editor (https://code.visualstudio.com/).
Lecture 5: Hyperledger Fabric Introduction
Creating a blockchain from scratch is not really viable, but luckily there are well established blockchain implementations that are freely available. In this session we’ll look at a commonly used blockchain that is commonly used for private, permissioned networks - the Linux Foundation’s Hyperledger Fabric. We’ll look at key concepts and components, and how to build a network.
Self-paced 5: Development tutorials
It is possible to use a VS Code extension to develop Hyperledger Fabric applications and smart contracts, and this is complemented by a set of comprehensive tutorials that help developers get started. In this session you will use these embedded tutorials to learn the basics of Hyperledger Fabric development and create your first application.
Lecture 6: Blockchain Architectures
From smart contracts, client applications and integration tools, blockchain solutions consist of several distinct assets that need to be properly built. In this session we’ll look at the systems architecture into which blockchain assets can fit, tools for managing the blockchain and the organizational roles that make a blockchain solution endure.
Self-paced 6: Joining a network
Additional tutorials are available that guide users through the process of joining an existing blockchain network and managing the components that comprise their view of it. In this final session you’ll be invited to complete these tutorials and round out your knowledge of the development process, giving you the tools and skills you need to continue your blockchain journey.