a16z: Analyze the accessibility problems of blockchain from the three levels of function, economy and technology

As blockchain technology quickly gains the attention of a broad audience, conversations are still focused on technical topics such as network scalability, transaction volume per second, latency, and throughput.

In order to successfully build a consumer-level experience, developers must break away from the idea of ​​only considering performance indicators, and pay more attention to user-related factors: such as accessibility (easy to adopt and use), for encryption development experts It is very important performance for new users. In the long run, only those projects that are committed to developing accessibility in the early stage can win the favor of the public.

The performance of accessibility is more difficult to quantify than scalability. This article provides a system framework for organizations and individuals to use to reliably measure and evaluate the accessibility of blockchain projects.

Thinking beyond scalability

We have been saying for a long time that scalability is a necessary prerequisite for the large-scale adoption of blockchain applications. We understand: In 2017, Dapper Labs created CryptoKitties-collectible digital cats, which led to the introduction of the first non-fungible token (NFT) standard-ERC-721. Although CryptoKitties predicts consumer block chain application has great potential in the industry, but it also was an Ethernet Square provides proof of technical limitations.

The biggest controversy quickly turned into the scalability issue of blockchain applications-how can Ethereum and other blockchains accommodate more and more users without getting into trouble or being too expensive to use?

Scalability issues have led to the emergence of a number of younger layer 1 blockchains, such as Flow , Solana, Avalanche, and WAX. And layer 2 or side chain solutions like zkSync, Optimism or Polygon have also appeared. Ethereum itself focuses on using sharding and various upgrades to achieve higher scalability.

But adoption by large-scale users is not just about scalability. Below, we learn from the experience and lessons learned from CryptoKitties and the construction of Flow to share a framework. This framework can help the builder to focus only on the accessibility of the application without considering the underlying protocol or the application itself.

The reason and object of accessibility

Accessibility describes the ability of a blockchain network to be used by a large number of different entities in a frictionless manner. The easier it is for users to participate in a project’s application, protocol, or ecosystem, the more accessible a given blockchain will be. Accessibility is not only for end users, but also for developers, creators, product owners, and anyone else who interacts with the network.

Who should consider accessibility? Developers, architects, and executives who actively build and manage blockchain-enabled applications should conduct accessibility analysis when choosing the blockchain to build. Anyone who uses the existing services of the blockchain ecosystem-creators, artists and intellectual property holders should also consider the accessibility of a given project, as it will determine the size and characteristics of the existing audience on the network.

Both groups need to ask the right questions: “What is the culture of this ecosystem?” “What kind of people will build projects here?”, “What digital goods are provided by the projects built on it, and How will the economy around it develop?” The most important thing is, “Is all this suitable for the public?”, rather than just playing digital games.

The angle of answering these questions should start from the three aspects of 1) function, 2) economy and 3) technology. We have obtained the framework we hope to obtain for use by crypto industry builders who want to gain mainstream recognition.

a16z: Analyze the accessibility problems of blockchain from the three levels of function, economy and technology

2. Accessibility of functions-will you use it?

The accessibility of functions (also known as usability) describes the capabilities of a blockchain and whether its ecosystem can allow users to have an easy entry experience, so that the interaction between users and protocols or applications can be simple and effective The way to proceed-this is a good starting point for evaluating any project.

1. New user guidance process

The journey of all users begins with a new user guidance process: the first stage of user interaction includes account setup, capital injection into the account, and the first online transaction. This stage should be as frictionless as possible, and the user only needs a limited number of steps to complete the operation (preferably not requiring the user to have technical expertise).

A lengthy new user guide has too many steps, which means poor accessibility. For example, users register for applications, download browser plug-in wallets, write down 12-word mnemonics, visit external exchanges to purchase cryptocurrencies, and wait for exchanges to execute KYC (short for Know-Your-customer) Check, return to the application for re-authentication before proceeding to perform the required operations, such as exchanging tokens or purchasing NFT. This process requires at least six operating steps across three different service providers to complete the entire operating process.

On the other hand, there are also projects that have very integrated and streamlined processes, which separate users from most of the complex steps and give users a highly “accessible” experience. If the user can get an encrypted wallet while registering the application, this is a highly integrated and streamlined registration process. Using iFrame (iframe tag, generally used to contain other pages, can be used to form an integrated payment portal), it can also eliminate the need for users to access external exchanges to inject funds into the account.

