As part of the whirlwind of Blossom goal selection, The Electric Coin Company learned some valuable lessons: we didn’t define Blossom goals early enough, with enough specificity, and with enough time for feedback. In addition, the timeline didn’t accurately reflect ongoing work the Company is doing on R&D. Fortunately, we were already working with The Zcash Foundation on some improvements to the Network Upgrade Process, which are intended to help communicate earlier and more clearly. The changes are also intended to provide a way for the broader Zcash ecosystem and the Company to collaborate when the Company is choosing and implementing new features of our zcashd software (and hopefully soon when others are doing so in their own independent implementations like this one!).
NU3 Process Changes
- Represent that December is not a full working month: During the Blossom upgrade we had significant issues hitting deadlines around the December holiday season. As a result, we’ve lengthened deadlines around December to reflect reduced work capacity around the holidays. In order to reflect this change in a visually clear way, we’re representing the two network upgrades separately in the timeline diagram.
- Indicate a more accurate timeline for R&D: In the original Network Upgrade Pipeline (NUP) diagram, we indicated that R&D started at least two months before feature selection, but visually it appeared on the diagram as if we only began R&D two months before feature selection. In actuality, the Company is constantly working on research for network upgrades and some of that research can take more than a year to bear out features that are ready for inclusion in NUP. To show that, we’ve visualized on the diagram that R&D is occurring all the time and can branch into the specification and coding phase as the R&D work is ready.
- The Company will ensure we regularly keep the community in the loop on items we are researching and items we are encouraging the community to help with: In order to keep the community up-to-date on what we are working on and what work we’d like help from the community on, the Company will regularly announce network upgrade-related research currently in progress. We would love your help and feedback on any of these items!
- All features to be considered for inclusion in a Network Upgrade must have an associated Draft-ZIP: Starting in Network Upgrade 3, all goals that are under consideration for the next Network Upgrade must be documented in at least a Draft-ZIP. This will help everyone understand what is under consideration and what is not, as well as some of the technical details that the Company needs to understand in order to select among wishlist items and to start figuring out how they would interact. The new ZIP format contains a field, named the “Champion”, or Sponsor field, which lets everyone know who is responsible for writing the Full-ZIP, if still in draft form, shepherding discussions in the appropriate forums, and attempting to build community consensus around the idea. The Champion field lets everyone know whether the Company, or someone else, or nobody is prepared to do this work at the time of feature consideration.
- Network upgrade Draft-ZIPs must be complete two months before feature selection: We received a great deal of feedback indicating that the community did not get a sufficient chance to respond to the proposed goals for Blossom, and that some requirements were added too late to be properly considered. The Company is now asking that ZIPs for all network upgrade changes are at least in draft form two months before feature selection; for NU3 this is the end of March 2019. This will give the Company that time to decide which of the ZIPs we can commit to implementing (possibly with help from the broader community!) during this network upgrade. This will also give the community a chance to provide feedback on the ZIPs up for consideration. ZIPs which aren’t ready to be submitted as a draft by the deadline can instead go into the next NUP, which starts six months later.
- Update to network upgrade documentation regarding decisions: During the NU2/Blossom; feature selection process, it was unclear both to people inside the Company and the general community who would make the final decisions on network upgrade goals. As a result, we updated the NUP diagram to clarify that the Electric Coin Company ultimately decides what is included in the Company-supported client, zcashd.
Updates to the NUP are available here.
Action Items for You
Thanks for reading to the end of this post! We would like to see your Draft-ZIP submissions for future network upgrades and the Foundation and the Company will spend time reviewing and responding to those ZIPs. Please check out the proposed changes to the ZIP process from the Foundation and volunteer to write a ZIP for any goals you think should be included in NU3, the next network upgrade after Blossom. In addition, please look over the updated NUP to understand the changes we’ve made to address issues with the Blossom process so far. We look forward to hearing from you!
We invite you to continue participating in this ongoing conversation. To receive the latest updates, subscribe to this blog or follow us on Twitter.