Twitter Drama and Mastodon

What a completely non eventful roller coaster the latest Twitter Drama is shaping up to be. I suppose it’s somewhat in the “early stages” and a lot of people, including myself, may be acting a bit over dramatic, but I don’t think Elon Musk buying Twitter will be anything good long term.

Twitter isn’t, wasn’t, whatvern’t that great. It was ok, personally, I’ve been kind of struggling to care about Twitter as a platform for a while. It’s probably just some sort of burn out, I’ve been there since essentially the beginning, in 2006. Back when good ol’ Leo Laporte was the number one most followed user, until Kevin Rose was. Then Leo again, it was sort of a competition. Those whopping follow counts were in the thousands as well back then. Twitter is definitely much larger and much more since then. And I find it hard to keep up with anymore.

I’ve tried using lists, but for some reason Twitter only lets you easily pin 5 lists. How useless is that? I have dozens of lists. Politics lists, tech lists, toys lists, music lists, transformers lists, also split across several sub lists, like “Toys – News,” and “Toys – Bloggers”, “Tech – News,” or “Tech – Cybersecurity”. Segmentation of content makes it much easier to follow and be in the right mindset for each topic.

Over time, it also became sort of a crazy place for politics and the spread of misinformation campaigns promoted by trolls and bots. These are the classic style trolls of the days of Ye Olde Usenet, where one person might be harassing another over something the latter was taking a bit too seriously. These are weaponized trolls pushed by people wish absolutely awful agendas against large groups of people. This was bad during the Obama Era of the US but made absolutely worse during the Trump Era.

It’s not entirely just a Trump thing, or a US thing, there is idiocy going on all around the world, but I’m still going to use the US as a frame of reference, since I am in the US. It’s also a problem across many Social Platforms. Lately there have been a lot of actual efforts to stem the spread of lies and stupidity on a lot of platforms, Twitter included. This is where we end up with more rift and part of Musk’s stated reasoning for pissing away billions of dollars on a platform that isn’t worth anywhere near that.

Free Speech.

Which is the real crux of the issue. Some are trying to confuse it with the idea that people angry over this don’t like that Musk is a Billionaire. How it’s hypocritical because Bezos bought the Washington post. The problem isn’t that Musk is a billionaire, it’s that he’s kind of a jackass. And he wants to open the platform back up to let other jackasses be jackasses. “Free Speech” isn’t at all about free speech to these people it’s about freedom to be an asshole. This is why people are upset. They are tired of people spreading lies and idiocy then just screaming people down when they are called out on it.

It was getting better.

It will be interesting to see what comes out of all this. I don’t think it’s going to be anything good. For one, every discussion about Musk buying Twitter on Reddit, seems to end up locked. Because just discussing the issue, people can’t keep civilized. There have also been a LOT of “Free Speech” platforms pop up over the past several years, and basically every single one failed. Some still limp along, but they all devolve into a bunch of jackasses calling for violence and spouting endless hate speech. They get kicked off their hosting platforms for violating TOS, sometimes the creators realize what a mess they unleashed and close things down themselves, sometimes they just fall apart because they can’t create any real way to financially support the platform.

Twitter may be big enough to survive for a while, but that’s not even real clear. It’s still one of the smallest social platforms in terms of users at around 350million. For comparison, Facebook and TikTok have Billions, with an s. Basically a measurable 25% of the entire world’s population. There is a greater than good chance that at least half of Twitter’s users are bot accounts, either actual scripted agent bots or sweat shop people in 3rd world countries clicking retweet buttons “bots”. Add this in with a lot of people leaving Twitter in disgust, and it will be interesting to see what the user base is in a month or two.

So what’s the alternative? A lot of people are pushing and moving to Mastodon. Mastodon isn’t quite the same as Twitter but it’s very similar, especially to old Twitter. For starters, it’s Federated, which means, anyone can host a Mastodon server (called Instances), and it can connect to other Mastodon Instances. This means there are many Instances themed around specific topics. It also means that if an Instance becomes full of idiots, then it can easily be blocked by other Instances.

