SlideShare une entreprise Scribd logo
1  sur  52
Télécharger pour lire hors ligne
UX/UI
FOR
WEB3
Self-Sovereign
Identity Practical,
Usable, and
Universal.
Do we want to
solve Etherum’s
identity problems
@JonnyAustinTX
THE BEST
TECHNOLOGY
DOESN’T WIN
THE BEST
EXPERIENCE DOES
The 10 Usability
Heuristics
Jakob Nielsen
nngroup.com/articles/ten-usability-heuristics
Visibility of
System status
UsabilityHeuristic.01
The system should always keep users informed
about what is going on, through appropriate
feedback within reasonable time.
Visibility of
System status
Visibility of
System status
Blockchain transaction latency is an
unfamiliar experience for most new users.
Always provide a pending state for
transactions with the ability to view the
transaction on a block explorer like
EtherScan.
For dApps
Visibility of
System status
Match between system
and the real world
UsabilityHeuristic.02
The system should speak the users' language,
with words, phrases and concepts familiar to the
user, rather than system-oriented terms. Follow
real-world conventions, making information
appear in a natural and logical order.
Match between system
and the real world
Match between system
and the real world
For dApps
The Metamask pop up during a
signature request will likely grab
the attention of the user.
Make sure you use PersonalSign or
EIP712 signing methods that allow
you to include a human readable
message which you can use to
guide the user.
Match between system
and the real world
Match Between System and the Real World
Rimble Bonus Tip
Add some personality: say Hi or reference your dapp's name so they know it's
coming from you
Explain what this action will do: connect you securely
Explain what this action is for: prove you own the account
This might be because the user has recently accepted the connection
request or because your dapp hasn't implemented EIP1102 – which we
suggest you do
Include the nonce (e.g. d458fa15-dcab-4d85-a477–004d6febca12) as a
security procedure but add some context as to why they're seeing it! Also
make sure they're aware they don't need to remember this or write it down
Explain that it won't cost Ether
User control
and freedom
UsabilityHeuristic.03
Users often choose system functions by
mistake and will need a clearly marked
"emergency exit" to leave the unwanted state
without having to go through an extended
dialogue. Support undo and redo.
User control
and freedom
User control
and freedom
User control
and freedom
Though security is incredibly
important in the crypto space,
allow users to decentralize at
their own pace.
Do not require users to write
down their seed phrase during
on boarding. Instead, allow them
to layer on security best practice
as their wallet balance
increases.
For dApps
User control and freedom
Rimble Bonus Tip
Let the user explore before connecting
Only ask them to connect when they need to
Educate them passively – don't force them
to learn if they don't need to know right now
UsabilityHeuristic.04
Consistency
and Standards
Consistency
and Standards
Users should not have to wonder whether
different words, situations, or actions mean
the same thing. Follow platform conventions.
Consistency
and Standards
Consistency
and Standards
Standards are currently
emerging in this space which
can make things difficult.
For language around Gas/
Transaction/Miner/Network
fee’s, continue to experiment as
no one has figured out what
resonates best, yet.
For dApps
UsabilityHeuristic.05
Error
Prevention
Error
Prevention
Even better than good error messages is a
careful design which prevents a problem from
occurring in the first place. Either eliminate
error-prone conditions or check for them and
present users with a confirmation option
before they commit to the action.
Error
Prevention
Mistakes in crypto are typically
higher cost than in traditional
applications where transactions
can be reversed.
For this reason, err on the side of
too many warnings and consider
creating white and black lists of
known contract addresses and
also alerting users when they
are interacting with an address
for their first time.
For dApps
Error
Prevention
UsabilityHeuristic.06
Recognition Rather
Than Recall
Recognition Rather
Than Recall
Minimize the user's memory load by making
objects, actions, and options visible. The user
should not have to remember information
from one part of the dialogue to another.
Instructions for use of the system should be
visible or easily retrievable whenever
appropriate.
Recognition Rather
Than Recall
Recognition Rather
Than Recall
Moving into web3 will typically
require users to keep track of an
increasing number assets which
will quickly surpass a user’s
ability to recall them.
When dealing with transactions,
make sure that the user can
view and select from a list of all
their assets. Also, consider
integrating a DEX to allow users
to transact in any asset they
would like.
For dApps
UsabilityHeuristic.07
Flexibility and
efficiency of use
Flexibility and
efficiency of use
Accelerators — unseen by the novice user —
may often speed up the interaction for the
expert user such that the system can cater to
both inexperienced and experienced users.
Allow users to tailor frequent actions.
Flexibility and
efficiency of use
Flexibility and
efficiency of use
Think about decisions a user
may need to make repeatedly
over the course of their lifetime
with your app. dApps return
more control to users meaning
that less of their actions can be
automated away to third parties.
Allow users to set a default of
slow/medium/fast gas
estimation in their settings to
speed up their workflow.
For dApps
UsabilityHeuristic.08
Aesthetic and
Minimalist Design
Aesthetic and
Minimalist Design
Dialogues should not contain information
which is irrelevant or rarely needed. Every extra
unit of information in a dialogue competes
with the relevant units of information and
diminishes their relative visibility.
Aesthetic and
Minimalist Design
Aesthetic and
Minimalist Design
Crypto is complicated. Go the
extra mile to simplify the UX
and UI of your app to combat
that perception.
Try to avoid displaying full wallet
addresses or smart contact
addresses in the main UI.
For dApps
UsabilityHeuristic.09
Help users recognize, diagnose,
and recover from errors
Error messages should be expressed in plain language
(no codes), precisely indicate the problem, and
constructively suggest a solution.
Help users recognize, diagnose,
and recover from errors
Help users recognize, diagnose,
and recover from errors
Help users recognize, diagnose,
and recover from errors
Again, crypto is unique in that errors can
result in loss of funds that cannot be
reversed, increasing the pressure on users.
When dealing in transactions, allow a user
to resubmit a pending transaction with a
higher gas price and the same nonce to
push the transaction through.
For dApps
UsabilityHeuristic.10
Help and
Documentation
Help and
Documentation
Even though it is better if the system can be
used without documentation, it may be
necessary to provide help and documentation.
Any such information should be easy to search,
focused on the user's task, list concrete steps
to be carried out, and not be too large.
Help and
Documentation
Help and
Documentation
Because crypto is so confusing and the stakes are so
high when dealing with irreversible transactions, it is
important to hold a new user’s hand and build their
confidence.
Consider supplying a new user with some starter assets
and walking them through a tutorial that actually allows
them to perform the action they might be anxious about.
For dApps
EXTRA STUFF
Fiat On-Ramps
Rimble Bonus Tip
Set an expectation of how much ETH a user
will need to get started.
Check to see if a user has enough ETH to
cover it and if they don’t use a an integrated
exchange like Wyre to help onboard them.
Distinguish between
On-chain and
Off-chain data
Progressive Decentralization
Build your dApp experience in a way that
allows for a user to decentralize over time
and at their own pace.
This means things like giving new users the
option to have you custodian their keys, then
use their own keys with you as a recovery
option, to full ownership of their keys.
Check out Austin Griffith’s
Burner Wallet
Check out Austin Griffith’s
Burner Wallet
THANK YOU
Check out RIMBLE
https://rimble.consensys.design/
Check out UPORT
https://www.uport.me/

