Feedback Req: What do you like/dislike about cryptocurrency "wallets"

Right now, I feel that the wallet applications are strictly utilitarian, and to be honest, far too technically-minded. My personal goal for the Peercoin wallet is to completely upend the status quo, and make it frictionless to use, much like Internet banking (and tools like Mint.com) radically simplified personal finances past the days of manually recording debits and credits in your checkbook ledger.

Concurrent with my work on trying to simplify the description / visualization of Proof-of-Stake, I’ve started to sketch out my thoughts on how the Peercoin wallet (client/server) application could evolve to be more attractive and easier to use than anything else on the market. As I was trying to visualize PoS, I realized that there was a lot of opportunity to use it for a model of how the whole wallet interface could evolve.

To help guide my first draft of the concept, I wanted to solicit feedback from you all, regarding how you feel about crypto wallets in general (Bitcoin-Qt, Litecoin-Qt, Armory, Electrum, etc.). Also, feel free to talk about what you like and dislike about the Peercoin client (as it currently stands, v.0.3.0), and what you think would make it better.

Questions to prime your thoughts:

[ul][li]Do you feel that cryptocurrency wallets provide all of the tools you need to manage your currencies? If not, what are they lacking?[/li]
[li]When you open up your wallet, do you feel that you have the ability to get a quick overview of the state of your finances?[/li]
[li]When you use your wallet to send or receive coins, do you have all the information you need to feel confident that the transaction was successful? If not, what part of the transaction process makes you the most nervous?[/li]
[li]If you were designing the next generation wallets, and nothing was impossible, what would you include?[/li]
[li]Think of a person you know who is open to new ideas, but who isn’t very technical. If they came to you and asked about getting set up with a Peercoin wallet, what would the application need to include to make it easy to get started?[/li]
[li]What information should the wallet make available to teach them about using Peercoin, specifically, and other cryptocurrency in general?[/li][/ul]

Your feedback is definitely appreciated, and I look forward to reading your responses. I plan on setting up a separate topic (or even a separate, linked site) to provide open access to the design process and concept versions, so we can move Peercoin’s tools forward as a community.

Thanks!

It could be good to collect a list of wallets people use and compare current feature sets as well.

I’ll get us started

1 QT based wallets that all the main Coins use

There is also
https://www.multibit.org/features.html

and???

Bump for great justice!

Let me hear from you all – any feedback is useful as I start to map out the information architecture and consider critical functionality!

A port of Multibit for Peercoin would be great.

It is my wallet of choice for BTC - Mainly for the multiple wallets within one client and the exchange rate tracker!

+1 for multibit. It’s vastly improved over the QT wallet.

I’d argue for completely separating the wallet from the main codebase, I don’t think it belongs there.

A one-click minting button

Do you feel that cryptocurrency wallets provide all of the tools you need to manage your currencies? If not, what are they lacking?

I think the qt wallets are too basic for advanced users and too difficult to use for non-technical persons. The Peercoin wallet 0.3 in particular lacks some important functionality like the “avatar mode” (coin control) and an easy mode to unlock wallet for minting.

When you open up your wallet, do you feel that you have the ability to get a quick overview of the state of your finances?

Yes it’s OK, with the exception of the “stake” parameter, which is not self-explaining. In PPC, the “coin age” would be useful too.

When you use your wallet to send or receive coins, do you have all the information you need to feel confident that the transaction was successful? If not, what part of the transaction process makes you the most nervous?

a) It’s very basic. I like the Blockchain.info wallet where you can see things like network propagation, check instantly addresses for validity and see the estimated confirmation time. b) The fact if the address is correct and valid, and the time until the first confirmation.

If you were designing the next generation wallets, and nothing was impossible, what would you include?

  • A general “alias-mode” for crypto addresses, perhaps in a email-like format (“john_doe@ppc”) which could be used to make online payments without need to insert the “real” address. I don’t know if this is possible without changes in the protocol.
  • Multiple cryptocurrencies in one software.

Think of a person you know who is open to new ideas, but who isn’t very technical. If they came to you and asked about getting set up with a Peercoin wallet, what would the application need to include to make it easy to get started?

An easy-to-use installer for Linux and Mac OS (Don’t know the windows one). Automatic setup of ppcoin.conf (rpcuser/rpcpassword). Perhaps a “beginner” mode with only the basics (like now) and “advanced” mode.

