Peter has experimented for a while with Mastodon (and the ActivityPub protocol behind it) and decided that it’s not for him.

Well, this has been fun, but it turns out that the effort-vs-reward for the fediverse doesn’t balance for me; I need fewer reasons to be tethered, not more. @mastohost, recommended by @ton, was an excellent playground. In 24 hours this account will self-destruct. But, now and forever, https://ruk.ca is where you’ll find me.

I very much recognise his point. The disbalance he mentions I felt strongly in the past month, where it was absent in the five and a half years before it. The enormous influx of people, positive in itself, and the resulting growth in the number of people I followed made my timeline too busy. In response I started following topics more and am evaluating rss feeds from ActivityPub servers. The disbalance expresses itself in spending too much time in the home timeline, without that resulting in notable things. (I mean literally notable, as in taking notes) Unlike my feedreader. It does result in some interesting conversations. However such interactions usually start from a blogpost that I share. Because of the newness of AP and Mastodon to the large wave of people joining, many posts including mine are of the ‘Using Mastodon to talk about Mastodon’ type. This is of course common for newly adopted tools, and I still have a category on this blog for metablogging, as blogging about blogging has been a 20 year long pattern here. Yet it is also tiring because it is mostly noise, including the whole kindergarten level discussions between petty admins defederating each other. There’s a very serious discussion to be had about moderation, blocks and defederation, to turn it into a tool that provides agency to individual users and the groups they are part of. These tools are important, and I’m glad I have them at my disposal. Ironically such serious discussion about Mastodon isn’t easy to conduct in a Tweetdeck and Twitter style interface, such as Mastodon provides. I moved the home timeline over to the right in my Mastodon web interface, so I don’t see it as the first thing when I open it up. I’ve concluded I need to step away from timeline overwhelm. Much as I did on Twitter years ago.


A tired purple mastodont lies on the ground sleeping while groups of people are talking in the background, sketchbook style. Dall-E generated image.

There are however two distinct aspects about AP and the recent incoming wave of people that I am more interested to be engaged with than I was before this started.

First, to experiment personally with AP itself, and if possible with the less known Activities that AP could support, e.g. travel and check-ins. This as an extension of my personal site in areas that WordPress, OPML and RSS currently can’t provide to me. This increases my own agency, by adding affordances to my site. This in time may mean I won’t be hosting or self-hosting my personal Mastodon instance. (See my current fediverse activities)

Second, to volunteer for governance related topics in the wider Dutch user group of Mastodon. Regardless of my own use of Mastodon, it is an environment in which many more people than before have new choices to make w.r.t. taking their online presence and tools in their own hands. A step from a global silo such as Twitter to e.g. a larger Dutch instance, while not the same as running one’s own, can be a significant step to more personal agency and networked agency. I’m involved in a group discussing how to establish governance structures that can provide continuity to the Dutch instance Mastodon.nl, lets people on the instance have an active voice and role in its internal governance, and raises awareness of the variety of tools and possibilites out there while purposefully avoiding becoming a new silo (through e.g. providing pathways away from the instance). Such governance is not part of the Mastodon instance, but structured around it. Such involvement is an expression of my experience and role in using tech for the past 33 years online as being inherently political.


A purple mastodont is conversing with a crowd of people, sketchbook style. Dall-E generated image.

Brief overview of how I’m active in the fediverse.

My site

I would prefer this site to be the centerpoint of my fediverse presence. For now that isn’t fully feasible, but it will be over time. Already the building blocks for WordPress to be a fediverse actor exist. The Activity Pub (AP) plugin and Webfinger plugin by Matthias Pfefferle are useful, just not allowing enough granular control yet to my taste. For one, the AP plugin exposes actual usernames of my WP site, a disclosure I don’t like. I need to be able to set the actor names for AP, through the AP plugin and/or the Webfinger plugin. Second, the AP plugin allows sharing my blogposts but only all blogposts, and I want to be able to only publish certain categories of posts as well as individual posts marked for sharing through AP. Third, the AP plugin doesn’t yet take into account the interaction parts of AP (like follows etc.).

