A New Kind of Voting Bot
There are several different types of voting bots available. There's the bidding version where you bid on votes. There's voting bots where users will delegate their SP to the voting bot. This a new kind of what I like to call the ethical voting bot. It's an ethical voting bot because its entire purpose is around the necessity for users to collectively up/down vote posts in the steem ecosystem without fear of retaliation.
Fear of retaliation? What necessity would require such a voting bot? In recent times, there have appeared users that would abuse their downvote. Rather than use the downvote to curate posts or correct post values, the downvote is used to wipe out rewards and return them directly to the pool for pillaging.
How does this bot help combat such tactics? Well, it doesn't. Instead it's purpose is to mitigate damage and discourage future downvoting.
How it Works
Rather than delegating SP to make a super huge whale that would inevitably be defeated by a larger whale, this bot simply votes for users. It functions almost identically to a voting guild. In a voting guild, users will give their private posting key to a bot and the bot would impersonate the user during voting.
The differences here are that
Ethical Voting | Guild Voting |
---|---|
Users specify up/downvote weight preferences | The bot determines the up/downvote weight appropriately |
Users specify voting power threshold | The bot has a fixed threshold |
Users can up/down vote | Only upvotes |
The reason for voting as a guild is that then whales cannot retaliate. If a whale retaliates on a smaller whale, there's an obvious winner. A whale simply cannot retaliate against numerous minnows and plankton. There's safety in numbers.
The bot allows users to recoup losses by upvoting users that are victims of downvote abuse while downvoting the attackers. Downvoting attackers is intended to deter and discourage further downvoting.
Features
- Retaliation protection through impersonation instead of delegation
- Preferences management and signup/optout/signout
- Automatic up/downvote
- Single page application
Technical Details
- The bot is an ExpressJS application
- Data is persisted to a postgreSQL database
- Authentication is handled through Steemconnect API
- Bot automation utilizes
steem-js
library along with stored private posting key of contributors to impersonate them
User Interface
- The user interface is just a
bootstrap
frontend rendered withejs
view and templating engine
Roadmap
- Use VueJS for future rendering
- Build backend with Typescript
- Reporting for bot contributors
- Analysis tools to discover and track downvote abuse
Contributing
r351574nc3#7016 on discord
Steem Development on Telegram
Posted on Utopian.io - Rewarding Open Source Contributors
Ezekiel 25:17 comes to mind. LOL
Moar like this!
This is so good! It's the first time I am coming across ethical bots.
Thanks. This software can be reused for your own by forking. If you want to know about us, just check out @the-resistance.
We have also made some additional changes and features since this post. https://steemit.com/utopian-io/@r351574nc3/version-0-1-1-new-features
Followed you and I have a huge interest in adopting some ethical bots to make my blog more successful.
Thank you for the contribution. It has been approved.
You can contact us on Discord.
[utopian-moderator]
Hey @r351574nc3 I am @utopian-io. I have just upvoted you!
Achievements
Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!
Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x