Between these two extremes, there are a variety of applications and services that will contain some of these processes. For example, some applications or services do not have to rely on browser plug-in wallets (eliminating the need for a separate download process) or integrate part of the payment entry of fiat currency into encrypted currency.

Some applications manage their private keys on behalf of users. Although this custodial architecture can eliminate the need for external wallets to reduce friction in the process of introducing new users, it comes at the cost of higher technical complexity and legal requirements. These effects are beyond the scope of this article, and the team that chooses the hosting architecture should conduct a thorough study of the model to weigh the pros and cons.

Identifying the three most common entry routes for a particular blockchain is a good starting point for accessibility analysis. We need to recreate these scenarios from the user’s perspective and collect the steps used in a separate document. Since a single protocol usually has multiple introductory experiences (depending on the specific application and wallet selected by the user), this process should cover all common scenarios and user types.

2) Wallet

The new user guidance process includes a user’s interaction with the blockchain protocol. For daily use, the signature and submission of user transactions are crucial. For this reason, analyzing the wallets available on this blockchain (required for such exchanges) is a very important way to analyze the accessibility of the application.

Any blockchain transaction needs to be verified by a given user using a digital signature-this can prevent malicious actors from performing unauthorized operations. In order to create this signature, the user’s private key is required. Because private keys play this very important role, they cannot (or should not) exist in our memory alone, so they need to be stored in a safe and convenient way. This is exactly what the blockchain wallet provides. At the same time, wallets usually provide an access point for sending transactions to the network.

In order to be functionally accessible, the signature of user transactions must be easily implemented using an available wallet on a given blockchain. If users must download external plug-ins or manually set parameters for how much they are willing to pay for a given transaction, then each subsequent transaction will involve more friction.

For maximum accessibility, the wallet should not only be easy to use, but also widely accepted by various applications in the project ecosystem. If users need to set up multiple wallets from multiple providers to access different applications, the level of accessibility is greatly reduced. For example, if the NFT market does not support a user’s wallet for trading tokens on a decentralized exchange, the user essentially needs to register for another wallet again and track the account in the future.

This problem is directly related to the development of the application: in most cases, developers need to add code available for a specific vendor to their application to support a new wallet. This creates technical overhead and slows down the integration and availability of multiple wallet providers across applications.

3) Entry and exit channels for fiat currency payments

Although some users conduct transactions almost entirely within the crypto ecosystem, the adoption by large-scale users will require users who are not familiar with cryptocurrencies to easily transfer crypto income to more familiar currencies. Therefore, functional accessibility also includes how easy it is for end users to deposit or withdraw value from the network—fiat payment channels are crucial to this. Allowing users to use credit cards or other convenient payment methods to directly purchase a certain amount of cryptocurrency with fiat currency is very important to improve accessibility.

Although the use of an external trading platform can also achieve the purpose of currency exchange, the dedicated integrated service ensures that users can enter the payment portal without leaving a given application, which greatly improves the accessibility of the application.

A good starting point for analysis is to roughly filter the list of network tokens on major centralized exchanges. In doing so, you may want to include the list of stablecoins available on a given network. The next step is to systematically check the integrated entry tools of the main wallets in the ecosystem. Some user-friendly wallets have integrated these functions. For example, the multi-chain wallet Blocto uses the payment portal provider Moonpay to allow users to directly top up their cryptocurrency in the wallet using simple payment methods such as credit cards.

Finally, you can check some of the most commonly used applications on the network that provide fiat currency payment entry options, and pay attention to the providers that provide this service. This comprehensive analysis will show in detail how much value end users can get from using the network.

To summarize all the elements of functional accessibility, these are the main questions developers should ask themselves when deciding which blockchain to build on:

  • How many steps does the newcomer guidance process include on average? How much prior knowledge or technical expertise is required to complete them?
  • How many steps does a user need to take to sign a transaction? How much prior knowledge or technical expertise is required to complete these steps?
  • Does the collective wallet seamlessly integrate with the user experience? Are they universally applicable to various applications?
  • How many steps do users need to transfer legal currency on the chain? Is there any entry and exit ramp for fiat currency payments? How about the listing of the project’s blockchain native tokens and stablecoins on centralized exchanges?

Economic accessibility-can you afford it?

Economic accessibility is based on the general affordability of agreements and digital products built on them.

