June 16, 2017 - Dev update

This week I’m opting for a shorter and simpler format for the dev update compared to recent updates which were categorized by working groups. This is due to some internal shifting + adjusting roles within the company, employees taking much needed time off and focus on the upcoming release.

Most of this week has seen a lot of engineering stabilization and maintenance work. Our focus has been on ticket triaging and review for next week’s 1.0.10 release. We’ve addressed a number of issues so far including an information leak in chained joinsplits (PR 2440), a non-critical mis-application of consensus code from upstream resulting in a local bug(PR 2386) and a couple of documentation updates (PR 2429 & #2421).

We’ve finished up the proof of concept for the first iteration of payment offloading. After testing and review for the implementation and further security + stabilization work for the network, we’ll release this as an experimental feature.

We progressed more on design discussions and development for the XCAT implementation with Zcash and Bitcoin (ZBXCAT).

Some final touches are being done on a Japanese translation for https://z.cash which will most likely go live next week.

We progressed in our initial UX research of the Zcash ecosystem. We’ll be concluding this project next week and publishing reports soon thereafter.

More work on organizing the Sapling upgrade took place this week and you can expect an update on the goals for Sapling via a blog post next week.

Be sure to look out for next week’s release!

11 Likes

Hi team,
First of all congratulations for your great work at Zcash. I think this project has great chances for the future, the privacy in shielded transactions surely make a difference from coin-mixing architectures.

I want to thank also David Mercer for the great work with the Win port of Zcash, however, this lets me go into my question now.

How is it possible that the core Zcash team is not planning an official wallet for Windows?

If someday we want this coin project go wide-adopted, and not only a great academic project, which surely it is, we will have to make things easier for the medium user. How many people do you think have a linux to run the node? Yes, there is support for z-transparent in Trezors, Iconomis wallet, etc. But...

Is then any user not having windows doomed to never be able to make use of the great Shielded transactions?

Cheers,

1 Like

For now, my strategy is that the core team focuses on the protocol and the reference full-node implementation (“Magic Bean”/zcashd, the linux client that provides command-line and RPC API), and we leave it to others to provide user-facing apps.

The advantages of this strategy are:
* Our small team can focus on fewer things.
* Other people make user-facing Zcash apps, some of whom already have expertise at that and already have users using their apps.
* There is diversity and competition among makers of user-facing apps.
* There is less concentration of power into ZcashCo.

On the other hand there are downsides:
* If we have good ideas about user experience design, we can't just implement them and deploy them to users ourselves.
* There are no "official" user-friendly apps for mainstream platforms like iOS, Android, Windows, and Mac. This thing about the app being "official" is really important to certain people. Multiple people from mainland China, for example, that I've talked to, have said something to the effect of "Well obviously I would never run a non-official Zcash app.". I'm not sure how to respond to that.
* Similarly, simply having choices is a huge stumbling block for a lot of mainstream users. For a lot of mainstream users, if they say "How do I use Zcash?" and we say "Well, there are several options…", then they're like "Nope. Bye."

Anyway, things are working pretty well so far, and I'm really glad of the diversity, competition, and decentralization-of-power that we've seen from the current strategy. Also, our little engineering team is maxed out right now just on maintaining the core node software, onboarding a whole bunch of third-party companies that are moving to Zcash, doing a joint project with J.P. Morgan, and inventing the next generation of blockchain security and privacy. We would have to grow into a much bigger organization, or buy a user-facing-wallet-making company, before we could additionally write, maintain, and support a user-facing wallet.

7 Likes

You know, with the current value of the founder's reward, you could expand your team.

At a minimum you could put bounties on things.

Asking the community to build (for free) a very important piece of the UX puzzle while Zcashco swims in Founder's Reward coins and builds private things for J.P. Morgan feels a bit offensive to me.

Zcash tech is awesome. Your team is legend. But the relationship between the team and the wider community mirrors -- almost perfectly -- the relationship between the class of wealthy academic elites and the poor / middle class.

Between the closed initial investment (pre-launch) and the Founder's Reward, you made sure there wasn't a penny left on the table for anyone else in the community.

Now, too busy helping J.P. Morgan to focus on critical UX for "the small people", you want the community to build these things for you. For free.

Very uninspiring. You can do better than this. Just my two cents.

4 Likes

Quit trying to spend other people's money.

2 Likes

I won't comment on how Zcash Co. should spend thier money, but it would be nice if we could have a way for Zcash users (not excluding Zcash Co. members) to sponsor projects for Zcash.

The Monero team has something like set this up on thier forum and it seems to be working to encourage development:
https://forum.getmonero.org/7/open-tasks/2379/forum-funding-system-ffs-sticky
https://forum.getmonero.org/8/funding-required
https://forum.getmonero.org/9/work-in-progress

5 Likes

yes, those are a good idea that zcash should adopt, great dashboards for that system.

@paige is that link to XBXCAT not open to the public? I get the 404 page at github for it, which is normal when you don't have permissions to view something.

Any thoughts on how we could make this happen?

Made an account to post this; I think it's a great idea. I'd be happy to help out w/ anyone who's working on this. (Or to just build it myself.)

2 Likes

Oh! I didn't realize the ZBXCAT repo was private. My bad! I wonder why... perhaps just not ready for prime time yet? @arielgabizon?

2 Likes

@JFrankfurt I don't know of anyone working on this. If you would be interested in developing something​ I think it would be a great addition for the community!

Please please create for us - miners an official wallet soon. Thanks the best.

1 Like

Hi, I think @jaygraber and I want to keep it private a little longer, as we tweak and clean it up a bit.

1 Like

Yeah, it's not complete yet, I haven't had time to work on it in the past few weeks. Will let you know when it's ready to be announced.

1 Like

Hi Austin,

I'm largely responsible for the fact that ZcashCo has not initiated a wallet development effort. Why?

There are several reasons:

First and most fundamental, opportunity costs:

We've been busy at work on a few key things: first, a new protocol (codenamed Sapling) which will have incredible benefits, including for porting and adoption. Second, we've been spending our time helping multiple good existing wallets (and exchanges, and other products) integrate Zcash.

Second, specialization:

Those teams are already focused on making good products. Why should we compete with them, further centralizing the Zcash development ecosystem? Especially when our team's strength is cryptographic protocols and not GUIs.

Third is maximizing Zcash's utility for users:

Instead our strategy is to collaborate with complementary projects as much as possible. Projects which integrate with multiple cryptocurrencies are better, IMO, because as a user of cryptocurrencies I'd much rather have one good mobile wallet, one good hardware wallet, etc… for all of the multiple cryptoassets my economic collaborators and I inevitably use.

Last, and most important: decentralization.

I want to reduce the scope of the Zcash Company's influence over Zcash over time and transition more influence to a broader set of stakeholders. Expanding to potentially push out other orgs that bring users to Zcash is the opposite of that.

So those are the reasons we are enabling existing wallet (and other products/services) to integrate Zcash rather than competing with them.

I believe your message strongly mischaracterizes the Zcash company, community, and other stake-holders, and it tangles together many criticisms. I'd like to point out just some of the key pieces I take issue with:

You know, with the current value of the founder's reward, you could expand your team.

We do in fact plan to do so soon!

Just a quick clarification in case you or other readers missed this part of our Continued Funding and Transparency blog post: the Zcash Company receives only a tiny fraction of the Founders' Reward. The Zcash Foundation (more below) receives a larger portion, and is a much better vehicle for decentralizing Zcash development.

At a minimum you could put bounties on things.

The Zcash Foundation is gearing up to do exactly that! Check out this ticket for discussion. Please contribute relevant feedback there!

It sounds like you weren't aware of that, so I hope the Zcash Foundation improves its exposure as it ramps up.

In addition to grants, there are proposals to fund scholarships and put in place a governance structure for Zcash development outside of ZcashCo. If you are interested in helping with that or making suggestions, head over to the Zcash Foundation issue tracker and/or join the Zcash Foundation chat room.

Here are some other responses to the rest of your criticism:

  • We've never asked anyone to build something for free, as far as I am aware. I noticed Zooko mention it's a market opportunity for someone.
  • None of the software we develop for J.P. Morgan is private! It's all open source. It's one of our stipulations that our enterprise work be open source and therefore any innovations can be funnelled back into the public Zcash cryptocurrency (or other platforms). (We also stipulate no IP restrictions which would prevent anyone from using our development efforts, such as patents.)
  • I completely reject the notion that we're not engaged as equals with a broader community. Check out Foundation awards, company hosted presentations by community devs, open mining competition, contribution to Bitcoin and Ethereum, among many other interactions.
  • Our funding model is completely transparent and I posit much better for the world than ICOs (at least by comparison to the current status quo). The amount we raised is 1 or 2 orders-of-magnitude less, and the product we've created is orders of magnitude less vapor-ware.

If you are persuaded, at least partially, that we are among the best projects to contribute to, I recommend you make suggestions like "use FR to fund better secure UX for wallets" to the Foundation. (BTW, secure UX is one of my high priorities, and I believe the best way to achieve that is working with multiple wallet vendors, rather than making a single wallet. This way the results will apply across the ecosystem for all users.)

If you are unpersuaded, I advocate finding a project that fits your ideals better and contributing to it positively rather than spending time complaining about a project you don't agree with. There are already multiple Zcash clones that change the funding model. I am obviously biased as a FR recipient, but I believe our funding model is mostly beneficial for the community at large rather than a cost. Or put another way, I believe Zcash will be more effective at enabling financial autonomy for more people than clones that remove the Founders' Reward.

Let me know how all of this lands,
Nathan

10 Likes

Hear, hear to all that!

Also regarding decentralization in general, as @zooko pointed out today on twitter, my port of zcash to windows has just now topped the number of full nodes running the "official" version of zcash on linux on https://network.zcha.in

So.....yeah, you do not see things like that with most coins (and we also were tweeting about how I can get a revenue stream from that and integrate donations to non-profits at the same time!)

and removing the FR has indeed not been great for zcash clones! but as I accidentally fell into being benevolent dictator of one of them, HUSH, that funding gap has led to me to begin porting CounterParty to it (I expect a backport to zcash proper at some point) to use a crowdsale of tokens to fund ongoing development of it.

So the FR is indeed a brillant move and I would not be surprised to see the model used more in the future.

:100: :100: so much this:

1 Like

Good point about decentralization of dev and userbases, @anon47418038.

I do think that the Zcash Founders' Reward is a double-edged sword: I think it aligns incentives for the recipients the right way, and with the limited release rate, that keeps those recipients engaged longer term than many other projects.

On the other hand, I do wonder if it does centralize development, the community, or the overall network. I'm constantly pondering ways to address that. At the same time, it's also not clear to me if this is a real problem or how bad it is. I'm definitely keeping my eye on this topic and welcome informative (non-troll) criticism.

1 Like

(I apologize for the late reply, I haven't visited the forum in a while).

Thank you for the thoughtful response! There are many things here that I like, especially the plans to expand your team, start a bounty program, and the development of scholarship programs. I have a lot of respect for that.

Also, it would be hard to understate how great it is for me to learn that your work for JP Morgan is open source and IP-restriction-free. Thinking otherwise was really bothering me to the point where my respect for @zooko was taken down a notch. (I was like "just when you think you know a guy!")

It sounds like you weren't aware of that [...]

That's correct. All I saw was: @zooko responds to userbase call for an "official" GUI with the sentiment "we are too busy working for JP Morgan to help you. Sorry. Let other people do it." I was like "whelp, it didn't take them long to sell out their morals did it?"

From your response (and even more so, from how offended you were by the accusation) I can see that both (a) your leadership's morals seem to remain intact and (b) that that matters to you. So I think we're still on the same side. :slight_smile:

With that out of the way, here are some criticisms / counterpoints / less agreeable responses:

W.r.t. not making an "official" GUI wallet you said:

Instead our strategy is to collaborate with complementary projects as much as possible.

While I absolutely think that collaborating on wallets is important and praiseworthy, I do not think it should be done in lieu of an official GUI. Indeed, in the very tweet tweet storm that set me off, @zooko pointed out that for a large part of the userbase anything shy of an "official" GUI wallet wouldn't be suffice.

As a fan of human-centered design, it blows my mind that @zooko heard a reasonable and (to those users) critical request from people representing a potentially massive new user base, and your team says "nah". The folks at Stanford's d.school would drop dead where they stand if they heard that.

Hire a UX designer to help if you need to. Those users will trust it if (a) your team wrote the code and (b) you give it the "official" stamp. IMO you are grossly underestimating the value of a an "official" GUI wallet.

We've never asked anyone to build something for free, as far as I am aware. I noticed Zooko mention it's a market opportunity for someone.

Sure. However, it is well known that wallet developers haven't found a good funding model yet. As it stands, wallet development is essentially done for free (or in some cases through donations, and in an few rare cases through angel investment money).

While you haven't asked people to make wallets "for free", that is currently the only way people know how to make them.

Our funding model [...]

Let's just agree to disagree on this one. I think it is a quite clever mechanism that is a positive incentive hack for those receiving the rewards, but it comes at huge cost for a laundry list of other things. But that ship has sailed, and it's not coming back to shore.

There are two things about Zcash that give me confidence in its success: the technology and the team. You can clone the technology, but you can't clone the team. A clone of Zcash without the Founder's Reward won't be less successful because it doesn't have the Founder's Reward. It will be less successful because it doesn't have your team.

I'll swallow the "Founder's Reward Pill" because there doesn't exist another team on the planet that would inspire similar confidence.

If you are persuaded [...] If you are unpersuaded [...]

Fair enough. I was stabbing because I was angry and disappointed, and I was angry and disappointed because I (incorrectly) believed that your leadership was having a crisis of character. I apologize for the mischaracterization.

[...] I advocate finding [another] project [...]

Not a chance.

This technology, this "blockchain movement", this particular project (Zcash), and this team, are far too important for me to not speak up when I think it's heading in the wrong direction.

I'll make an honest effort to frame my criticisms more constructively when I have them (to my credit: I usually do), but I won't "find another project" in order to spare anyone from my criticisms.

Let me know how all of this lands

Very well. I appreciate the thoughtful and thorough response! Thank you.

:slight_smile:

4 Likes

Quit trying to spend other people's money.

I'm not. I'm offering them advice on how to better spend their own money.

Let's recap. @zooko said:

There are no "official" user-friendly apps for mainstream platforms like iOS, Android, Windows, and Mac. This thing about the app being "official" is really important to certain people. Multiple people from mainland China, for example, that I've talked to, have said something to the effect of "Well obviously I would never run a non-official Zcash app.". I'm not sure how to respond to that.

To which my response is: "You respond to that by giving them an official Zcash app."

We're talking about people from mainland China.

An enormous potential user base who report that they would "obviously never run a non-official Zcash app".

What I see here is a leadership that is (understandably but unfortunately) so distracted with other things that they don't hear opportunity pounding on their front door.

2 Likes