Contenu connexe

Tendances

Write Smart Contract with Solidity on Ethereum
Write Smart Contract with Solidity on EthereumWrite Smart Contract with Solidity on Ethereum
Write Smart Contract with Solidity on Ethereum
劉 維仁
 
Introduction To Solidity
Introduction To SolidityIntroduction To Solidity
Introduction To Solidity
101 Blockchains
 

Tendances (20)

Neo4j Drivers Best Practices
Neo4j Drivers Best PracticesNeo4j Drivers Best Practices
Neo4j Drivers Best Practices
 
Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)
Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)
Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)
 
Write Smart Contract with Solidity on Ethereum
Write Smart Contract with Solidity on EthereumWrite Smart Contract with Solidity on Ethereum
Write Smart Contract with Solidity on Ethereum
 
The 10 Usability Commandments
The 10 Usability CommandmentsThe 10 Usability Commandments
The 10 Usability Commandments
 
Blockchain 2.0
Blockchain 2.0Blockchain 2.0
Blockchain 2.0
 
Blockchain Technology
Blockchain TechnologyBlockchain Technology
Blockchain Technology
 
Alpaca NFT Field Study
Alpaca NFT Field StudyAlpaca NFT Field Study
Alpaca NFT Field Study
 
Blockchain Presentation
Blockchain PresentationBlockchain Presentation
Blockchain Presentation
 
Blockchain
BlockchainBlockchain
Blockchain
 
Ppt on blockchain technology
Ppt on blockchain technologyPpt on blockchain technology
Ppt on blockchain technology
 
Blockchain Powerpoint Presentation Slides
Blockchain Powerpoint Presentation SlidesBlockchain Powerpoint Presentation Slides
Blockchain Powerpoint Presentation Slides
 
Introduction To Solidity
Introduction To SolidityIntroduction To Solidity
Introduction To Solidity
 
