Product Principles for Non-Financial Decentralized Applications

Ethan Lippman
Sign
Published in
10 min readJun 23, 2022

The State of Decentralized Applications (dApps)

The Web3 narrative paints a picture of a next-gen internet based on the blockchain. As a16z’s Chris Dixon said, Web3 is “owned by builders and users, orchestrated with tokens”. In Web3, power is decentralized through the protection of user data, transparency of on-chain transactions, and token-based governance. In terms of product, decentralization refers to the extent to which an application can operate autonomously through the use of blockchains, smart contracts, and the integration of decentralized infrastructure.¹

While the utopian Web3 narrative is far from reality, the past crypto cycles have fueled the development of infrastructure like wallets, smart contract networks, stablecoins, and middlewares that enable use cases like decentralized finance (defi), non-fungible token (NFTs), and metaverse. Web3 product architecture often makes use of existing infrastructure projects as functional modules (eg. EPNS for push notifications), while building out unique functions in-house to create a protocol stack² with novel emergent properties.

A simple guide to the Web3 stack

In order for a product to deliver its full value, it must be functional, reliable, and accessible. High latency, low computing throughput, poor global accessibility³, and risk of exploitation are all tradeoffs for decentralization — given the current technical limitations of blockchains relative to servers. Furthermore, even the most reputable Web3 products face heat from exploits, outages, and bugs that are arguably more costly and frequent than in Web2. Vulnerabilities in any of the underlying infrastructure modules in the protocol stack pose the risk of rippling consequences for their integration partners. As adoption continues, builders will intuitively find innovative solutions, or make tradeoffs to balance the ethos of decentralization with creating reliably functional products at scale.

Not everything needs to be decentralized. Not everything needs to be Web3. As we pass through the noise of a raging bull market where everything under the crypto-sun was pumped full of capital, these are two conclusions that most have reached.

The underlying questions are:

  • How can builders evaluate which use cases for blockchain technology provide outsized value relative to the next best alternative?
  • How can teams ship products that are functional and reliable while maintaining the ethos of decentralization?
  • To what extent are product-building philosophies from Web2 applicable in Web3?

The Emergence of “SaaS” in Web3

As seen in the chart, when a new technology emerges expectations are initially far overblown and must be tempered with disillusionment before builders truly understand the nuances of how to best use it. Bull markets inject massive liquidity into crypto which fuels builders’ wildest dreams stretching the bounds of Web3, and bear markets reveal which use cases are truly creating value and kill all else.

The tokens inherent to blockchains allow for the permissionless, trustless transfer of value, and incentivize stakeholders like the team, investors, and project community. Naturally, decentralized finance was one of the first use cases that garnered substantial traction, notably, during the 2017 bull run. Moreover, blockchains and smart contracts provide a transparent, immutable database and computation layer. In the recent cycle, expectations, capital injection, and the influx of entrepreneurial talent were at all-time highs, pushing use cases like decentralized storage, gamefi, decentralized identity, DAOs, scaling solutions, and tooling into the spotlight.

In a recent article, “Where to use a blockchain in non-financial applications?” Vitalik discusses blockchain’s value, notably, in terms of interoperability and account management. Interoperability with other blockchain applications reduces complexity and cost for developers. “The main value that being on-chain provides is simply being in the same place as the stuff that you’re interacting with, which needs a blockchain for other reasons.” This characteristic gives way to things like Proof of Humanity, allocatively efficient defi ecosystems, and open-source metrics powered by algorithms for governance, attestations, reputation/credit, measuring decentralization, and social graphing. Additionally, decentralized identity protocols can serve as an account management system that is transparent, immutable, publicly verifiable, and interoperable across an ecosystem.

The diversity of products makes Web3 feel like a wild-west version of the internet as opposed to a purely financial platform. In terms of building non-defi end-user applications, blockchain computation allows builders to deploy and maintain backends with low operational overhead independent of user demand, so pricey subscription models can be competed away, and typically users pay less (though still pay gas fees)⁴. Some applications feel like versions of traditional saas with added benefits derived from blockchain-based backends, while some are entirely novel solutions for scenarios unique to Web3.⁵

Organization Legos: The State of DAO Tooling

