The Challenge of UX in Ethereum

This text was produced by Zero Knowledge, a podcast hosted by Anna Rose and Fredrik Harryson, which explores the decentralised technology that will power the emerging Web3 and the community building it. The podcast is made for developers and technically-minded people looking to educate themselves on the inner workings of the space.


“Everybody in this space talks about how the Blockchain is “trustless” and “transparent”. It is (almost) certainly true at a programmatic level, software verifying data, but those two assumptions fall apart when you confront them with the actual end user experience.” — Beltran Berrocal in ‘Web3 Design Principles[1]

The day after EDCON 2018 wrapped in Toronto, a small gathering of some of the major wallet creators and dApp developers met for the Web3 UX Unconference. The purpose of the event was to get these builders on the same page, helping the entire group understand how many of them faced the same challenges and were trying to solve for the same problems. It was here that we had a chance to do a series of interviews with the participants about the topic of UX in the blockchain space — including some challenges they are all experiencing. Our interviewees were Alex van de Sande (Ethereum Foundation), Jonny Howle (uPort), Dan Finlay (Metamask), Richard Burton (balance.io), Philippe Castonguay, Bryant Eisenbach, & Dan Tsui — the recording of the podcast can be found HERE.

Below is a summary of some these pain points, as well as some additional ideas we have started to think about since the event. We hope this article can lay out some of the problem space in Web3 UX design, and invite developers, designers, builders to work on these pain points and challenges.

Pain point #1: Getting started in Ethereum

Strangers in a strange land

Given that the space is still very much at the stage where it is built “by developers for developers”, non-technical users may find the first few steps into the Ethereum ecosystem very disorienting. Some of the language and concepts will be foreign, and this holds even for those more experienced developers. There is an onboarding and self-education period that many people (including those who have been working in technological fields for many years) must go through in order to be able to understand and navigate this space. And while there are resources available, there still remains a lack of clear documentation, curriculum, or courseware.

Built for flipping

In order to engage with the Ethereum blockchain, a user will need ether. And to get ether, most users will need to first buy it. Therefore, the journey for most users really starts at exchanges. Protocol-level and dApp developers need to bear this in mind at every step of the construction of their project.

As Alex van de Sande of the Ethereum Foundation pointed out in his interview, an exchange or trading platform as an entry point will inevitably attract certain people, and will also turn off others. He suggested this may be the reason that the majority of the users entering the space are people who are looking to “flip crypto”. This may also help to explain why so much of the culture (games, language, and focus) is around flipping tokens, non-fungible tokens, or things like CryptoKitties. Flipping can be tons of fun, but this is not a universally loved game, and it will definitely attract certain kinds of users over others.

This represents a barrier to entry at the beginning of the funnel — some designers of DApps, catering to less experienced users, will need to take this into account and develop ways to make this initial step into the ecosystem easier.

Pain point #2: Gas

Repeatedly, the very concept of Gas was questioned by this group. Gas must be calculated and charged for every transaction, adding complexity to the user experience and an obstacle for new users to engage. This is a no-brainer for people already well within the space — we know it serves an important role in the entire protocol design — however, for individuals first arriving here, the very idea of Gas is strange. We all have a certain level of familiarity with seemingly ‘free’ electronic payments when we use things like credit cards, or Venmo. However, putting transaction data on a blockchain incurs real costs — and although it for now it may be only a few cents, it can still be a deterrent because of the cognitive friction involved. We need to stress this importance, and to think of further alternatives toward reducing, hiding, or removing gas fees altogether for more user-friendly experiences.

Pain point #3: Private Key Management & Recovery

In all the interviews, private key management was definitely the pain point raised most often. Private key management (or rather mis-management) has left many people vulnerable to theft and loss of access.

Jonny Howle from uPort clearly articulated this issue in our interview: the idea of relying on seed phrases and pieces of paper is untenable. So while there is some value in the practice of managing funds this way, truly independent of any third party providers, the risks associated with key management of this nature will likely be too large for the majority of the population to be expected to take on.

And what about the lost private keys? Many of us have experienced the frustration of losing a password or private key to an account. There have been many stories of people with old wallets containing thousands of tokens (worth millions in Fiat money) now inaccessible to them due to the mismanagement of their private key.

In response, according to Dan Finlay of Metamask, many teams are developing ways to push users to use their keys in smarter ways, or have the keys live in more secure locations along the user flow. Applications like MyCrypto are moving away from dealing with private keys altogether and are outsourcing it to hardware wallets and mobile signer applications. Geth is extracting their key management from the node to an application of its own. Encouraging users to move away from having keys in the browser is a good thing, but it’s unclear what an accepted “best practice” would actually be, especially if you can’t or don’t want to buy a hardware wallet.

Pain point #4: Standardisation of UX

One of the benefits of bringing these wallet creators together for the conference was the clear realization that many teams are grappling with the same problems. However, a common design language and standardised Best Practices still remain elusive across the ecosystem. Many teams have been trying to solve these UX challenges mostly independently of one another. Incentivized UX surveys, openness to feedback, and daily community interaction is core to ramp up the speed of this UX work and develop consistency.

Pain point #5: Blockchain Vocabulary

Certain names have been adopted for blockchain related elements — such as wallets or coins — which actually are not really representative of what these things actually are. MyCrypto’s Taylor Monahan also pointed this out in this talk from earlier this year. According to Monahan, “The term ‘wallet’ is confusing, and people bring a lot of assumptions about this word depending on their experiences inside and outside the crypto-space” [2]. The trouble with applying language from the outside world, in ways that don’t apply 1:1, is that users will inevitably have incorrect expectations, could interact improperly with these things, and could accidentally make mistakes.

