Composability in Crypto: Everything to Know
By Beluga Research June 20, 2023
- Composability is the concept of software that can be easily integrated
- This involves creating building blocks that can be combined to create more complex systems
- Composability allows software developers to focus on creating specialized components
- This means each blockchain doesn't have to build every component from scratch and can interoperate with one another
Composability in crypto, a key feature of Ethereum and other blockchains, was designed to support the creation of decentralized applications (Dapps). Ethereum's architecture is based on the concept of smart contracts. These are self-executing software programs that can be used to create a wide range of applications, from simple games to complex financial systems. Smart contracts are written in high-level programming languages, each platform with its specific language. The languages are designed to be easy to learn and use.
Ethereum's architecture helps developers create new protocols and applications that can be easily integrated with existing ones. Developers can build on top of each other's work to create a rich ecosystem of interoperable applications and can integrate with each other in novel ways. The approach is often referred to as "lego-style" development. It gives developers the ability to "snap together" pre-built components.
A Brief History
The concept of composability has its roots in the early days of the internet. At that time, developers were exploring the idea of creating modular, reusable components that could be combined to create more complex applications. This approach was formalized in the mid 1990s with the advent of component-based software engineering. Such engineering was a standardized way of building software with reusable components.
In the context of blockchain, composability first emerged in 2015, with the launch of Ethereum. Ethereum's smart contract architecture offered a way for developers to create new protocols and applications that could be easily integrated with extant ones. This led to the rapid growth of the DeFi ecosystem. Developers built a wide range of interoperable financial applications that could be combined in novel ways.
What Is Composability?
Composability is the ability to combine different decentralized finance (DeFi) protocols and smart contracts to create new and innovative financial applications, unlocking a world of endless possibilities in the blockchain ecosystem. Composability basically involves building blocks that can be "snapped together" to create more complex systems.
Composability is particularly valuable in the context of decentralized finance (DeFi). Interoperability (connecting diverse blockchains seamlessly) is essential for creating a robust and efficient blockchain ecosystem. And, DeFi applications typically rely on a wide range of protocols and services, including decentralized exchanges (DEX), lending protocols and insurance protocols. When the protocols are interoperable, developers can create more powerful and flexible applications to meet the needs of users. Thus, the importance of composability.
An example of composability is the idea of account abstraction, which is a concept in blockchain design where the functionality of an account can be extended and modified through smart contracts. It allows developers to create more flexible and powerful interactions between smart contracts and the underlying blockchain, enhancing composability by enabling contracts to interact with other contracts in more intricate ways. Essentially, account abstraction empowers smart contracts to act as if they were accounts themselves, bridging the gap between contracts and the blockchain's core functionalities. (Interested in a deeper dive? Click here for Visa's paper ).
- Create a seamless combination of protocols and applications. Composability works to create a brand-new financial system.
- Offer a variety of benefits to different participants. One party can earn interest on funds while another gains liquidity to buy tokens.
- Make a system more complex . The previously constructed blocks may be simple on their own. They achieve more complex goals when considered as a group.
DeFi protocols can combine lending, borrowing, trading and staking functionalities to create new investment opportunities for users.
For example, say Carla has 10 ether (ETH) and wants to lend them to Bill for a week. Carla can use a lending protocol like Compound to earn interest on funds. Bill then uses the borrowed ETH from Compound to buy several tokens on a DEX like Uniswap. Bill uses the tokens to participate in a yield farming program. He stakes the tokens on a platform like Aave to earn rewards. In this example of composability in action, Carla earns interest on her funds, Bill gains liquidity to buy tokens, and Bill earns rewards for yield farming and it was all able to be connected and processed seamlessly due to composability.
- Enable developers to build on top of existing protocols and applications. This reduces the time and cost of development. Software developers can leverage the functionalities of other protocols to create new applications quickly and efficiently.
- Offers greater flexibility and choice to users. Users can select from a wide range of protocols and applications to create custom financial systems that suit specific needs. For example, users can combine lending protocols with DEXs, yield farming platforms and insurance protocols to create a diversified investment portfolio.
- Promotes innovation and competition in the DeFi space. Since developers can build on top of existing protocols, they can focus on creating new functionalities. They can also improve user experiences rather than repeating prior work. This leads to a more vibrant ecosystem with a wider range of options for users.
- Introduce new risks and challenges that need to be addressed. Since different protocols and applications interact with each other, there is a risk of smart contract vulnerabilities. One example is flash loan attacks. Also, composability creates more complex financial systems outside of one blockchain's capabilities. This is a concern because users can find it difficult to understand the risks and rewards of different protocols and applications.
- Flexibility. Composability allows developers to mix and match different protocols. In the process, the developers create new financial products that are tailored to specific use cases. As a result, users have access to a wide range of financial products that can be customized to meet specific needs.
- Efficiency. Composability enables developers to build on top of existing protocols. They save time and resources by leveraging previously completed work by other developers. Since the underlying protocols are decentralized, there is no need for intermediaries. This arrangement reduces costs and increases efficiency.
- Innovation. Composability allows developers to create new financial products that were previously impossible to build. This can lead to increased innovation. It also results in the creation of new use cases for blockchain technology.
- Interoperability. Composability enables different protocols to interact with each other. This helps create a more seamless user experience. For example, a user could use one protocol to borrow funds. They could use another protocol to invest those funds.
- Complexity. Composability can make the DeFi ecosystem more complex. It adds more moving parts. This can make it more difficult for users to understand how different protocols interact with each other. It can also increase the risk of bugs and vulnerabilities.
- Security. Composability can increase the risk of security vulnerabilities. A bug in one protocol could potentially affect other protocols that rely on the first protocol. Since the DeFi ecosystem is decentralized, it can be difficult to coordinate a response to a security issue.
- Interdependence. Composability can create interdependencies between different protocols. This can make it more difficult to upgrade or change individual protocols. The interdependencies also make it harder to address issues and implement improvements.