Proof of Work #49

Forks, upgrades, and incentives

Hi folks. Shorter updates this week because some teams are on vacation early, but we should have full updates from everyone next week. The Proof of Work forum is now live! I was stoked to see a bunch of my favorite people register accounts: anything posted there is going to be seen by a lot of the biggest players in crypto, so if you write something interesting please post it there. If you don’t have an account yet, please apply here, and mention you’re a PoW reader next to whatever URL you place in the URL field (Twitter, etc); I’ll personally approve your account.

Back in September (PoW 37) I wrote about how I was worried that many useful projects in crypto would be unable to capture the value they create for their users, and said of ZRX:

“the value proposition for ZRX is somewhat esoteric. It’s theoretically used as a governance mechanism for avoiding contentious forks. If this is indeed valuable in the sense that it captures value, it’s certainly difficult to value in the sense of determining a number of satoshis that a ZRX token is worth.”

It would appear that the governance case for the ZRX token is, at least in the short-term, not convincing to relayers, as DDEX has decided to fork the 0x contracts and leave the ZRX token behind. Tian, the DDEX founder, writes:

Although we are using the term “fork” to give proper credit, we rewrote a large portion of the codebase. We plan to ship a new order schema, an engine capable of true matching, robust market orders, and a fundamentally different liquidity sharing model. The ZRX token will be removed as well, because fee-based tokens create unnecessary friction.

I think this substantially invalidates the idea that a token can derive huge amounts of value from being used as a voting ticket in governance decisions—to get a bit deep into the weeds on this specific case, if the “carrot” is shared liquidity, the ZRX token should only be worth whatever the delta is between just using a market-making bot to arb liquidity over from other relayers vs. sharing liquidity at the smart contract level. I think it’s not unlikely that the 0x team finds another interesting way to create value for the ZRX token, and I’m glad to see the design-space for token economic systems begin to be refined.

There’s a persistent but incorrect feeling among newcomers to crypto that protocols like Ethereum or other newer cryptocurrencies are under more active development than Bitcoin, but that isn’t the case—rather, Bitcoin development is more focused on optimizing the existing system than adding features. The folks at Bitcoin Optech have a fantastic newsletter of their own that details Bitcoin dev work weekly, and you can subscribe here.

Bitcoin & Friends

Daniel from Grin

  • Full on mainnet preparation mode, with mainly bug fixes and tweaks going in. Details around some of those fixes are outlined here.

  • 25 Pull Requests were merged in the past week, by 8 unique contributors.

  • The notes from the latest developer meeting. We're launching what will be the permanent betanet next week, practicing genesis block release process.

  • More Grin info here.

Tieshun And Sean on Handshake

  • Namebase, the first Handshake domain exchange has implemented a KYC flow, and also published an annotated version of the Handshake whitepaper

  • Moniker - a wrapper which makes interacting with Handshake domains easier released

  • Nomenclate, an indexing server for Handshake auctions, updated to v0.5.0, reaching near feature-parity with ElectrumX.

  • HNScan integrated with Nomenclate to support address balances, histories, and auction history.

  • Handshake Academy released.

Eric on Bitcoin

  • Pieter Wuille, Gregory Maxwell, and Gleb Naumenko continue to work on optimizing transaction relay, and have released a new library minisketch that allows for cleverly optimized passing-around of diffs in a way that reduces the overhead involved in transaction relaying.

  • Anthony Towns sketches out what a Schnorr/Taproot soft fork might look like.

Aviv from Spacemesh

  • We've released a new version of our gossip protocol with some optimizations and refactoring

  • We've refactored our dependency fetching mechanism and created a new environment setup script for easier on boarding

  • Work has continued on modeling the new Hare protocol Say hello to our new open MVP1 product board where you can see our progress on the road to Spacemesh MVP1 product code-complete milestone)

  • Published revision 0.2 of the Spacemesh App design for desktop class screens Published tests implementing the core Spacemesh Wallet security design - Basic BLS key derivation from random seed, 12 words mnemonic for paper backups and wallet file user pin protection via KDF2 and AES

  • Integrated a high-performance WASM BLS signatures library and put together some tests to demonstrating usage pattern Published draft of the Spacemesh API for connecting the Wallet with the Spacemesh blockmesh

  • Full update https://spacemesh.io/weekly-updates/

JZ from Decred

  • We cut a release candidate for Decrediton v1.4 as well as the CLI tools late on Friday, if you have the stomach for it feel free to put it through its paces and file issues if they are encountered.

  • Ledger added Decred support to their Nano S and Blue hardware wallets as well as the new Ledger Live wallet marking our second hardware wallet integration. I expect we'll be supporting the Ledger in Decrediton v1.5. For those who want to try out our Trezor support, it's included in Decrediton v1.4.

  • Dcrdata v3.1.0 was released and includes tons of bug fixes and performance improvements. It also reimplements the Insight API. Makes you wonder why all block explorers aren't written from scratch in Go. You can try it out on mainnet now.

  • Issue 8 of the Politeia Digest was released. Quick recap: stakeholders are basically being tight with the purse strings, which is actually quite nice to see.

