SlideShare una empresa de Scribd logo
1 de 43
Descargar para leer sin conexión
Python,
Blockchain, and
Byte-Size Change
Portia Burton
@pkafei
PyDX 2016
Who am I?
My name is Portia Burton
I am a full-stack developer at the
Atlantic magazine
Became interested in blockchains
earlier this year
Not a cryptographic expert
What is a Blockchain?
A blockchain is a cross between a decentralized data store and bittorrent.
What is Bitcoin?
Type of Cryptocurrency
Creation based on paper by Satoshi Nakamoto titled
“Bitcoin: Peer-to-Peer Electronic Cash System”
Peer-to-peer which means transactions happen without
a third party. Alice can send money directly to Bob
Many Different Types of Cryptocurrencies
Bitcoin vs. Blockchain
Bitcoin is part of a blockchain
Blockchain is a digital ledger of transactions
Each transaction is cryptographically signed
Blockchains are trustless
Ethereum
Introduction to Ethereum
Ethereum is a programmable blockchain, every new blockchain spawned from
Ethereum has the same properties as Ethereum
Ethereum Virtual Machine is the low level machine language
Is Turing complete, unlike bitcoin which does not have looping capabilities
It also is aware of multiple states, unlike bitcoin which is only aware of two states
(spent and unspent)
Different Consensus Mechanisms
Proof of Work: Uses the Etash DAG algorithm. The Etash
DAG algorithm is based on Bitcoin’s the Dagger-Hashimoto
algorithm.
Proof of Stake: Proof of Stake is another way of validating. It
calculates the weight of the node, being proportional to its
computational resources. It’s less resource intensive than
Proof of Work.
Ethereum Chains (not all blockchains are the same)
Different Blockchains
Public blockchain: It is the official Ethereum chain that everyone can read and interact
with
Testnet blockchain: The official test chain of Ethereum. Good way to test contracts
without wasting real ether
Private blockchain: This is a blockchain that you can create yourself. This blockchain
can be freely accessed by others, or you can add addresses by invite only
Can an average developer build blockchain
applications?
Indeed, We Can!
But first, some more background
Smart Contracts (also known as DApps)
What is a Smart Contract?
Stored on the blockchain and executed
by code
Many smart contracts are written in
Solidity
Powered by gas which can be
computationally mined or purchased in
an exchange
Transaction: Signed data package that stores a message to be sent
GAS: the name for the execution fee that senders
of transactions need to pay for operations on
Ethereum blockchain
VALUE (field): The amount of wei to transfer
from sender to the recipient
STARTGAS (value): Representing the maximum
number of computational steps the transaction
execution is allowed to take
GASPRICE (value): Representing the fee the
sender is willing to pay for gas
Applications of Ethereum Blockchain of Smart Contracts
Self-executing legal contracts
Create “American Idol” where people can vote using generated tokens
Company boards can be ran virtually
Dropbox business model create and sell encrypted storage space
Predicting financial futures based on an oracle
Demo Time!
But what about Python?
Python Ethereum Client
● Regular commits
● Interacts with private blockchains AND the
official Ethereum blockchain
● Doesn’t download blocks as fast as Go or
Rust’s Ethereum client Parity
Actionable Ways Python Developers Can Interact
with Blockchain
1. Checkout BigchainDB
2. Contribute to Open Bazaar
3. Get web3 to interact with
Django or Flask
Bigchain DB
● This DB is actually in production (used
by ascribe.io)
● Hybrid of a database and blockchain
● NoSql datastore
BigchainDB compared to other data stores
Web3.js
JavaScript library that connects applications to a blockchain
The blockchain act as an alternative or complements the database
Currently web3 is used in the Javascript framework meteor but could be used in Flask
or Django
Why Should We Care?
Democracy and Governance
Democracy as We Know It Can Change
Voting can occur on the blockchain
Agreements will be controlled by code as opposed to legal contracts
Alternative way to keep track of identity
Laws and bill can be kept on the blockchain which will create a
permanent immutable record
Financial Industry
More Transparency, More Control
Money transfers can happen more seamlessly (less reliance on Western Union)
Transparent immutable ledger (do not have to trust banks with personal funds)
Access to capital for nations that lack a dependable banking system
Less Sharing in the Sharing Economy
Peer-to-Peer Profits
Ability to rent out rooms and rides without giving a portion of the profits to a
third-party company
Musicians earn more money when listeners stream their music
Alternative marketplace for creators (such as ascribe.io and OpenBazaar)
Solidity Contract Bugs
Transaction-Ordering Bug (TOD): Smart contract assumes a particular state of a
contract that doesn’t exist
Timestamp Dependence Bug: Asynchronous network is disconnected from a
synchronized global clock. Some contracts assume that network is on global contract
Unchecked Send: Most common exploit. Attacker elicits unexpected behavior from the
contract by calling if from a carefully constructed call-stack
https://ethereum.karalabe.com/talks/2016-hackethon.html#1
Smart Contract Bloopers
How to Get Started Today
Solidity Tutorial: https://solidity.readthedocs.io/en/develop/
Bootstrap Meteor App: https://github.com/SilentCicero/meteor-dapp-boilerplate
Example Dapps:
http://ethereum.stackexchange.com/questions/2940/where-can-i-find-some-solidity-smart-contract-source-code-examples
Command Line Interface of Interacting with the Ethereum Network: https://www.ethereum.org/cli
Meteor: https://www.meteor.com/
Contribute to Existing Blockchain Projects
OpenBazaar: https://github.com/OpenBazaar/OpenBazaar-Server/issues
BigChainDB: https://github.com/bigchaindb/bigchaindb/issues
Portia Burton
@pkafei
http://bit.ly/2dyGohH
Thank You!
References
1. http://ethdocs.org/en/latest/mining.html#what-is-mining
2. http://ethdocs.org/en/latest/frequently-asked-questions/frequently-asked-questions
.html#what-s-the-difference-between-account-and-wallet-contract
3. http://www.coindesk.com/making-sense-smart-contracts/
4. https://github.com/ethereum/go-ethereum/wiki/Command-Line-Options
5. http://www.ethdocs.org/en/latest/contracts-and-transactions/account-types-gas-an
d-transactions.html
6. https://blog.ethereum.org/2016/07/12/build-server-less-applications-mist/
7.http://www.techrepublic.com/article/uk-government-using-blockchain-to-trac
k-welfare-spending/
8. https://github.com/ethereum/pyethapp
9. https://www.bigchaindb.com/whitepaper/bigchaindb-whitepaper.pdf

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Blockchain 101 presentation by fstream.io
Blockchain 101 presentation by fstream.ioBlockchain 101 presentation by fstream.io
Blockchain 101 presentation by fstream.io
 
