4 minute read


It occurs to me that it might be useful to write down some of the stuff I’m currently thinking about and working on, and to put it out in the Wilds of The Internet in case someone else harbours intersecting/overlapping ideas and might be interested in talking about it or working with me on these things.

tl;dr: fediweb, swarm organisations, gaps in the NewStack

The focus of this post is my thoughts around internet-mediated collaborations and interactions, though not exclusively. It’s not about the things I’m thinking about/doing in other spheres.

Feel free to skip the detours: they’re just background.


Federated and distributed systems to replace/disrupt the GRAFT attention-silos that currently dominate the way we interact with The Web and each other. The silo’d approach is hella lucrative for the very few, but, on the whole, bad for society, bad for our mental health and bad for real innovation. And the world sorely needs some new modes of thinking and doing. My immediate instinct as a hacker is to ask, “How can we fix this?

One of the projects that caught my interest recently in this space is ForgeFed.

Detour 1: I have largely migrated away from GitHub since they sold their soul to Microsoft. For a start I dislike git itself – I consider Mercurial to offer far-superior UX. For another, age, cynicism and sheer curmudgeonliness mean that I continue to harbour a deep and abiding suspicion of anything Microsoft does. I’ve not forgotten the ’90s/oughts and Embrace/Extend/Extinguish, even if others have! Microsoft’s (semi)recent acquisitions of LinkedIn and GitHub seem to indicate that they’ve moved/are moving to the Surveillance Crapitalism model of profiteering that’s proved such a winner for the GRAFT incumbents. Do not believe for one instant that any organisation can change its cultural DNA. New MS is still much the same as the old, open-source hostile MS beneath a thin and fragile veneer. A Leopard cannot change it’s shorts.

I’ve been meaning to poke a stick at the ActivityPub protocol for a while, so it’s convenient that ForgeFed uses it as their foundation layer. Consequently I am implementing ActivityPub (as one does) as a way of understanding the protocol and all its warty bits in a deep way. Nothing takes you as deep into a technical problem as having to implement it in code. Along the way I’m trying to track (loosely) the conversations happening within ForgeFed, to catch up with where they’re at, with a hope of making myself a little useful to the project, perhaps on the spec-writing side of things.

Ultimately, what really interests me in the FediWeb space is the Discoverability Problem. I had a notion of using the One-Person-Tweetblog system, SDNotes, as a tool for exploring some ideas around federated discovery, but it’s not the right tool. ActivityPub offers much richer opportunities because there’s already quite a rich, well-developed ecosystem of platforms that I can interact with and use as a testbed for my own ideas.


In the light of the world’s Covid-19 lockdowns, the sudden surge to remote-working, online collab, I’m back into thinking about Swarm Organisation: emergent, bottom-up ways of organising. These days my interest is in “alternative” systems (communication, finance-management, goal-setting, action feedback, etc.) that result in what we call An Organisation. “Alternative” in quotes because nature’s been doing things this way for at least 4 billion years.

It’s a long-running interest, starting back in my undergrad days when I started exploring emergent software architectures (with a leaning toward evolutionary systems).

Detour 2: As part of that I’ve been tracking (loosely) the formation of the Yak Collective, started by Venkatesh Rao and a handful of others. Their Initial Public Offering – “Don’t Waste the COVID-19 Reboot – has certainly given me much to think about, but I have come to believe there are some fairly fundamental flaws in the way the YC has been structured which seem likely to doom it to a damp non-start. No failing on the part of any individual! I admire the energy and can-doism with which people have dived deep into the project, but I think there are some systemic deficiencies. And ultimately, you’re trying to create a system (an organisation).

The questions for hypothetical Swarm Organisations share features with the FediWeb: How do you discover who knows stuff (particularly around How This Organisation Works), who has particular skills, what the sales-pipeline looks like, how to get X funded,… a Discovery Problem again! How do you connect/disconnect? How do you know when you want to do so? (Protocol issues.) How do you advertise/market this thing to people who might want to take part? (Discovery again.) My thoughts are not so widely spread across the mental landscape as it might appear.

Gaps in the New Stack

So everybody’s learned to use Zoom, now. Wonderful. But Zoom and all its ilk are abysmally bad at many of the features of in-person meetings. I’m thinking particularly of conferences and similar group get-togethers that Covid-19 restrictions (and justified caution!) have put a crimp in.

  • The serendipitous meeting at the coffee-bar.
  • The snippet overheard by chance that leads to an intense, deep and fruitful conversation/collaboration.
  • The small group of 3 or 5 people budding off from a larger talk/conversation for a more focussed/interesting discussion quite tangential to the main topic left behind.

The casual, the unplanned, mere happenstance. Current internet tools are really crap at this. (Possibly with some exception for blogs, Twitter.) How can we get better at this?

I had some thoughts of diving into implementing yet another video-conferencing tool – I don’t think it’s too challenging technically – most of the big, hairy, complicated bits are already done and available as ready-to-use components – WebRTC, Electron, etc. – but really… I just don’t have sufficient bandwidth to chase that. I might be interested in playing a high-level part in such a research/exploration project.