So, who are the users of these Web3 applications? Are they competing for users from Web2, or will the expansion of Web3 be sufficient to sustain their growth? As runways tighten we shall see who is a speculative VC asset and who will grow to become cornerstones of the Web3 landscape.

Incentive Structure, Business Models, Operations at Scale

“Tokens align network participants to work together toward a common goal — the growth of the network and the appreciation of the token.” (Chris Dixon, a16z, source). Whereas in centralized networks, to maintain growth at scale companies are incentivized to fight against users and partners to accumulate value. In Web3, attention is a scarce resource, and an engaged community is an asset that will support a project by buying and holding their token and participating in governance.

The Web3 business model playbook has yet to be written. For most projects, crypto degens, decentralization-maxis, and DAOs are not currently a big enough market to support sustainable cash flow. Some projects take platform fees, others optimize for growth while relying on investors to float them until they launch a token. But at the end of the day, regardless of progressive decentralization⁶, these are businesses that need to pay their teams and overhead. And relying on tokens issued by a project with negligible revenues as a business model seems counterintuitive to conventional business fundamentals. As the regulatory landscape grows more accommodating, we should see token models that more effectively capture value.

In terms of scale, high user friction (wallets, gas fees, bridging, etc.) and lack of user education are bottlenecks to Web3 user onboarding. As these issues are being solved, projects compete to acquire and retain the influx of new participants in their community with fluid, intuitive user experiences. On the other hand, as the next million participants are onboarded to Web3, the stakes are upped, and the pressure on product tech stacks grows. Founders must be prepared to adapt as tech stack failures will be inevitable.

To ensure usability at scale, the next generation of “Web2.5” decentralized applications is emerging. These applications utilize blockchain technologies while often heavily depending on servers. For instance, integrating private-public key wallets for login and encrypting user data may help solve many Web2 issues such as endless usernames and passwords, and identity fraud. Furthermore, case studies like OpenSea have shown that while relying on centralized servers poses risks users simply don’t care.

Case Study: EthSign

Docs | Fundraising News

EthSign is building an interface between Web2 and Web3 to facilitate trustless agreements by connecting legal-binding contracts and smart contracts. The following is adapted from an interview with Jack Xu, EthSign’s co-founder and tech lead, and a blockchain lecturer at USC.

What is EthSign? What do its products do?

EthSign Signatures is the first agreement signing platform built on Web3. We provide the same functionality, UX, and legal validity as Web 2.0 e-signing platforms, while leveraging the power of blockchains to enhance transparency and security.

As for our secondary products, let’s zoom out to what agreements really mean. Signing contracts captures a signatory’s intent and consent to uphold agreement terms; signatories trust each other to uphold their responsibilities. Upon disputes, signatories trust legal jurisdiction to reach a just resolution. Signing agreements on-chain with EthSign enables trustless agreements whereby smart contract templates can enforce certain agreement terms.

Given the limitations of what is executable on-chain, we’re building-out products to serve specific scenarios. The first of which is TokenTable: a token management platform enabling Web3 projects to execute fundraising deals, and automate the distribution of tokens to investors and team members.

What inspired the team to build end-user applications?

We saw an opportunity in the maturation of Web3’s infrastructure, namely Ethereums’ low-cost decentralized computing and an emerging decentralized storage possible layer, to build more complex, user-facing applications. In 2019, the aim of our first hackathon iteration was to provide users with an application that could perform a common task via a Web2-level user experience while also protecting user identity and data.

Can you run us through EthSign Signatures tech stack?

EthSign Signatures 4.0 tech stack

To preface, dDApps run their backends on decentralized smart contract networks as opposed to centralized servers. The frontend is the user interface that makes calls to the backend based on user actions. Users login to our front end via their wallet or social media; we use ENS to allow users to map an identity (.eth domain) to an address. Users can sign documents with their private key to capture intent and consent, and the signature and related metadata is stored on-chain on Polygon and Arweave.

How does EthSign reconcile decentralization with functionality?

In previous versions, we strived for maximum decentralization. Sporadic outages and poor reachability in regions outside of North America and Europe caused us tremendous headaches and forced us to rethink our approach. Fully decentralized architecture is simply not ready for production use yet. EthSign Signatures takes a practical approach to decentralization to maximize usability while preserving decentralization. This looks like statically hosting web content on AWS to boost accessibility while running on logic and contract storage in a decentralized manner.

