The Zcash Foundation's Strategy

When can we expect to see a roadmap for adding programability to Zcash? I know you said we are in the early stages (& this is so exciting!!) but just to keep chins up, could you give an estimated timeline on how this kind of project is planned for and executed? Thank you @Dodger :slight_smile:

5 Likes

Thanks for the post

Does ZF believe that ZCAP is fully representative, effective and accessible mechanism for the community to have a voice in governance and to give feedback?

Does ZF take community feedback on the telegram group, twitter or other platforms (e.g. reddit) into account?

What is ZF doing (and plans to do) besides supporting ZCG, building Zebra, Frost, to expand utility, adoption and growing the Zcash eco-system?

Great to see ZF supporting ZSAs and for Zcash to become fully programmable.

6 Likes

ECC website has this graphic with initial timelines where they intend to focus on Wallets in 2023 and POS Research in 2024. Is it possible to have something simple/similar for the foundation with tentative deliverables for next 2 to 3 years?

11 Likes

Great question. In an early draft of this strategy statement, I included “Deprecating PoW” under “Foster the growth of the Zcash ecosystem” because doing so will eliminate a key objection that many folks have about PoW cryptocurrencies, and hopefully attract the interest of those who are skeptical of cryptocurrency’s value in a world that’s becoming more environmentally aware. In the end, it felt a bit forced, and the statement was getting very long so I dropped it.

Yes.

The Foundation is definitely in favour of transitioning away from Proof of Work. I wouldn’t say that we prioritize Programmability over Deprecating PoW (or vice versa). I think they’re both really important, and I hope that we - by which I mean the Zcash ecosystem as a whole, not just ZF - can make progress on both simultaneously, so that we don’t need to prioritize one over the other.

As you’ve noted, we currently talk in terms of “moving away from Proof of Work” and not “migration to Proof of Stake”. The reason for that distinction is because we need to be diligent about ensuring that we choose the best alternative to PoW, and that’s a decision that the Zcash community needs to be involved in. Proof of Stake is the obvious candidate (and Zooko has already decided that it’s the right solution) but it behooves us to look at other consensus mechanisms, and assess how they stack up alongside PoS in terms of suitability for Zcash.

There will be several hours of presentations and panel discussion about this topic at Zcon3.

9 Likes

I’ll be straight with you - I don’t feel comfortable laying out a detailed roadmap or making timeline predictions at this point. I have an extreme aversion to making promises that I’m not confident we can deliver on, and it’s very easy to be drastically over-optimistic when estimating timelines for a complex technical project like this.

Take NU5 as an example - it was originally scheduled to activate on mainnet at the end of July last year but for a variety of reasons, it’s been pushed back a number of times, to the end of this month. The fact that the NU5 target was moving had a knock-on effect on the Zebra project, delaying our ability to reach consensus compatibility and feature parity.

We’re working internally to improve the scoping, estimation and forecasting of engineering work. There’s no silver bullet - it’s an iterative process of continuous improvement. In time, I hope to be able to give more clarity on our short- to medium-term timelines.

I know it’s not what you want to hear but I simply don’t want to overpromise and underdeliver.

10 Likes

Fully representative? No. There’s definitely room for improvement. We are - and will continue - working to make it more representative and independent (and I don’t expect we’ll ever stop). We have some updates planned before the next ZCAP poll, and we’re always interested in hearing Ideas for expanding the Community Advisory Panel

Effective? Yes. It played an important role in establishing the Dev Fund (and the Zcash Community Grants program), and we at the Foundation genuinely take its input very seriously.

Can you elaborate on what you mean by “accessible”?

We certainly keep an eye on other platforms and channels. I’m not as active on other channels because of time constraints (I have to ruthlessly prioritize based on SNR) but @anon35140610 and @decentralistdan keep their ears to the ground.

