Closed vaklinov closed 6 years ago
I have been impressed with Vaklinov's work since he released the first GUI on the Zcash forums many months ago. It has been the standard GUI that Radix42s zcash4win and zcash4mac releases depend on and what 40% of the Zcash network users see when they use Zcash.
I think user friendly UI is very important to adoption and since the Zcash Company has decided to let the community develop wallets/ interfaces for Windows and Mac this is a good fit for the Foundation Grant program.
(On a slightly different but still related subject) I also wonder if there may be an opportunity for collaboration with another independent community project run by Miguel Marco.
https://github.com/miguelmarco/pyzcto
It seems like Miguel and Valkinovs work overlap in some aspects, he also has a basic GUI and has added a few things to his wallet like multi-sig transactions and a Android app you can use to remotely control a Node over Tor.
My hope is the one day we can have a Desktop wallet that:
As a design reference, the Lemassu ATM (which is a Nexus device in a case) has a very nice clean user interface: https://youtu.be/ib8SvraeP0g
I know that with upcoming versions of Zcash there will be a great reduction in RAM usage which will allow Private transactions on many (but not all) Smartphones. An app that securely connects to a users node via Tor but doesn't require the lastest Smartphone may be the only option for users that can't afford the best phones.
What aspects can UX experts, and in particular IDEO CoLab (https://z.cash.foundation//blog/ideo-colab-and-ux-zcash-grants/), can help with?
I'm excited to see that IDEO has offered to contribute to improving the UI.
I would like to hear from @vaklinov about where he feels he could use a hand. It seems that there are some functionality improvements he had in mind, as well as Graphical but I'm not sure of the extent of the GUI revisions he proposed. Would IDEOs strengths be best applied to the front end (GUI) work or under-the-hood (backend code) or both?
Thank you all for the comments so far on this grant request. Some answers to the questions raised:
More generally: the desktop GUI wallet for ZCash that I have created, is in the same category as Bitcoin-QT with respect to user experience (but does not have as many features as Bitcoin-QT). It is not as easy to use as JAXX (which I would categorize as currently the most user-friendly ZCash wallet). Even after the implementation of the potential improvements I am proposing, the desktop GUI wallet ZCash will still be in the same category… However it will provide a better user experience. It will still be better suited to users who have some understanding of the basic concepts, such as the fact that there is a “blockchain” and that it needs to be “synchronized” etc. I think the use of wallets incorporating a full node needs to be promoted since this generally strengthens the network. Still when running a full node it is not possible to completely hide some technical details from users…
Some (more) details of the GUI features I intend to implement:
I shall describe these features in even greater detail in the submission document to be delivered by Oct 6th.
Thanks @vaklinov, this is very helpful for understanding your plans.
What are your thoughts on the tension between the UI exposing the full feature set of Zcash Sprout (let alone the upcoming Sapling improvements!), versus keeping things simple for casual users?
Hey @vaklinov. Really appreciate your proposal and the work you’ve done for the community thus far. It’s awesome to see this wallet moving forward. Here are some of my broad thoughts on design opportunities for the wallet:
1. Packaging the installation. Using the terminal to install anything, including ZCash, can be intimidating to a lot of people who aren’t technical. How can we make installation so simple that its as simple as installing something like Google Chrome?
2. Drive stronger hierarchy of information and functionality. How can we design for the primary actions and information a user will seek and make those the most dominant things both visually and functionally, while pushing all secondary information and functionality to be sub-dominant?
3. Create a simple and consistent visual design language. How can we use fonts, colors and texture to our advantage to assist in making the wallet visually easy to comprehend and navigate?
4. Minimize errors that can end in loss. How might we design extremely fail-safe product interactions for the moments that users are most prone to losing their coins? That could be wallet set-up, key storage, and sending coins.
I currently work as a designer at IDEO and would love to help move the project forward. If you're interested we could consult with the Zcash Foundation and the CoLab (@ideo-colab @ttyling @delitzer) on how that would impact the proposal and how we could collaborate.
@vaklinov, let me know if you're interested in collaborating on some of the things I outlined in my last post.
@tromer Regarding my thoughts on the tension between the UI exposing the full feature set of Zcash Sprout (let alone the upcoming Sapling improvements!), versus keeping things simple for casual users:
I think these are two separate modalities of use. Crypto-currentcy is a relatively new phenomenon and to accommodate casual users we need to keep it simple and “stupid”, to make them feel that they are using a “wallet” in the traditional sense and to make the experience more like other digital wallets… etc. A typical wallet that attempts to do this is Jaxx.
At the same time power users who wish to leverage the full capabilities of a crypto-currentcy like ZEN, would feel somewhat restricted by a simplified wallet. They would prefer a wallet that allows direct access to the full feature set. I wish to position my Desktop GUI Wallet for ZCash specifically in this segment. It is still possible of course to improve the user experience so that even some casual users are able to use the wallet, by making the simple features more prominent and allowing power users to use the advanced features in separate UI TABs/expandable panels etc. But still if someone is totally new to crypto-currentcy and has no technical knowledge, he will not find such a wallet user-friendly.
@jamaalm Of course I am interested in collaborating. Regarding your individual points:
@vaklinov's GUI wallet has been a critical contribution to usability, I fully support a grant for further improvements.
Some thoughts:
We would love to help add some UI polish to this. We are building www.bal.money, a tool for tokens.
Hi @arcalinea, @radix42 and I have cooperated before and I am sure we can do it again. Once the features of this grant proposal are implemented, they will be merged in the distributions of http://zcash4win.com/ and https://zcash4mac.com/... The current version of the wallet also allows users to send a message in the encrypted memo field of shielded transactions. Enhancements could be made in the visualization of incoming memos however (for user convenience).
With the consent of @radix42 I am going to add the following points proposed in grant request https://github.com/ZcashFoundation/GrantProposals-2017Q4/issues/22 to the current request:
In addition the following two points from https://github.com/ZcashFoundation/GrantProposals-2017Q4/issues/22 : -adding support for useful api calls inherited from bitcoin that are useful to miners and are heavily requested (such as for sending from multiple taddrs at once to a taddr) -GUI support for sending to multiple recipients in one txn
are already covered here though worded slightly differently.
@vaklinov, @radix42: several members of the review committee are of the opinion that if this proposal's scope is expanded and will also cover the UI aspects from #22 (with some division of labor between you), then it would be very reasonable to increase the budget above the current $3000. Likewise, if working with IDEO and incorporating their feedback is included.
@tromer Yes, I fully agree that due to the expanded scope of the proposal the budget also needs to expand. IDEOcoLAB have offered to collaborate on the GUI with expert advice/guidance. I would welcome such collaboration but it needs to be budgeted separately.
@vaklinov, thanks for the detailed submission! I haven't read it yet of course, but a note on the title page: neither me nor anyone else in the foundation is the "Project manager". If the proposal is funded, it will be with the expectation that you'll carry out the stated goals; but you'll be managing things at your discretion. That's why everybody here is so keen to understand your plans in advance.
IDEO is donating their work, so if you'd like to work with them, please do include your side of the collaboration in the budget. As for splitting the budget and work of this proposal with @radix42 or others, it's completely up to you.
I'm all in favor of Vaklinov rolling the duplicated or similar items from my gui-related proposal into his, and possibly closing mine altogether. I have 3 other proposals I'm working on, he is much more intimately familiar with the gui code, him doing all that work in the upstream Swing wallet rather than I working in his downstream of zcash4[win|mac] also more easily benefits the entire zksnark coin ecosystem that uses it, in addition to everything else I am juggling.
On Mon, Oct 2, 2017 at 11:48 PM, Eran Tromer notifications@github.com wrote:
@vaklinov https://github.com/vaklinov, thanks for the detailed submission! I haven't read it yet of course, but a note on the title page: neither me nor anyone else in the foundation is the "Project manager". If the proposal is funded, it will be with the expectation that you'll carry out the stated goals; but you'll be managing things at your discretion. That's why everybody here is so keen to understand your plans in advance.
IDEO is donating their work, so if you'd like to work with them, please do include your side of the collaboration in the budget. As for splitting the budget and work of this proposal with @radix42 https://github.com/radix42 or others, it's completely up to you.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ZcashFoundation/GrantProposals-2017Q4/issues/7#issuecomment-333755183, or mute the thread https://github.com/notifications/unsubscribe-auth/AF9e0Df0c1pEw8E6xytRw6Exl6DKAg1Pks5sodi-gaJpZM4PK1OO .
Every informal proposal has multiple reviews by the review committee. The reviews are being collected and discussed in a private google doc (the 5 reviewers all have edit access to it, no one else can view it). By way of early, informal feedback, the reviewers have made a list of projects that they consider leading candidates for grant funding.
In that vein, your project was selected as one of the leading candidates, and the review committee encourages you to submit a full proposal by October 6th and looks forward to reviewing it.
@acityinohio I have already submitted a full proposal, which given the small scope and budget of this project is (I believe) detailed enough.
sorry about that @vaklinov; I missed the tag.
@vaklinov : I'm thrilled to inform you that the Grant Review committee—and the Zcash Foundation board—has tentatively approved your proposal! While the recommendations are already posted, we are planning to make a more public post tomorrow morning (November 21st) Pacific Standard Time.
Next steps: please email me josh [at] z.cash.foundation
with an email address suitable as a point of contact. Due to our newfound 501(c)3 status there are additional reporting and compliance burdens that may delay or change disbursements, but we are working through them as fast as we can.
Just in case you didn't see it, please find the committee recommendation for your project below, and congratulations again!
The proposer is the original creator of the first GUI interface for Zcash. Funds will be used to add functionality and enhancements to the GUI interface.
The review committee feels that Vaklinov's GUI work is important and has been a great contribution to the Zcash ecosystem. This GUI is used by both the Windows and Mac ports and the proposed UI improvements will increase the functionality and improve the usability and aesthetics of the interface.
We recommend collaboration with IDEO CoLab on the UI design.
Full funding of amount requested is recommended.
@acityinohio Thank you very much. There may be a delay on my part as well. Due to other occupations and personal plans I will probably be able to start the work some time in January 2018 (not in mid Dec 2017).
I will additionally contact you by mail.
With some regret I wish to announce that I have cancelled the grant application, for reasons that are personal/private. I would like to express my respect and gratitude for the ZCash Foundation's consideration in this matter. I still intend to do the work that has been proposed but the time frame is uncertain...
Is there a Zcash address to which donors should send ZEC to fund your work, Vaklinov?
Does anybody know Vaklinov's z-addr?
@zookozcash The only address I have seen is a transparent one in this thread:
https://forum.z.cash/t/zcash-desktop-gui-wallet-for-windows/14063/
I am the author of the ZCash Desktop GUI Wallet: https://github.com/vaklinov/zcash-swing-wallet-ui
This wallet has had an important role in the ZCash community since ZCash release. It was the first wallet to support shielded transactions and I believe it is currently still "the best desktop wallet", that allows users to control their private keys. The wallet has also been included in distributions like https://zcash4win.com/ and has been forked many times for other uses (it is open source under an MIT license).
In connection with the Zcash Foundation Grants Call for Proposals (Q4 2017) I wish to apply for a grant to continue work on the wallet and enhance it.
Motivation and overview
I made this wallet because I am excited about ZCash and wish to contribute to its future development. Since this is a hobby to me, having some funding will help a lot. If the wallet is enhanced, it will give users a better UI experience and contribute to the advancement of ZCash!
Technical approach
The specific enhancements for the wallet I have in mind are
wallet.dat
, to keep it safe on another system/backup medium etc.Team background and qualifications
I am a one-man-team more or less, and I am a professional developer. Developing this wallet is a hobby to me. I believe I have already proved my qualifications.
Evaluation plan
Once the features are implemented (at each stage/feature), they may be evaluated by the Grant Review Committee and/or other community members. All wallet features will be published in the wallet GitHub repository and be immediately testable/usable. The measure of success will be satisfied ZCash wallet users (having good UI experience).
Security considerations
This project promotes good security practices in the community. It encourages users to run a full ZCash node on their desktop computer and to control their private keys locally. It also has functionality allowing users to back up their wallets.dat etc.
Schedule
The 6-7 proposed features will take me perhaps 3-4 months since I do this as a hobby. Each feature will be pushed to GitHub and be usable separately. Some verifiable results will be available within the first month. It will be possible to evaluate each specific feature as it gets completed.
Budget and justification
This project is flexible and more or less work/features may be implemented based on the funding received.