Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Smart Contracts: From Zero to Dapp Hero | Hedera18

5,727 views

Published on

YouTube Video
https://youtu.be/zmFU54Apyn8

Speaker
John Gethoefer | Principal Software Engineer | Bumped, Inc.

Abstract
Get started with Smart Contracts and the Solidity™ language. In this presentation, you'll receive an introduction to Solidity, a programming language for creating smart contracts for Ethereum and Hedera Hashgraph. You will learn step-by-step procedures to creating a simple smart contract and explore best practices for testing and developing distributed applications (Dapps).

Published in: Software
  • Be the first to comment

Smart Contracts: From Zero to Dapp Hero | Hedera18

  1. 1. John Gethoefer Principal Software Engineer
  2. 2. Smart Contracts From Zero to Dapp Hero
  3. 3. What is a Smart Contract?
  4. 4. Smart Contracts are… • Contracts! (binding agreements) • Self-executing • Enforced by computation (machine code) • Recorded on blockchain (EVM, Hedera!) • Building blocks for Dapps
  5. 5. What are Dapps?
  6. 6. Dapps are… • "De-centralized" Applications • Open Source • End-to-End application • Bound to blockchain by Smart Contracts • Web 3.0 ???
  7. 7. Web 1.0 Apps Database Server (Application) Browser
  8. 8. Web 2.0 Apps Database Server (API) Browser (Application)
  9. 9. Web 3.0 Apps Blockchain Smart Contracts Browser (Application)
  10. 10. Dapp Components • Blockchain or HashGraph • "On-chain" data (Smart Contracts - Solidity) • "Off-chain" data (IPFS, Swarm) • Client Application (React.js, Angular.js) • Protocol bridge (Web3.js, Whisper)
  11. 11. Solidity • Open Source • Curly-braced programming language {} • Basis for smart contracts • Compiles to "Assembly" code • Runs on EVM, Hedera
  12. 12. Tools for Solidity • Remix IDE • Truffle • Embark • OpenZeppelin • Web3.js
  13. 13. Remix IDE • Browser-based Application • http://remix.ethereum.org • Solidity Language Support • Write, Compile, Run, Test, Analyze • Basic smart contract editing • Great tool for learning Solidity
  14. 14. Truffle • Command-line client • npm install -g truffle • unit testing, migration, deployment • Includes useful project templates (boxes) • More advanced tool than Remix IDE
  15. 15. Truffle React Dapp
  16. 16. Embark • Similar to Truffle (more e2e) • npm install -g embark • testing, code generation • Likely easier than Truffle for beginners
  17. 17. Embark Angular Dapp
  18. 18. OpenZeppelin • Smart Contract Library • Reusable Solidity contracts as building blocks • Open Source • Use with Truffle or Embark • Access Control, Crowdsales, Tokens, etc
  19. 19. Your own ERC20
  20. 20. Web3.js • JavaScript web library • JSON RPC • Bridges web applications with smart contracts • Can be used with React.js or Angular.js
  21. 21. Questions? John Gethoefer john@gethoefer.com

×