The trouble with view counters

in steem •  4 months ago

Hi and hello! @lemony-cricket here and... I know some people miss the view counters on Steemit. I've even seen people blame their absence for a lack of engagement, and I understand that mindset. View counters, after all, are a feature everyone has loved since the dawn of the Internet. Too bad they don't work. Let's talk about that.

Image by Wesha at Wikimedia Commons. CC-BY-SA 3.0 Unported.

It seems like such a simple concept

It's not so hard, is it? Just add one to the counter every time someone loads your page. It's infuriating how the people at Steemit Inc can't seem to figure out such a simple thing, right? Well, although it might be frustrating, there really is no simple solution to the problem. But in order to get you to believe that, I'll have to convince you that a problem exists in the first place.

I had a friend here once (and I hope he's still around, somewhere) who was pretty devastated when the view counters went away on Steemit. Before they were removed, they were something he'd mention at least every other week. He was so proud that his view count was so high. Then all of a sudden, the views started dropping off. He began to get frustrated.

I wanted to help him feel better. So, I thought I might write a program to increase his views. Here's what my program would do:

  1. Start up a browser and navigate directly to his latest post.
  2. Wait for the page to load.
  3. Repeat.

I didn't do it

And I'm glad I didn't. I don't think people should be lied to just to keep them happy... which is why I'm okay with the view counters being gone. There's simply no way around it; the view counter is a lie. There's simply no way to make them work honestly; they are information-theoretically impossible.

But what if we require there to be an actual human reading the post?

Well, how are you checking this? Are you planning to give a quiz? Will you use some form of natural language processing to generate the quiz automatically, or will the author have to make up the questions itself? Do you expect the reader to voluntarily submit to this quiz? Do you expect the average reader's reading comprehension to afford it a passing score? Be prepared for a lot of false negatives.

No, that's silly and you're being facetious. Just only count each computer once.

What's a computer? Yes, that was a serious question. There are several ways to attempt to uniquely identify a computer or a computer user, none of which actually work. Take for example:

  • IP addresses, which can be easily spoofed using Tor.
  • MAC addresses, which can also be easily spoofed.
  • A browser cookie, which can easily be cleared.

Even if there were a magical computer ID mechanism which actually worked, there is another problem. What if I was showing your article on a screen in front of 1,000 different viewers? Under your rules, they'd all be counted as one. That's not fair, is it? Do we install eye tracking capabilities on every computer? How can we be sure the equipment is not malfunctioning? Are people really reading or are they just looking? How do we tell if they've absorbed the information? Do we install mind reading devices on all humans at birth? Is this the plot of a Black Mirror episode? (No, seriously, is it? I don't watch television.)

And what about other frontends? Steemit is just one gateway to the Steem blockchain. Even if we can get them all to cooperate, how are all of the different frontends supposed to synchronise their view counters? Do we make every reader everywhere sign and broadcast a blockchain transaction saying they read the post? Who is going to force them to do this? Bandwidth (or your Resource Credits supply, after HF20) is limited, after all. Or, if they've got a lot of bandwidth available, who is going to force them not to falsify these transactions for every post on the blockchain?

What about users that aren't logged in? Will you force them to log in like on Quora? (Ew.) What happens when I make a Steemit mirror site and just scrape and republish all the content for "free" with no such requirement?

There's a lesson here somewhere

This is a very common type of problem. Our struggle to verify the individuality of each reader is something computer security experts deal with every day in distributed networks all over the world. Systems which rely on individuality of anonymous or pseudonymous users are inherently vulnerable to something called a Sybil attack. It's named after a woman with a famously documented case of multiple personality disorder.

Put simply, a Sybil attack is when you take advantage of anonymity in order to pretend you are multiple people when you are really only one person. Think of it as digital ballot stuffing. There have been attacks like this against several distributed systems, including the Tor network in 2014.

The good news is that we have ways to combat Sybil attacks... and guess what? We're using one right now! Blockchain technology is designed from the ground up to resist exactly this type of attack (as well as others). In fact, we've already got something kind of like a view counter on this platform; even if it's not perfect. Even if it's possible to get around the human requirement, the system puts mathematical limitations on its abuse.

