This is going to be a slightly different post than usual. For multiple reasons, I’ve been trying to think of a way to be better categorize all the projects we have out there. It’s helpful to have a framework when people ask where to contribute, or evaluating grants, or creating roadmaps.
Trying to find a simple starting point, I remembered our glorious tech messiah Steve Jobs, who apparently drew up this simple diagram below, after realizing that Apple (during his absence) made a huge mess of their product lineup.
Nice and simple. Apparently it lead to a lot more focus. We’re not Apple, but maybe this exercise can be useful. So let’s try to come up with a 2x2 matrix for wallets.
This gives us a simple framework where we can see where different projects we know, or use cases we find important, fit.
Within each cell, we could also think of a few specializations. Let’s see what that might look like.
A project can now say, for example, that they want to serve mobile payments use cases for power users, with a focus on security. There are still some vague words in there, like the elusive “power user”, but we have narrowed in pretty well already and can pinpoint the project in the larger landscape.
Critical application infrastructure
I am not claiming that this is perfect, but something in this vein might be a useful tool for us to identify what we might call “critical application infrastructure”. Maybe we need to add an end-user in there somehow?
Bitcoin is a pretty unique thing that works because of a combination of “values” like decentralization, self-custody, open-source, etc. And I think most would agree that a healthy open-source software ecosystem is necessary to maintain these values.
The health of the network itself is of course paramount. Additionally, since users don’t directly interact with the network, but use software to do so, that software is also essential.
Can we maybe then agree on a set of application projects that are critical that we will try to channel resources to? To ensure they are sustainable, well-maintained, community-focused, continue to evolve, etc? Like Bitcoin Core. What others?
So let’s say we want 2-3 projects per subcategory, that gives us 24-36 projects. Still quite a huge effort for the ecosystem to maintain that amount of projects in a way that they really embody all our values.
Minimal feature set
Something I am also noticing is that there are certain basic features that are really spottily implemented. Maybe in addition, we can also agree on a set of features that every project should really have. For example:
Transaction Management
Transaction History - Complete, searchable record of all transactions with clear timestamps, amounts, and status indicators. Users need to find specific transactions months or years later.
Transaction Export - Ability to export transaction data in standard formats (CSV, PDF) for accounting, taxes, or personal record-keeping. This is essential for any serious Bitcoin use.
Transaction Notes/Labels - Users can add personal descriptions to transactions for future reference. Critical for tracking what payments were for.
Search and Filtering - Find transactions by amount, date range, address, or user-added labels. Without this, transaction history becomes useless as it grows.
Address and Contact Management
Address Book/Contacts - Save frequently used addresses with human-readable names. Having to copy-paste long addresses repeatedly is a terrible user experience.
Address Validation - Clear verification that addresses are valid before sending, with warnings for potential issues like wrong network or address format.
QR Code Support - Both scanning QR codes for payments and generating them for receiving. This is essential for mobile usability.
Security and Recovery
Backup and Recovery - Clear, tested backup procedures with step-by-step recovery verification. Users must be able to restore their wallet reliably.
Seed Phrase Management - Proper implementation of BIP39 with clear warnings about security. Users need to understand what they're protecting.
PIN/Password Protection - App-level security to prevent casual access to the wallet on shared or lost devices.
Basic Usability
Clear Balance Display - Unambiguous indication of available balance, pending transactions, and any limitations or locks on funds.
Fee Estimation and Control - Users should understand what they're paying in fees and have some control over fee rates based on urgency.
Network Status - Clear indication of sync status, connection issues, or other network problems that might affect transactions.
Error Handling - Meaningful error messages that help users understand what went wrong and how to fix it, rather than technical jargon.
Interoperability
Standard Address Formats - Support for current Bitcoin address standards to ensure compatibility with other wallets and services.
PSBT Support - For coordination with hardware wallets and multi-signature setups, even if the wallet doesn't directly implement these features.
I already know a few people who might balk at some things in this list, and that’s OK. But let’s say we agree on such a framework and minimal feature list. That then makes it much easer for a contributor looking for a project to help out with. Or a funding entity to narrow in on projects relevant to their mandate. Or a certain Bitcoin Design Guide to lay out reference designs for.
And of course, a big part of the beauty of this ecosystem is that so many of us tinker with all kinds of things. And local solutions will differ, etc. This creative chaos is what results in new innovations. And projects may fail but still produce bits and pieces that lead to other things.
The thought process laid out above is just a loose attempt to create a framework. I like sharing things when they are rough, so don’t assume this is super refined. But maybe it leads to some good conversations.
Now back to my usual proof-of-work update, which I’ll keep super short. Big parts of the last 3 weeks were spent on the Bitcoin Design 5-year anniversary report, which is almost done. You can check out the live version, that is still being finalized and has not been broadly shared yet (will happen next week). And then the Presidio Bitcoin Design Week organization has also taken up a bunch of time and is coming together. And yesterday we published an H1 2025 update for the foundation. Plus all the little things, as usual.
Peace & happiness.
✌️🇺🇦