A Full Steemit User's Guide to Steem Witnesses

in steemit-guides •  8 years ago  (edited)

View this post on Hive: A Full Steemit User's Guide to Steem Witnesses


Sun Yuchen is a liar, thief, charlatan, and all around cunt. But I don't need to tell you that. Find me at Hive, where we are glad to be rid of him and all of his fake followers, sockpuppets, and thieves.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Thanks, this post is very helpful.
HOWEVER, what I am missing here, is how transactions on the blockchain are handled, who handles them and how many nodes are involved in keeping the blockchain online in the world at any given time. (Node list online? I see Seed Nodes, but not sure if that's just the top few nodes)

I see articles that say 25,000 ETH nodes are active, compared to BTC 7000+ and I wonder, how does that compare with STEEM and how will that look in the future, assuming Fabric is launched, etc.

Hi,
I'm really happy to get such a good guidline from your post.Thank you

  ·  7 years ago (edited)

Transactions from Steemit are signed by the browser locally, sent to Steemit's servers, forwarded to their node, and then are broadcast to the peers their nodes are connected to. Each Steem node (seed nodes, witness nodes, API nodes, any node) is broadcasting the transactions it sees and also sharing node addresses with other nodes. The witness nodes get the transactions, verify they are legitimate (like other nodes have checked), and include them into a block when the account they are configured to generate from are scheduled to generate a block.

As for node count, I don't know. If I had to guess I'd say at least 100. More is obviously better and more robust.

So in a nutshell, Witnesses are like Bitcoin miners but are elected and seem to have more responsibility.

Did I get this right? :)

'The Steem blockchain produces blocks in 63-second rounds: 21 blocks per round at a target of 3 seconds between blocks'

'and of course running their node by getting powered up by 1 STEEM for each block they produce.'

Does this mean the top 19 witnesses (and backup) get 1 STEEM a minute?

Thanks!

  ·  7 years ago (edited)

The witness pay was changed in December 2016 for full time witnesses to less than 20% of that. For a top-20 witness, it's currently something like 0.18 SP/block generated and falling. For a backup witness, it's something like 0.9 SP/block and falling.

Great. Thanks for the information. Just too late to make it to my blog on Witnesses, but good to know none the less. Being honest, i couldn't work out if (on the old pay scale), if the top 19 were being paid 1 Steem every minute, but the top 19 would change every minute, meaning the same 19 weren't being paid every minute? uhh, ya, think that makes sense?!

Hey @pfunk I am new user of Steemit how can I set my linux server for steem witness to claim steem on every block, sir if possible send me the link and the complete infotmation of the setup .
Thank you
@oodeyaa

  ·  7 years ago (edited)

I have a question about witness voting.

  1. Is there a difference between voting for 30 people and voting for 1 person?
    For example, I have 30 SPs. If I vote for 1 person, will it send 30sp power to 1 person? If I vote for 30 people, will the power delivered to 1 witness be 1sp? Or does 30 people have all 30sp of power delivered?

  2. Is there a relationship between witness voting and personal voting power?
    In other words, when witness voting, does the person's voting power be consumed like a regular voting?

  3. Is there a limit to the duration of witness voting?
    Will it remain indefinitely until I make a change?

  ·  7 years ago (edited)

Thanks for your questions!

There is no difference in the witness voting strength between voting for one person vs 30. Each account that receives a witness vote from you will receive your full SP on their vote tally.

There is no cost to voting power.

Votes remain until they are changed by the user.

Hi, there is one thing missing - hardforks. Do you know how exactly it works on Steem? Plus do you still update document with witnesses and their opinions of hardforks? If so, could you share a link to that?

Thanks, and you're right. Back when this post was originally written, hard forks were less of an issue as the features being added or changed were less consequential.

It takes a supermajority consensus of witnesses for a successful, smooth fork of Steem. Usually the new hard forks are set to activate when 17/21 witnesses in a round are running its version.

I only documented witness opinions regarding hard forks a couple times when there was a final set of consensus changes presented.

Added to Awesome Steem

Thanks pfunk, I feel like I understand the whole witness thing a lot better now, just a couple of clarification questions.

The Steem blockchain produces blocks in 63-second rounds: 21 blocks per round at a target of 3 seconds between blocks...
The top 19 witness accounts with the most witness votes are delegated to produce a block every round.

So is the Steem blockchain different from the Bitcoin blockchain; I thought a block took years to produce; or am I confusing terminology?

Is the entire blockchain spread over just 19 accounts; I thought it was meant to be hundreds? Will that be the case in the future?

They are also expected to provide an ongoing price feed of the value of STEEM tokens in U.S. dollars

Are they setting the price or just feeding back from other sources? If they are, how do they decide on price?

Just make sure whichever node version is reported is up to date with the current blockchain and isn't out-of-date past a hard fork.

How do you do that?


Thanks

CG

  ·  8 years ago (edited)

So is the Steem blockchain different from the Bitcoin blockchain; I thought a block took years to produce; or am I confusing terminology?

