Cointelegraph is following the development of a completely new blockchain from the beginnings to the mainnet and beyond through its series Inside the Blockchain Developer’s Mind. In earlier parts, Andrew Levine of the Koinos Group some of the challenges The team that the team has faced since identifying the main issues it wants to solve and outlines three of the “crises” that are hindering blockchain adoption: Upgradeability, Scalability, and guide.
Blockchain testnets are an interesting topic because they come in all shapes and sizes. In this post, my goal is to use my inside experience as CEO of Koinos Group (developer of Koinos) to demystify test nets and perhaps give some insight into why they seem to have such an impact on price.
The most obvious starting point is the name: testNetwork. The purpose of a test network is test a networkJob. At a very high level, there are two “flavors” from Testnet. The first is a test network that is released before a mainnet, and the second is a test network that is released after a mainnet is already in operation. The functions these serve are similar, but the context in which they are released affects the perception and impact of the release dramatically.
I’ll start with the second type of testnet as this is the easier context in some ways. When you talk about existing networks like Bitcoin and Ethereum, test networks 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 very similar to the “backbone” (e.g. Ethereum) in which they can test their code with virtually no risk. It is expected that things that run on a test network will break and the tokens used will be worthless.
Related: London Fork joins Ethereum’s testnet as the difficulty bomb is delayed
So testnets are an environment that allows decentralized application (DApp) developers to add value to their applications (i.e., in some ways, the value of a testnet stems from its worthlessness.
DApp developer vs. blockchain developer
But test networks have a bilateral character, which brings us to the second function that test networks fulfill, and this function does not benefit the DApp developer, but the platform developer (in our case the blockchain developer). One thing that surprised me from my unique perspective is how often DApp developers are merged with blockchain developers. Typically, people who write smart contracts are not blockchain developers, and blockchain developers generally spend very little time writing smart contracts.
Ironically, Koinos throws a huge wrench at this distinction, as their entire system is implemented as smart contracts! 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 the people who develop the blockchain (like members of Koinos Group) use the same toolchain and develop the toolkit with the developer create their DApps. However, this is a feature that is completely unique to Koinos, so we can leave it aside for this discussion.
In every other blockchain, the blockchain developers need to develop updates in every programming language the blockchain is written in (C ++, Rust, Haskell, etc.), and they are working on a very large and complicated system called “monolithic architecture” . Within monolithic architectures, changing one part of the system can affect any other part of the system, so the risk of changes is much higher.
Blockchain developers also need a live, low stakes 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 executed by application developers.
Two sides of test networks
This shows the two-sided aspect of test nets. They enable both application developers and platform developers to interact with each other and test their code securely in a live environment that is as live as possible, but with very little effort. This enables both groups to improve their products and make them more valuable to their users.
Now we can begin to see why testnets seem to have such an impact on token price. If we assume that price is a function of value and that test nets help developers add value to their products, then price effects can be expected. The problem is that this correlation has produced several undesirable outcomes. Projects will often publish a “testnet” that is of no use to developers just to increase their token price. Unfortunately, many people will see the Testnet announcement and simply assume that something of value has been released, and so the deed will have the desired effect on the price.
Test networks in front of the mainnet
So far I have focused on the usefulness of testnets in the context of existing blockchains, meaning they create a safe space for application developers to test their applications and for blockchain developers to test upgrades to the underlying platform. This will help you understand the other important context in which testnets are published, which is prior to the mainnet being published.
Again, testing is the primary goal, but the focus is much more on the system itself as it has never been operational before. Of course, since it’s new, no applications are running on it 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 proven to be sufficiently secure, and this should be the main guideline behind the specific tests that will be performed. Assuming developers are convinced that the platform is sufficiently secure, they need to be trained in how to use the platform. In other words, the testnet must be viewed as an educational tool that allows developers to gain a deeper understanding of how to use the platform while at the same time helping to test the security of the network.
Eventually, as they test the network and learn to use it, they will inevitably find places where the platform could be improved – they may need critical libraries or critical documentation to help them understand the system. This information is invaluable feedback that platform developers must use to improve the platform before mainnet implementations are complete.
Computer networks have become an important part of our lives, whether we know it or not, and they are only growing in importance. Test networks are a critical step in introducing new and innovative computer networks that can add ever greater value to our lives. Hopefully, by having a deeper understanding of the nuances of Testnets and the important contexts in which they are released, you are better equipped to evaluate specific Testnet releases and whether they are being developed and launched for the right reasons.
This article does not provide investment advice or recommendations. Every step of investing and trading involves risk, and readers should do their own research when making a decision.
The views, thoughts, and opinions expressed herein are those of the author alone and do not necessarily reflect the views and opinions of Cointelegraph.
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 over their digital selves. Their fundamental product is Koinos, a high performance blockchain built on an entirely new framework and designed to give developers the features they need to provide the user experiences necessary to spread blockchain adoption.
Koinos Group will release version 2 of their test network, which will include stability improvements, their no-management transaction system and a contract development toolkit that allows developers to create and execute smart contracts on Koinos.