Why I Gave Up Making A Twitter Bot After A Week Of Trying
BACKGROUND STORY
I had a shitty insurance buying experience. My mother's car's insurance expired on 19th May 2018. I remembered this two days later, and I immediately applied for a renewal online. Since the insurance had expired inspection of the car was mandatory. Not knowing I could self inspect the car (by clicking photographs through an app), I opted for field inspection, where a guy is supposed to come and click the photographs for you. It took 10 days and about 30 customer care calls for the guy to show up, followed by another 15 days and about 40 customer calls for them to finally confirm, that the amount that was debited through my bank account was not received by them. 15 frigging days!. Each time I had to call front facing customer care, I had to tell what the issues were from scratch, and on top of that, bear them asking me mandatory questions that were required to be asked by every customer care executive, no matter what! What the f$%^!
So initially I formed this idea β to constantly bombard them with a tweet every week or so, just to annoy their twitter account handler (I'm pretty sure it works as a dumb bot as well, given this twitter thread ). Then I thought about something better. What if I could use twitter's streaming API to curate bad feedback (because no one curates insurance feedback other than insurance companies themselves for Quality Assurance Purposes, whatever that means). The idea was simple β anytime anyone would tag that insurance company on twitter ( in most cases, people tagged when they had issues or queries ), I'd reply back to them telling them how bad my experience had been with the company, and why they should be cautious and (preferably)/or chuck that insurance company altogether if they can.
Also at the same time, they could tweet their feedback with a particular hashtag, which I'd catch, again, using Twitter's streaming API, and store that tweet / twitter thread in a database, to further show subsequent people how many other people had been hit by bad / no service.
THE BEST THING THAT HAPPENED BECAUSE OF THIS
When I started coding up the idea, I had an immediate need to break down long strings into tweet length chunks (tweets), so that I wouldn't have to keep track of the character limit manually. I decided to make a node module out of it, and I learnt a lot out of it. It was special because this was my first node module ever. So I really worked on it (I even wrote my first tests ever! Yay! ππ)
THE WORST THING THAT HAPPENED
Twitter silently marks bots that it thinks are spammy, even when developers might be experimenting.. This was the end of my endeavour. Because I wanted to leverage twitter threads as a means to store content (and then store their links in a database under the insurance company's name), this was the end of it, because twitter would immediately and silently (I spent half a day trying to figure out why tweets were forming, but twitter thread wasn't publicly available, and then why notifications weren't coming at all for the bot's tweets) flag my account. It's not I was intended to spam, I was trying to invent a feedback system that could leverage the power of twitter threads for feedback content and Twitter's streaming API to distribute that feedback around to only necessary users (who intended to purchase insurance from the company).
Twitter flagging and spamming systems continuously kept thinking that because I was tweeting so frequently I must have been a spammy bot. Which is really shitty developer experience! Twitter should enable a dev container mode for utilising its API (perhaps by letting us serve up a little dev instance of twitter like mastodon), and especially through bots.
I'm not making twitter bots for a while.
Thank you for reading a rant, I appreciate it. Share if you can! If you know something about the problem that I wrote above, please share it, I'd really appreciate it as well.