transaction fee:

Blockchain is a public resource, and transaction fees can prevent excessive use of its network capacity and help avoid public tragedies. They can also protect the underlying network from spam in the form of Denial-of-Service (DoS) attacks.

Transaction fees can be fixed, for example, in the form of included fees when submitting the transaction. Or they can be dynamic, increasing with the complexity of a given request. Most popular blockchain protocols use one of these types of fees or a combination of them.

Transaction fees are where functionality and economic accessibility overlap. In daily use, transaction fees must be low enough for everyone to participate, and high enough to ensure the stability of the network. In addition, the predictability of these fees is also important: if there are unforeseen high fluctuations in transaction fees, this will prevent under-equipped users from sending transactions to the network. Therefore, any accessibility analysis needs to consider not only the average transaction prices, but also the mechanisms that determine these prices on a daily basis.

Although users can freely choose the gas price, since network verifiers need to choose which transactions they want to include in the next block, higher gas prices will usually be executed faster. This process is essentially similar to auctions, where users bid for their transactions. And the entire website like EthGasStation has developed into a platform for transaction pricing.

This transaction fee model implies several problems:

Under this auction model, when people’s demand is strong, transaction costs may soar. For example, sometimes on Ethereum, a simple token transfer will incur a gas fee of approximately $50.

Since the gas price fluctuates rapidly, the correct pricing of transaction fees is a very important process. Although the recently adopted EIP-1559 pricing mechanism and some user-friendly wallets may circumvent some of these problems, high transaction fees with complex mechanisms may hinder the general accessibility of the project. Since layer 1 blockchains and layer 2 solutions generally provide higher throughput, transaction fees (mostly) are also significantly lower.

This is why these solutions are generally more accessible. However, application architects must carefully weigh the pros and cons, because in some cases faster throughput comes at the cost of reduced decentralization.

Application layer products:

In addition to transaction fees, the degree of accessibility at the economic level also involves the products provided on the application layer of the blockchain project. An important example is the reserve price of popular NFT collections in a given ecosystem. The reserve price is similar to the minimum price of a collection. This indicator is often used in conjunction with the total amount of NFT collections (that is, the sum of all collection prices) to analyze the valuation of collections.

A high reserve price will create an inaccessible ecosystem where only economic elites can enter, which will hinder the real community building and therefore reduce the chance of large-scale adoption in the future. Although a high overall value is definitely a good thing for the blockchain, if a large number of transactions are mostly accompanied by a high reserve price, then it is likely that only a few wealthy users can promote economic activity in the ecosystem.

Some people might argue that the concept of dividing NFTs (ownership of NFTs is divided among many owners) will circumvent this problem in the long run. However, this comes at the cost of increased engineering costs, increased user complexity, and lack of legal recognition.

Running node:

Finally, economic accessibility is also a concern for node operators (validators who protect and verify the blockchain). Only when the network node is operable under the premise of meeting the hardware requirements and the minimum amount of pledge (in the equity proof network), will it inspire a sufficient number of verifiers to participate in the network, and only in this way can its decentralization and integrity be Assure.

Both Bitcoin and Ethereum are networks with a large number of node operators, which shows that their protocols have a high level of reliability and security. However, the analysis of accessibility must take a more differentiated perspective. For example, the requirements for running a Bitcoin node are quite low, but a disproportionately large number of blocks are mined by professionally equipped mining pools rather than by individual miners, which makes it not feasible and feasible for someone to run their own Bitcoin node. Not easy to access.

Although the design of Ethereum prevents the use of professional equipment to a large extent, mining still occurs in centralized mining pools, and the hardware requirements are significantly higher than those for mining Bitcoin. Since Ethereum stores much more data than Bitcoin, it takes longer for new nodes to fill up these data-nowadays, it takes about 17 hours to build a complete Ethereum node. Since time and hardware resources are costly, this reduces the economic accessibility of node operators.

When looking for alternatives, one should also pay close attention to other non-technical factors of the node operator. For example, if a network plans to impose permanent rules on who is eligible to become a node operator, this will prevent operators who do not meet these standards from accessing the protocol, which will result in a lower degree of network decentralization.

There are several key issues in economic analysis:

  • How high can the average transaction cost be, and how much can users predict in advance?
  • In the primary and secondary markets, what is the reserve price of the popular products at the project application layer?
  • Who is the main driver behind the overall transaction volume of the agreement? Are they a small number of large institutions? Or a large group of less valuable traders?
  • How stringent are the hardware requirements and minimum equity balance of node operators?

