Decentralization is the concept of taking something that is largely controlled by one party and distributing said control to a group. In software, this means a bunch of different things. I’ve provided Graphite’s definition of decentralization before, but I’ll summarize it here:
Decentralization means users should not have to rely on any one company or application for authentication and storage
Decentralization does not mean storing everything on a blockchain. Decentralization does not even, in my opinion, mean removing all failure points. What it means is that users have choice.
But here’s the thing: users shouldn’t ever notice decentralization.
We build cool shit and tend to focus on the cool shit. But in the end, users only care about how they use that cool shit. So, you may have constructed the most advanced consensus algorithm in history, you may have created a brand new way for files to be chunked up and stored as individual bytes across every networked computer in the world, or you may have created a way for data to be 100% unhackable. That’s all great, but users do not care. Normal users that is.
Normal users are the users saving everything to Google and Facebook and Amazon. They are the ones who give up every piece of their personal data to large conglomerates because it’s convenient. And that convenience is, quite literally, all most users care about. For those of us in the decentralized web space, this means something very important. It means that decentralization is not a feature. It’s the woman behind the curtain. It’s the cog spinning day in and day out to keep the machine alive. But it is not a feature.
When someone logs into your app, they should not even realize they are using a decentralized app. There are problems to be solved in this space, but many of the problems we had once faced are already solved. There’s the issue of key management, for example. There’s no perfect solution to this that makes a user feel like they are using a traditional app, but Blockstack has done a pretty great job of abstracting the technicalities of cryptographic key maintenance.
uPort has provided an incredible mobile authentication experience that, rather than feeling like an extra hurdle, feels like the future of application authentication.
Every day, smart people are making strides to make the entire lifecycle of decentralized application usage seamless, but for that to matter, the apps themselves need to focus on user experience over technical specifications.
You might think the horse I’m beating over decentralized app UX is dead, but it’s not, friends. It’s very much alive and requires additional beating (that analogy got away from me, I think). There are bad apps out there. I won’t name them here, but they’re out there. They are making decentralization a difficult thing to pick up for normal users. Rather than name the bad apps, I think it’s important to celebrate the good ones. Graphite, in my incredibly biased opinion, is one of the good ones. But we’ll focus on others.
Textile provides a mash-up of Instagram and Google Photos to allow you to keep your photos and personal data safe. You can share with others by encrypting anything you share with that user’s public key, but as a user you don’t notice that. And that’s what makes the experience so great.
Misthos is a multi-sig wallet that allows users to distribute bitcoin based on predefined rules. Misthos might not apply to all normal users, but anyone with an organizational structure that requires distribution of payments can easily start using Misthos and see the value. Beyond that, it’s beautifully designed and easy to use.
Gitcoin is a platform for finding and funding bounties for decentralized (and other) projects. It provides users a simple interface for searching for projects and accepting projects. It’s so simple to use, you’ll quickly forget you’re even looking at something that uses the same cryptographic technology that normally makes your head hurt.
Those are just a few example projects, but they are proof that projects do exist that leverage user experience instead of “just” the technology. If you’re interested in testing a secure, decentralized app that puts user experience first, give Graphite a try today.