Response to @dantheman "notice-to-bot-spammers"

in #steemit8 years ago

@dantheman I moved this response from your blog to mine, because I realized that it was too long to read comfortably in your blog and thus didn't belong. Makes a better blog post anyways. Excessively short and excessively long comments are both serious problems whether they come from people or bots.

As for everyone else, I'm going to ask you to hear me out and if you disagree, do not flag this. Instead I ask you to please comment thoughtfully and respectfully or at least don't flame and troll here, so that others can comment.

Hopefully I'm not jumping in too late for my voice to be heard.

I know this is going to sound like I support spambots, but if you consider what I'm saying here, you'll realize I support fixing the problems the right way.

Truthfully I'm explaining the only option that produces a permanent solution because anything else is just an arms race.

@dantheman literally in terms of upvotes you have been my #1 upvoter, during my time here, but always on my commentary never on my postings and I appreciate that. It lets me know you listen.

This is why I'm talking right now, you've appeared to appreciate my insights in the past and I'm hoping you'll take this rather long winded set of insights into consideration.

@dantheman Bottom line...
What you are planning to do is going to make your bot problem much, much worse.

Here's why your solution does not actually work.

As I discussed here...
STEEMBOTS

You are thinking like a programmer and while I can respect that, it's that way of thinking that is causing you to miss why the bots will stay. You need to understand why they are here before you can fix the problem. You need to understand that you are treating the symptoms instead of curing the disease.

You have two types of users here right now.

Those who are here because they believe in steemit's long term future /me raises hand. We will call these owners. Then you have those who view this like it's just a game and are not vested at all in it's future. We'll call these guys larpers because to them it's just a role playing game.

Larpers comprise ALL of your catfish, ALL of your identity thieves, ALL of your plagiarists and an outsized fraction of the user base in general, but only 2% of your bot builders.

Everyone, seriously just stop upvoting on #introduceyourself unless you personally know the person, or people vouching for them and the first problem solves itself, most of the abusive larpers will go away because it's too much effort for little to no pay.

If you want to welcome someone, welcome people you actually know, by inviting them in and then you take the initiative to introduce us to them. It's not spam to go around saying hello to everyone.

Anyways, whether you are an owner or a larper; Unless you have substantial sums of money invested, you already lack much of the economic incentive to be here and frankly it's really hard to get non-geeks onto this platform,

@dantheman & @ned You need to treat all of your players, as though this is the ultimate role playing game and you're the dungeon master.

So understand that while well intentioned; Your "fix" for this botspam problem, provides a direct financial incentive for swarms to form and attack low and mid value targets. It encourages griefers to hold the reputation of your other players for ransom.

It also means a "protection and defense" racket will crop up. Because the solution relies on votes of bots to regulate bots. But it will impact people far more than it will the bots. Disagree with someone? Your conversations are suddenly sent to /dev/null no one will see you. No one will appreciate you. You will feel isolated. You will feel alone. You will leave. Thus the only real market that can emerge is one in which people sell their voting power on external platforms. Only actual spammers have a financial incentive to pay this right now but...

This means that dolphins and minnows alike are going to get stung to death while floating amidst an unending sea of jellyfish as soon as they begin to matter enough to matter. Which is right about the time you will see a mass exodus to a more rewarding "game".

The players doing this have nothing to lose and everything to gain.

It's a rules problem.
This "stake based voting" is an interesting experiment", and it has a lot of potential.
And yet

it's horrifically unbalanced as a ruleset!

Anyone who considers building a bot for personal enjoyment, looks at the ruleset and figures "I'm too small to matter, so no one will care what I do here. No one I know IRL is here anyways".

This is happening right now and already degrades the user experience dramatically. The reduced price of steem from people fleeing the platform after a big payday and selling at any cost ($0.83 USD / SBD are you freakin kidding me?).

The cheap steem dumping has allowed the number of bad bots to increase in number. If this continues, eventually their owners will be able to hold the entire platform to ransom, even the whales.

