Calls for Web3 have become increasingly louder with advocates of the umbrella buzzword promising an ambitious future of the financial world and the internet. Needless to say, a new version of the internet will affect developers’ lives in more ways than one. As the demand for Web3 projects picks up, developers are pushing to fill the gap. Despite this movement, there is a lack.
According to a report released by crypto investment firm Electric Capital at the end of August, Web3 development has been stymied by a dearth of developers. At the end of last year when Bitcoin and a bunch of other cryptocurrencies touched their highest values, there were 18,500 developers participating in open-source Web3 projects.
Resurgence in Rust
Even as that number is reported to be at its highest and growing faster than ever (around 60% of Web3 developers entered the industry last year), it is still a small portion of the total number of software engineers globally which stood at 31.1 million in the first quarter of 2022, according to developer analytics firm SlashData. Nevertheless, there has been a noticeable shift. The shortage has been marked by a need for knowledge of specialised programming languages used to create smart contracts on Ethereum and Solana.
This change in direction is also evident in the emergence of certain programming languages like Rust. In 2020, Rust popped up as the most-loved programming language. According to a Stack Overflow survey, Rust was picked as the most popular with 86% of developers choosing it over industry standards like Python and TypeScript. While Rust first appeared 12 years ago in 2010, it has stayed around the top of the survey since 2016.
It is interesting to note that Rust has become a favourite among Web3 developers as well, because of its ease of use and increased security. Where every programming language has a reputation for a different use case, Rust is excellent in multi-platform environments and high-performance areas where security is a primary requirement. This hyperfocus around security is seen especially in blockchain, browsers, operating systems and cybersecurity products.
Rust helps users write codes with fewer errors because of its compiler that checks everything. The language is good for writing secure time-saving abstractions, which is one of the main principles in object-oriented programming. This also eliminates the need for immutability – one the foundational elements of foundational programming. Immutability is essential for developers to write safer and cleaner code. For these reasons, blockchain and functional programming are a naturally great fit with each other.
Rust has also gained acceptance among developers working with cryptocurrency and blockchain since it also delivers tools for them to start shipping their code much faster. This level of stability and safety safeguards against, say, a cryptocurrency crashing suddenly.
This is especially vital considering blockchains and cryptocurrencies almost always have the worst case scenario of bugs. Critical bugs normally can’t be discussed openly since they affect live systems. However, they also have to be deployed at the same time across several participants, without the support of a reliable third party. This is why there are limited and covert ways to fix them. Also, blockchains secure actual financial value incentivising hackers to find bugs in those systems.
New languages like Clarity and Solidity
Rust isn’t the only language on the minds of Web3 developers. A couple of new languages like Clarity and Solidity have also come up of late. Clarity, is a programming language, especially for creating smart contracts and decentralised applications or dApps in the Bitcoin Web3 ecosystem. Like Rust, Clarity is also built to make assets on blockchains as safe and predictable as possible. DApps designed on Clarity are published on the programming layer for Bitcoin, Stacks.
Solidity, the first-ever programming language made for Ethereum specifically, is by far the most widely used language in Web3. Solidity first gained acceptance due to its first-mover advantage in the space. Proposed by Ethereum co-founder Gavin Wood in 2014, the language was officially released in 2018. Ethereum researcher Christian Reitwiessner led the team and eventually formed the Solidity team. The language can be used to create dApps on the Ethereum blockchain and developers can use it on blockchains compatible with the Ethereum Virtual Machine or EVMs.
Currently, Solidity is the most-popular Web3 language with more than 4,000 monthly active developers using it on just the Ethereum blockchain even as Rust appears to be catching up. Clarity, which came up after Solidity, has been built on the flaws of its predecessor. Clarity has a different basic approach in terms of design and prioritises security and predictability even more than Solidity. Clarity also enables users to settle contracts on the Bitcoin blockchain itself, which is the safest and decentralised blockchain in use today.