For example, ERC20 tokens are often confused with “real” tokens. And yet, precedents in our community’s codebase & standards state that the only first-class token is Ether, while everything else is a smart contract. In fact, there are things you can do with Ether that you can’t with ERC20s. However, given that the term “token” is being used, this is something that is often poorly understood by users when it comes to ERC20 tokens.

Given how early the space truly is, it’s almost as if a significant part of the language hasn’t yet been invented, and that the very underlying ideas could use some rethinking. The bottom line here is that we will need to empower more experienced communicators and UX folks, and give them a platform for reshaping the space.

Pain point #6: Communicating Clearly

The feeling is that when it comes to dApp experiences, users aren’t sufficiently being told what is going on or what is clearly happening. Even more experienced blockchain “users”, in reality, have only become used to this kind of experience, via habit, and could not really claim to be completely aware and not left in the dark.

For example, take signing a transaction: the software is creating the transaction, and the user is just signing it with their key. No one is actually “hand-making” their transactions. So if you can’t verify or see what the software has made in some way, the only recourse is to trust the software and sign whatever it gives you.

The UX problem here is that is there is no way to verify that what you are signing is what it’s supposed to be. This is unlike a similar “web world” counterpart, where you can click the green lock in the browser, and inspect the SSL certificate to see if a site is actually legit or a scam. This is a point the community is acutely aware of, and EIPs have been proposed to remedy (eg. EIP 712)

Pain point #7: The Lack of UX Designers

So far, the largest groups to get involved in this space are devs, researchers, and traders. UX and design have been a bit of an afterthought. In a way, the incentives aren’t exactly there to get UX designers engaged and ready to jump in. UX work isn’t always as visible on GitHub, and often has a very different rhythm and different requirements than “straight” development. According to the Open Source Design blog, “GitHub … caters exclusively to developers’ unique needs and abilities. In doing so, it excludes other stakeholders and becomes a developer silo. Design is not like this. It cannot exist in isolation. Design is about understanding, facilitation and collaboration” [3] While many teams have committed their efforts to include more designers from the entire UX spectrum in their projects, more emphasis and better incentivisation for design work will be the key to galvanize both design and development to work towards a better user experience.

Conclusion

Some of the bad UX in Blockchain is actually seen as a bit of a badge of honor — the thinking goes “only technically savvy folks will actually be able to use this, and the others will be filtered out by the bad UX ”. For some of the tech, this is excusable — especially the protocol level stuff. But lack of good design can also cause major damage to the trust afforded the system — with users sending funds to the wrong addresses or making other avoidable mistakes. So if this is a technology that we eventually want the larger society to engage with, we need to change this attitude about UX.

While there are some builders experimenting with solutions to these problems, there hasn’t emerged any clear best practices for how to address these UX challenges yet. And so the door is open for UX designers and thinkers to weigh in on ways the users of decentralised technologies can be better onboarded. An example is this thread for all those who are coming together to work on basic principles and components for good UX across the ecosystem.

The community needs your feedback and ideas as we rely on this to find solutions for some of the issues we listed, and many more that might not come to our attention. Please reach out, your suggestions are welcomed, encouraged, and necessary. These unique challenges in the Web3 UX design space that present some interesting opportunities for the community to work on — and if you have the energy and dedication, the ECF welcomes you to apply here for a grant to help lead the way towards better solutions.

This text was produced by Zero Knowledge Podcast and is based on a series of interviews done at the Web3 UX Unconference in Toronto in early May 2018. The recording of the interviews can be found HERE. Follow Zero Knowledge Podcast @zeroknowledge
For more information about the Ethereum Community Fund you can check out our website, Twitter, or reach out directly via email.

— — — — — — — —

Further resources and references for a deeper dive into these pain points.

[1] Web3 Design Principles: A framework of UX rules for Blockchain based Distributed Applications (part 1) : https://medium.com/@lyricalpolymath/web3-design-principles-f21db2f240c1

[2] The Future of Ethereum Doesn’t Have Wallets: https://medium.com/mycrypto/the-future-of-ethereum-doesnt-have-wallets-232fcee708bf

[3] Open source design needs better collaboration tools: https://opensourcedesign.net/open-source/communities/collaboration/tools/design/2017/03/27/osd-needs-better-collaboration-tools.html

Ethereum Magicians UX Group: https://ethereum-magicians.org/c/working-groups/User-Experience

Building Fiat-to-Utility Token Onramps: https://medium.com/lociplatform/building-fiat-to-utilitytoken-onramps-8a5a712a3926

Distributed Co-Design Paradigms (DCD): http://slides.com/studiospring/dcd/#/

DAPPS UX AUDIT: https://hackmd.io/FhfCq-rCTyKFQ_j6eyKSjw

Universal logins in a multi-device world: https://www.icloud.com/keynote/0oT9j634vqNxCGZv4SKzoIMIg#Universal_Logins

Identity Standards: https://github.com/ethereum/EIPs/issues/725

Managing Identity with a UI for ERC 725: https://medium.com/originprotocol/managing-identity-with-a-ui-for-erc-725-5c7422b38c09

Gnosis Safe video: https://www.youtube.com/watch?v=HCaVt-PClJI