UX and Accessibility
UX and Accessibility UX and Accessibility
UX and Accessibility
 
Ethereum Blockchain explained
Ethereum Blockchain explainedEthereum Blockchain explained
Ethereum Blockchain explained
 
The Ethereum Blockchain - Introduction to Smart Contracts and Decentralized A...
The Ethereum Blockchain - Introduction to Smart Contracts and Decentralized A...The Ethereum Blockchain - Introduction to Smart Contracts and Decentralized A...
The Ethereum Blockchain - Introduction to Smart Contracts and Decentralized A...
 
Ethereum in a nutshell
Ethereum in a nutshellEthereum in a nutshell
Ethereum in a nutshell
 
Blockchain concepts
Blockchain conceptsBlockchain concepts
Blockchain concepts
 
ChessFi Litepaper v0
ChessFi Litepaper v0ChessFi Litepaper v0
ChessFi Litepaper v0
 
Blockchain: The New Technology and Its Applications for Libraries
Blockchain: The New Technology and Its Applications for LibrariesBlockchain: The New Technology and Its Applications for Libraries
Blockchain: The New Technology and Its Applications for Libraries
 
Bitcoin and Blockchain Technology Explained: Not just Cryptocurrencies, Econo...
Bitcoin and Blockchain Technology Explained: Not just Cryptocurrencies, Econo...Bitcoin and Blockchain Technology Explained: Not just Cryptocurrencies, Econo...
Bitcoin and Blockchain Technology Explained: Not just Cryptocurrencies, Econo...
 

Similaire à BuildETH

Megan McKeever - design
Megan McKeever - designMegan McKeever - design
Megan McKeever - design
mmm5014
 
Did you check the UX Quality?-Rajarshi Ray
Did you check the UX Quality?-Rajarshi RayDid you check the UX Quality?-Rajarshi Ray
Did you check the UX Quality?-Rajarshi Ray
bhumika2108
 

Similaire à BuildETH (20)

Eindpresentatie usability engels
Eindpresentatie usability engelsEindpresentatie usability engels
Eindpresentatie usability engels
 
10 Usability Heuristics explained
10 Usability Heuristics explained10 Usability Heuristics explained
10 Usability Heuristics explained
 
Megan McKeever - design
Megan McKeever - designMegan McKeever - design
Megan McKeever - design
 
Design process design rules
Design process  design rulesDesign process  design rules
Design process design rules
 
Did you check the UX Quality?-Rajarshi Ray
Did you check the UX Quality?-Rajarshi RayDid you check the UX Quality?-Rajarshi Ray
Did you check the UX Quality?-Rajarshi Ray
 
Concept Presentation
Concept PresentationConcept Presentation
Concept Presentation
 
Heuristic principles
Heuristic principlesHeuristic principles
Heuristic principles
 
Prometheus - Open Source Forum Japan
Prometheus  - Open Source Forum JapanPrometheus  - Open Source Forum Japan
Prometheus - Open Source Forum Japan
 
Assessing the quality of usability
Assessing the quality of usabilityAssessing the quality of usability
Assessing the quality of usability
 
Cheating your way through Web Testing
Cheating your way through Web Testing Cheating your way through Web Testing
Cheating your way through Web Testing
 
Neilsen Design heuristics
Neilsen Design heuristicsNeilsen Design heuristics
Neilsen Design heuristics
 
Evaluating User Interfaces
Evaluating User InterfacesEvaluating User Interfaces
Evaluating User Interfaces
 
HCI Unit 3.pptx
HCI Unit 3.pptxHCI Unit 3.pptx
HCI Unit 3.pptx
 
10th heuristic evaluation
10th heuristic evaluation10th heuristic evaluation
10th heuristic evaluation
 
Heuristic ux-evaluation
Heuristic ux-evaluationHeuristic ux-evaluation
Heuristic ux-evaluation
 
ASSESSING THE QUALITY OF USABILTY
ASSESSING THE QUALITY OF USABILTYASSESSING THE QUALITY OF USABILTY
ASSESSING THE QUALITY OF USABILTY
 
Moving To SaaS
Moving To SaaSMoving To SaaS
Moving To SaaS
 
10 principles of interaction design
10 principles of interaction design10 principles of interaction design
10 principles of interaction design
 
Assignment 4 hci
Assignment 4 hciAssignment 4 hci
Assignment 4 hci
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
 

Dernier

Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
nirzagarg
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Nitya salvi
 
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman MuscatAbortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion pills in Kuwait Cytotec pills in Kuwait
 
