February 2020 Training

Past trainings


Registration (closed)

The registration for the February 2020 training session is now closed!

If you are interested in participating in the next session, please contact training@nomadic-labs.com and follow @LabosNomades.

Location

Cloud Business Center (salle New York)
10 bis Rue du 4 septembre,
75002 Paris

Schedule

Training sessions will start 9.30 am, a welcome coffee will be available at 9 am. The training is divided in four sessions of 1.5h each, two in the morning, two in the afternoon, with coffee and networking breaks.

Time February 11th February 12th February 18th February 19th
1 slot Introduction Michelson Block explorers HACKING DAY
Break
2 slot The "economic protocol" LIGO Theory Monitoring HACKING DAY
Lunch
3rd slot Gas/Fee/Burn Tezos CLI Taquito HACKING DAY
Break
4th slot Privacy/ZK Deploy your infra DAPPS HACKING DAY

Details:

An introduction to Tezos

A general presentation of the Tezos blockchain, including its history, its components, and an overview of the current economic protocol.

The "economic protocol"

A more in-depth presentation of the so-called "economic protocol", the part of Tezos that can be changed through an amendment procedure. This will include:

  • Proof of Stake (PoS) versus Proof of Work (PoW)
  • Liquid PoS and delegation
  • Emmy+: Tezos consensus algorithm
  • On-chain governance: the amendment procedure
  • Anatomy of an operation and different types of operations
  • Anatomy of a block and how operations and blocks are encoded
  • Smart contracts overview and gas computation

ZeroKnowledge Proofs in Tezos

Deploy your infra

  • Using docker to easily deploy a node from scratch
  • Running a backer on zeronet/babylonnet
  • Secure your keys with the tezos-signer
  • Using tezos-signer and a ledger
  • Creating a secure production ready infrastructure
  • front-ends nodes
  • private mode
  • hsm ?

Michelson

  • Introduction to Michelson
  • Explain how to read a Michelson contract
  • Simulate a Michelson contract with Try Michelson
  • A simple example on formally verifying Michelson contracts

LIGO

  • Introduction to Pascal LIGO language (theory)
  • Explain how to read a LIGO contract
  • Provide a simple annotated LIGO contract for people to deploy
  • Change the LIGO contract to add a few feature
  • Deploy the LIGO contract using the tezos-client

Block explorers

  • What is a block explorer, how it is made and potential pitfalls
  • What is an indexer
  • How to read your data using a block explorer
  • Explore existing block explorers
  • What to look for and how to use them

Monitoring

  • How do we monitor the Tezos network?
  • Different types of monitors
  • Backer-oriented
  • Development-oriented
  • Which RPCs to call
  • How to create a basic monitor with Prometheus and Grafana

Taquito

  • Introduction to Taquito: basic module structure
  • Setup a simple reason project with Taquito
  • Interact with a previously deployed LIGO smart contract
  • Reason Taquito bindings
  • Setup the inMemory signer
  • Setup the tezBridge signer (with a ledger??)
  • Get the balance of a smart contract
  • Execute a transaction

DAPPS

  • Build on the Taquito presentation
  • Add React to the mix: setup a Reason/React project using Taquito
  • Going thought the structure of a React component
  • Add bells and whistles
  • CSS and final touches
  • Deploy the application with Docker on babylonnet or zeronet

Prerequisites

  • A bare metal or a virtual machine running *nix
  • Tezos is well tested on Debian based distributions (Buster)
  • Tezos is easy to install on Darwin based OSes
  • Docker
  • Python3

We strongly discourage the use of Microsoft-based system while attending this training. Our software is not tested in these environments.

We also provide a VirtualBox Pre-configured VM.

Install dependencies on your own machine

In this section, we give all the dependencies which are necessary to run the training's development environment. However, we recommend to download and setup the virtual machine, just in case…

Development tools

  • Your favorite editor
  • LIGO (compiler for the smart-contract language)
  • Try Michelson (Michelson online editor and simulator)

VirtualBox

  • Install a recent version of VirtualBox (> 6.0)
  • Download the Nomadic Labs virtual machine using:

    wget https://cloudflare-ipfs.com/ipfs/QmXN4ryYv7M7bbSUKqQnus7xA2dcWjPNzZCnHgfN4DSqsS \
        -O nomadic-training_debian-10-amd64.ova
    

    or directly through IPFS (InterPlanetary File System):

    ipfs get QmXN4ryYv7M7bbSUKqQnus7xA2dcWjPNzZCnHgfN4DSqsS \
        && mv QmXN4ryYv7M7bbSUKqQnus7xA2dcWjPNzZCnHgfN4DSqsS nomadic-training_debian-10-amd64.ova
    
  • Install IPFS on your machine IPFS distributions or as a web browser extension

  • Initialize IPFS: ipfs init
  • Start the IPFS daemon: ipfs daemon
  • Download the Virtual machine:

    ipfs get QmXN4ryYv7M7bbSUKqQnus7xA2dcWjPNzZCnHgfN4DSqsS \
        && mv QmXN4ryYv7M7bbSUKqQnus7xA2dcWjPNzZCnHgfN4DSqsS nomadic-training_debian-10-amd64.ova
    
  • Use the import appliance feature in the VirtualBox menu. Make sure that the virtual machine is working by running it at least once (you may need to configure your host to activate such virtualization software).