This view-counter replacement is built into our blockchain. Users on Steem have a direct quantitative measure of the net objective economic value they have invested into the platform. It's called stake, it's measured in VESTS or SP, and it defines their maximum rate of influence over time. For this reason, you can count on rational users to use that influence somewhat sparingly, on posts and people they actually read and like. Sure, it's not exactly a view counter as much as it is an acknowledgement of value... but it's the best thing we've got.

It's called an "upvote," and you can get one from me today by typing out your thoughts below. 🍋

Posted from my blog with SteemPress.

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:  

This post has been voted on by the steemstem curation team and voting trail.

There is more to SteemSTEM than just writing posts, check here for some more tips on being a community member. You can also join our discord here to get to know the rest of the community!

But without the view counter, how can we determine whether someone deserves the amount of money they get through upvotes??


Anyway, while a view counter sounds easy, it's astonishing how many problems come with a proper implementation. Reminds me of an xkcd comic:


It's so true, really. I'm not even going to bother with saying that's one of my favourite xkcds, because I think more of them are my favourite than not. But that one definitely triggered a "get out of my head" response from me.

I love the bird example, because it highlights one of the biggest cognitive disconnects in Average Joe's understanding of computer systems. Humans are awesome at pattern recognition, but they're also terrible at empathising with computers. To an untrained human, computers are fast and powerful and all-knowing. They can do trillions of calculations per second and perform tasks their human could not complete in a lifetime, all in the background while said human is watching a cute cat video... and if they need any extra information to complete those tasks, they can just pull it from the Internet, right? No big deal.

But you try telling a computer what a picture of a bird looks like. It can be done, sort of. Almost. No matter how well you tune the algorithm, you'll still be able to generate false positives and/or negatives that even a child could discern correctly. So, sadly, that new "Proof of Bird Picture (PoBP)" cryptocurrency our stick-figure friends are scheming up won't be happening any time soon.... not without designating a human to recognise whether the pictures are real.

That's a legitimate strategy, by the way. Steem and Bitshares both actually do this for price feeds; the users of the platform elect human representatives to make observations that humans need to make, or at least verify, and they are economically incentivised to act honestly. That's exactly what Dan Larimer created when he invented DPoS; he called the representatives "witnesses."

So I guess we could launch Birdcoin after all... but we'd have to somehow convince at least 20 people to sit around all day verifying bird pictures in exchange for stake in the platform. Actually, after all the shitcoins I've seen launched to the moon on the wings of hopelessly impossible promises... I may be ready to bet on something as technically sound as Birdcoin. I can't wait for the ICO.


I'll sell you 500 BCS (birdcoins) for 1k steem. It's the next big thing!


Oh boy! I'm so excited for this extremely rare ground-floor opportunity. The world is not any more the way that it used to be... mmm, no no no! BirdconnEEEEEEEEECT!



Look cricket I need my google analytics and I need them now. I’m addicted to that stuff you see. It makes the world go round. Enough of it and you can kill a bear or climb a mountain!

Explaining to an outsider that I’m trying to get review keys for the gamers when their metrics are shared as X amount of Vests is just not going work.

At least some people can live with the fact that most of the followers they have are a lie! Just bots trying farm out those f4f game to who knows what ends.


Yeah, it is sort of difficult to translate Steem's metrics into something people, especially business people, are more used to. The view counter was an attempt at doing that, but unfortunately, it was failing miserably.

"Impressions" as a metric for advertisers and such is just a bad idea. They can run as many heuristics as they'd like to try and filter out rogue data, but it will be a cat-and-mouse game until the end of time.

If you absolutely need a view counter, you can always put one on your WordPress blog and publish to the blockchain using @steempress. Then just go ahead and "view" it as many times as you wish. This will be approximately as effective as the view counter we used to have here.

What do you suppose would happen if we added a "like" button that didn't upvote a post? Would the world end in fire as people got mad at people who used it and didn't upvote?

I've always found these type of problems fascinating. On one end every single visit counts as a view, and systems that try and filter like something with recaptcha 2.0 running in the background will more than likely not count as many views as it should from what I understand.