How to Build a Simple Shopify Website
How to Build a Simple Shopify WebsiteHow to Build a Simple Shopify Website
How to Build a Simple Shopify Website
mark11275
 
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
gajnagarg
 
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
HyderabadDolls
 
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
yhavx
 
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
nirzagarg
 
Top profile Call Girls In eluru [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In eluru [ 7014168258 ] Call Me For Genuine Models We ...Top profile Call Girls In eluru [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In eluru [ 7014168258 ] Call Me For Genuine Models We ...
gajnagarg
 

Dernier (20)

Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
 
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
Just Call Vip call girls Fatehpur Escorts ☎️8617370543 Two shot with one girl...
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
 
Aminabad * High Profile Escorts Service in Lucknow Phone No 9548273370 Elite ...
Aminabad * High Profile Escorts Service in Lucknow Phone No 9548273370 Elite ...Aminabad * High Profile Escorts Service in Lucknow Phone No 9548273370 Elite ...
Aminabad * High Profile Escorts Service in Lucknow Phone No 9548273370 Elite ...
 
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best ServiceIndependent Escorts Goregaon WhatsApp +91-9930687706, Best Service
Independent Escorts Goregaon WhatsApp +91-9930687706, Best Service
 
Abortion pills in Riyadh +966572737505 <> buy cytotec <> unwanted kit Saudi A...
Abortion pills in Riyadh +966572737505 <> buy cytotec <> unwanted kit Saudi A...Abortion pills in Riyadh +966572737505 <> buy cytotec <> unwanted kit Saudi A...
Abortion pills in Riyadh +966572737505 <> buy cytotec <> unwanted kit Saudi A...
 
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
 
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service AvailableCall Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
Call Girls Jalaun Just Call 8617370543 Top Class Call Girl Service Available
 
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman MuscatAbortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
 
How to Build a Simple Shopify Website
How to Build a Simple Shopify WebsiteHow to Build a Simple Shopify Website
How to Build a Simple Shopify Website
 
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
 
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
 
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
 
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
一比一原版(ANU毕业证书)澳大利亚国立大学毕业证原件一模一样
 
Mohanlalganj ! Call Girls in Lucknow - 450+ Call Girl Cash Payment 9548273370...
Mohanlalganj ! Call Girls in Lucknow - 450+ Call Girl Cash Payment 9548273370...Mohanlalganj ! Call Girls in Lucknow - 450+ Call Girl Cash Payment 9548273370...
Mohanlalganj ! Call Girls in Lucknow - 450+ Call Girl Cash Payment 9548273370...
 
Nishatganj ? Book Call Girls in Lucknow | Book 9548273370 Extreme Naughty Cal...
Nishatganj ? Book Call Girls in Lucknow | Book 9548273370 Extreme Naughty Cal...Nishatganj ? Book Call Girls in Lucknow | Book 9548273370 Extreme Naughty Cal...
Nishatganj ? Book Call Girls in Lucknow | Book 9548273370 Extreme Naughty Cal...
 
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
Top profile Call Girls In Sonipat [ 7014168258 ] Call Me For Genuine Models W...
 
Kondapur ] High Profile Call Girls in Hyderabad (Adult Only) 9352988975 Escor...
Kondapur ] High Profile Call Girls in Hyderabad (Adult Only) 9352988975 Escor...Kondapur ] High Profile Call Girls in Hyderabad (Adult Only) 9352988975 Escor...
Kondapur ] High Profile Call Girls in Hyderabad (Adult Only) 9352988975 Escor...
 
