Upgrade to Pro — share decks privately, control downloads, hide ads and more …

500 days of Dapps

500 days of Dapps

My journey of building Blockparty, an event management dapp with a twist.

1eecfce54b4f902784d046328935efd4?s=128

Makoto Inoue

April 20, 2017
Tweet

More Decks by Makoto Inoue

Other Decks in Technology

Transcript

  1. @makoto_inoue @makoto 500 days of Dapps

  2. Q: Coding Ethereum Smart Contract > 1 year ?

  3. Day 1 (405 days ago)

  4. 2016 Mar

  5. A: 2 people

  6. London Ethereum “CodeUp”

  7. 365 days ago

  8. London Ethereum “CodeUp” • Small audience • For coders •

    At • £5 donation to Whizzkids
  9. • Ethereum 101 • Show & Tell CodeUp - Topics

  10. CodeUp - #18

  11. 324 days ago (May)

  12. Company Hackathon

  13. What should I make?

  14. I have a problem to solve!

  15. - Limited space - Huge sign ups - No turn

    ups Meetups - 50% problem Expectation Reality
  16. - Escrow model - Micro payment - Game theory Solution

    - Block Party!!
  17. Building Dapp 101

  18. Step 1: Learn Solidity in 3 lines

  19. msg.sender

  20. msg.value

  21. address.send()

  22. Step 2: Deploy Solidity in 3 commands

  23. http://truffleframework.com

  24. Tada!

  25. Tada! Add some video https://www.youtube.com/watch?v=Y1MfOGzpqYQ

  26. Do you use BlockParty for CodeUp?

  27. No

  28. Why Not? Never Enough people in my meetup Takes half

    a day to sync Ethereum database No one has Ether
  29. Ethereum is not ready yet to the Mass

  30. What should I do?

  31. The future is already here It’s just not very evenly

    distributed William Gibson
  32. None
  33. 306 days ago (June - July)

  34. None
  35. HACKED!!!

  36. Smart contract programming requires a different engineering mindset ... similar

    to hardware programming or financial services programming than web or mobile development. https://github.com/ethereum/wiki/wiki/Safety
  37. Step 3: Spend 3 months auditing my Dapp

  38. Is my Dapp Okay?

  39. NO

  40. payback()

  41. address.send()

  42. To all participants...

  43. A user can be a code

  44. The fix - Pull payment pattern

  45. Step 1: Mark payout amount

  46. Step 2: Allow users to call withdraw individually

  47. https://github.com/OpenZeppelin/zeppelin-solidity

  48. Still not fixed: Re-entrancy attack vector!

  49. Fixed!!!

  50. Is my Dapp Okay now?

  51. Not sure

  52. Bug Bounty as a smart contract

  53. Bounty smart contract

  54. Bounty smart contract

  55. Bounty smart contract

  56. 206 days ago

  57. I am ready now!

  58. Step 1: Book a table

  59. Step 2: Announce the event

  60. Step 3: Register

  61. Party!!

  62. Did everybody turn up?

  63. 140%!!!

  64. Dapp effect:

  65. Is Ethereum ready to the Mass?

  66. Not quite Takes half a day to sync Ethereum database

    No one has Ether Not from mobile
  67. What should I do?

  68. 51 days ago

  69. 2017 Feb

  70. Step1: Book a table

  71. Step 2: Announce the event

  72. Step3: Register…

  73. Why people are not registering?

  74. Why don’t you integrate into mobile wallet? @PascalVanHecke

  75. Mobile wallets

  76. Status

  77. Status

  78. Status

  79. Status

  80. 10 minutes later….

  81. 11:07

  82. DAppleths

  83. Ethereum as a bot

  84. 11:13

  85. 3 hrs later….

  86. 15:31

  87. http://github.io/inzhoop-co/LETH

  88. The following day

  89. 08:00

  90. Tada!!

  91. The first mobile Dapp experience (on mainnet?)

  92. At Ethereum Night

  93. 22:15

  94. Hey, can I join your party? @nicksdjohnson

  95. 0.6 ETH: 0.6

  96. Can I borrow some money?

  97. 1.1 ETH: 1.1

  98. Error: Insufficient funds for gas* price + value

  99. 23:30

  100. 23:42

  101. Did everybody turn up?

  102. 7 turn ups

  103. 2 no turn ups

  104. Deposit as a present

  105. My first ever profit!!

  106. Is Ethereum ready to the Mass?

  107. Not quite Takes half a day to sync Ethereum database

    No one has Ether Not from mobile
  108. Would people ever buy Ether?

  109. Stable Coins

  110. And each Dapp depends on each other

  111. Dapps ecosystem

  112. Dapps ecosystem

  113. What would you build?

  114. 100 days from now (Day 505)

  115. Insurance Blockchain Hackathon 21-23 July, London Organised by Simply Business

  116. Dapps ecosystem Insurance Bank Derivatives

  117. Dapps ecosystem Insurance Bank Derivatives Meetup Sharing economy IoT Law

    Music
  118. @makoto_inoue @makoto Thanks!!