Great UX is well-known to be one of the key attributes that any startup needs to have in order to be successful. For example, an incredible user on-boarding experience can be the catalyst that turns a moderately interested visitor into a passionate member of a platform.
Blockchain projects have a tremendous hurdle to overcome with regard to UX.
At present, most decentralized projects require a person to a) get a Chrome extension like MetaMask and b) obtain some kind of cryptocurrency like Ether. This leads to additional processes like c) registering for some kind of exchange like Coinbase where you can trade fiat for crypto, d) entering bank account information, e) possibly uploading Government IDs and f) waiting for approval — and on and on and on.
It’s just too much.
In the US, Coinbase is the most common way for people to get into the cryptocurrency market, and it’s for good reason. They make it easier than anyone else.
What is the key to doing what they do? They store their user’s public and private keys for the various tokens they buy. This minimizes the complication that a new user experiences, but it leaves the “ownership” of the assets in the hands of the platform. It also makes things centralized.
To suggest that a blockchain project do this is heresy to some.
I also lean toward decentralization, but I think we have to recognize the UX challenges that pure decentralization presents to us. To that point, I’ve now worked out architectures on a few projects that involve graduated decentralization.
For many projects, it’s worth considering an architecture where you hide blockchain aspects from your users initially and introduce them over time as they become more familiar with the platform. This means that you have some ability to manage private keys / accounts for your users, but you give them instruction and opportunity to transfer out any currency to their own wallet when they are ready.
A smart platform design would also allow for a seamless switch from a platform controlled wallet to a user controlled wallet. For example, I can transfer funds away from Coinbase to my own wallet, but (the last time I checked) there is no way for me to connect my own Ethereum wallet and swap my ETH for BTC.
Platforms built in this manner could lead to eventual decentralization - where over time, users become more comfortable with managing their own tokens & assets.
I’m certainly not suggesting that every project follow this pathway, but I think it’s a very interesting solution in many cases.