Izaak from Coda

  • If you're looking for something to do on your commute, cleaning your apartment, etc, look no further than last week's Zero Knowledge podcast with myself and Evan. Hopefully it helps demystify SNARKs and how Coda uses them in creating a succinct blockchain.

  • We welcome senior cryptographer Vanishree Rao to the Coda team. Vanishree comes to us from Intertrust and was previously a research scientist at Xerox PARC following her PhD with Amit Sahai at UCLA.

  • Check out the new video of the scaling panel we sat on at Octobers' Scalar Summit. Lots of good insights about the obstacles to scaling crypto.

  • On the development front, we closed 29 PRs over the last week as part of an effort to overhaul Coda's fork management logic

Privacy coins

Paige & Zooko from Zcash

  • New Release: 2.0.2

  • New post: Zcash Network Upgrade Pipeline explains the process by which zcash safely ships hard-fork network upgrades

  • Sapling Cryptography Validation resources were posted for those interested in independently verifying the security of Zcash’s core components

Smart contracting platforms

Kate and Dean from Agoric

  • This week, we continued work on the least authority module system for JavaScript with partners from academia and industry.

  • We also continued work on compiling XS (Moddable’s JavaScript engine) into WASM for use with the Substrate runtime system.

  • We updated our eslint config package for Jessie (our subset of JavaScript for smart contracts) to include better error messages and tests. We also built a testing utility for eslint configs that can be used separately.

Financial Infrastructure

Lazar from MARKET Protocol

  • This week we released v0.6 of MPX, which included a number of bug fixes and new features. Highlights from this release:

    • Added privacy mode support for MetaMask

    • Upgraded web3.js to latest beta version 1.0.0

    • Added price cap and floor to the contract state

  • We are looking for user feedback on this release, let us know your thoughts by completing our user survey.

  • Last week we announced the newest addition to our advisory team – Erik Voorhees, founder and CEO of ShapeShift! Check out our blog for the full announcement.

Layer two and interoperability

Paul from Veil

  • Added a UI for wrapping/unwrapping Augur shares (click “Deposit/Withdraw Augur Shares”). We recently announced Augur Virtual Shares, a template for wrapping Augur shares and approving them for trading on Veil with 0x. Now you can import Augur shares into Veil and vice versa.

  • Updated the way that we return order books and order history from our API. To accompany the change, we released a new major version of Veil.js and published the first version of our API documentation. We hope that this release makes it easier for developers and traders to build trade bots and other software on top of Veil.

Michael from Loom

Dong Mo from Celer

  • R

Alexandra from Parity Technologies

Application infrastructure

Doug from Livepeer

  • Development continues on the Streamflow scaling release. Eight pull requests were merged on probabilistic micropayments smart contracts, completing the minimum viable initial implementation. Client development is underway, with specs for Broadcaster/Orchestrator ticket exchange and validation.

  • Test harness development is in progress with goal of docker based test harness for processing 100 concurrent streams through the Livepeer network.

David from Sia

  • 19 Merge Requests were merged into the Sia repository this week! The big development news this week was the announcement of a new API documentation website. https://sia.tech/docs will hold all the API documentation, the team is still porting the existing docs to the new website but it’s expected to be done very soon. More info here.

  • With version 1.4.0+ Sia will have support much better file organization with Sia being aware of directories and the files in each directory. This will help Sia scale to large numbers of files and directories while still offering a performant API. Sia team member, msevey, completed one of the API endpoints required for this upcoming improvement. The new endpoint will allow a user to return just the files/directories inside a specific directory enabling them to easily traverse through a directory tree only listing the files/directories they need. While relatively straightforward, this new feature is going to enable Sia users to better organize their files, have faster, more relevant API calls, and allow Sia to scale beyond current limits. More info here.

  • Another big feature slated for 1.4.0 is the ability to download partial files, this feature was started last week by ChrisSchinnerl and was merged into the “unstable” branch earlier today. This feature enables a user to download just a portion of a file, saving bandwidth, and fees when only part of a file is needed. More info here.

  • As usual there were a number of other contributions including changes to the Sia test infrastructure, code optimizations, bug fixes, and various other improvements not mentioned here.

  • Sia is officially integrated into the Ledger Nano S here.

  • Goobox announced their Goobox Alpha upcoming release here.

  • David posted an updated roadmap, design contest, and invitation to “Advent of Code” here.

Other

Martin from Tezos

  • An Overview of how Tezos Governance Mechanism works for protocol upgrades and voting has been published by Jacob Arluck. The first proposal and vote will be conducting soon.

  • Tezos adds Zk-SNARKS to its codebase. This library contains OCaml bindings to Zcash Sapling.

  • Cryptonomics’ Tezos wallet, Galleon, has updated to version 0.6.0b.

  • Commit to Tezos StackExchange site!

  • Tezos proof of stake stats: 78% of network are currently staking 479 bakers are currently baking.

Ari from Decentraland

  • Last week, we released versions 1.5.0 and 1.6.0 of the Decentraland Marketplace, providing support for the second LAND Auction. Version 1.6.0 included UX changes to prevent accidental keystrokes in the mobile dApp.

  • We've built, and are now testing, a faster and more efficient Atlas for the Marketplace to help improve the browsing experience.

  • As we near the end of Q4, we're wrapping up a significant update to the Decentraland SDK. Currently, our focus is improving the sound/audio API, animations, and the ETH integration. We're gathering and implementing feedback from third-party developers and alpha client testers on the current iteration of this upcoming SDK release.

Bowen from Hydro/DDEX.io

  • The Hydro/DDEX team has decided to fork the 0x contracts, here’s an extended discussion about that decision.