Ethereum


Photo by Tim Evans on Unsplash

Background

This is a continuation of Part 1 where I described how Safe Remote Purchase works. In this blog post, I will document the process of executing the Safe Remote Purchase Smart Contract using Remix Solidity IDE and MetaMask, running on a Google Chrome browser.

MetaMask


Photo by rawpixel on Unsplash

Background


Photo by Gabriel Gusmao on Unsplash

Background


Photo by Tony Webster on Unsplash

Background

Background


Photo by Markus Spiske on Unsplash

I run geth on my cloud server to sync with the Ethereum Blockchain. I start geth whenever I code and it goes into a round of resynchronization with the Blockchain. This takes anything from minutes (that's if the last time I code is yesterday), or hours (if the last time I did this was months ago). 

As of the time of writing, Ropsten (which I work on because ETHs are free here) is in block 1,911,915 and the main ethereum has reached block 4,399,227. If you do a complete sync, it will take you 2 to 3 days or more.

Background


Photo by Eaters Collective on Unsplash

This is a continuation of the Going Dutch Smart Contract project that I started on 2nd Sep 2017. It has been a month, which is probably the equivalent of a year if you count in blockchain-time. Geth has gone from 1.6.7 to 1.7.2 and after upgrading my setup, I had to let it run overnight (in fast mode!) to sync my node to the block again.

Background


Image: https://unsplash.com/@jjying

This is a continuation of my post about Ethereum on the Cloud and Smart Contract execution with MetaMask. MetaMask is a Google Chrome extension and runs only on desktops. I wanted to execute Dapps on a mobile device on the go. Enters Status. Status is a mobile application on Android and iPhone. It allows you to run Decentralized apps, stores your ETH in a wallet and send/receive ETH from another person. It also runs like chatbot.

Installing Status

Use Case

My buddy, Mark and I have been hanging out on supper dates for the past 18 years. Sometimes he pays first and I forget to pay him back. The reverse happens at other times. We don't trust each other to maintain an Excel file to capture the records. I mean, look, what if Mark doctors the Excel file when I am not looking. This is obviously a great candidate for blockchain - now our records becomes immutable and the history of our misspending are forever etched in the blockchain.

This is what I set out to achieve in my Go-Dutch contract:

Objective

Mahesh Murthy has an amazing tutorial to setup an Ethereum environment to develop Truffle Dapps on the Ethereum blockchain. You can read it here. Part 1 of the tutorial explains the architecture of the Ethereum platforms and lets you execute a smart contract via a simple web page that runs locally. The blockchain runs locally using testrpc.

In the second tutorial, Murthy deployed the smart contract on Ropsten, Ethereum's testnet blockchain and runs a Truffle Dapp web application to allow users to interact with the smart contract. The Dapp runs locally.