Syndicating to Mastodon

I’ve been contemplating a checkbox. The label for this checkbox reads:

This is a bot account

Let me back up…

In what seems like decades ago, but was in fact just a few weeks, Elon Musk bought Twitter and began burning it to the ground. His admirers insist he’s playing some form of four-dimensional chess, but to the rest of us, his actions are indistinguishable from a spoilt rich kid not understanding what a social network is.

It wasn’t giving me much cause for anguish personally. For the past eight years, I’ve only used Twitter as a syndication endpoint for my own notes. But I understand that’s a very privileged position to be in. Most people on Twitter don’t have the same luxury of independence. It’s genuinely maddening and saddening to see their years of sharing destroyed by one cruel idiot.

Lots of people started moving to Mastodon. I figured I should do the same for my syndicated notes.

At first, I signed up for an account on mastodon.cloud. No particular reason. But that’s where I saw this very insightful post from Anil Dash:

When it came time to reckon with social media’s failings, nobody ran to the “web3” platforms. Nobody asked “can I get paid per message”? Nobody asked about the blockchain. The community of people who’ve been quietly doing this work for years (decades!) ended up being the ones who welcomed everyone over, as always.

I was getting my account all set up and beginning to follow some other folks, when I realised that I actually already had an exisiting account over on mastodon.social. Doh! Turns out that I signed up back in 2017 to kick the tyres, but never did much else because there weren’t many other people around back then. Oh, how times have changed!

Anyway, I thought I had really screwed up by having two accounts but this turned out to be an opportunity to experience some of the thoughtfulness in Mastodon’s design. The process of migrating from one Mastodon account to another—on a completely different instance—was very smooth! It was clear that this wasn’t an afterthought. This is an essential part of the fediverse and the design of the migration flow reflects that.

This gives me enormous peace of mind. If I ever want to switch to a different instance and still keep my network intact, I know it won’t be a problem. Mastodon is like the opposite of the roach-motel mentality that permeates most VC-backed so-called social networks.

As I played around some more—reading, following, exploring—my feelings of fondness only grew stronger. I like this place a lot!

I definitely wanted to syndicate my notes to Mastodon. At first, I implemented a straightforward RSS-to-Mastodon syndication using IFTTT (IF This, Then That), thanks to Matthias’s excellent tutorial.

But that didn’t feel quite right. When I syndicate to Twitter, I make a conscious choice each time. There’s a “Twitter” toggle that I can enable or disable in my posting interface. Mastodon deserved the same level of thoughtfulness.

So I switched off the IFTTT recipe and started exploring the Mastodon API. It’s going to sound like a humblebrag when I tell you that I got cross-posting working in almost no time at all, but that’s not a testament to my coding prowess (I’m really not very good), but rather a testament to the Mastodon API, which was a joy to work with.

  1. On your Mastodon instance, go to /settings/applications.
  2. Click on New Application.
  3. Fill in the details about your website and select write:statuses (and probably write:media) from the Scopes list.
  4. Copy Your access token to use in API calls.
  5. Write some sloppy code (in my case, PHP that uses CURL).

I did hit a wall when it came to posting images. That took me a while to get working, and I couldn’t figure out why. Was it something at Mastodon’s end while it was struggling under the influx of new users? As it turns out, no. It was entirely down to me being an idiot. (You know that situation where you’re working on a problem for ages and you’ve become convinced it’s an extremely gnarly rocket-science problem, but then turns out to be something stupid like a typo? Yeah. That.)

Then there’s the whole question of how to receive replies, likes, and reboosts from Mastodon here on my own site. Luckily, that was super easy, thanks to Brid.gy. One click and I was done. I love Brid.gy!

Take this note, for example. There’s a version on Twitter and a version on Mastodon. The original version on my own site gets responses from both places.

If I’m replying to a response on Twitter, I do not syndicate that to Mastodon.

Likewise, if I’m replying to a response on Mastodon, I do not syndicate that to Twitter.

Oh, one thing worth mentioning: if you’re sending a reply to something on Mastodon using the API, there’s an in_reply_to_id field for you to provide. But you should also include the full @username@instance of the person you’re replying to at the beginning of the message to ensure that it’s displayed as a reply rather than showing up as a regular post. Note the difference between this note on my site and its syndicated version on Mastodon.

Anyway, now I’m posting to Mastodon, but I’m doing it through the the interface of my own website. Which brings me to that checkbox in Mastodon’s profile settings:

This is a bot account

The help text reads:

Signal to others that the account mainly performs automated actions and might not be monitored

If I were doing the automatic cross-posting from RSS, I’d definitely tick that box. But as I’m making a conscious decision whenever I syndicate to Mastodon, I think I’m going to leave that checkbox unticked.

My cross-posting is not automated and I’m very much monitoring my Mastodon account …because I’m enjoying my Mastodon experience more than I’ve enjoyed anything online for quite some time. Highly recommended!

