Decentralized Social Networks Do Work

created Sep 14, 2017

The following Sep 8, 2017 article contains a clickbait-inducing headline that I'm guessing was created by someone at Wired and not by the three MIT people who authored the article. Of course, Wired claimed years ago that the web was dead. I wonder if Wired announced that email was dead 12 years ago.

About the three people who authored the article:

Chelsea Barabas is a research scientist at the MIT Media Lab and former head of social innovation for the Digital Currency Initiative. Neha Narula directs the Digital Currency Initiative at the MIT Media Lab. Ethan Zuckerman is the director of the Center for Civic Media at MIT and associate professor of the practice at the MIT Media Lab.

All three of those names linked to their Twitter accounts and not to their own websites, hosted at their own personal domain names.

Referring to this part of the article's headline: "... they'll never work."

The word "work" interests me. The authors never define the word "work" as it relates to social networks. Decentralized social networks do work now, and they have been working for years.

Of course, what's the definition of "social network"? Does email count as a social network? Probably not when compared to today's giant web services, but some people consider email the original social network. Email is decentralized. It's a significant communication system that can be used for notifications, collaboration, organizing, etc.

What about email listservs? They still exist. We can subscribe to numerous listservs by using the same email account. The listservs do not require an email account to be created for that listserv.

I subscribed to the Ohio birds listserv for several years. The discussion threads were archived on the web for public display. When I unsubscribed, I read the web version of the posts at certain times of the year, such as the spring bird migration.

Back in the late 1990s and early aughts, birdwatchers in Ohio and the surrounding states made friendship through the listserv. People learned about events and organized events on the listserv. Members learned bird science from the experts.

Email listservs are social, in my opinion. Others can decides whether listservs count as social networks.

I definitely consider the blogging era from 2000 to 2005 as a decentralized social network. Many individual and group blogs maintained a list of websites in homepage sidebars that the authors liked to visit. This enabled readers to discover new websites. Technorati started as a blog search engine, which people used to find content and to discover new blogs.

In the 1990s and early aughts, personal websites that were not necessarily blogs used webrings and guestbook pages to make connections, receive feedback, and to discover new websites.

CMS-hosted solutions, such as LiveJournal and Blogger made it easier for people to create their own web presences. Readers could respond by creating accounts at those services and posting comments on the blog posts or by creating blog posts on their own websites

During that dinosaur but highly creative era, people used email to create responses to blog authors. Email could be used to notify readers when new posts were created. Email newsletters are extremely popular today in 2017.

In my opinion, the social interactions that occurred over the internet in the 1990s and early aughts via email and the web inspired the creation of the giant, popular social networks, which made it easier to create, share, reply, and discover.

While personal websites and email could create decentralized networks, using those services required more technical expertise, although I would consider listservs to be drop-dead simple to use. But discovering people, such as old friends, classmates, and coworkers was less likely to occur pre-Facebook.

Silos cannot be criticized for making things easier to do for non-technical people. And as Facebook grew in size, it became more attractive to new people, businesses, and orgs, which attracted more people, which attracted more people, etc.

I wonder if the article authors or the article editor considers "work" to be defined by size. If a decentralized social network only contains a million users, maybe the article authors consider that network a failure and not working even though people are happy to use it.

If a decentralized social network has 100 million users, would the article authors consider that network to be working?

Excerpts from the article:

It is one of a handful of very large platforms that dominate our online world. As such platforms have gained traction, the web has transformed from an open space for free expression into a corporate-owned gated community of private platforms.

The power of giant platforms like Facebook, Google, and Twitter leads to problems ranging from the threat of government-ordered censorship to more subtle, algorithmic biases in the curation of content users consume. Moreover, as these platforms expand their reach, the ripple effects of exclusion can have serious consequences for people’s personal and professional lives, and users have no clear path to recourse. The platforms that host and inform our networked public sphere are unelected, unaccountable, and often impossible to audit or oversee.

In response, there is a growing movement among free speech advocates to create new technology to address these concerns. Early web pioneers like Brewster Kahle have called for ways we might “lock the web open” with code, enabling peer-to-peer interactions in place of mediated private platforms.

The idea is to return to the good old days of the early '90’s web, when users published content directly in a user-friendly decentralized fashion, without the need for corporate intermediaries and their aspirational approach.

Was creating, replying, sharing, and discovering on the web in the early 1990s user-friendly? I doubt it. Not by today's standards, anyway. Even in the late 1990s, I created content on a local machine and used FTP to put the content on a web server. That's not as user-friendly as using a native app on a phone to create content on Facebook today.