I think for practicality sake you are right, the upvote button is the view+apprication button, sure not everyone who sees your post will necessarily upvote, but anyone who upvotes found the content useful or quality enough to receive an upvote. Which in my mind is much better information.


Another commenter (@tcpolymath) suggested a button, similar to the upvote button, which would serve as more of a traditional "like" on social media, without the monetary reward.

Honestly, I think he's on the right track with his prediction though. It wouldn't be good. People can't handle the truth; ignorance is bliss. Even today, commenting on a post without upvoting it is widely considered bad form. Could you imagine the toxicity such a button would generate on this platform? Hah!

I agree that voting on content provides better (more useful) information. It's not perfect; we know this, but that doesn't stop it from mostly working in the way it's intended.

You sure know how to spark a conversation, lemony. I hardly noticed the coming and going of the view counts. Wasn't my shtick I guess. I like seeing a familiar name leave a vote or a comment. Can't do much about glossed over eyes -- typically a bot's (or my own repeated visits).


Man, back when we had view counters I used to feel like shit when my stuff had like 10 views and 6 of them were me obsessively checking for typos.

I don't post a lot but when I do I thankfully seem to get decent engagement these days (touch wood). That's all I ask; even from just a few people. Even if a view counter were possible, no such device could replace a few good, engaging comments by real people who actually read my work.

I live for those comments; comments like yours. Thank you for your kind words.

Yeah, I didn't even notice they were gone. If there were a way to ensure that each visitor was only counted once, that would help. Of course, that would require using mac addresses or something and still wouldn't be foolproof.

The site we use at my university for discussions and homework submissions has a tracker and it even counts me multiple times on my own entries when I go back to read classmate responses.


If there were a way

... and there isn't. I have written before about intellectual property and why it's a completely fictional concept and hopelessly broken in the Information Age. The same core principle is at work here.

Information is not matter, nor is it energy, and therefore the same physical laws do not and cannot apply. There is no way to "count" the instances of a particular piece of information as it is disseminated, nor is there a way to stop an observer from creating a copy of the data, or force its destruction on consumption by one individual (yes, I'm talking to you, Snapchat). If these things were found to be possible, I would imagine the content distributors of the world would all rejoice at their sudden capability to deprive the poor of entertainment.

People love to be lied to, though. Pay attention to the fuel gauge on your car. It stays full much longer than it's supposed to, and E never really means empty; not even when the light comes on. We have the technology to fix that now but people don't want it. Nobody wants to fill up their tank only to see it start to burn up so soon. Everyone knows that you've got at least another 30 minutes of driving when the tank is empty.

The problem with the view counters as @kryptik noted was that they were making people unnecessarily discouraged. I'm fine with the occasional little white lie if it makes people happy, but I think the view counters we had were actually scaring people away, and that's not okay.

I think they removed it due to the lack of engagement.

I used to get sad when I’d have 80 votes and 6 views.


Ha; and that reminds me of this.

Oh shit, it's 2018 now. How time flies... lol.

Give me your lemcoin!

I upvoted your post, excellent stories. Thanks to @yehey for steem power delegation so I can continue to find authors with good content.
Keep steeming for a better tomorrow.
@Acknowledgement - God Bless

Please vote @Yehey as one of your Witness. Join us at steem community.
Use @automation chat bot for a fun conversation.

Posted using condenser site.

Hi @lemony-cricket!

Your post was upvoted by in cooperation with steemstem - supporting knowledge, innovation and technological advancement on the Steem Blockchain.

Contribute to Open Source with

Learn how to contribute on our website and join the new open source economy.

Want to chat? Join the Utopian Community on Discord

Hi @lemony-cricket!

Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your UA account score is currently 4.017 which ranks you at #3405 across all Steem accounts.
Your rank has improved 2 places in the last three days (old rank 3407).

In our last Algorithmic Curation Round, consisting of 316 contributions, your post is ranked at #91.

Evaluation of your UA score:
  • Some people are already following you, keep going!
  • The readers like your work!
  • You have already shown user engagement, try to improve it further.

Feel free to join our @steem-ua Discord server

Congrats!! You have been awarded the SHAA award!!! Thanks for making steemit a brighter place. For more details, check out the award post here

Thank you dear friend 💗