New Technology Words

Resurrected Federation

Eugen Rochko has spent this year per­fect­ing fed­er­at­ed social media in Mastodon — his open source project. We spoke to him just hours before it became a glob­al tech con­ver­sa­tion.

Edi­tor-in-Chief
The saga of Twit­ter, Inc. has been reju­ve­nat­ed in 2017 by Tump’s antics, cor­po­rate dra­ma, and an amal­gam of user and non-user dis­qui­et with its deci­sions, though its finan­cial via­bil­i­ty has been in promi­nent indus­try con­ver­sa­tion for half a decade. Since its pre-2010 out­set, many ‘a’ fea­ture has accu­mu­lat­ed on its orig­i­nal, still-icon­ic skele­tal soft­ware, and — though the net is undoubt­ed­ly pos­i­tive — a few have gone.
 
Last Thurs­day, the com­pa­ny revised in brava­do its poul­tri­an default pro­file pic­ture and its sys­tem of replies to exclude @s on all of Twitter’s pro­pri­etary ser­vices, dras­ti­cal­ly chang­ing two of its visu­al main­stays, and prod­ding a par­tic­u­lar­ly lucent cacoph­o­ny. Turn your ear, and you’ll hear many famil­iar terms in the chants: 
limits, chains, strings, harassment, feedback, gamergate, nazis, etc.
 
These con­ver­sa­tions are impor­tant, but they’ve got­ten awful­ly stale.
 
If you lis­ten a bit more care­ful­ly, you’ll inter­cept a new one: 
 
 
Mastodon.
 
It’s the open source brain­child of Eugen Rochko, who’s known col­lo­qui­al­ly as Gar­gron.
 
He’s had one hell of a week.
 
Between the night of our first emails and our con­ver­sa­tion, his flag­ship mastadon.social instance had dou­bled in users. Less than two hours after we said our good­byes, his name was on The Verge’s front page. 
 
Despite the urgency of it all, he gra­cious­ly lent me his time just after break­fast on Tues­day to dis­cuss him­self and the sto­ry behind the project, while the most sig­nif­i­cant day of his life was build­ing around him.
 
“I’m per­fect­ly fine with being called Eugene by Amer­i­cans.”
 
Though the ink’s still fresh on his comp­sci diplo­ma, he’s clear­ly pre­pared for the Amer­i­can press.
 

What’s the sto­ry behind the project? Do you remem­ber the spe­cif­ic moment when you decid­ed to do this?
 
Many years ago, I had a friend that was real­ly into fed­er­at­ed net­works when they were a new thing. That was when identi.ca was first cre­at­ed — at the very begin­ning of my devel­op­er knowl­edge and career.
 
A good por­tion of the sto­ries writ­ten so far on his plat­form have framed it as an alter­na­tive to Twit­ter, which ear­ly Mas­to adopters refer to as “Hell­bird,” or “the bird web­site.” Eugen isn’t afraid to acknowl­edge his invest­ment in the for­mat.
 
I was a heavy Twit­ter user and I wasn’t hap­py with where Twit­ter was going, so I decid­ed to check on how the fed­er­at­ed stuff was doing in the mean­time. I found it in a very sad state, but thought I could con­tribute.
 
He began build­ing on his own, with Tweetdeck’s stan­dard in mind.
 
I thought ‘if I’m going to do some­thing, it needs to have real­time updates and it needs to have columns.’
I start­ed with a bare-bones pro­to­type while still [at Uni­ver­si­ty] in May or April of last year. It had no user inter­face, only an API that I was using from the com­mand line. And I thought ‘okay, it works. that’s great.’ Then, exams came.
 
Aca­d­e­mics had to come before the project at first, but it soon sup­plied an ample post-grad­u­a­tion diver­sion. He focused his ener­gy on build­ing some­thing more com­plete and even­tu­al­ly launched a Patre­on page.
 
I announced it on Hack­erNews, and that was the first pub­lic release of the project. That’s when I got my first users who weren’t my friends, and some who were new to fed­er­at­ed net­works.
 
That was just over 100 days ago, and it gave way to his first feed­back.
 
I start­ed work­ing on the first fea­ture requests, shap­ing the project a bit dif­fer­ent­ly. Peo­ple were a lot more focused on pri­va­cy fea­tures than I thought they would be, although in ret­ro­spect, it makes sense. The pre­vi­ous [fed­er­at­ed] project — GNU social — did not real­ly have a focus on pri­va­cy fea­tures, or any­thing built in by default.
 
