The UX design of Blockchain Applications

Martin Danty
15 min readDec 31, 2018

Note: this article is a draft that I continuously work on.

Why should UX designers care about Blockchain?
Blockchain became the buzz of 2017 not because of the amazing potential of the technology, but as an investment object. Now in 2018, the huge gains that used to surround cryptocurrencies is gone, left stands an incredible technology with almost no adoption rate — yet. As was the case with the internet in the 1990’s, the technology to change the world as we know it is there, the nerds who will build it are present, so what’s halting us? Well, nothing will happen as long as regular people won’t use it. In the case of the internet, it took more than a decade to reach mainstream adoption. Three things helped that happen.

  1. Speed increased, due to better hardware and internet connections.
  2. Use-cases & content increased, due to a longer timespan of trial and error, with creators figuring out how to make money by providing value online.
  3. Lastly, Usability increased. This wasn’t what led the adoption. In fact, most websites in the 90’s had exceptionally poor usability. But to reach more users, and to beat competition, usability became the most important way to stand out in the 00’s and the following decades. As usability became a prioritization, mainstream adoption increased.

What we see now is that Blockchain developers all over the world are already hard at work on the first two criteria, but not a lot of attention is given to increasing the usability of the blockchain technology. In the 90’s online usability didn’t just happen. It was led by pioneers like Donald Norman and Jakob Nielsen. Now we are in a somewhat similar place, in the way that we have a technology with huge possibilities, and with only very few designers, caring about how to present it in a consistent and simple way, to achieve intuitive blockchain experiences.

Having worked on a few blockchain projects as UX designer for the Nordic Blockchain Association, these are some of my tips for fellow ux and ui designers getting into the fascinating world of blockchain technology.

Does blockchain need new design principles?
To begin with we need to break this down from a design perspective.
The internet was being designed in tandem with designing for screens, for interfaces and GUI’s in general. This is not the case with blockchain. Today we have a lot of frameworks, best practice examples, and ideas of what works and doesn’t work in cyberspace. Most of this can be directly applied in the same way as we would with an app, a website or any type of software. The same design principles that goes all the way back to Norman and Gibson can be used on blockchain dApps without any adaptation, since it was the same underlying foundation from a design perspective.

Why aren’t more designers looking into this?
Well, one of the reasons is that most designers see it as too complicated to get into and they wouldn’t know where to start. Unlike AR and VR that has specific apps (like Lens Studio and Unity), Blockchain is first and foremost a technology that lies in the developers realm. The magic of blockchain happens under the hood, not in the interface. Many interfaces that we are used to, Financial services, games, advertising, and analytics, just to name a few, are also being built on blockchains. If you have experience in any of these areas, you shouldn’t hold yourself back from applying for a job in a blockchain startup looking to put that service on the blockchain. In fact, it’s probably better for you as a designer to know as little as possible about blockchain. This will make it easier for you to ask the right questions, and empathise with potential users who are also new to the world of blockchain.