FYI, I’ve been lurking on your Telegram group for a long time. I don’t try to consume the entire firehose but I check in occasionally to see what people are saying about me and the Foundation, so I see your groans. :wink:

What do you think we should be doing?

4 Likes

Delays in any engineering project are inevitable. But if there is ample communication and good faith effort, the overall community is well intentioned and smart enough to understand. Personally, I don’t remember seeing many posts on this forum/twitter berating ECC for NU5 delays. Similarly with Zebra, the general sentiment is that engineering is hard and it takes time.

Without any tangible deliverables, it gets very hard to judge progress. With a roadmap we can at least evaluate what went wrong/right, whether we focused on correct projects or not, what can be improved There is a common goal that everyone is aware of. Even ZOMG funded projects have benchmarks/milestones for the funding requests for the very same reason I believe.

12 Likes

Expecting great things from this.

I don’t think people expect a detailed roadmap or timeline prediction. Just, “a roadmap” and order of priority. It can change like every plan but at least others will be able to gauge what lies ahead in Zcash lands and what kind of contribution to Zcash that they can give, that others haven’t thought about or planned for.

Today, ZF is working on Zebra and FROST which are great. Is there any plan for other projects? Is ZF working on implementing programmability today, or immediately after Zebra or FROST v1 is complete? What about Zecwallet? The community has some ideas but you have indicated that ZF also has some plan for Zecwallet. Can we know what kind plan do you have for Zecwallet? Can the community propose some collaboration on this? That’s the kind of questions that I would have when ZF doesn’t share what it thinks it wants to do next.

Just my 2 zats.

13 Likes

I think as a community it’d probably be helpful if we (the community) listed the outstanding needs/wants for Zcash and then gained an understanding about which organisation is taking responsibility for that item.

For example here’s a list off the top of my head (in no particular order):

  • Wallets (ECC + ZCG ?)
  • Proof Of Stake (ECC)
  • Scalability
    • Rollups
    • Sharding
  • ZSAs (Qedit)
  • Programmability

…etc…

In many ways I think that’s one of the core details the community needs to know. So that when the community is concerned about the progress or priority if a specific need we know who to annoy :slightly_smiling_face:.

9 Likes

It really does feel like ZEC holders, the people funding you, are at best an afterthought in your strategy.

It is refreshing that you dare to be so open about it though, I will give you that.

1 Like

I strongly support the “no timelines” sentiment expressed here. How to implement private programmability is still a research problem.

Also, I’d like to call attention to how the core team at ECC is now organizing our work, in service of identifying predictable milestones: The ECC Core Project DAG

This directed acyclic graph shows the dependencies that we have laid out to reach various objectives. It has been an absolutely invaluable tool in the execution of the NU5 upgrade, and is the source of truth for the ordering of the ECC core team’s priorities going forward. Planned releases show up as vX.Y.Z nodes in this graph. Prioritizing tasks in terms of their dependencies is, in my opinion, both the most transparent and the most effective way to produce software: at any given time, the things that can be worked on are the “leaf” nodes to the left side of the graph.

6 Likes

This is great! May I ask what tool(s) you used for that, and in particular the GitHub relations?

Also, I wonder if we can work out an analogous high-level strategy DAG such as, just to pick a recent example, the dependencies of “usable ZSA NFTs”.

5 Likes

I built this from scratch using ZenHub’s “blocking / blocked-by” data as the source of edges (since GitHub provides no way to store this data itself, and we were already using ZenHub), and graphviz for rendering. The source is here:

It automatically renders several DAG views, which you can find here:

https://zcash.github.io/developers/

8 Likes

Recently, I’ve been starting to think economically about the Zcash ecosystem, so I’m trying to think of unmet needs, or useful services, that consumers have/want. I think the terms “programmability” or “smart money” or even “wallets” are just kind of darts that can be thrown at the board to answer “what should be built next?” But I think a better question to ask is what each of those things may be enabling (applications, utility), what are the real use cases, what are we missing?