Definition of Cryptocurrency
Definition of CryptocurrencyDefinition of Cryptocurrency
Definition of Cryptocurrency
 
Block chain 101 what it is, why it matters
Block chain 101  what it is, why it mattersBlock chain 101  what it is, why it matters
Block chain 101 what it is, why it matters
 
Blockchain; how it works, and why you should care
Blockchain; how it works, and why you should careBlockchain; how it works, and why you should care
Blockchain; how it works, and why you should care
 
Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...
Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...
Blockchain And Cryptocurrency : How Blockchain And Cryptocurrency Relate To E...
 
Blockchain, smart contracts - introduction
Blockchain, smart contracts - introductionBlockchain, smart contracts - introduction
Blockchain, smart contracts - introduction
 
Paybis.com - high level intro to blockchain for Devclub.lv
Paybis.com - high level intro to blockchain for Devclub.lvPaybis.com - high level intro to blockchain for Devclub.lv
Paybis.com - high level intro to blockchain for Devclub.lv
 
Blockchain- how it could transform business
Blockchain- how it could transform businessBlockchain- how it could transform business
Blockchain- how it could transform business
 
Blockchain - Presentacion Betabeers Galicia 10/12/2014
Blockchain - Presentacion Betabeers Galicia 10/12/2014Blockchain - Presentacion Betabeers Galicia 10/12/2014
Blockchain - Presentacion Betabeers Galicia 10/12/2014
 