Why? Because to the people you're dealing with; This is just a game, nothing more. They have nothing to lose... They just need to cash out while they still can.

Some of them are also actually trying to make a statement about the power the masses can assert over those who consolidate for themselves too much power.

In otherwords, what you are seeing is your villagers saying we need our bread and circuses and a good dungeon crawl or dammit or we'll burn Rome to the ground!

When you look at this from your average larper's perspective, this is a game with a seriously unblanced ruleset. You want to stop their attempts to burn this place to the ground, you need to change the rules slightly so the balance is in their favor or at least feels that way.

Not in a manner that will punish your players (even the bad ones), but to incentivize good behavior more than the bad so the chaotic evil bad guys come over to the lawful good side. Because right now,
The dark side really does have better cookies.

Here's truth...
A villian is just a hero of the other side
There are no good guys. There are no bad guys. We all have our motives for what we do here or we wouldn't be here.

A change you could perform to fix this right now with 5 lines of code that wouldn't hurt anyone and would immediately restore balance to the ruleset is to eliminate the amount of money a single posting has made from being visible on the website at all. If they want to look it up, make them look it up on the blockchain. It's not hard and I'm sure there are plenty of folks willing to build a historical "steem winners board" for you after the payout is complete.

Do this, then change the trending algorithm to reflect the number of upvotes in the last 24hrs rather than the amount of cash earned. Otherwise this place looks like a pinata to the outside world.

"Omg! Phat Lewtz! -- Leeroy Jenkins"

Many people are saying that "The money I earn is my business. I just want to see my name up there in lights on the front page once in awhile. I've got twice as many people voting me up as the guy/gal with $1,000 but I can't even stay in "active". They can also look around them and see that many others feel the same way." It builds resentment and that's not something you want in a social networking community. We are all socially connected and hard feeling and contempt spread like disease or wildfire.

In truth, no other site features a posting based on "ad revenue generated", so why are we featuring posts based on ad revenue spent? Doesn't that seem a bit backwards?

If people make $10k there is no reason they can't make a "Woohoo! I made bank!" posting and if the actual community values that sort of thing (which we do sometimes) then give them the chance to say so and let them feel like it actually matters.

You just made the code to steemit opensource, thank you for that. I'm perfectly willing to step up to the plate to personally make the changes and submit a PR, or stand up a demo site somewhere so you can see how this place looks under that rule set if you prefer. But either way, this alone will placate the vast majority and cause a substantial number of bot controlled accounts to use their accounts personally instead of relying on a bot for personal satisfaction.

That alone takes care of your larpers. They just want a chance to hit the front page without having to force a non-existent social connection by trying to attract a whale. It would also take care of the content which is beginning to swing towards "how to attract a whale, or why the whales don't care about us, or why this platform will fail, hint it's the whales".

As the ratio of minnows to whales increases, this kind of content will only become more prevalent and even the whales are complaining that there is way too much content for us to curate properly, we only get so many votes per day and there are only a handful of us
To outsiders (even many insiders), this looks like power consolidation in the upper echelons. But in truth the problem is you don't have enough mods to run your dungeons.
That's all a whale actually is, a mod.

Everyone reading this! It's not the whales ignoring you, it's the trending algorithm ignoring you because a whale hasn't noticed you and bothered to toss an upvote your way. You feel locked in a dungeon because you need a mod to come unlock you so you can level up and keep playing. But there are way too many of us and not anywhere near enough mods. No one is commenting about your insightfulness because no one is seeing you. This is literally a couple lines of code to fix.

So drop some celldoor keys please and let the players have their fun.

Unfortunately your problem is more than just the larpers.

You have a swarm problem. These upvote/downvote swarms and oneliner chatter bots you're trying to swat away?

This is a what an attack on a subjective proof of work system looks like and you need to ask yourself why you are fueling an arms race, when history has shown time and again that arms races never end well for either side. Disarmament and peace, despite what you may think of your adversaries, is the only viable longterm option.

