This post is a follow-up to my previous one, Deconstructing the Mastodon client. My topic is a scenario that traditional Mastodon clients handle rather badly, wheres my home-grown solution handled it very well: lengthy and branching conversations.
Such conversations happen all the time on social networks. Someone posts an interesting question or observation, which is commented by many others. Then comments are added to comments, and soon the replies form a branching tree that grows over a few days, sometimes even weeks. Keeping up to date with such a conversation is not supported by any Mastodon client I know of. Worse, due to the way Mastodon implements federation, some replies may never arrive on your instance.
What I did in the past is put a bookmark on the initial toot, and then check for new replies once per day or so. Once you get to dozens of toots, checking for new ones is already a minor effort. And although I know how to check for replies outside of my own instance, in practice I hardly ever do it because it's too laborious.
A simple script that I run once per day makes this a lot easier. I still mark interesting conversations as bookmarks. But now it's my script that copies the whole tree into a mail folder, skipping toots that are already present. New additions to the tree thus show up as unread mails in my inbox, just like replies in a mailing list. Better yet, my script retrieves the whole tree twice: once from my own instance, and once by retrieving each toot from the instance it was posted to, checking on that instance for replies. Neither approach is sufficient on its own: my instance doesn't see all replies, but the foreign instances from which I retrieve toots won't show me non-public toots.
Nothing of this is rocket science, but it's a nice illustrations of the possibilities that open up once you take control over your personal information environment. I wish this were easier, and thus accessible to more people. But it won't get easier as long as most computer users find it perfectly normal that a small technophile elite defines what everyone else is able to do in their digital lives. So if you are reading this and think "nice, but that's above my level of competence", the very least you should do is express your desire to be able to do such things on your own. On Mastodon, for example.