Blockchain Explained
Blockchain Explained Blockchain Explained
Blockchain Explained
 
Namecoin Primecoin Potcoin
Namecoin Primecoin Potcoin Namecoin Primecoin Potcoin
Namecoin Primecoin Potcoin
 
BlockChain Public
BlockChain PublicBlockChain Public
BlockChain Public
 
Introduction to blockchain and smart contracts
Introduction to blockchain and smart contractsIntroduction to blockchain and smart contracts
Introduction to blockchain and smart contracts
 
INTRO TO BLOCKCHAINS AND CRYPTOCURRENCY
INTRO TO BLOCKCHAINS AND CRYPTOCURRENCYINTRO TO BLOCKCHAINS AND CRYPTOCURRENCY
INTRO TO BLOCKCHAINS AND CRYPTOCURRENCY
 
The curious case of Blockchain Technology
The curious case of Blockchain TechnologyThe curious case of Blockchain Technology
The curious case of Blockchain Technology
 
Decentralized: Blockchain & Cryptocurrency Laws in Canada
Decentralized: Blockchain & Cryptocurrency Laws in CanadaDecentralized: Blockchain & Cryptocurrency Laws in Canada
Decentralized: Blockchain & Cryptocurrency Laws in Canada
 
Blockchain & Cryptocurrency
Blockchain & CryptocurrencyBlockchain & Cryptocurrency
Blockchain & Cryptocurrency
 
Lapine blockchain introduction 10/04/2018
Lapine blockchain introduction 10/04/2018Lapine blockchain introduction 10/04/2018
Lapine blockchain introduction 10/04/2018
 
Blockchain and Bitcoin
Blockchain and BitcoinBlockchain and Bitcoin
Blockchain and Bitcoin
 
Presentation about Blockchain technology
Presentation about Blockchain technologyPresentation about Blockchain technology
Presentation about Blockchain technology
 

Similar a Python, Blockchain, and Byte-Size Change

P5 to blockchain or not to blockchain
P5 to blockchain or not to blockchainP5 to blockchain or not to blockchain
P5 to blockchain or not to blockchain
devid8
 

Similar a Python, Blockchain, and Byte-Size Change (20)

The Blockchain and JavaScript
The Blockchain and JavaScriptThe Blockchain and JavaScript
The Blockchain and JavaScript
 
Blockchain data structures and fundamental
Blockchain data structures and fundamentalBlockchain data structures and fundamental
Blockchain data structures and fundamental
 
Ethereum Block Chain
Ethereum Block ChainEthereum Block Chain
Ethereum Block Chain
 
Blockchian introduction
Blockchian introductionBlockchian introduction
Blockchian introduction
 
BlockChain for the Banker
BlockChain for the BankerBlockChain for the Banker
BlockChain for the Banker
 
Blockchain Presentation
Blockchain PresentationBlockchain Presentation
Blockchain Presentation
 
Introduction to blockchain
Introduction to blockchainIntroduction to blockchain
Introduction to blockchain
 
Blockchain
BlockchainBlockchain
Blockchain
 
Click Ventures Blockchain Ecosystem Report 2018
Click Ventures Blockchain Ecosystem Report 2018Click Ventures Blockchain Ecosystem Report 2018
Click Ventures Blockchain Ecosystem Report 2018
 
P5 to blockchain or not to blockchain
P5 to blockchain or not to blockchainP5 to blockchain or not to blockchain
P5 to blockchain or not to blockchain
 
