Why I think pump.io should join the Federation


I spent last weekend at the always awesome FSCONS conference in Gothenburg. Among many other things I heard rysiek’s talk “Blurry line between private service and public infrastructure” (slides, Ksenia’s recording on WCN). After a motivation on why we need free federated social networks he went on to describe how we now have several such networks: Diaspora, GNU Social, Friendica, Red, etc… but they are not interoperable, i.e. they do not federate between themselves.

The challenge, and the key to getting people off the centralised (and proprietary) social networking silos lies in the network effect, i.e. we need to get as many users as possible, which will then have a chance to keep on growing. He pointed to the success of Ello (another proprietary solution that “promises” to be better than Facebook) that it is possible to get people to move. We just need that one place to point them to.

The Federation

Rysiek’s answer to this was to get the three networks that were the closest to being cross-compatible together - Diaspora, GNU Social and Friendica/Red - and call them by a single name. In a Diaspora thread they came up with the name: “The Federation”, together with a silly graphic and all1.

On Sunday the GNU Social maintainer Mikael “MMN-o” Nordfeldth gave a talk “A federated social web?” (my picture) that continued along the same lines. My interpretation was that he didn’t see GNU Social as the solution for the long run, but since it had many users, and it works well, it is valuable to keep maintaining it. I talked with him afterwards, and he thought that it shouldn’t be too hard to get it to work together with Diaspora. Friendica already works with both, although not perfectly.

What about pump.io?

Both rysiek and Mikael seemed to completely discount pump.io in all this, and I tried (unsuccessfully) to convince them otherwise. I guess the good news is that neither of them were hostile to including pump.io, it just wasn’t a high priority for them. I think pump.io is the better technical solution but it’s still immature when it comes to its web interface and user experience (all things that can be fixed). Frankly, right now I’d be more comfortable pointing inexperienced users to Diaspora or GNU Social.

The basis for the Federation, what Mikael called “Wheel 1.0” is something like Atom + PuSH + Salmon. “Wheel 2.0”2 could be some future protocol, in my view this could well be the pump.io protocol, something based on XMPP, or what the W3C Social Web people are cooking up right now. But our foremost goal is not to find the perfect technical solution tomorrow, but get something that works right now, and get people to move on to it to get the network effect going.

Join the Federation!

To be part of this, I think pump.io should join the Federation now and help out to get people to move away from proprietary silos. Then, perhaps when The Federation has a large user base, and pump.io is more mature we can smoothly move people over to pump, or whatever turns out to be the “Wheel 2.0” solution. But right now, what is needed is interoperability so that we can finally all start working together. If we add up all the users of Diaspora, GNU Social, pump.io and Friendica we are already a long way!

How do we actually do this? (And I’m now thinking mostly of pump.io here.) As far as I can see there are two alternative options:

So what do you think? I think we should keep our eye on the real goal here, and not bicker about who is technically right. I think pump.io should join the Federation!

See comments on pump.io, GNU Social or Diaspora.

  1. Yes, Mediagoblin will actually use pump.io for its federation, they were included in the picture for “historical reasons”

  2. “Reinventing the wheel”, get it?

Posted 03 November 2014.


Handling mass subscriptions in GNU Social
Posted 17 August 2014.

Pump.io's only-thread-originator-gets-notification problem and Pumpa's bad fix
Posted 31 July 2014.


Internal PuSH hub in Friendica to solve posting to StatusNet
Posted 20 November 2013.

Syncing MyKolab with Emacs org-mode
Posted 27 October 2013.

Using Shotwell with Mediagoblin
Posted 06 September 2013.

Setting up pump.io on Debian wheezy
Posted 25 May 2013.


Nexus 7 with Cyanogenmod 10
Posted 26 November 2012.

Setting up a MediaGoblin instance
Posted 14 June 2012.

Another StatusNet client for Nokia N9/N950
Posted 07 April 2012.

Pygame for MeeGo
Posted 06 April 2012.

Setting up my personal StatusNet instance
Posted 05 April 2012.


Posted 14 November 2011.

Posted 06 November 2011.

Improve font rendering in Debian
Posted 31 May 2011.


Trying some 'flashy' netbook distros
Posted 19 October 2010.

I'm going to FSCONS
Posted 07 October 2010.

Why I sold my iPhone
Posted 08 August 2010.

Notes on eCryptfs PAM problem
Posted 05 June 2010.

A parallel of principles
Posted 14 May 2010.

Installing Linux on my Apple TV
Posted 23 February 2010.


Making the great switch
Posted 16 November 2009.

Thoughts on the iPhone
Posted 19 September 2009.


Naomi Klein in Helsinki
Posted 11 June 2008.

My new iPod touch
Posted 05 March 2008.

Civil war in Gaza was planned
Posted 04 March 2008.


My new laptop - Thinkpad X61s
Posted 28 October 2007.

Flying Dog Beer!
Posted 30 September 2007.

Work, buy, consume, die
Posted 17 August 2007.


I graduate, finally!
Posted 14 December 2006.