Current problems no one has solved yet
We need a layer like the Ethernet Network Service. People don’t remember 16 digit bank accounts and they don’t remember the IP addresses for all the websites they visit. You cannot remember Google’s IP address because… why should you? You can just type in the name! What DNS did for IP adresses, we need for blockchain addresses. It would be easy to counter this argument by saying I can’t remember the 16 digits on my credit card either. But even though this is what we are used to, wouldn’t it be smarter to have a regular name for this code that you can remember? Well yes and no. Easier for you, but less secure right. But this is not the case for crypto. We can use the advantage of public and private keys. Whereas it would only require you to remember a date and three digits if the main card number was easily memorable, this is not the case in blockchain. The private key should stay as impossible to remember as it is, but no reason that the public key is just as impossible to remember. Donating will be as easy as remembering something like Save-the-animals, 1–800-WWF and so on. but what if I make an address that is Safe-the-animals? Like people making gogle.com and scam sites like that? That’s the biggest issue that I don’t have a solution to yet. If these addresses are impossible to remember, people will HAVE to copy/paste it, ensuring that you don’t mistakenly type in a wrong character. At the same time someone could fake being, say, Elon Musk on Twitter and ask for donations to a bitcoin address. How can you say if it is his address or not? It’s just a bunch of random characters. Banks do this by giving some, but not all information about the address. When I put in an address in my bank’s website, it tells me which city and bank it belongs to. This is still not ideal, since I could create a fake account at the same bank, which means I wouldn’t notice any difference. But in Blockchain we can change this paradigm too. What if each address had a unique word or sentence? When I put in Elon Musk’s address I know it should say “Mars 2020” or whatever message that Elon has permanently linked to this address? In Denmark this is pretty close to mobile pay. You put in a phone number that you don’t know, and ensure that you typed it right by looking at the name that shows up linked to that number. Each user on the blockchain could choose to use either their real name or a statement, based on whether they value their anonymity or not. My friend sends me his address, I confirm with him that his word is “Catfish”. I scan a QR code at the table of a restaurant and confirm with them that their word is “Epi Tempura”, to ensure no one replaced the QR code with their own. I show that I click transfer to the restaurant owner when I pay, and I leave. We don’t have to wait for the transfer to go through, using the non-reversible nature of the blockchain for a smoother restaurant experience.

The company Webmoney has their own take on this. They have implemented an optional protection code. Basically a codeword that you put in together with your transaction. The receiver will have to type in the same codeword to receive the money, if they fail to do that within 3 days the order will revert back. This is a less smooth version of my above concept, and it has it’s own flaws. In stores I could cheat by replacing the O with an 0 in my protection code (or something similar). The owner will not be able to get the protection code right and I will get my bill refunded.

Even though it is not a popular opinion in the space, I think that blockchain will not overtake the banks but coexist together. There will be those who want to have full control of their own money, and those who want a bank to take care of it. For elderly people the latter would be recommendable. It will be like asking what bank you have, some will have their own wallets, others will have traditional banks. UX doesn’t have to make blockchain the default for everyone. Another unpopular opinion. But it is setting the field up for failure if this is our mission. It should be accessible to anyone who wants to, but shouldn’t aim to move 100% of the population on the blockchain. The elderly people I know make tons of mistakes on their smart phones that I have to solve. This is ok, it’s easy to solve, no harm done. This is not the case in blockchain. I would not be able to get their money back if they accidentally sent it to the wrong address. A very simple feature that is currently missing is the ability to save blockchain addresses as contacts and name them properly. This could make it easier and less cognition intensive to transfer money between your own accounts and your friends, companies or other addresses that you might need often.

Blockchain Design systems
When the main offering of blockchain is trust, it’s interesting how mainstream audiences find the technology interesting but doesn’t trust it because they don’t understand it.

Connie Yang used to be product designer at Facebook but is now working in blockchain and agrees that fundamentally UX philosophies still apply just as much in blockchain companies.

Monaco onboarding flow?

UX Principles that are currently undervalued in the blockchain community:

Minimizing cognitive load. It takes a lot of cognitive powers, and in part because it’s all so new to us. I think using the internet in the 90’s required way more cognitive power too compared to today, because we just weren’t as used to it.

Optimize user flow. I have tried out so many dApps that I’ve lost track. But there isn’t one that I keep going back to, and none of them have asked me why. Apparently no one cares what I as a user has to say about my experience. 1. analyze the data. Where do users jump off and never come back? 2. If it isn’t obvious why (and actually even if you think it is obvious why) ask your users about what lead them to the conclusion that this wasn’t as interesting as they thought. For me personally it has mostly been a) I didn’t understand what I was supposed to do next, or b) I didn’t find the content or functionality that I expected. If these companies asked me what I expected, or what I didn’t understand, and managed to fix this, they would already be way ahead of competition, and only then will user growth start to happen organically. Allow all users to give system feedback, and don’t dismiss the feedback as “that’s too difficult to fix”. If it can’t be fixed, maybe there are ways to explain it or make it less of a problem to the users.