Have you published a response to this? :

Responses

Aaron Parecki

Have you considered making your website directly accessible from Mastodon and others? Bridgy Fed seems like it would integrate nicely with your workflow, since you’ve already got most of the pieces set up, and you could choose to send individual posts to your Mastodon followers with a webmention. https://fed.brid.gy This way people could follow your website directly and you wouldn’t need a separate account on any Mastodon server at all!

depone

«I’m enjoying my Mastodon experience more than I’ve enjoyed anything online for quite some time. Highly recommended!» – @adactio@mastodon.social on Syndicating To Mastodon: adactio.com/journal/19645

# Posted by depone on Thursday, November 17th, 2022 at 8:12pm

andr3 :gitlab:

@adactio This wouldn’t be the same without you and your content here, Jeremy. Glad you’re enjoying it.

The peace of mind you mention reminds me of the peace of mind OPML offered us by giving us the ability to move from reader to reader, investing in curating our subscriptions knowing we could always pick up and leave to another reader.

31 Shares

# Shared by Amanda CAARSON on Thursday, November 17th, 2022 at 5:43pm

# Shared by Burningbird on Thursday, November 17th, 2022 at 5:54pm

# Shared by allaboutgeorge on Thursday, November 17th, 2022 at 5:54pm

# Shared by Baldur Bjarnason on Thursday, November 17th, 2022 at 5:54pm

# Shared by Jorge Arango on Thursday, November 17th, 2022 at 5:54pm

# Shared by Tom Keays on Thursday, November 17th, 2022 at 5:54pm

# Shared by Stedi 🎸🎙️🎶 🐦🚴🍺 on Thursday, November 17th, 2022 at 5:54pm

# Shared by Pete on Thursday, November 17th, 2022 at 7:23pm

# Shared by Seb Lee-Delisle on Thursday, November 17th, 2022 at 7:23pm

# Shared by Daniel Schildt on Thursday, November 17th, 2022 at 7:23pm

# Shared by Max Böck on Thursday, November 17th, 2022 at 7:23pm

# Shared by Jason Grigsby on Thursday, November 17th, 2022 at 7:23pm

# Shared by Thomas Randolph on Thursday, November 17th, 2022 at 7:23pm

# Shared by Christopher on Thursday, November 17th, 2022 at 7:23pm

# Shared by Cory Dransfeldt on Thursday, November 17th, 2022 at 8:38pm

# Shared by Matthias Ott on Thursday, November 17th, 2022 at 8:38pm

# Shared by Charles Harries on Thursday, November 17th, 2022 at 8:38pm

# Shared by depone on Thursday, November 17th, 2022 at 8:38pm

# Shared by James Drinkwater on Thursday, November 17th, 2022 at 8:38pm

# Shared by Colin Devroe on Thursday, November 17th, 2022 at 9:55pm

# Shared by Mark Howells-Mead on Thursday, November 17th, 2022 at 11:26pm

# Shared by teledyn 𓂀 on Friday, November 18th, 2022 at 12:44am

# Shared by Patrick Tanguay on Friday, November 18th, 2022 at 12:44am

# Shared by bitbyte on Friday, November 18th, 2022 at 6:53am

# Shared by Dominique Hazael-Massieux on Friday, November 18th, 2022 at 10:32pm

# Shared by Flaki on Friday, November 18th, 2022 at 10:32pm

# Shared by Tobie Langel on Friday, November 18th, 2022 at 10:32pm

# Shared by Coralie Mercier (W3C) on Saturday, November 19th, 2022 at 1:10am

# Shared by Momo le Mamouth on Saturday, November 19th, 2022 at 7:57am

# Shared by blumenberg on Saturday, November 19th, 2022 at 11:12am

# Shared by Frank Fuchs on Wednesday, November 23rd, 2022 at 7:12am

53 Likes

# Liked by Ryan Barrett on Thursday, November 17th, 2022 at 5:31pm

# Liked by Piet van Zoen on Thursday, November 17th, 2022 at 5:53pm

# Liked by Steve Thomson on Thursday, November 17th, 2022 at 5:53pm

# Liked by Dave Letorey on Thursday, November 17th, 2022 at 5:53pm

# Liked by Seán PJPGR Doran on Thursday, November 17th, 2022 at 5:53pm

# Liked by Juan Fernandes on Thursday, November 17th, 2022 at 5:53pm

# Liked by jorgeluis@mastodon.cloud on Thursday, November 17th, 2022 at 5:53pm

# Liked by allaboutgeorge on Thursday, November 17th, 2022 at 5:53pm

# Liked by Baldur Bjarnason on Thursday, November 17th, 2022 at 5:53pm

# Liked by Andrew Woods on Thursday, November 17th, 2022 at 5:53pm

# Liked by Jorge Arango on Thursday, November 17th, 2022 at 5:53pm

