What's a Steem Witness and Why Should we Care

in #witness8 years ago (edited)

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.




Text Sources:
@pfunk's A Full Steemit Users Guide to Steem Witnesses
@asksteem's What is a Steemit Witness
@steemed's Become a Steem Witness Essentials

Image Sources:
Name Tag
Steem Accepted Here
Post Your Blog
Figurines on Keyboard
Knights
Steem Dollar
Deciding Vote
Casting Ballot

Sort:  

great write up, thanks sykochica!

Thank you!
I tried to make it easy to understand for non-crypto people, like myself. I'm learning though! :P

Well said. I thought this was a very consumable introduction for someone who wants to learn a bit more about witnesses, what they actually do, and how people can get involved.

Thank you!
I debated on whether to just toss Pfunks guide to non-crypto people. In the end it seemed like it needed a little 'watering' down and nice that we now have examples on hardfork votes.
Thanks again for steemstats.com!! I couldn't imagine life without that, especially before the feed got included on the main site, which feels like forever ago now. Lol

Excellent information @sykochica
It reminds me that I need to review who I've voted for and research others. It might be important to note (for people who don't know) that we can vote up to 30 witnesses. We can also cancel the upvote if we change our minds about a candidate.
So far I've used 15 of my votes. There are a few that I vetted because I followed them and saw their community interaction and how they serve it, which is high on my priority list. A few of them got the upclick because it was a familiar name - but if they're not meeting my subjective standards, then I'm making room for someone else. I just want to put out there that voting for your witnesses should not be a popularity contest, but rather about who can help the Steemit platform and community grow and thrive the best.

Thank you sykochica, your article have give me a valuable information , and answering my question about witness, Nice :)

This is great, thanks for this info to help explain more about us witnesses to the community. I am proud to be a non-Seemit HQ affiliated witness and further geo-decentralised in South Africa. Keep up the great work!

Sounds good in principle.
In reality...well. I understood some of the technical terms you used, but very damn few.
To make an informed vote is going to take a lot of time and research, much less thirty of them.

There is absolutely a lot more complexity involved than what's in this post. The audience for this though is for new, non-crypto people on here in general and for the #steemprentice mentor group. I felt going more in depth that this would not be well received by the readers I was focusing on.

I've still not used all my witness votes. The pure goal here is to get minnows understanding the job of witness a better, and for them to find their own analysis (which is explicitly stated in there..not to blindly follow what I do.)

I have a post in the works getting more into general crypto/blockchain explanations that may help. Is there anything in particular you would like explained more? I'm not an expert but do research on it and have users I reach out to for better understanding and to check me for accuracy.

Yeah. As one of the aforementioned #steemprentice minnows, this was exactly on my current level of comprehension. This was a good first step. It's going to take a little more interactivity with the platform before I feel confident voting on witnesses, though.

Is it a requirement having a high SP, powerful PC and programming skills to be a witness?

As far as i know there's no sp requirement. The min computer specs I've heard (optimal) specs are a little up there but can be run on less. (I've heard it mentioned in steemspeak that's it can be run on a raspberry pi.) The programming skills (really more configuration) are reasonable but not to bad.
Here's a setup guide from a while back: https://steemit.com/steemhelp/@steemed/become-a-steem-witness-essentials

I'd recommend hoping in steemspeak and ask people on specifics though. I'm definitely not am expert on that side of things.

This is awesome. Great post to provide people to better understand the witness voting. Great job!

This is an excellent write up!

Another very good and big piece of the steemit puzzle for me, thank you. One day I'll have my head wrapped around the entire picture.

Hehe, I'm still figuring it all out myself. There always seems to be that next component to look closer at. If you have any questions, or like any sort of help/feedback, feel free to hop in #steemprentice channel in steemit.chat. We're all there to help, and a big reason why I wanted to put this together...as reference material.

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.033
BTC 64222.08
ETH 3135.29
USDT 1.00
SBD 3.99