This is not my first attempt at Mastodon either. I’ve used it off and on for a while and even ran a script for a long time that would sync my Twitter and Mastodon profiles, creating an illusion of activity. Now I’m trying to use it full time though. I have wanted to make it work for a while anyway, now, with all of the attention it’s getting, seems like as good of a time as any. I guess maybe it might be best to just treat it more like the “Classic Twitter” days, and just toss stuff out into the Ether and see if anyone reacts.

Currently I’m on the core Mastodon.social, though I may look into moving elsewhere, but if you want to give me a follow, you can find me <a rel=”me” href=”https://mastodon.social/@RamenJunkie“>Here</a>.

Next Thing CHiP as a Twitter Bot

twitter-logoThere was a post that came across on Medium recently, How to Make a Twitter Bot in Under an Hour.  It’s pretty straight forward, though it seems to be pretty geared towards non “techie” types, mostly because it’s geared towards people making the bot on a Mac and it uses something called Heroku to run the bot.  Heroku seems alright, except that this sort of feels like an abuse of their free tier, and it’s not free for any real projects.

I already have a bunch of IOT stuff floating around that’s ideal for running periodic services.  I also have a VPS is I really wanted something dedicated.  So I adapted the article for use in a standard Linux environment.  I used one of my CHiPs but this should work on a Raspberry Pi, an Ubuntu box, a VPS, or pretty much anything running Linux.

The first part of the article is needed, set up a new Twitter account, or use one you already have if you have extras.  Go to apps.twitter.com, create an app and keys, keep it handy.

Install git and python and python’s twitter extension.

sudo apt-get install git

sudo apt-get install python-twitter

This should set up everything we’ll need later.  Once it’s done, close the repository.

git clone https://github.com/tommeagher/heroku_ebooks.git

This should download the repository and it’s files.  Next it’s time to set up the configuration files.

cd heroku_ebooks

cp local_settings_example.py local_settings.py

pico local_settings.py

This should open up an editor with the settings file open.  It’s pretty straight forwards, you’ll need to copy and paste the keys from Twitter into the file, there are 4 of them total, make sure you don’t leave any extra spaces inside the single quotes.  You’ll also need to add one or more accounts for the bot to model itself after.  You’ll also need to change DEBUG = TRUE to DEBUG = FALSE as well as adding your bot’s username to the TWEET_ACCOUNT=” entry at the bottom.

Once that is all done do a Control+O to write out the file and Control+X to exit.  Now it’s time to test out the bot with the following…

python ebooks.py

It may pause for a second while it does it’s magic.  If you get the message ” No, sorry, not this time.” it means the bot decided not to tweet, just run the command again until it tweets, since we’re testing it at the moment.  If it worked, it should print a tweet to the command line and the tweet should show up in the bot’s timeline.  If you get some errors, you may need to do some searching and troubleshooting, and double check the settings file.

Next we need to automate the Twitter Bot Tweets.  This is done using Linux’s built in cron.  But first we need to make our script executable.

 chmod 755 ebooks.py

Next, enter the following….

sudo crontab -e

Then select the default option, which should be nano.  This will open the cron scheduler file.  You’ll want to schedule the bot to run according to whatever schedule you want.  Follow the columns above as a guide.  For example:

# m h  dom mon dow   command

*/15 * * * * python /home/chip/heroku_ebooks/ebooks.py

m = minutes = */15 = every 15 minutes of an hour (0, 15, 30, 45)

h = hour = * (every hour)

dom = day of month = * = every day and so on.  The command to run, in this case, is “python /home/chip/heroku_ebooks/ebooks.py”.  If you’re running this on a Raspberry Pi, or your own server, you will need to change “chip” to be the username who’s directory has the files.  Or, if you want to put the files elsewhere, it just needs to b e the path to the files.  For example, on a Raspberry Pi, it would be “python /home/pi/heroku_ebooks/ebooks.py”.

If everything works out, the bot should tweet on schedule as long as the CHIP is powered on and connected.  Remember, by default the bot only tweets 1/8th of the time when the script is run (this can be adjusted in the settings file), so you may not see it tweet immediately.

This is also a pretty low overhead operation, you could conceivably run several Twitter Bots on one small IOT device, with a staggered schedule even.  Simply copy the heruko_ebooks directory to a new directory, change the keys and account names and set up a new cron job pointing to the new directory.