Bitcoin and Steem use different consensus mechanisms. Bitcoin uses proof-of-work only, and the network retargets difficulty once every two weeks to keep the time between blocks to 10 minutes, on average. A lot has changed since Bitcoin was released in 2009. Newer consensus methods have been developed that aren't so computationally expensive and allow very fast block times. DPOS is one of these. I don't come from the Bitshares sphere like many here, but Steem builds upon Dan's work on Bitshares to make it super fast, and that's how 3 second block times are possible. It also comes in handy making Steemit update in almost real time :)

Is the entire blockchain spread over just 19 accounts; I thought it was meant to be hundreds? Will that be the case in the future?

The primary block producers are the the top 19 approved accounts, but backup witnesses and miners also produce 1 block per round each. This allows some more diversity in block producers and rewards good witnesses that just don't have enough votes who would otherwise shut down their node for lack of any compensation. Keep in mind the top 19 witness list can and does change with people voting. Miners having a block per round gives another route of access to producing blocks, if you've got the CPU power to use.

Are they setting the price or just feeding back from other sources? If they are, how do they decide on price?

It's a feed from STEEM market price. STEEM tokens are currently traded on Bittrex and BitShares' OpenLedger. Multiply the market price in bitcoin by bitcoin USD value and you get Steem USD value. A command is then given to the Steem node and the witness' price feed is broadcast to the network.

Just make sure whichever node version is reported is up to date with the current blockchain and isn't out-of-date past a hard fork.

How do you do that?

This is a little tricky for a casual user I suppose. Keep up with Steem releases and know when a hard fork will occur. You can view the latest release and changelogs here, although presently 0.8.4 is only a contender for an upcoming hard fork and which curation strategy prevails is still not set in stone.

Why the price feed from each witness differ?
Can they tweak the price from what their algos are announcing them about the price feed?
What is the interval at which they can change what their price feed announce?
Is the algo which provides witnesses with price feed part of the steem witness client/software?

Really interesting!

Each witness generally will use different sources and settings and intervals to update their price feed. They can set any price they want, although now there will be more scrutiny on accurate reporting. Any automation of price feeds is done outside of the steemd software, although the command is fed to it. The command looks like this when using cli_wallet, if you are curious: publish_feed "pfunk" { "base":"0.225 SBD", "quote":"1.000 STEEM"} true

I really appreciated you answer. One day I plan on setting a witness up.

Today morning, I found a bug in steemit.com Please check it and fix it soon: https://steemit.com/steem/@tadakaluri/share-button-is-not-working-under-each-article

I have plenty of Linux server and mining experience (mostly alt coin ASIC mining). Is there still a need for new witnesses?

The door's open if you'd like to do it. Visit the #witness channel on steem.chat

Thanks @pfunk I am on it. BTW I built a 12 core/24GB server running Ubuntu 16.04 LTS to play with. From what I am seeing I would need to rent a VPS. I will take it to steem.chat #witness. -- Thanks again.

The CPU cores aren't all that important but RAM is. You can get it to work well enough if you use an SSD as swap (240GB+ disk space recommended).

all cool but i still dnt understand it ..is there anyone who could explain it to in a simple words :),please

This has been the most comprehensive yet simple take on witnesses... You got a complete newbie like me onboard.

I still don’t get it, can you make it simple?

Ok, pfunk, got that, little green button. Now, is there some means to search out particular bloggers? Follow, is mentioned, but do I have to scroll for ages to find them, and is anyone actually explaining the 'how to' of all that info in FAQ that's just that, info, with little 'how to'.
My most frequently asked questions are not answered there at all, and I've had to ask in replies.
Thank-you.

Do you mean particular user accounts you know? To view their posts (lumped in with their resteems, with no way to filter them unfortunately) on Steemit, you would visit https://steemit.com/@theirname

For finding people posting about certain topics, try the search function at the left-middle of the top of the page on steemit.com.

Cheers pfunk, but the only search function I've found so far takes me out, to google. So I'm dumb, that's good! It gives a knowledgeable one the opportunity to write a series of blogs for the absolute newbie. No where have I found anyone explaining 'to a simpleton' HOW to use the site best. Not How the mechanics of site work, but how to navigate, to follow, curate, witness. They are all words that seem to have meaning, but no indication towards their substance, no, 'how to'.
Thank-you.

Thank you very much for shedding some light on what this "witness program" is all about. Much appreciated!

Thanks for clear and helpful explanation.

Hey @pfunk, you have my witness vote as I support your work.

Really good explanation of witness. Thanks

Thanks very helpful, I have just begun and need to vote now.

Great !!!

This sounds really helpful, however, I don't understand much of it. What would be extremely helpful is if someone could guide me to a navigation post. A - Z steemit for idiots. A series in steps for beginners. I could easily fit the role of being your 'idiot' feedback, so u'd know how each step was comprehended.
Thank-you.

There are lots of answers in the FAQ, some of which I helped write :) https://steemit.com/faq.html

I have read much of FAQ. It says slot, however, it says little of 'how to'.
Thank-you

I'm curious as to way 63 seconds. Does anyone know if it was based off of Blackcoin at any chance?

