Upload
natalie-tehrani
View
52
Download
1
Embed Size (px)
Citation preview
Ethereum Dapp DevelopmentDavid Evans, CFASenior ManagerPortfolio Analytics SystemsCPP Investment Board
davidoevans
@mod_evans
davidoevansDisclaimer: The views and opinions expressed in this presentation are those of the presenter and do not necessarily reflect the views of CPP Investment Board.
My journey to an Ethereum Dapp Development Environment
July 2016 ● Ethereum Hackathon (BlockchainCanada.org)
● ether.camp● soliditybrowser● testnet● ethereumjs-testrpc● geth client
Sept-Nov 2016● MIT Fintech Course
Dec 2016● Introduction to Ethereum Smart Contract
Development (YouTube: Jordon Liegh & Will Warren)○ Atom IDE, Truffle, Solidity
● Web3, Read Solidity docs● ES5 ReactJS Course (Udemy: Mark Price)
Jan 2017● Building a Decentralised Blockchain
(UDemy: Ravinder Diol and Thomas Wiesner)● Redux (Dan Abrimov)● Web3● ES6 (Wes Bos)
Feb 2017● Truffle 3.1.1 working! (Tim Coulter)● ES7 async/await● MetaCoin
Mar 2017● YAEE - Yet Another Ethereum Explorer
Digital Identity and Government Services
Central Banks and Virtual Currencies
What is Blockchain and why should you care?
Ethereum - Infrastructure and the Capabilities it Supports
Capabilities● Trusted Ledger● Automation● Documentation Management
Infrastructure● Low Cost● Efficient● Distributed● Transparent● Secure
Scope of Blockchain Research Institute Research Program
What are core concepts a Dapp developer should know?
Web Application vs Dapp
WEB APP DAPP DAPP
Ethereum Terminology
EVM ● Collection of Ethereum clients
Accounts ● External or contracts
Clients ● Instances of Ethereum specification
Smart Contracts ● Code run by Ethereum clients, hold state
Events ● Triggered from smart contracts
Transactions ● Update state
Gas ● Fuel the EVM runs on
Ether ● Intrinsic currency of Ethereum
How can you make a Dapp?
A Dapp Architecture - View the State of Contracts & Events
VIEW
STATE
CONTRACTS
INFRASTRUCTURE
REACT
REDUX
ETHEREUM
SOLIDITY
A Dapp Development Environment
Demo - YAEE - Yet Another Ethereum Explorer
Ethereum Dapp Development Resources
A Template Project https://github.com/davidoevans/react-redux-dapp
Ethereum Homestead http://ethdocs.org/en/latest/index.html
Solidity Docshttps://solidity.readthedocs.io/en/develop/
https://gitter.im/ethereum/solidity
testrpc https://github.com/ethereumjs/testrpc
trufflehttp://truffleframework.com/
https://gitter.im/ConsenSys/truffle
web3 gists https://gist.github.com/xavierlepretre
Solidity Browser https://ethereum.github.io/browser-solidity
Thank you