Even today, many blogging geeks use complex, sophisticated setups to manage a static website by creating content on a local machine and using git, webhooks, continuous integration, and who knows what else to copy the content to a server, and the setup may also rely on caching, DDOS protection, and a content delivery network to ensure that their site remains accessible on the slim chance that an article gets popular. Add SSL/TLS and managing the server and/or CMS for security updates.

Excerpts from a September 2017 Hacker News thread about hosting a static website.

I host mine on Digital Ocean. I commit the code to github, dev branch is deployed to stg.mydomain and master is deployed to mydomain. In terms of deployment, I use Caddy which, with ~3 lines of config will auto-TLS your site using Lets Encrypt, and handle renewing the certs for you each month. Caddy also automatically pulls your changes, builds them with hugo and deploys them with ~2 more lines of config. It's the easiest solution (as a developer) I've come across where I just commit to Github and my blog is updated, and Caddy deals with my cert renewals.

Here's another setup:

I'm using React Gatsby on my blog. I have access to all the npm ecosystem. Is fast. No bloatware or weird code. Styles with styled-components for easy maintenance. Deployed to an S3 bucket connected to CloudFlare. I just type 'yarn deploy' and it builds my blog and pushed it. And I can commit everything to source control as they keys are in aws-cli

Another comment:

For enabling HTTPS, you can put CloudFront in front of it. That'll make it faster, too, and cost almost nothing. For my static sites, I'm usually doing some form of fancy JavaScript npm / gulp / bower, but then ultimately just uploading those files to S3. You could probably do it a little faster using the AWS CLI. It can upload a directory to a bucket in one command (while skipping unchanged files).

Another HN comment:

Cloudflare DNS is one of the best authoritative DNS hosters in the world, if not the best already. Cloudflare is also a great free CDN and has a crap ton of edge servers to make your static content serve quickly around the world. Has a lot of other great features too.

Another HN suggestion:

If you don't like to play with CLI and want to host files on Amazon's S3, go with the Sheetsu Pages (I'm co-founder). - It's uses Amazon's S3 CDN, actually your site is deployed to their all edge locations - supports https - you can add your custom domain - you upload files to Google Drive, click sync button and it's done

One more:

The main differences on mine are: I use Jekyll, which is ranked #1 in the static site generator space. Hosted on AWS S3. CloudFront in front of S3. Routing and aliases handled by Route53. Deployed using a tool called s3_websites (change detection only uploading generated files AND cloud front cache invalidation for only the changed objects). Coded in a Docker container via a cloud IDE called using the Ruby template. Generator and site files committed to a GIT repository hosted on AWS CodeCommit.

I enjoy reading those types of HN threads. I like learning about all the different methods to maintain a static website.

But the geeks believe their setups are a simple. That's because they have the technical knowledge to implement those setups. It's how they create a decentralized network by maintaining their own personal websites, and they deserve credit for that.

In recent years, the popularity static website generators has encouraged more tech people to create their own personal websites. But do they create new content on a regular basis?

Sometimes, I get the feeling that the geeks are more interested in choosing a tech stack, connecting the plumbing, and seeing it work than actually using their websites. I enjoy using my web apps and websites more than I enjoyed creating them, and I enjoy creating code.

To reach the masses, however, the process of managing a personal website on a server needs to be made simpler. The IndieWeb community knows this, and they're trying to solve the problem.

And most personal websites won't need to scale to tons of requests per second. If a web author used an elastic hosting service, such as Amazon Web Services, and if the author did have a post go viral, then the author could get slapped with an outrageously expensive hosting bill.

And since geeks like to tinker, a good chance exists that in a very short time period, the geeks will overhaul their methods for maintaining their static websites. Creating content is the key.

Back to the article and decentralized social network ideas.

It’s an exciting idea. Instead of corporate-owned platforms, users could meet, flirt, argue, and share in user-run community forums. Many of these proposed platforms build on the concept of decentralization, which has grown increasingly popular with the rise of cryptocurrencies like bitcoin.

The decentralized web employs technology that eliminates such choke points in the technical infrastructure of the web. This has given rise to projects like Mastodon, a federated social media platform that resembles Twitter; Blockstack, a distributed system for online identity services; and Steemit, an online community using digital tokens to encourage people to contribute to a Reddit-like online community.

The three of us investigated several of these most promising efforts to “re-decentralize” the web, to better understand their potential to shake up the dominance of Facebook, Google, and Twitter.

At least the authors did not use the word "kill" as in Facebook-killer.

Is the goal of decentralized networks to shake up the dominance of Facebook, Google, and Twitter, or is the goal to provide an alternative to interested people who may still use the silos?

The IndieWeb concepts are not meant to replace the silos. Their ideas are meant to work with the silos while giving interested people the ability to host their content on their own personal domain name.

The projects we examined are pursuing deeply exciting new ideas. However, we doubt that decentralized systems alone will address the threats to free expression caused by today’s mega-platforms, for several key reasons.

That statement does not equal "Too bad they'll never work" as mentioned in the headline. The headline is an absurdly authoritative statement that I assume was created by a editor and not the MIT authors of the article. I cannot believe that MIT people would use the word "never".

First, these tools will face challenges acquiring users and gaining the attention of developers.

But these tools have already attracted users and developers. What's the number that must be reached? Since when is small and niche a failure or not working? Bigger is not always better.

Social networks, in particular, are difficult to bootstrap due to network effects—we join them because our friends are there, not for ideological reasons like decentralization.

I launched my small, local message board in January 2003, and it's still going today. I did not create it as a place to chat with my friends. I created it as a place to hold discussions with strangers who became online or digital friends.

Are social networks defined by connecting to known people? I don't think so. My wife and I like to sit at the bar at pubs and restaurants because we meet more strangers that way. Some become friends while most are one-off, enjoyable discussions. It's socializing. Is it a network? Maybe not.

And while existing social networks have perfected their interfaces based on feedback from millions of users, new social networks are often challenging for new users to navigate.

These platforms also pose new security threats. Decentralized networks generally allow anyone to join and don’t link accounts to real-world identities like phone numbers.

I disagree with the authors' criticism in that last paragraph. I would say that not linking to real-world identities, such as phone numbers, is a positive. What about people who want to remain anonymous because of who they are, where they live, or because of the content that they produce?

Anonymity is the shield against tyranny.

That's a quote by someone.

Are social networks defined by using real-world identities with no method for anonymity?

Social media platforms are curators, not just publishers. Platforms like Facebook control not only what is acceptable to publish, but what posts we see, bringing the most interesting posts to one’s attention. Platforms tend to optimize for advertising revenue, prioritizing attention-grabbing or feel-good content.

That's a reason not to use or not rely heavily on services like Facebook.

Designing robust reward mechanisms to curate content that keeps people informed rather than entertained remains a problem. If distributed platforms could solve it, they could theoretically tackle media challenges like echo chambers and filter bubbles, but such dilemmas still present a serious challenge for new systems.

Finally, platforms benefit from economies of scale — it’s cheaper to acquire resources like storage and bandwidth in bulk. And with network effects, which make larger platforms more useful, you have a recipe for consolidation.

Market consolidation is also driven by user-targeted advertising models, which encourage hoarding of user views and data, discourage interoperability, and drive platforms to become ever larger.

The reality is that most people do not want to run their own web servers or social network nodes. They want to engage with the web through friendlier platforms, and these platforms will be constrained by the same forces that drive consolidation today.

A better strategy would be to pursue policies that strengthen the environment for decentralized platforms, including data portability, interoperability, and alternatives to advertising-based funding models. For instance, if users have more control of their data, including the right to export and reuse content they’ve created and friends they follow, they’ll be more willing to experiment with new platforms. Decentralized web advocates have good intentions, but there’s no silver-bullet technical solution for the challenges that lie ahead.

Excerpts from the HN thread, which contains over 100 comments.

This is an excerpt from the top comment:

Please please don't back away from this problem just because some article says it's going to be challenging.

Solve it for yourself.

Post on your own blogs on your own servers.

Solve it for others.

Help others get set up with their own servers.

Create solutions for people

Make attempts at creating decentralized solutions. Even if a 1000 people use it, someday we might crack the code to getting people off the walled gardens.

Basically, if that article sounded like a demotivating blow to your hopes, please flip the bird at it, and keep working to solve this problem.

Another HN comment:

I'd like to add one remark to this: everything doesn't have to be huge. We don't have to deal always in millions and billions. Small groups. Even individuals. What they do is meaningful. What we do is not pointless just because it doesn't create some massive impact.

Excerpts from a reply to the above comment:

A large service is a service where your friends, parents, coworkers, etc have a high probability to have already joined, thus making the service instantly more useful for communicating with them. Next thing is that you and they will pull in your other related people, again for ease of communication. This is the "network effect".

Can a website be considered a social network if it's not used by friends, parents, coworkers, etc.?

I have an account at that's a community site for people who like to knit and crochet. I've met people who are on Ravelry. But I use Ravelry because of its subject focus and not because people I know use the site.

Another HN comment:

I have some friends with blogs. Those blogs have RSS feeds. Feeds of "news", you might say. I load up sageRSS in Firefox, see friends who have new content in bold, and get their news. A "news feed", you might even say. Admittedly I can't easily use that to deduce that x is friends with y is friends with z, or (easily) get a map of where all of my friends went on vacation last year, but I kind of think that's a good thing.

Somewhat related:

August 2018

Aug 11, 2018 - - Why decentralized social networking never makes it - ever heard of Crossing the Chasm?

The authoritative author defines what's legit. And once again, another person is viewing open web standards through the lens of making money or making it a business.

Email was created to foster digital communication back in the 1970s. Email relies on open, standardized, and fairly simple protocols. Over the decades, businesses have opened and closed, built around email-related products.

I CHOOSE to outsource my email functions to Fastmail. I pay them an annual fee for custom email addresses. But I could install and manage my own email server. I could also create my own email client. I could do these things myself because email is open. I CHOOSE not to because, in my opinion, managing an email server is harder than managing a web server, a database server, a search server, a caching server, etc.

We need more open proposals and open standards. I don't see more standards as a problem. Maybe I choose not to build anything right this moment that uses ActivityPub, but it's possible that I might in the future.

The problem — and it is the same problem that is never being addressed — is that your decentralized social networking app doesn’t actually solve any of your users problems that haven’t already been solved! And often fails to solve problems that the centralized guys have solved and that their users depend on.

So: decentralized social networking will never amount to anything unless it solves at least one real, burning problem much better than the centralized alternatives.

Bonus points: find a problem to solve that is easy to solve in a decentralized fashion, and hard, or impossible to solve in a centralized fashion.

My number one "problem" has been solved long ago by the open web and other open internet protocols: freedom.

I can be more creative and free by using my own websites than I could by using silos. On my websites, I follow nobody else's posting guidelines. I'm in charge, not the mob, not the media, and not the for-profit business owners.

The majority of web users do not care about free expression on the web. They don't care about having total creativity to create web pages in any fashion imaginable, regardless of UI/UX concerns for the reader.

It's great that websites are designed to be read comfortably. But personal websites, managed by amateurs get to be selfish. We can make pages comfortable read or obnoxious by placing red text on a blue background. Personal websites controlled only by the authors. That's freedom.

The silo users are products. The silos create addictive systems that encourage the products (the users) to engage with the silos as much as possible. This creates data. The users become products, which become data points that get repackaged and used to help sell ads. That's the bottom. Making money.

Amateurs posting whatever on their own personal domain names are posting more for themselves than others. The silos encourage the products to post content that impresses others. The silos promote loss of self.

The blogosphere, or however personal, amateur, individual web publishing is defined, encourages uniqueness.

"Better to write for yourself and have no public than to write for the public and have no self." - by Cyril Connolly

In my opinion, the upon2020 article focuses too much on the business aspect of a decentralized web. Once again, an author considers openness to be unsuitable, unless it can be monetized.

This year, a writer at TechCrunch basically claimed that RSS or feeds are dead in 2018 because the feeds cannot be monetized.

If a tech cannot be monetized, then it's unimportant, apparently.

When I think about the open web, the IndieWeb, the decentralized web, or the fediverse, I think about it only from the standpoint of amateurs, publishing their thoughts to the world freely. I don't think about how businesses can make money from the IndieWeb.

The problems that do qualify most likely are all problems in a “vertical” ...

[They] don’t want to understand a vertical market inside out so they can come up with a killer solution for the problems in that vertical ...

Once you solve one problem in one vertical really well, you can look for the next problem in some other vertical.

The next few million would have to come from solving additional problems faced by additional users in a different vertical.

What we don’t have is people getting their hands dirty understanding and then solving actual customer problems in specific verticals. What are you waiting for? :-)

Vertical, vertical, vertical??? That's not the language that I associated with the open web. Freedom is the word. The author mentioned "vertical" seven times, but the author never mentioned the word "freedom."

What is the author waiting for? He has an idea for a social service application. Why doesn't the author seek out tech people to build the service and venture capital people to fund it? Nothing is stopping the author from building a niche app?

I don't view the open web as solving narrow problems. The open web exists to be used however people desire.

The hyperlocal vertical or problem that the author described sounds like something that could be solved with a local private Facebook group or a local social service. I don't understand how the author's proposal has anything to do with a decentralized web.

Long ago, the internet, which includes the web, broke down barriers for creating, sharing, and consuming digital information. The silos made those functions easier to execute. The majority of web users have sacrificed web freedom for silo ease-of-use. Web freedom is not important to most web users.

But that does not mean that feeds, the IndieWeb ideas, Mastodon, and Scuttlebutt are failures because only a small percentage of internet users enjoy using that tech.

I subscribe to the theory that every human being is unique. What most web users desire from silos will not align with my ideals. That's okay. Everyone moves on.

Labeling open tech as a failure or unworkable because the tech cannot be monetized will not stop others from using the tech.