Remember to research your non-blockchain competitors. This is not a blockchain-only principle, every company has been trying to optimize this for ages, and the succesful ones have often found clever solutions. Find best practice solutions to your problems, chances are they are better than what you currently have. Steal them, adapt them.

On boarding

Like with any platform, onboarding is very important to make as smooth as possible. Make interactive tutorials, make it easily learnable and help the user get going with getting value out of your product before you leave them to it.

Where differs blockchain from other online experiences?

The cost of human error.
Despite the system is way more autonomous than traditional banking, the risk and cost of human error is much higher. There is no undo button. This only relates specifically to transactions though, but is still an important aspect that no one has addressed yet. The right amount of warning messages (not to many for users to start dismissing them) could help make fewer mistakes, and please explain these warnings about what is happening in an accurate and understandable way. We could also analyze what it is users do most, and where they most often make mistakes. Empower the users to be in control over these irreversible actions.

The response time limits
https://www.nngroup.com/articles/response-times-3-important-limits/

“you should send transactional email and confirmation messages within 1 minute to keep users from wondering whether their action — such as a purchase or address change — has been received correctly.”

“The difference here is that users assume that customer service requires human intervention, so they don’t think the computer is broken if they don’t hear back within 1 minute.”

Selvom der arbejdes på at dette bliver hurtigere rent teknisk (Det er et af de områder som der arbejdes allermest på i øjeblikket, alt fra Lightning network til IOTA til Proof of Stake teknologier søger at gøre transaktionshastighederne hurtigere) så kan UX formindske problemet ved at bekræfte brugeren i at det er helt normalt og forklare hvad der sker.

https://www.nngroup.com/articles/powers-of-10-time-scales-in-ux/

Brug billedet. Forklar hvorfor det tager tid. “Netværket er nu ved at godkende din handel, dette kan tage op til en dag”. Show a progress bar if possible. It could be an entertaining animation of how people or anthropomorphic computers are right now arguing over whether this trade is legit.

Volatility

If I were to purchase tokens for whatever decentralized platform that I’m interested in. It could be the decentralized clone of Udemy called x. This platform requires you to acquire it’s tokens to purchase the tutorials. Now the first issue here is that I need to create an account on an exchange that trades this token first. Of course this breaks the user flow. Playstation store has the same in principle, but it accepts all currencies ON the platform to purchase tokens for that you can then buy content with. Number one would be working towards letting the user stay on the platform without having to sign up at other pages to access your content. Number two, the value of this currency should not be volatile. It seems many platforms in crypto want users to purchase their tokens, not to spend on the actual products they offer, but because they will increase in value over time. In theory it should incentivize adoption rate, as sort of an early bird discount. The sooner I get in, the more value I get for my dollars. But in reality it makes the value so volatile that the opposite can happen (and has happened). This is an interesting dynamic, as I’m not interested in buying 100 tokens for $100 when I can risk that the next week I would have gotten 1000 tokens for $100. But at the same time I might buy it the week after if it seems like I will get a good deal out of it. The volatility of tokens works just like offers and discounts. A day where all tokens in the market drop in value is the equivalent of black friday (or cyber monday if you will). This is a way to explain the dynamic in a positive light and relating it to something users already know. Now it’s not as frightening that the token is volatile, and even though we are reaching the domain of copywriters (or UX copy), this is also an important aspect of gaining the users trust by explaining what’s happening.

Questions a UX’er should ask when they begin work on a blockchain project:

Why would users want to join and stay on this network? Are there any incentives for users to stay on the platform/get in early/contribute/invite their friends/etc. Take notice of the incentives (or lack of incentives) and think of whether this is the most optimal way from a user perspective. Ask yourself what model you would prefer, and ask the potential users what model they would prefer.

What are the user stories needed? As a “member” I want to “action” because “need”.

This is a way for developers (and everyone on the team) to agree what we are building towards, in a language that is non-technical.