Why?
Consider what @dana-edwards has been saying literally this whole time in every single blog post she's made. You've been reading and upvoting her stuff, so I know you get this, but you seem to be viewing it purely academically and missing the applicability to steemit.

You know what Stigmergy is. But for those who don't, it's a high energy task that then makes it easier for other independent agents to convert to a following state because it leaves a trace in it's environment. This produces an emergent swarm or hive like behavior.

This happens with hornet attacks, and it's also the cause of bank runs and panic sells.

Stigmergy is the actual problem here and this is what @dana-edwards and myself have been talking about for weeks now. Including that day when the topic was trending and made $10k.

Stigmergic effects are what I'm doing when I post this. It's a huge amount of energy, I'm expending to leave a trace that others can follow more easily.

Your problem is not the spam bots. They are merely a symptom of stigmeric artifacts within the steemit environment.

There are tutorials on this site that show you exactly how to make a one liner chat bot and an upvote bot. That was the high energy task, that triggered the cascade you see before you.

Don't you find it curious that you have 3 kinds of bots actually causing all the ruckus? Really there are only two kinds of bots people are complaining about because they are the most visible. The downvote swarm is just the upvote bot running in reverse. The other kind is the inane one hit wonder bot.

It's all because of a couple of quicky tutorials someone posted here a couple months ago trying to encourage people to try programming bots for this platform that's all!

Those postings combined with the effects of seeing tons of low quality bots on here are also the environmental trace. It's causing people to say Gee if he can do it so can I!.

That's Stigmergy people! You're acting like a hive mind when you do that.
Build bots if you want to learn about them, but don't be one yourself!

The only viable long term solution is to get these guys while they're young and new then teach them to build something more useful with that enthusiasm.

Once they get good at this bot stuff, maybe they could take those same skills and help by contributing to software development tasks as well.

Either way, the bot problem in general has nothing to do with the incentives. It has to do with an extremely low barrier to entry, an innate curiosity about programming and a lack of available knowledge about how to build a decent bot that doesn't harass and annoy.

But we can incentivize good bots, just look at @cheetah & @jeeves and to a lesser extent @wang

Knowledge actually fixes this problem.

Next time you want to look at any sort of bot problem. Keep in mind that bots are entirely owned by people. People that want to learn to program. Building a social robot is a dream come true for many people. Good useful bots that do important tasks. However they don't yet have the know how in order to do it correctly and the incentives aren't all that clear unless you're really looking at this as someone who builds AI for a living.

Most of us, just want to help by making useful tools.

This concept of acceptance and a firm guiding hand does work

@cheetah has most people treating him, literally like the community pet.
It is possible, you just can't have a me too bot.

And if you look at the STEEMBOTS posting I've linked, you'll see that I have managed to reach out to at least some of the bot owners and offer them solutions along with tools to make their bots better, more useful, less annoying etc. In exchange they are implementing leash codes #STEEMBOTSTAY or #STEEMBOTCOME in order to keep their pets from humping your leg every time you come to the door.

Because that's all a bot really is. Replace bot with pet when you're talking about this topic and your reference frame immediately shifts to the correct mindset. This also means if you kick someone's dog, the owner will get upset (github issue 221).

Unfortunately the "flag is downvote" crowd has caused a lot of strays to come into being as their owners follow that tutorial and then end up leaving their pet alone in the wild, as they see their first tentative creations outright rejected, never coming back to check on it.

So my advice...
If you want to stop 90% of your botspammers today instead of next week, examine the headers and logs closely on your websocket connection (refusing to allow the connection unless they are originating directly from the site) and 90% of bots are going to shut down immediately. This is effectively euthanizing the strays.

That's a bandaid solution, but it works right now until we can get the attention of their owners.

It won't get them all, but it will get the ones using that tutorial since that is the tutorial bot's achilles heel. Anyone who has upgraded their skills and moved onto other methods already, probably won't notice. But those ones aren't strays. They have a home and someone taking care of them. We just need to get them collared, tagged and vaccinated against rabbies, before it spreads further.

