In the mind of the blockchain developer: what is a test network?
Cointelegraph is following the development of a brand new blockchain from its beginnings to the mainnet and beyond through its Inside the Blockchain Developer’s Mind series. In the previous sections Andrew Levine the Koinos Group discussion some challenges The team has faced since identifying the key issues it seeks to solve, and outlines three of the “crises” that are hindering blockchain adoption: Possibility to upgrade, Expandability, and administration.
Blockchain testnets are an interesting topic because they come in all shapes and sizes. In this post, my goal is to use my intrinsic experience as CEO of Koinos Group (the developers of Koinos) to shed light on testnets and perhaps give some insight into why they seem to have such an impact on prices.
The most obvious starting point is the name: checkNetwork. The purpose of the test network is check One networkJob. At a very high level, there are two “flavors” of the test network. The first type is the test network that was released before the mainnet, and the second type is the test network that was released after the mainnet went live. These functions serve similar purposes, but the context in which they are released significantly influences the perception and impact of the release.
I’ll start with the second type of testnet as this is a simpler context in some ways. When you talk about existing networks like Bitcoin and Ethereum, testnets serve two main functions. First, it’s a live environment where developers can test their decentralized applications. Every good developer knows that there is no such thing as perfect code, so testnets provide developers with an environment that is very similar to the “main chain” (e.g. Ethereum) in which they can test your code without risk. It is expected that everything running on the test network will break and the tokens used will be worthless.
Related: London branches into the testnet on Ethereum as the difficulty bomb is delayed
So testnet is an environment that enables decentralized application developers (DApps) to add value to their applications (i.e., in a way, the value of a testnet stems from its worthlessness.
DApp developer versus blockchain developer
But the testnet is inherently dual, which brings us to the second function that the testnet fulfills and this function does not benefit the DApp developer, but the platform developer (in my case). We are blockchain developers). One thing that surprised me from my unique perspective is how popular DApp developers are with blockchain developers. Typically, smart contract writers are not blockchain developers, and blockchain developers often spend very little time writing smart contracts.
Ironically, Koinos makes a huge difference in making this distinction, as their entire system is implemented as a smart contract! Since Koinos Smart Contracts are updateable, it means that any feature can be added to the blockchain without a hard fork, but it also means that blockchain developers (like members of the Koinos group) are using the same toolchain and toolkit developers are developing and building theirs DApps. However, this is a completely unique feature of Koinos, so we can put it aside for this discussion.
In every other blockchain, blockchain developers need to develop updates in every programming language the blockchain is written in (C ++, Rust, Haskell, etc.). Very large and complex is called “monolithic architecture”. In monolithic architectures, changing any part of the system can affect any other part of the system, so the risk of change is much higher.
Blockchain developers also need a live, low-impact environment that they can use to test their changes and see what breaks. Like application developers, they want this environment to be as close to the real network as possible, which means that their code interacts with the code that is also being executed by the application developers.
Two sides of the testicles
This shows the two-sided aspect of the testicle. They allow both application developers and platform developers to interact with each other and test their code as close to a live environment as possible, but with very little effort. This enables both teams to improve their products and make them more valuable to their users.
We can now begin to find out why testnets seem to have such an impact on token prices. If we assume that price is a function of value and the test net helps developers add value to their product, then the effect of price is to be expected. The problem is that this correlation produced some unexpected results. Projects often give developers a user-free “testnet” to increase the price of their token. Unfortunately, many people will see the testnet message and simply assume that something valuable has been published, and so the promotion will have the desired effect on the price.
Test network in front of the mainnet
So far I have been concentrating on the benefits of test networks in the context of existing blockchains, namely that they create a safe space for app developers to test their applications and for developers for blockchain developers to test upgrades to the underlying platform. This will help you understand the other important context in which the test nets will be published, i.e. before the mainnet is published.
Again, testing is the primary goal, but the focus is on the system itself as it has never worked before. Of course, since it’s new, it won’t run any apps anyway. Now the situation is rather one-sided. The majority of the people working with the code base will be blockchain developers, and the goal is to get the platform to a place where developers actually want to build on it.
The first requirement for developers is that the platform is demonstrably secure enough, and this should be the main guideline behind the specific tests performed. Assuming developers believe the platform is secure enough, they need training on how to use the platform. In other words, the testnet should be viewed as an educational tool that allows developers to gain insights into platform usage while testing the security of the network.
Eventually, as they test the network and learn how to use it, they will inevitably find places where the platform can be improved – they may need critical libraries or critical documentation to help them system. This information is invaluable feedback that platform developers must use to improve the platform before the mainnet implementation is complete.
Computer networks have become an important part of our lives, whether we know it or not, and they are becoming more important every day. Testnet is an important step in the process of introducing new and innovative computer networks that can add value to our lives. Hopefully, by having a deeper understanding of the nuances of Testnets and the critical context in which they are released, you are better equipped to evaluate certain Testnet releases and assess whether they are well designed and launch for the right reasons or not.
Andrew Levine is the CEO of Koinos Group, where he and the former development team behind the Steem blockchain develop blockchain-based solutions that enable people to take ownership and control of their digital selves. Their base product is Koinos, a high performance blockchain built on an entirely new framework that is structured to give developers the features they need to provide the user experience they need to be successful.