Before anything, I’m Pacu, iOS developer and product owner of ECC’s wallet team. But I’m posting this as a community member in a personal fashion. This posts reflects my own opinions and thoughts.
Second preamble: I’m not going to question any cost related things, since I believe that it’s not my business to do so. And also I’m humbly suggesting others to refrain to barter development costs out of thin air. I guess for everything in life there’s someone willing to charge less money for the (supposedly) same amount of work. I don’t think that people quoting lower consultancy prices with the sole objective of plummeting the costs requested by the grant authors are bringing anything of value to the discussion.
Hi @cakewallet ! Thanks for posting this grant application! It’s really exciting! I’m a user of your wallet and also a lurker of your repository. I’ve always been interested in mobile app development and the different approaches one can find in the diverse projects of the open source space. Welcome!
Overall, If I were to be ask for a Yay or Nay on this grant. I go for Yay! just by reading the title.
I’ve been taking a look at the milestones and the spreadsheet you folks shared. It looks reasonable and straight forward.
I do have some things I would like to bring up. I’d split them into three topics: clarification questions, implementation risks and concerns, and some rhetoric insights
- Besides the Application, how would the Zcash community as a whole (users and developers) benefit from your work? Will your team contribute and build on existing tools?
- Are you planning to build your own SDKs or work with the existing ones? (zecwallet-cli or the Swift and Kotlin Zcash SDKs)
- Will other Flutter developers be able to benefit from your development? Will there be a Zcash Plugin similar to the Monero plugin? Will that be embedded on your app’s repo or live on a separate one instead?
- if the answer of question two is positive. Why is so? Are there any blockers that lead you to spin off yet another Zcash SDK? What are they? Would you be willing to collaborate on enhancing and expanding the existing tools so they help you achieve your goal if those concerns/blockers could be worked out?
- What is the rationale behind initially supporting Orchard only and sapling for the second milestone? Is it a time/resource constraint or a product decision?
implementation risks and concerns
How will you manage the fact that Monero and Zcash use different seed phrases? If I recall correctly Monero uses 25 words and Zcash wallets use 24 words BIP-39 compliant phrases. Will the user have to create a new set of words to use Zcash? (I’m not a cryptography expert at all, and maybe this is a dumb question)
UAs were created with the purpose of gradually moving away from the concepts of “addresses” and “pools” altogether. Basically, a group of people were brainstorming and one said “What if there was no such thing as an address, wouldn’t all this be much easier?” (pretty ‘Imagine’ vibes, huh? ). The nature of UAs is abstracting the fact that there are pools and receivers to the users, to prioritize transacting ability and adding flexibility and future proving. So that regardless of your wallet’s capabilities there’s always a way of getting your Zcash from point A to point B. Concepts mentioned on this thread like Orchard only or T only UAs break UAs essence and bring back the original problem UAs are meant to be solving but with different string encodings. Even though it can sound operationally convenient in terms of development process, deploying such opinionated UAs could add needless friction to your user experience and lower the users’s perceived value from this feature. Would you reconsider this and maybe reprioritize work Items so that your app supports sapling receivers from day 1?
Rhetoric Questions Section
ZOMG grants are funded with a portion of the block rewards, meaning that the funds originate from within the Zcash community and their investment should be analyzed from the perspective of “what will this investment bring back to the Zcash ecosystem?”
I don’t mean to play devil’s advocate or pitch a dodgeball. I believe there’s value in elaborating and rethinking these proposals from different perspectives.
CakeWallet is a well known and reputable wallet product in the Anonymity Enhancing Cryptocurrency space, specifically for XMR. By visiting the Monero website, it’s easy to appreciate that CakeWallet is a flagship wallet of that cryptocurrency with several thousand users (that may or may not use Zcash) and a good reputation on both platform stores.
That being said. If the ultimate goal of this endeavor is to put a wallet that does both coins ZEC and XMR on people’s hands, why shouldn’t ZOMG instead issue a similar grant to Zwallet, Nighthawk or Unstoppable to bring Monero into their already Zcash capable wallets?
Could you tell us a little bit more about your product approach and let us know about how your approach is more beneficial than the one I just hypothesized about?
Again! thanks @cakewallet for requesting this grant! Best of Luck!