# Liked by Brent Logan on Thursday, November 17th, 2022 at 5:53pm

# Liked by Stedi 🎸🎙️🎶 🐦🚴🍺 on Thursday, November 17th, 2022 at 5:54pm

# Liked by Thomas Peklak on Thursday, November 17th, 2022 at 7:22pm

# Liked by Luke Dorny on Thursday, November 17th, 2022 at 7:22pm

# Liked by Dale Price on Thursday, November 17th, 2022 at 7:22pm

# Liked by Seb Lee-Delisle on Thursday, November 17th, 2022 at 7:22pm

# Liked by Juan Lam on Thursday, November 17th, 2022 at 7:22pm

# Liked by Miriam Suzanne on Thursday, November 17th, 2022 at 7:23pm

# Liked by Max Böck on Thursday, November 17th, 2022 at 7:23pm

# Liked by Thomas Randolph on Thursday, November 17th, 2022 at 7:23pm

# Liked by Christopher on Thursday, November 17th, 2022 at 7:23pm

# Liked by Cory Dransfeldt on Thursday, November 17th, 2022 at 8:38pm

# Liked by Matthias Ott on Thursday, November 17th, 2022 at 8:38pm

# Liked by Anton Andreasson on Thursday, November 17th, 2022 at 8:38pm

# Liked by depone on Thursday, November 17th, 2022 at 8:38pm

# Liked by Andy Bell on Thursday, November 17th, 2022 at 8:38pm

# Liked by Rach Smith on Thursday, November 17th, 2022 at 9:55pm

# Liked by Rudiger Meyer on Thursday, November 17th, 2022 at 9:55pm

# Liked by Amelia Bellamy-Royds on Thursday, November 17th, 2022 at 9:55pm

# Liked by qbert 🫠 on Thursday, November 17th, 2022 at 9:55pm

# Liked by Fernando Mateus on Thursday, November 17th, 2022 at 9:55pm

# Liked by Dinah 🕊🇺🇦 on Thursday, November 17th, 2022 at 9:55pm

# Liked by Colin Devroe on Thursday, November 17th, 2022 at 9:55pm

# Liked by Daniele T. on Thursday, November 17th, 2022 at 9:55pm

# Liked by Mark Howells-Mead on Thursday, November 17th, 2022 at 11:25pm

# Liked by Wesley Soares on Thursday, November 17th, 2022 at 11:26pm

# Liked by teledyn 𓂀 on Friday, November 18th, 2022 at 12:43am

# Liked by Don on Friday, November 18th, 2022 at 12:43am

# Liked by Orpheus on Friday, November 18th, 2022 at 12:44am

# Liked by Marty McGuire on Friday, November 18th, 2022 at 2:54am

# Liked by Krzysztof Jeziorny on Friday, November 18th, 2022 at 8:27am

# Liked by Matteo Collina on Friday, November 18th, 2022 at 10:32pm

# Liked by Tobie Langel on Friday, November 18th, 2022 at 10:32pm

# Liked by Oliver on Friday, November 18th, 2022 at 10:38pm

# Liked by Flaki on Friday, November 18th, 2022 at 10:39pm

# Liked by Sasha on Saturday, November 19th, 2022 at 4:46am

# Liked by blumenberg on Saturday, November 19th, 2022 at 11:12am

# Liked by Jonathan Markwell on Sunday, November 20th, 2022 at 10:18am

# Liked by Stephen Shankland on Tuesday, November 22nd, 2022 at 5:31am

# Liked by Mitch Bartlett on Tuesday, November 22nd, 2022 at 5:31am

# Liked by dckc@social.coop on Thursday, November 24th, 2022 at 4:22pm

# Liked by Juha Liikala on Saturday, November 26th, 2022 at 10:16pm

Previously on this day

1 year ago I wrote Priority of design inputs

Can my favourite design principle be applied to the process of design?

2 years ago I wrote Insecure …again

Breaking the web for security.

5 years ago I wrote Brighton conferences

Two weeks, four conferences.

6 years ago I wrote Less JavaScript

The Google developer relations team are dishing out some inconvenient truths.

7 years ago I wrote Brighton device lab

You should come by the Clearleft office and test your website on many many devices.

16 years ago I wrote Spoken

I delivered my spiel on microformats.

18 years ago I wrote Client communication

There’s a great interview with John Allsopp over at the Web Standards Group. John is the author of one of my all-time favourite articles over at A List Apart: Dao of Web Design.

19 years ago I wrote Sprint CSS

I got a nice email today from a very talented web developer named France Rupert telling me about the newly redesigned Sprint PCS site.

20 years ago I wrote Bringing Entertainment Home

After a long week of staring at code, I finally had some time this weekend to sit back and enjoy my new computer.

21 years ago I wrote The ugly world of PCs

Jessica and I got plenty of exercise today. We walked to the far end of town to look at the wares at PCworld.