In the meantime, this is free aspiring programming talent and free computing resources being thrown in your lap in order to make this place better (better being a highly subjective term here).

You would do well to understand their motives, lay some ground rules and then leverage it to maximum effect. This is an exciting time in the world AI and @dantheman you have built the perfect platform for a host of different AI theories to be proven and tested.

Most of your botbuilders are researchers, educators, and enthusiasts. You could end up with the first social media network where human and AI work together to police content, determine mood, uncover criminal intent (see my post on mediashare), incentivize quality content production etc, all while doing things people are just doing naturally. These aren't all chatterbots you're dealing with.

That's it for now and thanks for reading this.

Sort:  

This is a top post!

A lot of the problems on this site come down to one small big thing - the front page. When I first joined this platform (at the start of June), the front page was populated by the "hot" tab, not the trending one. It was much more varied because stuff moved through it faster. And though people could go to trending to see who the top earners were, hardly anyone bothered.

The problem with trending on the front page is that it rubs people's noses in how much of the fixed distribution a few people are getting. It didn't help that people like @heiditravels wrote a post about how she dumped all her steem to fund some more travel. People think uh, am I going to become a bagholder here?

She can't dump her Steem. She can only dump her Steem Dollars. This is only a problem because there isn't yet much demand for Steem Dollars.

@dana-edwards I completely agree. Also and more importantly, how much a person earns and what they do with it are entirely their business as long as they earned it by honest effort.

not true, but there are bots, but often the real positions are ignored, and only a PR who Iteresno news only STEEM. I'm not a bot

@alyssas I just wanted to say that my previous reply focused on only the bit about @heiditravels other than that part I completely agree with you. Here have an upvote!

In my view, it's the responsibility of the platform to maximize user enjoyment instead of maximizing software experimentation in the field of bots. If the platform can achieve that through incentives, reputation systems, etc, etc, I'm ok for it.

Software enthusiasts will just have to work that much harder so that they make software which manages to attain positive reputation instead of being outright annoying. From one perspective, it's a new challenge and those who manage to create bots that are useful, instead of annoying (or worse yet, damaging), will survive.

It's a combination of the two. Bots which can someday produce content are producing value if the content helps the Steemit community in some way. The problem is the current breed of bots are quite dumb and don't add much value most of the time but this could change so I'm not anti-bot or anti-swarm if it reduces the amount of attention a human being has to pay to details for instance. But it's not going to currently replace a human being, it's only a time saver or attention saver.

@dana-edwards Thanks for summarizing in a paragraph something that took me 4 hours to write :) Pretty much the entire point of the STEEMBOTS thread was about this and how to draw the current builders into doing something far more productive.

@alexgr I get what you are saying. I think @casandrarose was spot on though when she said "Lol bored players having bot wars".

The purpose of this post was to show that by punishing users you are maximizing software experimentation in the field of bots. You need a rules tweak to fix that. Several are possible, but I called out the ones I felt had the most potential for impact on total user experience.

Not every bot needs to be a chatter bot. In fact my opinion is that a chatter bot at most should be an answering machine here. Hi @williambanks isn't here right now, but I'll email him this message.

Yet there are some insights to be drawn, for example a social similarity bot could say "If you like William Banks posts you should check out @dana-edwards , @casandrarose @melissaschwartz and @stellabelle these are people he likes as well"

Obviously you wouldn't want something like that stalking you in every post especially a ton of me too bots. Hence a code of conduct.

However there are also a ton of AI use cases where no chatter is directly needed. Imagine a system like cheetah but distributed to every user. You see a posting, there is some analysis done and if you are the first to detect cheating, the bot makes an autopost on your behalf similar to cheetah and the upvote love is yours to keep.

It would still be you posting this. Because you wouldn't be participating if you didn't feel the effort was important. This just automates the tedious and repetitive tasks such as googling an image or parsing a message.