Top profile Call Girls In eluru [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In eluru [ 7014168258 ] Call Me For Genuine Models We ...Top profile Call Girls In eluru [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In eluru [ 7014168258 ] Call Me For Genuine Models We ...
 
TRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptxTRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptx
 

BuildETH

  • 2. Self-Sovereign Identity Practical, Usable, and Universal. Do we want to solve Etherum’s identity problems @JonnyAustinTX
  • 5. The 10 Usability Heuristics Jakob Nielsen nngroup.com/articles/ten-usability-heuristics
  • 7. The system should always keep users informed about what is going on, through appropriate feedback within reasonable time. Visibility of System status
  • 9. Blockchain transaction latency is an unfamiliar experience for most new users. Always provide a pending state for transactions with the ability to view the transaction on a block explorer like EtherScan. For dApps Visibility of System status
  • 10. Match between system and the real world UsabilityHeuristic.02
  • 11. The system should speak the users' language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order. Match between system and the real world
  • 12. Match between system and the real world
  • 13. For dApps The Metamask pop up during a signature request will likely grab the attention of the user. Make sure you use PersonalSign or EIP712 signing methods that allow you to include a human readable message which you can use to guide the user. Match between system and the real world
  • 14. Match Between System and the Real World Rimble Bonus Tip Add some personality: say Hi or reference your dapp's name so they know it's coming from you Explain what this action will do: connect you securely Explain what this action is for: prove you own the account This might be because the user has recently accepted the connection request or because your dapp hasn't implemented EIP1102 – which we suggest you do Include the nonce (e.g. d458fa15-dcab-4d85-a477–004d6febca12) as a security procedure but add some context as to why they're seeing it! Also make sure they're aware they don't need to remember this or write it down Explain that it won't cost Ether
  • 16. Users often choose system functions by mistake and will need a clearly marked "emergency exit" to leave the unwanted state without having to go through an extended dialogue. Support undo and redo. User control and freedom
  • 18. User control and freedom Though security is incredibly important in the crypto space, allow users to decentralize at their own pace. Do not require users to write down their seed phrase during on boarding. Instead, allow them to layer on security best practice as their wallet balance increases. For dApps
  • 19. User control and freedom Rimble Bonus Tip Let the user explore before connecting Only ask them to connect when they need to Educate them passively – don't force them to learn if they don't need to know right now
  • 21. Consistency and Standards Users should not have to wonder whether different words, situations, or actions mean the same thing. Follow platform conventions.
  • 23. Consistency and Standards Standards are currently emerging in this space which can make things difficult. For language around Gas/ Transaction/Miner/Network fee’s, continue to experiment as no one has figured out what resonates best, yet. For dApps
  • 25. Error Prevention Even better than good error messages is a careful design which prevents a problem from occurring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action.
  • 27. Mistakes in crypto are typically higher cost than in traditional applications where transactions can be reversed. For this reason, err on the side of too many warnings and consider creating white and black lists of known contract addresses and also alerting users when they are interacting with an address for their first time. For dApps Error Prevention
  • 29. Recognition Rather Than Recall Minimize the user's memory load by making objects, actions, and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate.
  • 31. Recognition Rather Than Recall Moving into web3 will typically require users to keep track of an increasing number assets which will quickly surpass a user’s ability to recall them. When dealing with transactions, make sure that the user can view and select from a list of all their assets. Also, consider integrating a DEX to allow users to transact in any asset they would like. For dApps
  • 33. Flexibility and efficiency of use Accelerators — unseen by the novice user — may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.
  • 35. Flexibility and efficiency of use Think about decisions a user may need to make repeatedly over the course of their lifetime with your app. dApps return more control to users meaning that less of their actions can be automated away to third parties. Allow users to set a default of slow/medium/fast gas estimation in their settings to speed up their workflow. For dApps
  • 37. Aesthetic and Minimalist Design Dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility.
  • 39. Aesthetic and Minimalist Design Crypto is complicated. Go the extra mile to simplify the UX and UI of your app to combat that perception. Try to avoid displaying full wallet addresses or smart contact addresses in the main UI. For dApps
  • 40. UsabilityHeuristic.09 Help users recognize, diagnose, and recover from errors
  • 41. Error messages should be expressed in plain language (no codes), precisely indicate the problem, and constructively suggest a solution. Help users recognize, diagnose, and recover from errors
  • 42. Help users recognize, diagnose, and recover from errors
  • 43. Help users recognize, diagnose, and recover from errors Again, crypto is unique in that errors can result in loss of funds that cannot be reversed, increasing the pressure on users. When dealing in transactions, allow a user to resubmit a pending transaction with a higher gas price and the same nonce to push the transaction through. For dApps
  • 45. Help and Documentation Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user's task, list concrete steps to be carried out, and not be too large.
  • 47. Help and Documentation Because crypto is so confusing and the stakes are so high when dealing with irreversible transactions, it is important to hold a new user’s hand and build their confidence. Consider supplying a new user with some starter assets and walking them through a tutorial that actually allows them to perform the action they might be anxious about. For dApps
  • 49. Fiat On-Ramps Rimble Bonus Tip Set an expectation of how much ETH a user will need to get started. Check to see if a user has enough ETH to cover it and if they don’t use a an integrated exchange like Wyre to help onboard them.
  • 51. Progressive Decentralization Build your dApp experience in a way that allows for a user to decentralize over time and at their own pace. This means things like giving new users the option to have you custodian their keys, then use their own keys with you as a recovery option, to full ownership of their keys. Check out Austin Griffith’s Burner Wallet Check out Austin Griffith’s Burner Wallet
  • 52. THANK YOU Check out RIMBLE https://rimble.consensys.design/ Check out UPORT https://www.uport.me/