Blockchain an introduction_n_li
Blockchain an introduction_n_liBlockchain an introduction_n_li
Blockchain an introduction_n_li
 
An Introduction to Blockchains
An Introduction to BlockchainsAn Introduction to Blockchains
An Introduction to Blockchains
 
Blockchain
BlockchainBlockchain
Blockchain
 
BlockChain Technology By Deep Akabari.pptx
BlockChain Technology By Deep Akabari.pptxBlockChain Technology By Deep Akabari.pptx
BlockChain Technology By Deep Akabari.pptx
 
Blockchain: it's much more than Bitcoin
Blockchain: it's much more than BitcoinBlockchain: it's much more than Bitcoin
Blockchain: it's much more than Bitcoin
 
Blockchain: it's much more than Bitcoin
Blockchain: it's much more than BitcoinBlockchain: it's much more than Bitcoin
Blockchain: it's much more than Bitcoin
 
Blockchain notes b tech aktu by krazy kreation (kulbhushan)
Blockchain notes b tech aktu by krazy kreation (kulbhushan)Blockchain notes b tech aktu by krazy kreation (kulbhushan)
Blockchain notes b tech aktu by krazy kreation (kulbhushan)
 
The Potential of Blockchain Technology
The Potential of Blockchain TechnologyThe Potential of Blockchain Technology
The Potential of Blockchain Technology
 
Blockchain
BlockchainBlockchain
Blockchain
 