The thing with a code of conduct is that it is not as rigid as rules. And even when there are rules, someone may be breaking them if the penalty is not high.

Regarding bots like cheetah, yeah, this type of automation is nice to have - but I guess the level of implementation is rather fluid. It could be embedded in the page, be displayed by a bot in the comments, or run locally by a user.

Btw, I'm seeing some bypasses for original content detection with slightly broken english. Perhaps someone is using google translate from english => other language => english to reorder the text, or some other rewording technique. This would need a more evolved type of cheetah to detect the similarities...

@alexgr Yeah thank you for your comments on my next week's blog posting :) I actually have a much better solution in mind based on contextual fingerprinting algorithms.

Basically a machine translates like a machine. Ergo you can spot machine translations when they occur and each translator has a way of screwing things up that is absolutely unique to them. For example, try putting "I would like a hotdog please." Into google translate, then translate to spanish and watch the hilarity ensure. (especially if you show it to someone who actually speaks spanish)

Now machine translation itself isn't a bad thing. I couldn't survive one day in a foreign country (some parts of the USA too) without tools such as google translate .

It does mean you need to look at the conceptual flow through the document, see if anyone has said anything which is conceptually and structurally the same. Identify those documents, and run them through various machine translators to see if you get a strong match.

This is called strong attribution via contextual analysis and knowledge extraction
There isn't a way to cheat this without actually rewriting the entire document yourself first and at that point it's pretty much the same as a term paper.

But umm that's next week's blog, so I hope you'll stop back by and comment on this then.

Looking forward to it :)

I really enjoied your article in response to @dantheman/notice-to-bot-spammers.

Especially corrective thinking stuff like this (lol):

A villain is just a hero of the other side

Think baby steps.. Work with what we have now.

  1. Sounds like it is time to change from trending to a new landing page. I think your right, their is no point in showing mega payout posts so much. A health system has people spending most of their time searching for undervolted but good content. To remove the payout info completely is a more complex topic, I'm not ignoring it, you make valid points but it is not as simple as just removing it. I would like to re-visit that later. But if you have any ideas like changing the landing page or tweaking something please reply let me know.
  2. A global reputation score is a scary thing. Why incite voting wars? What do you think about individual mutes? Since we have the information score (basically, the net up and down votes weighted by steem power). Maybe we should start by putting that metric under a user's profile so people can use visually it if they want to. It does not have to effect which posts you see by default, after all it may or may not turn out to be a good number. If you find it useful you can use it to help you decide if you want to mute someone, etc.. Or, do you still think we just don't even need to go there? (see #3 instead)
  3. Finally, I think we should outsource this completely and keep Steemit out of the picture. Users decide to mute or not. And if we need it, we could make it possible for users to link up (via follow) and share mutes.

@jsc Each of these are good proposals for individuals and a great use case for personalized AI.
Not every bot is a chatter bot.
However even a plugin with some brains to autocurate content I might be interested in would be good.
Contextual analysis is a growing and exciting field, but it isn't quite there yet.

As for removing the payout info, just hide or better yet remove the div tag it's sitting in. That's all I'm saying. If someone is genuinely curious they can always just go visit the blockchain and crunch the numbers. While number crunching they can analyze the data at a much deeper level and extract the information that is important to them.

"Why does user @blah make an average of $5k per post"? Might be they just have a large following of people they appeal to. It might be that they post at some optimal time frame in the system. It might be something completely unrelated like they have a ton of dolpin sock puppets and are abusing the system. The point is you cannot know these things until you crunch the numbers and just asking people to draw conclusions based on the dollar amount of a post is going to lead them in the wrong direction every time.

FYI your #3 describes in a couple lines what I laid out here...
https://steemit.com/steemit/@williambanks/bot-warz-a-hybrid-approach
Keep in mind that post is a bit older and some of my views have been changed in hindsight.

I've got twice as many people voting me up as the guy/gal with $1,000 but I can't even stay in "active".

It's true. I've written some decent posts, and unless a whale gets me over $10, I drift off to nowhere land every single time. :)