Mastodon

I run two Mastodon instances, both hosted at Masto.host. Masto.host has been a very reliable service since I started hosting with them 4 years ago. A personal instance (m.tzyl.nl), and one for my company (m.tgl.eu). I also am running a test instance of Mastodon on a VPS with Yunohost. I will likely move to that instance in the near future (currently Mastodon 4 isn’t available yet through Yunohost).

Discoverability hack

I have added simple text files to /.well-known/webfinger to both this site and my company website that allow discovery of my existing Mastodon profiles through my site’s and work e-mail addresses. This is just a hack, and I should replace it with actual functionality to disclose actors on both those sites.

Bookwyrm

Bookwyrm is the book reading application on AP. I have an account at the primary instance and supported them financially for a while, but haven’t used it much since spring 2022. This is one of the things I want to do myself through this site.

Potential AP projects

As said above I’d like to be able to share my reading through AP from this site. I would also like to be able to share my planned travel and/or check-ins through this site in AP. Specifically travel plans (Dopplr like) are of interest to me. AP, unlike this site, would allow non-public sharing of this information to followers only.

I hadn’t really looked, but it turns out that Mastodon has incorporated microformats. It has h-feed and h-card, h-entry (a status), and h-cite (a boost). Plaint text properties (p-), e-content, and link properties (u-) are implemented. Indeed, they all surface when looking at a profile’s HTML source. This is what makes it possible to e.g. follow Mastodon feeds as h-feed, next to the existing RSS output and ActivityPub, and that e.g. Brid.gy can do its work to carry over any interaction on a Mastodon post to a blogpost here.

What I haven’t found was what I was looking for.
The ActivityPub protocol in its specs has several so-called Activity Types that drew my attention:

In short ActivityPub supports FourSquare and Dopplr like check-ins and travel plans. I’ve recently added that to my site in terms of microformats and was still wondering how to create a useful stream for it. I’ve been thinking about an OPML outline with schema.org attributes, or a dedicated RSS feed or h-feed. An ActivityPub stream might be of interest too, or even more. There’s a PHP implementation of ActivityPub that includes these Activity Types as well, meaning there’s potential to experiment for me.

I wonder, are there any actual implementations of these ActivityPub types currently?

As the Internet is alive with the sounds of #twittermigration these past days, I returned to some earlier thoughts and ideas, w.r.t to both self-hosting fediverse instances, and mapping those on to the business network of my company.

The resulting question is, would a set-up like this work?

If our company would set-up their own fediverse instance (m.tgl.eu here, with accounts for our team). This gives all of our team a ‘verified’, because of the company url, presence as part of their current work. That doesn’t mean we can’t have other accounts (see @ton in the image). And others in our network would do the same (names of organisations for illustration purposes).
If we would run one instance together (samenhankelijk.nl here), that is a relay for all the instances of the organisations involved, and the instance for any individuals in our network (@w… here).
Then we would have a fediverse network of our company’s actual network, where it becomes easier to interact more frequently across the entire network, where discovery is possible because of the shared public timelines through the relay. It’s bounded by being a representation of an actual network, but open within that and based on the permissive boundaries the various organisations themselves have.

I’m not sure if this is how ActivityPub relays are meant to work or are useful, but that’s what I want to explore.
A few of those building blocks are easy to set-up, a company instance and the instance to function as relay. Others are harder, getting our own instance used (we have internal asynchronous interaction through our own rocket.chat instance), getting others in our network to take the same steps.

Notions that play a role in this

My company is part of a network of similar groups and initiatives. Internally we call them friends of our company. These are the people and organisations we invite to events and parties, that we like to hang out with, jam about ideas with, and when possible work together with. That can be because we worked together in the past and thought that was fun and worth repeating, or because we share or shared office space, have similar perspectives or visions, and having overlapping or complementing activities. It’s a network of individuals in larger organisations that we interact with individually, and companies, non-profits and NGO’s that are Zebra’s, like us.