How can EthSign build a Web2-level user experience?

Firstly, users can access EthSign without having gas tokens or experience with wallets. We integrate Web3 Auth and Biconomy. The former allows users to use email, Google, Discord, and other social handles to generate a Web3 identity and login to dApps. Biconomy’s gasless meta-transactions allow EthSign to create custom logic to sponsor gas fees for certain transactions; users do not have to hold ERC 20 tokens to pay gas when signing documents.

Secondly, EthSign Signatures’ feature set replicates a comprehensive Web2 e-signing experience. We have an expansive set of PDF annotations and text fields. Users can define signing orders between co-signers. Tooltips help with usability. Emails can be linked to wallet addresses via the profile settings page. Push notifications are executed via EPNS & Blockscan Chat integration.

Thirdly, we innovated blockchain-enabled e-signing UX elements like Keyless Encryption, which enables native encryption and decryption derived from the user’s private key. This means protected documents can only be unlocked by the approved recipient’s wallet instead of anyone who holds the passphrase. Additionally, all documents are stored permanently on-chain, and transactions are publicly verifiable via our verification tool. We even tested an on-chain subscription model using NFT’s that grant holders gasless transactions for a set timeframe.

Lastly, implementing frontend details like loading animations, tooltips, data caching to allow autosave, hover states, dropdowns, and status popups all contribute to creating a familiar UX.

What are some relevant technical challenges you face in developing blockchain applications?

Web3 is an infant space; many scenarios lack robust documentation, development requires creating novel methodologies, and one’s intuition isn’t always correct. To preface, developers write source code (for Ethereum smart contracts Solidity is used), which is compiled into computer-readable code, which can be deployed and then can deploy on-chain to run it. Some noteworthy hurdles include:

  • Managing smart contracts written in Solidity that must link to a front end written in JavaScript. Technically, Solidity signs strings differently than JavaScript, and data is stored differently. For us, this poses headaches in discrepancies when setting signatures.
  • Solidity development is akin to a black box that you can’t peek into. There is no way to pause the execution of your code to check the values of variables as you go, making debugging more tedious relative to Web2. Development environments like Hardhat and test networks provide some partial solutions to this problem.
  • Solidity has limitations on the number of variables a function can have; if the number of variables exceeds the limit the source code won’t compile. So developers must split some functions into multiple, which is sometimes difficult to work out.

Through successes and failures, Web3 builders are constantly improving their frameworks to evaluate how dApps can best leverage blockchain technology to maximize value for their communities. As the decentralized internet grows, user-facing dApps will carve out their place by granting people true ownership of their identity and data, and of the applications they use.

These dApps don’t function without the engagement, feedback, and dedication of users, so get out there and explore Web3! Don’t be shy to break stuff and challenge others as determining what doesn’t work is the best way to find what does!

Feel free to reach out to me for any questions or comments pertaining to this article.

👋 Ethan Lippman, Twitter @lippmanethan

Footnotes

[1] This article will discuss decentralization as it pertains to product architecture as opposed to decentralized governance of projects.

[2] See Multicoin’s 2019 article for a comprehensive overview of the Web3 techstack. https://multicoin.capital/2019/12/13/the-web3-stack-2019-edition/

[3] Relating to the geographic location of physical nodes relative to the user.

[4] The cost incidence of overhead depends on if the projects impose platform fees on users. For example, EthSign (case study below) pays ~2$ for 10,000 queries using The Graph, and does not impose platform fees.

[5] Examples of some saas-esque projects include Dework (Trello + bounties), Clarity (Notion), EthSign (Docusign), Metamail (email), LiquiFi/Magna (Carta), Juicebox (Kickstarter), Mirror (Medium), and more native solutions like Utopia Labs (back office management for DAOs), Syndicate (investment club tool.)

[6] Process in which founding teams relinquish control by degrees, over time, diluting ownership and control of the project to token holders. https://a16z.com/2020/01/09/progressive-decentralization-crypto-product-management/

If you have any questions, feedback, or are interested in participating in our future rounds of user research, please sign up using this link!

Access EthSign Here
Twitter | Gitbook | Discord | Youtube

--

--