Application of Blockchain Technologies in Digital Forensics
Application of Blockchain Technologies in Digital ForensicsApplication of Blockchain Technologies in Digital Forensics
Application of Blockchain Technologies in Digital Forensics
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Python, Blockchain, and Byte-Size Change

  • 2. Who am I? My name is Portia Burton I am a full-stack developer at the Atlantic magazine Became interested in blockchains earlier this year Not a cryptographic expert
  • 3. What is a Blockchain? A blockchain is a cross between a decentralized data store and bittorrent.
  • 4. What is Bitcoin? Type of Cryptocurrency Creation based on paper by Satoshi Nakamoto titled “Bitcoin: Peer-to-Peer Electronic Cash System” Peer-to-peer which means transactions happen without a third party. Alice can send money directly to Bob
  • 5. Many Different Types of Cryptocurrencies
  • 6.
  • 7. Bitcoin vs. Blockchain Bitcoin is part of a blockchain Blockchain is a digital ledger of transactions Each transaction is cryptographically signed Blockchains are trustless
  • 9.
  • 10. Introduction to Ethereum Ethereum is a programmable blockchain, every new blockchain spawned from Ethereum has the same properties as Ethereum Ethereum Virtual Machine is the low level machine language Is Turing complete, unlike bitcoin which does not have looping capabilities It also is aware of multiple states, unlike bitcoin which is only aware of two states (spent and unspent)
  • 11. Different Consensus Mechanisms Proof of Work: Uses the Etash DAG algorithm. The Etash DAG algorithm is based on Bitcoin’s the Dagger-Hashimoto algorithm. Proof of Stake: Proof of Stake is another way of validating. It calculates the weight of the node, being proportional to its computational resources. It’s less resource intensive than Proof of Work.
  • 12. Ethereum Chains (not all blockchains are the same)
  • 13.
  • 14. Different Blockchains Public blockchain: It is the official Ethereum chain that everyone can read and interact with Testnet blockchain: The official test chain of Ethereum. Good way to test contracts without wasting real ether Private blockchain: This is a blockchain that you can create yourself. This blockchain can be freely accessed by others, or you can add addresses by invite only
  • 15. Can an average developer build blockchain applications?
  • 17. But first, some more background
  • 18. Smart Contracts (also known as DApps)
  • 19. What is a Smart Contract? Stored on the blockchain and executed by code Many smart contracts are written in Solidity Powered by gas which can be computationally mined or purchased in an exchange
  • 20. Transaction: Signed data package that stores a message to be sent GAS: the name for the execution fee that senders of transactions need to pay for operations on Ethereum blockchain VALUE (field): The amount of wei to transfer from sender to the recipient STARTGAS (value): Representing the maximum number of computational steps the transaction execution is allowed to take GASPRICE (value): Representing the fee the sender is willing to pay for gas
  • 21. Applications of Ethereum Blockchain of Smart Contracts Self-executing legal contracts Create “American Idol” where people can vote using generated tokens Company boards can be ran virtually Dropbox business model create and sell encrypted storage space Predicting financial futures based on an oracle
  • 23. But what about Python?
  • 24. Python Ethereum Client ● Regular commits ● Interacts with private blockchains AND the official Ethereum blockchain ● Doesn’t download blocks as fast as Go or Rust’s Ethereum client Parity
  • 25. Actionable Ways Python Developers Can Interact with Blockchain 1. Checkout BigchainDB 2. Contribute to Open Bazaar 3. Get web3 to interact with Django or Flask
  • 26. Bigchain DB ● This DB is actually in production (used by ascribe.io) ● Hybrid of a database and blockchain ● NoSql datastore
  • 27. BigchainDB compared to other data stores
  • 28. Web3.js JavaScript library that connects applications to a blockchain The blockchain act as an alternative or complements the database Currently web3 is used in the Javascript framework meteor but could be used in Flask or Django
  • 29. Why Should We Care?
  • 31. Democracy as We Know It Can Change Voting can occur on the blockchain Agreements will be controlled by code as opposed to legal contracts Alternative way to keep track of identity Laws and bill can be kept on the blockchain which will create a permanent immutable record
  • 33. More Transparency, More Control Money transfers can happen more seamlessly (less reliance on Western Union) Transparent immutable ledger (do not have to trust banks with personal funds) Access to capital for nations that lack a dependable banking system
  • 34. Less Sharing in the Sharing Economy
  • 35. Peer-to-Peer Profits Ability to rent out rooms and rides without giving a portion of the profits to a third-party company Musicians earn more money when listeners stream their music Alternative marketplace for creators (such as ascribe.io and OpenBazaar)
  • 36. Solidity Contract Bugs Transaction-Ordering Bug (TOD): Smart contract assumes a particular state of a contract that doesn’t exist Timestamp Dependence Bug: Asynchronous network is disconnected from a synchronized global clock. Some contracts assume that network is on global contract Unchecked Send: Most common exploit. Attacker elicits unexpected behavior from the contract by calling if from a carefully constructed call-stack
  • 38. How to Get Started Today Solidity Tutorial: https://solidity.readthedocs.io/en/develop/ Bootstrap Meteor App: https://github.com/SilentCicero/meteor-dapp-boilerplate Example Dapps: http://ethereum.stackexchange.com/questions/2940/where-can-i-find-some-solidity-smart-contract-source-code-examples Command Line Interface of Interacting with the Ethereum Network: https://www.ethereum.org/cli Meteor: https://www.meteor.com/
  • 39. Contribute to Existing Blockchain Projects OpenBazaar: https://github.com/OpenBazaar/OpenBazaar-Server/issues BigChainDB: https://github.com/bigchaindb/bigchaindb/issues
  • 42. References 1. http://ethdocs.org/en/latest/mining.html#what-is-mining 2. http://ethdocs.org/en/latest/frequently-asked-questions/frequently-asked-questions .html#what-s-the-difference-between-account-and-wallet-contract 3. http://www.coindesk.com/making-sense-smart-contracts/ 4. https://github.com/ethereum/go-ethereum/wiki/Command-Line-Options 5. http://www.ethdocs.org/en/latest/contracts-and-transactions/account-types-gas-an d-transactions.html 6. https://blog.ethereum.org/2016/07/12/build-server-less-applications-mist/