It com­pelled him to change things, and his work was well received.
 
Over time, I kept work­ing on new fea­tures, and waves of new users came when it went viral in cer­tain cir­cles. The first was Hack­erNews and Prod­uct Hunt. Aral Balkan — a Twit­ter user with over 30,000 fol­low­ers — picked up the project, gave it a shout out, and even did a give­away of his app. He had a lot of fol­low­ers from Hol­land; the Mastodon time­lines became most­ly Dutch.
 
Next was Marx­ist ani­me Twit­ter (includ­ing Extra­tone and I.)
 
Lots of fur­ries; lots of LGBT peo­ple. That’s when I real­ly focused on pri­va­cy fea­tures and mak­ing sure all blocks worked because these indi­vid­u­als need­ed a safer plat­form than Twit­ter could offer.
Side­kick dash­board back­ground pro­cess­ing jobs as of Tues­day morn­ing.
 
“As you can see, the first bump is Hack­erNews, the sec­ond is Aral Balkan, and then anime/Marxist Twit­ter.”
 
And the last — now a bit out of date — is this week’s spike, which is near­ly dou­ble all pre­vi­ous waves.
 
Are you respon­si­ble for all of the code?
 
You can look at the GitHub page to see a spe­cif­ic break­down of who con­tributed and how many lines of code, each. You’ll see I’m at the top by a large mar­gin, but there are [addi­tion­al] peo­ple who’ve con­tributed inter­est­ing, good fea­tures & fix­es, local­iza­tions, user guides, and doc­u­men­ta­tion.
What’s the sto­ry behind the name?
 
It’s not par­tic­u­lar­ly inter­est­ing. I’m a pro­gres­sive met­al fan, and I lis­ten to Mastodon some­times. They have a real­ly cool name that refers to a real­ly cool ani­mal. It’s a fluffy ele­phant! What’s not to love?
 
It’s also the inspi­ra­tion for Mastodon’s mas­cot, which was penned by Rochko’s YouTu­ber friend Dopat­wo after he real­ized how urgent­ly he required an error page.
 
What does “fed­er­at­ed” mean to you?
 
The biggest prob­lem with this term is that it’s new for lots of peo­ple. Peo­ple who’ve come across fed­er­at­ed net­works in the past instant­ly under­stand what it means and how it works, and peo­ple who are new to the con­cept have a lot of trou­ble before it clicks. But when Twit­ter first start­ed, peo­ple didn’t under­stand what ‘retweet­ing’ meant, so it’s not a unique prob­lem domain.
 
I don’t know where it comes from — maybe Bit­Tor­rent — but peo­ple seem to think that when some­thing is ‘decen­tral­ized,’ every­body gets the same thing; that it’s all syn­chro­nized one to one. In actu­al­i­ty, ‘fed­er­at­ed’ means that peo­ple in dif­fer­ent instances can talk to each oth­er, but the con­tent is dif­fer­ent depend­ing on the users there, what they do, and who they fol­low.
 
Though instances are infra­struc­tural­ly inde­pen­dent, they can com­mu­ni­cate with one anoth­er. On a user lev­el, time­lines are still deter­mined by who you do and do not fol­low across the entire­ty of all instances. 
 
What if Twit­ter comes to you in the near future with a job offer?
 
[Rochko laughs.]
If it was any oth­er com­pa­ny, I would think about it. A job is a sta­ple source of income, and — depend­ing on the com­pa­ny — could involve doing some­thing impor­tant, but I have zero faith in Twit­ter.
 
Does this all mean that I final­ly get to live out my serif Twit­ter dream?
 
Yes, I sup­pose on your own instance, you could change the stylesheet…
 
So if I set up my own instance and start­ed charg­ing for its use, I’d be in the clear, legal­ly?
 
Yes, that’s okay. The code is licensed under AGPL ver­sion three, which I picked because oth­er projects in the same space are using it. The dif­fer­ence between AGPL and GPL is that [the for­mer] forces you to con­tribute back to the app­stream code repos­i­to­ry if you make any break­ing changes.
 
For exam­ple, Eugen explained that What­sApp orig­i­nal­ly used XMPP for its chat pro­to­col, which meant that Face­book and Google Talk users could con­nect to it, too. How­ev­er, the com­pa­ny pro­gres­sive­ly locked down the plat­form over time, leav­ing vir­tu­al­ly noth­ing vis­i­ble that was unique to XMPP in its cur­rent iter­a­tion.
 