@intelliguy "Decent posts!" Are you kidding me? Your blog is freakin awesome!
But yeah, you and others like you were specifically who I had in mind with that snippet. You do really great stuff that is deep but approachable. I really wish I had your skill.

Wow! No one complimented my posts quite like that before. Thank you very much! ::blush::

@intelliguy You're very welcome and it's the truth. You really do a great job with quality and thought provoking content.

I think that in itself is a huge flaw in the system. We need either a flat, or a much flatter reward system for each upvote.

This post is 100% spot on period. It is exactly what I am saying not just about the bot pools but the actual people that hold high levels of SP that in turn run around telling people that disagree with them that they are done, for good on the platform because they put them in a bot banlist.

No other reason, I don't like you, you are gone.

Where is the user experience going to go? Down.

It is abusive to use the power vested to you in the network (be it early adopter, investor or otherwise) to be able to completely destroy someone and mute them because you have your panties in a bunch that day, they insulted you, they don't think the same, or otherwise.

Discourse is fine, alternate opinion is fine. Discussion is fine, but outright aggression to people in such a new platform is going to be fatal.

There ARE bots that are being made for good purposes, and there are many that are not.

You won't stop AI and botting, you can only guide.

Very good post @williambanks

Imgur

@michaelx Thank you! I love knowing that there are others who see this the same way already. The good thing is that this place is small enough that our voices can be heard, we just have to choose carefully how we speak so we can make our point understood by the broadest audience possible.

If you want to stop 90% of your botspammers today instead of next week, examine the headers and logs closely on your websocket connection (refusing to allow the connection unless they are originating directly from the site) and 90% of bots are going to shut down immediately. This is effectively euthanizing the strays.

But all anyone has to do is run a node. No one has to connect through steemit itself. It is but one interface to the overarching blockchain.

If you're saying that it's too much effort to interface with that versus what's currently done (and I dunno how current bots are really operating, I assume they are ALL using some interaction at the blockchain level) then that's a different story. But I necessarily believe that bot operators are interfacing with the blockchain and not through Steemit.

Some basic proof would be nice ... but I have nothing to why I believe this to be the case. Happy to see evidence either way.

Ok the part you are referring to was specifically in reference to the concept of these one liner spambots. They are using a particular tutorial. They are like pets whose owners have abandoned them. That tutorial relies on a websocket connection to this site. Close that particular hole, even just checking user agents strings and those strays are euthanized.

People that would go to the trouble of standing up a node etc, are a different class all together and we treat them differently by giving them direct incentives to build better bots.

You sir are exactly right and I am of the same mindset. Followed.

i agree with you that GOOD bots are necessary, and , IMO the good ones will stay with this algorithm. the problem is the spamers/swarm. @wang for example, it is helpful to newcomers but the programmer got greedy and started a whole swarm with weng, wing, wong, weenis(i might be wrong, but the all seem the same person) and that's where the problem begin... anyway, i'm programmer too and i'm never against new technology, but they need to be good, they need to solve a problem and not to start one.

@raphma Thanks! @wang is helpful the others not so much. They do seem to be the same programmer or they share a pedigree. Put another way, I think they all come from the same litter. If we can get them building useful bots then their talents are directed away from useless bots. They get better skills and financial incentives we get less barking.

Good read!! enjoyed it! i mean i hated it for obvious reasons but i loved the post and its contents just not the subject matter because it affects us all :P kudos bro! (could have gave my post a little nudge, was going to donate every penny too my local food bank) its fucking insulting food banks exist in the U.K mind you!

@egjoshslim Of course I will sorry I missed it for so long. Taking care of it now.

Coin Marketplace

STEEM 0.20
TRX 0.12
JST 0.029
BTC 62001.44
ETH 3479.98
USDT 1.00
SBD 2.51