Web + Money

Use cases

Considering costs when programming

Building something for humans

  • Wallet: A vital component to participate on any app using a blockchain is the wallet. It holds the private keys to sign transactions on your behalf. This wallet can live in your browser, your mobile phone, a hardware wallet, even a piece of paper. Some services generate their own wallet when you visit them for the first time and store it encrypted on the local storage of the web browser. The empowerment of users having the choice of managing their own wallets and funds is a big change which require a great responsibility from each user on how to use and secure their keys. For convenience this app is currently using Metamask which provides a wallet as a browser extension which you can use across different sites.
  • Transactions take time: Whenever you do a transaction on the blockchain you need to wait for it to be mined by the network which can take many seconds. Users are used to millisecond response times on the centralized web, it's important to show proper feedback while the action completes. This can be done different ways, from loading indicators, to queueing multiple actions in the background and letting the user to continue the interaction with the app. Some Dapps show the transaction hash broadcasted to the network as a way to provide a handle to monitor it on Etherscan in case of any trouble.
  • Transactions cost Ether (money): As any transaction on the network pays some fees for it's computation it adds a new dimension to the development. Now you have to decide which actions to do on-chain or off-chain, which of them generate friction and to whom is best to assign this cost.
  • Authentication: Blockchains are permissionless systems, you don't need to create an account on a centralized service to operate, typically your "account" is your public key and you prove you own your key by signing transactions with your private key. This is a concept very strange to most new users, it requires education as people get exposed to services using crypto. A service could optionally register users in a central database with metadata related to the public key like an avatar or profile. Authentication is not the same as Identity, if you need to prove that someone is some human being in particular there are some project working on this challenge like uPort and Civic.
  • Handling exceptions: There are many exceptional conditions and confusion that can happen along the way, some of them related to Ethereum like out of gas exceptions, user rejecting to sign a transaction, timeouts, sending a transaction to a wrong address, no funds available, etc. I think a good designed UX should avoid users to make most of these mistakes, for instance disabling or hiding buttons if they shouldn't be available, reading the contract data and finding out if the action can be performed and preventively guiding the user in other directions.
  • Network: When you build an app based on any blockchain whether be Bitcoin, Ethereum or other, there are typically multiple testing platforms called testnets apart from the mainnet or production blockchain. The app should state clearly in which network it's operating to avoid any confusion, however first-time users typically have a hard time understanding what this is all about even though most of the wallets let you select to which network to connect.

--

--

--

Tech entrepreneur. Enjoy building things and making them real. Love technology & science, fascinated about the secrets of the human mind. https://abarmat.com

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Qtum Community and Development Updates Week of October 31st — November 6th, 2017.

ATLANTIS METAVERSE X ABGA MEMBERSHIP ANNOUNCEMENT

Post #1 — Blockchain Equity

Polygon’s co-founder Sandeep Nailwal is going to speak at Consensus 2021

IOST Bi-Weekly Report | Q3 Initial Contribution Report, New Game featured, IOSTABC Update & More

Qtum Community and Development Updates — Week of November 14th — 21st, 2017

Developing Mobile DApps Part 1

Cososwap officially launched

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Ariel Barmat

Ariel Barmat

Tech entrepreneur. Enjoy building things and making them real. Love technology & science, fascinated about the secrets of the human mind. https://abarmat.com

More from Medium

AI Bot, helping ordinary men make smart money

How to buy Banana Task Force Ape Guide

My Top 3 Crypto Exchanges and Platforms for March 2022

From Investing in Crypto to NFTs