To pre­vent some­body tak­ing Mastodon code, plac­ing it behind locks, and strip­ping out the fed­er­a­tion part to make Twit­ter II, I’m using this license.
 
The thing to remem­ber about free soft­ware is that ‘free’ means free­dom of the user, not that it’s zero cost. It’s per­fect­ly fine to charge for free soft­ware because devel­op­ers need to live, too.
 
I’ve seen a lot of mul­ti­lin­gual ‘toot­ing’ these past few weeks. Can we expect an in-app trans­late func­tion like Twitter’s on Mastodon?
 
I don’t think I could put in a ‘trans­late this toot’ but­ton because APIs from Google and Bing are quite expen­sive at scale. I’m not 100% promis­ing this, but I can prob­a­bly put some­thing in where peo­ple can select which lan­guage they post in, and then just fil­ter the time­lines. That would at least solve the prob­lem of being con­front­ed with lots of French posts, with­out know­ing any French.
 
The only com­plaint about Twit­ter I remem­ber that hasn’t already been addressed here is the capa­bil­i­ty of editable ‘toots.’ Is that a pos­si­bil­i­ty?
 
That won’t hap­pen. There’s actu­al­ly a good rea­son why they don’t do that. It’s sim­ply because you could make a toot about one thing, have peo­ple favorite it and share it, link it from oth­er places, and then sud­den­ly, it says ‘Heil Hitler,’ or some­thing.

It’s a bit pre­pos­ter­ous to con­tin­ue the con­ver­sa­tion as if Twit­ter and Mastodon are inter­change­able enti­ties. They exist in sep­a­rate ide­o­log­i­cal and mechan­i­cal spheres, and will both con­tin­ue to do so for a very long time.
 
That said, the fun­da­men­tal user inter­face design and cur­rent cross-com­mu­ni­ty user sat­u­ra­tion do war­rant com­par­isons between their func­tions. More like­ly than not, you’ll cre­ate a Mastodon account because a link found you on Twit­ter, use it because you pre­fer its type of ecosys­tem, and you’ll stay after real­iz­ing that near­ly all of your age-old qualms have been addressed, if not already rec­ti­fied. While FOSS and Fed­er­at­ed may seem at times like jejune ide­olo­gies, their advan­tages are espe­cial­ly tan­gi­ble in this con­text. Should you find your­self need­ing to com­plain about some­thing, you’ll find an audi­ence. Per­haps it’ll be your com­mand line.
 
It’s noth­ing but neg­li­gent to describe Mastodon as an alter­na­tive or clone
 
It’s more like Twitter’s son.
 
It’s lean­er, quick­er-to-change, much more flex­i­ble & democ­ra­tized, and less cor­rupt. Though I didn’t ask its cre­ator what he intend­ed to gain from all his effort, I think his com­mit­ment itself denotes a pre­oc­cu­pa­tion with progress. Those of you who’ve been let down by the tools you’ve been giv­en to con­trol your words’ expo­sure will find star­tling com­pe­tence in your abil­i­ty to deter­mine per-toot pri­va­cy, or reserve your rau­cous pho­tos and ter­ri­ble memes from fol­low­ers who are not nec­es­sar­i­ly com­plic­it con­sumers. Nat­u­ral­ly, it’s also much less depend­able, though a sin­gle instance out­age will nev­er leave you tru­ly, com­plete­ly silent. And the sup­port will come.
 
It’s been a priv­i­lege to be observ­er and par­tic­i­pant in the first light­en­ing of a new online com­mu­ni­ty. In the moment, we enjoy our laven­der haze - when the spaces are fill­ing pri­mar­i­ly with users who are sin­cere­ly inter­est­ed enough in dis­course to have sought it out.
 
Sarah Jeong’s account of her Twit­ter exile is a good, long read if you’re crav­ing more specifics, and Eugen’s Medi­um offers a more com­plete expla­na­tion of fed­er­a­tion and its place in the indus­try, straight from the source. Appar­ent­ly, he’s just as artic­u­late with words as he is with code.
 
If I had to haz­ard a guess, I’d bet it’s not the last we’ll hear from him.

FUTURELAND

Thoughts on the future of social media, fresh off our interview.