What information should the wallet make available to teach them about using Peercoin, specifically, and other cryptocurrency in general?

Tooltips which explain what is “Stake”, “Unconfirmed” etc. would be a great improvement.

@d5000, can you explain “avatar mode” in greater detail? It’s a term I’ve heard a few times in the last couple of days, but that I’m unfamiliar with.

Unfortunately I also don’t know the exact implementation of “avatar mode”. It is a way to select the address from which a transaction is sent to control coin-age. Sunny King had mentioned a command “sendtoaddressfrom”:

[quote=“Sunny King, post:6, topic:164”]Don’t know about coin control, but I might add a new command ‘sendtoaddressfrom’ such that you could specify which addresses the fund should come from. This is not specifically for preserving coin age, it’s meant to improve the privacy control of the client. getbalance would be updated in this mode so you could see how much balance is associated with each address.

I call this the ‘avatar’ mode as each address can be thought of as an avatar.[/quote]

Thanks, that helps. If I read into that description, it sounds like it’s a way to use the addresses in your client for more than just incoming transactions.

I think it would work something like this:

Wallet ID (Pxsomevalueherethatisntnecessarilypublicallyknown)
^
| Address w1 (Psomeaddressthatyoucanreceiveto_and_sendfrom)
| Address w2 (Panotheraddressyoucanreceiveto_and_sendfrom)
| …

In some ways, that’s what Multibit does, but in their case, it’s my understanding that they are different wallets with a single address stored in the same client, rather than a single wallet with multiple addresses. At first glance, I’m not sure if each address would have it’s own passphrase for security, or if they would share one.

Does anyone know if there’s ever been an attempt at coming up with a deterministic wallet for Peercoin, like there have been for Bitcoin (Electrum, Armory, etc.)?

well the interface could always be improved to make it more user friendly, like coinbase. also the backup aspect is a little unclear for me. must i overwrite backups? could you install a feature where i plug in my usb chip and hit a button and it automatically syncs my wallet to my memory card and then makes it ready to be ejected? so i could just pop it in, hit update and unplug like an ipod.

I’m a huge fan of the blockchain.info style wallet, javascript and mobile apps with cloud storage of encrypted wallets.

I think having the debug console for running text commands is important

Something that lets you know how many coins are eligible for proof of stake or minting purposes, or a report breakdown in 2 groupings:

Coins 30+ days old: 80.2%
Coins <=30 days old: 19.8%

Maybe even better stats: Oldest Coin transaction currently in wallet: 52 coins received July 13, 2013

But the more I think of this, the more I’m thinking it should be an auxiliary program that launches off the wallet.

You push the “Coin statistics” button, and a different window opens, a different program process and executable starts.

This way the main wallet where you keep your coins remains small and isn’t upgraded as often. But the other child programs, or auxiliary programs can be upgraded without affecting your main wallet.

(Plus if the auxiliary process or plug-in crashes, it doesn’t take down your daemon or your wallet. They stay running)

To be honest, every time I upgrade my wallet, I’d be worried that some unforeseen bug will be spotted a week later. If I knew that my main wallet didn’t change often, but I could get new “Add on” or “plug in” features without touching my main wallet software, I’d prefer that…

Much like Firefox does it I suppose. I don’t know.

I could see things like:

a) A chat add-on

b) A news/bulletin add-on

c) A price widget that makes use of btc-e or the exchange of your choice

d) A signed message add-on. Or something that can work with bit-message

e) A statistic / reporting add on, that can tell you all kinds of non-important stuff that leaves the daemon itself alone, but can go and calculate it upon request. Almost like a website statistics page, but for your wallet transactions and the Network Health Statistics itself

f) An add-on to see a small advertisement somewhere, bottom left corner maybe, in exchange for accruing micro-ppc. After 500 ads, you get paid 0.01 PPC (optional to the user)

g) Any other type “add-on” or “plug-in” as the community sees fit. All of these without touching the main wallet. Just accessible as buttons, tabs, etc, that launch these extra utilities and add-ons later.

All of the add-ons should NOT be able to transfer funds though. That would be key. Only the main wallet could do that. The rest of these would be supporting software programs that bring their own new features, without touching your coins.

If you begin thinking about the future now, we can keep the main wallet simple, small, and tightly coded. Then we can have fun with community contributed plugins and add-ons that won’t affect the security of the main wallet or it’s integrity.