Accessibility of technology? ——Can you develop applications on the chain?

Technical accessibility describes how easy it is for developers to build applications on a given chain. This concept is also known as developer employee effectiveness.

Concept of programming

The ability of a team to quickly release a product that supports the blockchain depends to a large extent on the technical accessibility status of the project. The first thing to check is the general programming concepts: only if they can understand them reasonably quickly, can developers master them and start building quickly. Ideally, programming paradigms are rooted in pre-existing technologies to simplify the process of getting started for developers.

A good method is to analyze the operation of the main client of the blockchain. The blockchain client is the implementation of the specific language in the protocol, or simply put, the actual program that the node operator runs in order to control the blockchain. Some blockchains may have more implementation options, which usually represents a higher degree of accessibility; however, what is more important is actually the most commonly used language on the client side. First, make sure that this is a well-known language that can be used and maintained, such as C++, Golang, Rust, or Python. This will ensure the possibility of continuous development and maintenance of these clients.

The next important consideration is the programming language of smart contracts. Some blockchains such as Solana use existing languages ​​such as Rust and C++, while other networks such as Ethereum (Solidity) or Flow (Cadence) have created their own languages. Of course, using an established language with developers can make it easier for developers to get started. However, for novices, this may have to learn all the details of a general programming language at the cost of learning a low-level language like C++ Language is especially time-consuming. Therefore, it may be easier to learn a lightweight new language that is designed to prepare for smart contract programming.

For a new programming language, it is necessary to analyze whether the language has well-known and established programming concepts and paradigms. For example, Solidity is heavily inspired by JavaScript and Java, while Cadence borrows many concepts from Swift and Rust.

In addition, consider how many abstract concepts the language provides to its developers. Just like the underlying protocol, the language should be as concise as possible for developers without sacrificing security or customizability. For example, Cadence uses a new resource data model to automatically impose rules on the processing of digital value, while Solidity requires manual implementation of these low-level checks.

Finally, to ensure the authority of the programming language used, you need to refer to relevant educational materials or documents and provide implementation references. They should also be easily accessible.

tool

A good set of tools is essential for developers to make it easy for them to build applications quickly, safely and easily. If there are common problems that are not covered by the dedicated tools, it indicates that the level of technical accessibility is poor, because developers have to deal with these problems themselves.

Software development kits (SDKs) can be said to be the most important of these tools. SDKs provide an abstract language-specific layer for the underlying process of the protocol. They simplify interactions such as authentication, query, state change, and event monitoring. If all popular programming languages ​​have SDKs, it means that the technical accessibility of a given project is high.

In addition to SDKs, there are many tools that can greatly simplify the developer’s entry process and daily development. We want to check the existence of text editors (IDEs), testing frameworks, and other extensions for automation, construction, and debugging tools that make developing applications on a given blockchain easier, faster, and more accessible.

Key issues of technical analysis

  • Is the programming concept of the project easy to learn? Do they allow fast, safe and efficient development?
  • Are there enough educational materials and reference codes? Does it also cover advanced concepts such as best practices and patterns?
  • Can developer tools be used to solve the most common problems? Are these tools and the source code of the main project open source?

In addition to the above considerations, there are other considerations, such as the general user’s understanding of the general concept of a given blockchain project. If users can quickly enter the space without having to learn a lot of new knowledge first, accessibility will be improved. In this regard, the existence of accessible language for end users that avoids the use of technical jargon and jargon is very beneficial, but it is difficult to analyze in a broad ecosystem.

In any case, blockchain accessibility is not a good thing that can be added later, but needs to be rooted in the DNA of the project. Especially for technical accessibility, it must be considered when sketching the inner workings of the protocol at the beginning.

Without accessibility—not just scalability—blockchain will not be adopted on a large scale.

Posted by:CoinYuppie,Reprinted with attribution to:https://coinyuppie.com/a16z-analyze-the-accessibility-problems-of-blockchain-from-the-three-levels-of-function-economy-and-technology/
Coinyuppie is an open information publishing platform, all information provided is not related to the views and positions of coinyuppie, and does not constitute any investment and financial advice. Users are expected to carefully screen and prevent risks.

Leave a Reply