What non-blockchain company is our closest competitor? At this time in history, blockchain based companies will not be competing with other blockchain based companies for the users. The users are enticed to stay at the very well-functioning platforms they already know and use, that can (in most cases) do more or less the same as the blockchain based alternatives. It’s your job to find out what arguments or values that this technology actually provides that will convince users (who are not pr. default impressed by knowing that the app runs on blockchain) to actually switch from what they know. It’s said that for users to switch it has to be 3/4x better (source? Can’t remember), if the platform/app isn’t there yet, make sure to lay out a roadmap for how they should get there. In order to actually understand what can be achieved and why the founders chose to make this app/platform you need to get your hands dirty and understand the fundamentals of how your product works. If you don’t get it, how will your users? The decentralized social media network x doesn’t compete with other decentralized Social networks. They compete with facebook, twitter and snapchat. Yes it’s great that it gives you gain full control over your own data, that might be sufficient to convince some, but I can guarantee that it will not be the argument that wins over the masses. Find out what painpoints you can fix that are so severe that users will invest time and effort in converting to your new platform instead.

White paper

The way most blockchain based companies start is by making a white paper where potential investors can read about the tech, the mission the vision, and anything else that is the secret sauce of the company to win mainstream acceptance. This is what could be labelled as the wireframe stage of the company. We outline what this is going to look like and feel like in the future. But unlike wireframes, the only ones that are looking at a white paper are the actual users. They are far too complex to understand, and generally not of interest for anyone outside of the developer and investor world. But this seems wrong from a design thinking perspective. This is the exactly the stage where we should do user testing, in order to not build a product that no user want. UX designers getting in at this stage should break it apart and adapt it a format that anyone could understand and tell you whether they would use it or not. Just as with wireframes it can be difficult for users to visualize the end product, so use whatever exercises and tricks that you normally would, to immerse the user into what this product is, in order to get honest and valuable feedback. Based on my own observations of 100+ blockchain platforms, most of these would have pivoted of they had had the chance to get this early feedback, into something that users actually need. It can even be profitable if it turns out the idea is so complex that no one gets it. Using this feedback to rewrite the white paper in a way that is easier to understand will make sure that potential investors get the idea, and might see why they should invest in this particular startup. Just mentioning that user tests at this stage showed a demand among users will increase the likelihood of someone believing that the project will succeed.

Keep it simple
Make sure to not overcomplicate anything. Even though the company might be very proud of the underlying Byzantine fault proof delegated Proof of Stake system that they have built, no user will care since they have no idea what that means. In fact it might scare them away. Being jargon-free is one of the core elements of building trust in the blockchain space according to IBM https://medium.com/design-ibm/blockchain-design-principles-599c5c067b6e

and therefore this should stay behind the scenes, in the same way that an email client wouldn’t explain how the underlying TCP/IP protocol works or a website explaining why they built it with react on https. Instead put focus on how the experience of using the product differs from what they are used to.

Replacing “forgot password”

One of the first things you will notice in blockchain is that you can’t recover forgotten passwords (including “private keys”). Telling users how important it is to store this password safely, and how they should do so seems to change a lot from platform to platform currently. We need to come up with a way to research what approach that works best, and unify this experience across platforms. Why not use Authenticators, like Authy or a blockchain alternative to save your private keys in? That way you will only have to remember/store the private key for that one app.

In case of Death
What happens in case of death? Right now the banks will hold the money till the rightful heirs are found. In the case of decentralized wallets it could lead to a finder’s keeper’s treasure hunt to find out where the private key is stored. Same goes for platforms such as decentralized social medias. If a relative dies you can let Facebook know and they will either deactivate or turn that profile into a mourning page, based on the request. When no one is in control of decentralized Social Media sites, who will be able to delete the profile? Will we have to make a consensus mechanism in the technology that can evaluate the claim of relatives that an individual is dead? We can’t just print more money, so if we are thinking long term, it could be a problem that more and more accounts are frozen because their private keys are never found. Will we eventually run out?

Summary
These are some of my initial thoughts about what is needed for blockchain to reach a mainstream audience. I hope you could find some use and inspiration from my observations about its current state, and I hope you will help me work out solutions to some of these challenges in 2019.

--

--