I think that technology should be smaller than us, in order to provide agency to us. With smaller I mean that the deployment and daily use of a tool must fall within the control and capabilities of the user or user group. Specifically the off-switch should be in control of the user group itself. That way a user group can use a tool under their control to address issues that group has by themselves in their own context. This is what I call networked agency. Different groups can strengthen their tools and work, by networking with other groups, yet tools stay useful on their own and get more useful when connected.

I also think that human networks of connections are similar to the structure of peer-to-peer internet structures. A network of many smaller nodes and areas where those connections are denser, individual nodes that are more intensively connected to others and form a local center. I’m convinced our digital tools work better if they deliberately mimic that human network structure, so that the digital affordances those tools provide flow naturally into the human network connections we all have. That’s what I call human digital networks, and distributed digital transformation.
Openness is a necessity in the networked age. But it also needs a limit. That limit is tied to our personal limits, the way we need to feel ‘at home’ in the context in which we exchange ideas. With the new influx of many new people on Mastodon I noticed how my timeline is feeling more alienating than before when it was more like hanging out in my favourite watering hole in town. That will settle, I’m sure, yet in social platforms that treat the entire globe as the same public square you are continuously exposed to the algorithmically amplified onslaught of all of it all the time. Which does not reflect human network reality anymore. Bounded openness matches that reality better.

All this maps on to the fediverse I think: if each company or group in our network has their own instance, that allows internal interaction and public interaction in parallel, and if that public interaction is always visible locally in all other instance in the network, then more direct and deeper ties between the people in the network may grow. Such interaction would create more ideas, more initiatives and help spot more opportunities to do things together I think (or equally quickly expose we’re not as nicely aligned or matched as we thought).

INDIEWEB.SOCIAL is a #Mastodon-based Fediverse instance that is a home for those who build, study, promote – or are just fascinated by – a wide variety of #openweb, #indieweb, #federated and #humanetech practices and technologies.

We seek to promote innovation and shared evolution and promotion of such technologies as well as to offer this instance itself as a platform to experiment with integration and early implementations of these.

Originally registered by Jeannie McGeehan, now co-administrated by Tim Chambers

To me it’s more logical to run ActivityPub individually, either directly from your own domain, or by having a separate single-person instance (such as in my case). Yet, I can see how having a group instance like this can be useful.

I’ve added a plugin, Mastodon Autopost, to crosspost from this blog to my Mastodon instance.
This won’t bring back any reactions to this blog, unlike Twitter reactions which do get back to this blog through Webmention. For that I would need to use Bridgy Fed. However that has as a disadvantage that it would turn my blog into a separate ActivityPub account, an activitypub user in its own right.

For now I’d rather have a separate Mastodon account (on my personal instance). Not everything I post on my blog I want to post to Mastodon, and not everything I post on Mastodon I want to have in my blog (e.g. responses to or reposts of others). I can definitely see me using this blog as the one and only hub for my online communications, but for that to work, I want to be able to keep ephemeral postings outside my regular site and my rss feeds, and more importantly be able to determine intended audiences per posting. Another requirement is that I can post tweets about a blogpost without that tweet being a separate blogpost (now I use the post excerpt for that and send it to twitter)

Currently I have my Mastodon (and my first Twitter account) set to me needing to approve every follower. My audience for a message is somewhat known to me that way, and I can shape a message accordingly. We all talk differently to different people and have conversations in different settings and contexts. This is true for online conversations just as much as for offline conversations. My microblog account does post everything from my blog but I also interact there independently from my blog.

With this plugin, for each posting I can determine if it is cross posted to Mastodon. I already had a similar setting for Twitter (and Flickr, which I don’t use). See the images.

[UPDATE]
It works as intended. I set the excerpt of this posting to “If all works as intended, this blogpost should show up in my Mastodon instance #wordpress #activitypub”, and set the plugin to post title, excerpt and URL.


[/UPDATE]