Speakers

meher-roy-chowdhury

Meher Roy

Co-Founder

Time

Start:
End:

Address

Anthemis 4th Floor 44 Great Marlborough St, Carnaby London W1F 7JL United Kingdom

Description

Eris for developers in London

We present Eris for Developers – a two-day workshop on the fundamentals of the Eris technology stack. Workshop attendees will develop an enterprise-grade permissioned, smart contract mortgage-backed-security system in just two days. The Eris technology stack has been used by leading financial consortia and institutions to build blockchain applications.
Target group:
Developers with hands-on experience in some high-level language (JavaScript, Python, C#, …). This course starts on the fundamentals and does not have any prerequisites in blockchain-exposure but it increases in pace to walk through more advanced smart contract examples.
This two-day course, geared for developers, equips participants with fundamental knowledge and practical know-how to build an MVP on the Eris technology stack. Related technologies such as IPFS that complement the Eris stack shall also be briefly covered. A hands-on development project will have participants build smart mortgage-backed-securities.
Course requirements:
Please ensure that you bring your laptop and power supply. It is also required that you have a working Chrome browser installed and your laptop has a working WiFi interface.
The workshop contains several breaks, beverages are included.
Course Language:   English

Agenda

Day 1

Introduction to blockchains and smart contracts

  • What are blockchains and smart contracts?
  • Speciality of blockchains and smart contracts
  • Dual Integration Smart Contracts

Ecosystem applications: The motivation behind the Eris tech stack

  • Process Management Tooling architectures
  • Introduction of workshop example: mortgage-backed securities
  • Blockchain tech: Core capabilities and business needs

Introduction to IDE and setting up Eris

  • Browser-based Ether.Camp IDE
  • Install Docker & Eris
  • Start/make keys/chains
  • General tour of the CLI

Core components of blockchain technology

  • Consensus algorithms
  • Inherent validity
  • Hash functions
  • Public key cryptography

Introduction to Solidity

  • Simple elements: contract, constructor, address, msg.sender, msg.value, address.balance, mappings
  • Start building simple example.

The Eris technology stack

  • Functionality available in Eris
  • Future development directions

Specific example in Solidity

  • Exercise: participants finalize example
  • Discussion of results
  • Presentation of first working example
 

Day 2

Deploying contracts, handling accounts, genesis.json

  • SFTP contract from IDE to Eris machine (all in browser)
  • Deploy contract
  • Investigate genesis.json

Interfacing contract via Nods.JS

  • Investigate compiler output (abi and address)
  • Build minimal app.js (Node.JS) to expose smart contract
  • Use webserver (express)
  • Interface contract (via abi and address)
  • Simple read/writes to contract
  • Events

Advanced example - I

  • Advanced elements: modifiers, inheritance, suicide, internal, hash functions, time
  • Start developing an advanced example of smart mortgage-backed securities.

Advanced example - II

  • Exercise: participants finalize smart mortgage – backed securities.
  • Discussion of results
  • Presentation of working example

Setting up multi-validator network

  • Participants send addresses to each other
  • Generate joint genesis.json
  • Setup of consortium blockchain amongst participants
  • Play token contract / MBS example on that network.

Best practices of smart contract programming

  • Uniqueness of smart contract programming
  • Known anti-patterns in smart contract programming
  • Case study: GovernMental Ponzi and ‘The DAO’
  • Building fault tolerant smart contracts
  • Best practices of smart contract programming

Open discussion round

  • Questions
  • Applications of interest for participants
  • Detailed discussion on technical approaches for participant applications
Get Your Ticket via Eventbrite