Anyways, this is great and really helps me out.

  ·  8 years ago (edited)

The code is not based off Blackcoin at all. 63 seconds comes from 21 witnesses each producing a block every 3 seconds.

Good stuff, thank-you, not exactly what I asked for however. I mean it sounds great, it even sounds like it makes a lot of sense, just not to me. It is an explanation of a long time user of steemit to another long time user. Absolutely useless to such as I. You seriously need to explain what it is you are saying. Right now, I'm not interested in the mechanics you seem to be explaining. First, I need to learn what I can do, not how it's done. It may totally surprise you, but although money is useful, it is not the sole motivation in learning. It doesn't interest me greatly. It's only the byproduct, the navigation starts at a primary level. The how to, for the blogger, Not the engineering how to of the blockchain and a schematic of the pages would be a good beginning. Not how the technology works, but how do I manipulate my blog through which icons, when etc.
Above this reply box is the word Reply, which sort of speaks for itself; next to that is a comic-word box, which I would guess is something to do with comments; then 33 numeral, which, again a guess, would be number of comments; then an eye icon, which so far I've not discovered a use; then 5,300,a numeral I've no idea of, perhaps the bloggers'steem; then an icon fb; then an icon I guess is twitter¿; then an icon 'in', for which I've no idea; then an icon of a two-link chain, which again I've no idea.
Is that dumb enough for you?
Now, do you understand my meaning of 'how to'?
Thank-you.

Good stuff, however it all went straight over my head. You started out explaining basics and lost me right there. I have been posting for a couple of weeks and still cannot find how to navigate around this site, nor,even with your wonderful explanation, do I have the faintest idea what anything you said actually means. Sorry, but we are not all trained in computers. I read a post that said the answers I need were in the FAQs, but reading the FAQs was no answer to even one of my queries. Most of the language used is to ppl who already know what it means and where 'it's is and 'how to', do it or even to get there. I keep querying, but no-one replies.
Thank-you.

Thanks, I really needed this. I was very lost on choosing witnesses.

i have searched for steemit witness and found your post at the first :-D
Very useful, sir.
Thank you

So why does everyone want to become one so badly?

its usefull ..bt i cant dicided whome i vote ....
which one is best ...? any idea .... plz. @pfunk

Great information, a bit complicated, need to re-read it.

very nice explanatory narration my dear friend. thank you for this nice sharing :)

old but still worthy to understand the logics. great work

I’m currently voting for witness via proxy to @jerrybanfield because I’m still not fully understanding the system and prefer to let someone who knows the stuff help me vote. As I learn more, I will stop proxying and make my own votes. Thanks for this article.

I have a question regarding votes. If I vote for witnesses, I initially thought the vote had to be done on a daily basis which I thought was tedious, but it seems like that my vote remains indefinitely until I decide to unvote and vote for someone else, if this is the case then it’s much better. Is that right?

  ·  7 years ago (edited)

Yes, witness votes from Steem accounts remain indefinitely, until modified by the account owner. This may change some time in the future as there have been proposed expiration times for witness votes. I don't support such a change because I see potential issues with Steem network health if it were to be implemented.

What type of issues do you think an expiration date will bring to the Network?

I noticed from another post that some people voted and forget or vote and then stop using Steemit. Then one day the witnesses stop being active but they still have all their votes and are still ranked high while newer but active witnesses will be behind them at the bottom. An expiration date would allow votes to always be up to date, there could be a system that allows you to select to keep the same vote in a single click.

But at the same time, maybe if it clears the vote of someone still active, we might loose their votes if they forget to vote again or are can’t be bothered anymore. Currently the vote ratio amongst the users is pretty low, clearing vote might make it even lower.

If implemented, the expiration needs to come with a system that makes it easy for the user to make a choice.

The largest issue with witness vote expiration dates is that it reduces the amount of stake in STEEM Power needed to successfully attack the network's block producer list. Making the network less secure is not a good "feature" to add.

Thank you pfunk for this interesting post. I added this information to my useful information list.

helpful

Great article @pfunk! Hopefully my question doesn't make me look lame. I was approached by a few witnesses that noticed that I'd only voted for one witness and they asked for my vote. They offered what seems to be the normal amount of steem for my vote. Is it improper etiquette to request that they upvote my latest post, or is that considered a 'no no'? Additionally, would voting for them lower your ranking?

In DPOS, the best way to vote is to vote for witnesses that you believe are trustworthy to run a reliable node and will make the network more solid and valuable. I'm curious to know who is offering STEEM for your witness vote. That's not disallowed (the network is permissionless) but is fairly lame. Voting for witnesses does not have any negative impact on your account.

Is there an API call to check witness uptime?

Yiur article is helpful ,I had upvotes for witnesses without knowing their past profile.I will not Not vote next time without seeing their profile

Thanks. I finally understood how it works and what it means.

Although this post was written 3 years ago, it's still the best guide about the witness system. Thank you for sharing this!

  ·  7 years ago Reveal Comment
  ·  6 years ago Reveal Comment