Let’s start with the most basic function that a private currency would ideally have. And in the interest of time, I leave a lot of detail out for now.

(1) Store of Value → Ability to easily, safely, and privately self-custody or custody coins that maintain a user’s value over time. How are we doing there? I would say modest at best for average users. What do we need to improve?

(2) Medium of Exchange → Ability to easily, safely, privately use zec to pay for goods and services. How are we doing there? I would say we are at very nascent stages. What do we need to improve?

(3) Unit of Account → standard numerical monetary unit of measurement of the market value of goods, services, and other transactions. How are we doing there? Well, like most non-pegged cryptos, it is likely too early to tell, and may be out of our hands completely for a while.

In short, we should always be thinking about the end user when evaluating how we are doing and what we should be building next. How useful is everything we are doing in light of actual use cases?

8 Likes

Yes; I think that a high-level DAG would be incredibly helpful.

1 Like

I am so stealing this idea for feature planning!

Thanks @Dodger for putting this up for community.

  1. I would like to see ZF’s sole focus to be everything about Zcash — currency, network, protocol & community. Ideally the mission statement for ZF looks like this:

The Foundation’s mission is to be a public charity dedicated to serving the users of the Zcash protocol and blockchain.

instead of

  1. What percent of dev resources are currently directed at Zebrad?

  2. At which point do you think dev resources will be diverted to other efforts?

  3. How high is programmability in the list of priorities? It’s not clear what ZF is going to tackle in the near term, at-least for 2022.

  4. Any plans for ZEC Wallet?

  5. Can ZF be more hands on with Ledger shielded support?

  6. What plans does ZF have to onboard new users to Zcash & bring growth to shielded transactions?

Thanks

5 Likes

That’s a really good way of putting it. This isn’t a situation where we know exactly what we need to do, and we just need to estimate the effort and plan it - there’s too many unknowns to be able to do that.

We were so impressed by the ECC DAG that we created our own!

I might experiment with creating a high-level DAG of our strategic objectives.

5 Likes

Our mission statement is based on the Description of Activities attached to our form 1023 application for 501(c)(3) non-profit status. More context can be found in this blog post.

You may find it informative to compare our form 1023 with that of ECC’s parent organisation, the Bootstrap Project.

We don’t have a precise percentage number for that but I’d estimate it at >80%.
You can find an overview of our spending broken down by program in our transparency reports. For example, here’s the breakdown for Q4 2021:

I hope that Zebra will start to approach feature parity with zcashd by Q1 2023, at which point we’ll start exploring adding new features and functionality. However, I expect that Zebra will be the default underlying platform for such work.

Outside of Zebra, we’ll continue to work towards getting FROST ready for adoption by wallets, exchanges and custodians.

Programmability is a long-term priority. For 2022, we’re focused on Zebra and FROST.

We did have plans to put out an RFP after NU5 activates, for a team to take over the ZecWallet project from @adityapk00.

However, we’ve had put those plans on hold pending resolution of the questions and uncertainty around license compatibility that have been raised by ECC’s adoption of the BOSL license for Orchard.

See my post in the BOSL or MIT thread for more context,

We’ve been talking with Zondax about implementing Ledger support for Sapling transactions in Zecwallet Lite.

Let me ask you a couple of questions.

Firstly, do you think that ZecWallet helped onboard new users to Zcash and bring growth to shielded transactions?

Secondly, what more do you think ZF should be doing?

1 Like

I don’t see @Dodger indicating that. He basically said (in my opinion) the value (price) of ZEC will prosper in a healthy ecosystem that has maximal utility to use the token, so they are focusing on that. Makes perfect sense.

I’d rather have a crypto asset with a solid technological and community underpinning for long term growth than a coin where the foundation is doing nothing but trying to pump the price all day through overt partnerships and marketing (both of these things are important, but at this stage of Zcash’s growth getting the tech and ecosystem correct trump that).

10 Likes