We've had a lot of talk about Witnesses with a many users starting their campaigns to run for Witness lately. So I thought it would be useful for a lot of the new Steemit users to provide a little more explanation on what Witnesses do and why we should care.
To start, lets make the distinction between Steemit (the website) and Steem (the blockchain.) While witnesses are frequently interacting with us on Steemit or the chat room, their first priority is to keep the blockchain running smoothly. To achieve this each witness has a computer running (i.e. witness node) to process things like posts, comments, and transactions (i.e. sending someone Steem Dollars) in a timely fashion. Currency blockchains like Bitcoin complete these things in an average of about 10 minutes while Steem does this with a 3 second average time. Can you imagine waiting 10 minutes to see your upvote go in? Neither can I.
Witnesses: Maintainers of the Steem Blockchain
This is one of the main jobs that Witnesses perform; keeping the Steem blockchain running in a timely fashion. To achieve this, they have to keep their computers up to date and processing effectively, with things that take too long resulting in 'missed blocks,' which we see as an error message on Steemit (like after an upvote not being recorded.)
Being decentralized (the term we've all heard before) means that there are multiple copies of the Steem Blockchain software running in unison across many different computers. This ensures that if one or two witness computers were shut down due to cyber attacks, a natural disaster, etc all the others would still be in place to keep things running smoothly. Right now the Steem blockchain makes 21 blocks in 63 second rounds (avg 1 every 3 seconds) with each top 19 witness in the witness list, being each assigned 1 block to produce, 1 produced by a miner, and 1 by a back-up witness. Witnesses get paid 1 Steem Power (1370 SP per day) for each block they produce, so the top 19 get paid equally, since they each produce 1 block per 63 second cycle, with backups and miners being paid when they do get assigned a block. The amount of blocks assigned to backups are proportional to their witness vote share.
Witnesses: Defenders of the Steem Blockchain
Not only do witnesses ensure that their computers are consistently secure from threats (such closing exploits or dealing with attacks,) they also are a part of the discussions to determine what changes are and are not pushed through. A recent example of this was the voting change from 40 to 5 (100% votes) per day where the changes were ready to push out in an update but the witnesses had concerns, so the change was delayed. Regardless of whether you view this as a good or bad change yourself, this is purely an example of what discussions witnesses are a part of and have some weight in accepting or not.
Witness votes on whether to include something in an update (hardfork) can be overridden by the main @steemit account if necessary. An example of this occurred during a past hardfork to recover from an exploit where user keys were being stolen.
Maintaining a Steem Dollar price feed
The whole idea of the Steem Dollar is to keep it close to a 1 to 1 value with a US dollar. The goal is to keep these within 10% of each other, hence acceptable fluctuating can be between 1 SD = $0.90 (on the low end) and $1.10 (on the high end.)
Many Steemit users haven't noticed that they periodically receive interest payments in their wallets for held Steem Dollars. This stated to be 10% APR, however the witnesses set this Steem Dollar interest rate to help keep the Steem Dollar and US Dollar within that desired range of $0.90 to $1.10.
One final note here is that there was a change in a recent fork where a portion of Steem Dollars on payouts were instead given as Steem, which I believe was used to bring the SD/USD ratio within acceptable ranges. [I wasn't correct on this belief, see edit below for clarification]
[EDIT: This was actually done to reduce the ratio of SBD to Market Cap, as I refer to as the "debt load" of SBD. Essentialy, a SBD is an 'IOU 1$ of STEEM', and if there is too many of these IOU's, the economy can crash. So, we pay out less IOU's until the economy has time to recover (by people executing the IOU, or the steem market cap increasing.) @anyx discussed this a bit along with their price feed decision in their latest witness update.
(Thank you @anyx)]
Witnesses: How to Decide Who to Vote For
Think of your post payouts and how some votes increase the dollar value of your post more than others (i.e. weighted/proportional voting.) A vote by those with really high Steem Power (like @ned or @smooth) has more effect than mine. This same idea applies to voting for witnesses, those with more SP (or vests) have more weight applied to those they cast their ballots for. Because of this, witnesses tend to be known and trusted by the bigger players here on Steemit, so ideally all highly voted witnesses perform with the interests of the community as a whole in mind.
You can see the current list of top 100 witnesses HERE
To cast your vote for a witness go HERE and if you don't see them listed in the top 50, just type the witnesses user name in the box below and hit the vote button.
[Disclaimer: Deciding who to vote on for witness is you're own decision. Everything that follows are either statements I've found from others that I happen to agree with or my own thoughts. I highly recommend having your own idea of WHY you're casting your witness vote for somebody and not simply copy what others have done blindly.]
I do need to give a lot of credit to @pfunk for his similar guide A Full Steemit Users Guide to Steem Witnesses. This has been one of the most helpful and straight forward one's I found explaining things and his personal approach to voting, much of which I agree with.
- I like to have some idea that someone running for (or on) the witness list has the technical capabilities available to keep things running and secure. Personally I have no problem if the witness maintains things on their own or has someone more qualified to it, just so long as somebody 'in the know' handles it.
- I prefer somebody who has some history in crypto, or at least a really good understanding of it. While I know this isn't the end all, I find it important since we after-all we are a crypto currency.
- Having some idea of who the witness is, is a HUGE thing for me personally. I notice who's around the chat room, who posts, votes, comments (feel free to check steemd.com/@username to see activity yourself), as well as those who make and maintain tools I see as very useful and important such as @jesta (steemstats.com), @charlieshrem (steampower.org/editor) and @good-karma (android/ios esteem mobile app) to name a few. Personally I like to see witnesses who are integrated with the community (not just the big whales), how they communicate and give back. **[NOTE: some witnesses have a separate account on steemit from the one listed, for example @smooth.witness is the witness account for the user @smooth.]
- For those witnesses I don't know much about, I look at their Witness URL that typically tells more about themselves, their skills, computer and internet capabilities, etc. Personally I don't like to vote for somebody that I know nothing about. When looking at steemd.com/witnesses you can find these "Introduction like" posts by clicking the image next to their name. If viewing steemit.com/~witnesses these are available by clicking the associated 'witness thread' link.
- Having a good idea of how witnesses use their earned 1370 SP (worth about $520 at the time of posting) is used can also be an important determining factor for whom you cast your witness votes for. (thanks @anyx)
How to Vote for Witnesses
Each Steeemit user can vote up 30 witnesses. Once you reach 30, to make a new vote, you'll have to 'unvote' somebody on your current list.
To SEE the top 100 Witnesses go here: https://steemd.com/witnesses
To CAST your votes go here: https://steemit.com/~witnesses and click the upvote arrow by their name.
You can also see Witness Updates in the category thread: https://steemit.com/created/witness-category
Please feel free to comment if I've misinterpreted anything or missing something. I admit I'm not an expert on this, but have been trying to ramp myself up on this topic to better be able to explain to #steemprentice members and to people in general.