TurtleCoin Software Basics
The miner that is included in the core software is the most basic way to contribute to the decentralization of the network. The role of the miner is to process transactions and form them into blocks that are part of the blockchain. When many miners are competing to produce a block first, the mining difficulty rises to keep the rate of blocks at a steady 30 second interval.
What is difficulty?
When a miner is trying to mine a block, what is happening is their computer is racing to guess numbers that can possibly unlock the current block and collect a reward. When you are using the included TurtleCoin miner, you’re using just your CPU to guess the numbers. Other parts of your computer can do this type of work, and they can do it faster! If you have additional hardware like a GPU which is common in most gaming computers, you can mine faster using other third party miners. Imagine if you were present for a lottery, and every 30 seconds a ticket is selected and a winner is chosen, who then gets to pick the next ticket. When there are a lot of people trying to participate in the lottery, there needs to be added complexity, so instead of a 5 digit number on the lottery ticket, we now have 10 digits, or more as people join the crowd guessing lottery numbers. This is what we call “difficulty” and it’s just a representation of how long the number is that unlocks the block.
What is a mining pool?
When many people are mining, and the network is set to adjust difficulty to keep blocks at an even 30 seconds per block, you start to wonder how long you’ll have to mine to earn some coins. What if you and the 3 people next to you come to an agreement that you’ll all guess lottery numbers together, and if anybody picks a winning number they’ll share it with the friends? This is similar to what we call “mining pools” where people pool their resources and share block rewards in direct proportion to their mining power. So if it took 100 guesses to break a block, and you made 10 guess attempts and your friend made 40, and another guy 50, then the reward will be distributed proportionally to the effort you expended. It’s like working on commission.
Mining on a pool is easier than mining solo, however, there are drawbacks. When you are mining on a pool you’re contributing hashpower to a single daemon that’s competing to create the next block, so that amount of power makes the voice of that one daemon very loud. This has a positive effect that you’re able to receive a more steady trickle of coins, but it has the negative effect of causing network centralization. If that one large pool breaks, goes rogue, or does something nasty with their mining power, everyone suffers because so much of the network relies on them to process transactions.
When you are mining without a pool, and you’re only using the miner that comes with the TurtleCoin core software, you’re considered to be “mining solo” or “solo-mining”. It means you’re the only miner that is submitting hash attempts through your daemon.