What's a Crypto Wallet?
I'm going to speak in plain-English here. This is so important to understand, but at a human level.
I'm also challenging myself to write and publish this in the 15 minutes I have before I get the kids from school (and a half-dozen of their friends – It's Friday Funday at the Romann's).
On Ethereum, one of the key innovations is the "smart contract" – which basically means you take the 'trust built into the network' and combine that with a set of rules, a contract, that enables developers to have 'programmable trust'.
Let me unpack that.
Most people think of a blockchain as being a 'distributed ledger'. Yeah, it is, but that's not what's important. If you want a distributed ledger, use a database.
What makes the blockchain different is the ability to have trust negotiated in the network, rather than needing an intermediary.
Because there's trust, you can have a contract because you can trust that the contract can be enforced in the network (rather than in the application, or by an intermediary – think bank or record label).
So, you can think of a smart contract as the way an application on ethereum works. Only, instead of it being as 'trivial as a to do app' (To Do apps are not necessarily trivial), you can literally implement a bank or a record label in a smart contract.
The lower layer, Ethereum (and others), provides the trust and underlying protocols so that the application doesn't have to do everything itself. An analogy would be that the internet provides a bunch of underlying communications protocols, so that any application can communicate and know that their messages won't get lost (over-simplification for you technical people).
So an Ethereum Crypto Wallet visually represents the smart contract that defines the distributed application. In some ways it's a browser for the crypto space, but I know people would get upset at that broad of a generalization. It's more like an application container, that given a smart contract one can create a Wallet that's the application container itself. The Wallet developer creates the user interface and user experience, while the Wallet container makes sure that developers don't have to rewrite everything underneath.
What I'm trying to say is...
If you have a smart contract for music distribution, you can take an open source wallet and write the user interface to create a music app for all the music you own or rent.
If you have a smart contract for a collateralized loan, the developer might create a specific interface that allows you to manage your loan.
So, it's not a general interface like a browser, but it is a generalized container for creating dApps.
One last bit. Since the Wallet is closer to the user and what we all experience when we use an application, I have strong opionions about how applications are created.
I just wrote this in a message to @ricburton:
This is what people don’t understand… when you build for a platform you can do great work.
I meant "platform" as in iOS / Mobile Safari... but Ric corrected me to:
This is what people don’t understand… when you build for a protocol you can do great work.
What Ric and his team are doing is writing both specifically for Apple products AND for the Ethereum protocol.
When you narrow your focus, you can build great products.
The alternative is "write once, run everywhere" making sure what you build doesn't satisfy anyone (except perhaps the developers, who have an easier time supporting multiple platforms).
That's what I'm expecting Balance to do. Build a great Ethereum Wallet for the next generation of crypto user and dApp. By the way, check out the Balance website and look at all the verbs:
I've invested in Ric before, and have invested again. You don't need to invest Ethereum, you can start by joining the Discord and Test Flight and start using the product and interacting with the team (but, respectfully, because they're focused on shipping).
- Join the Test Flight.
- Join the Discord.
- Support (invest in) the Product.
Feel free to correct anything you see here, I've written this quickly, and as I said above, am hitting publish and running out to get the kiddos. I will likely come back and change this over time, as I have a lot to say about the Wallet-User inteface/experience.