DEV Community

Liam Arbuckle-Hradecky
Liam Arbuckle-Hradecky

Posted on • Originally published at acord-robotics.github.io on

Open Source Social Networks - a viable option?

Open Source Social Networks - a viable option?

Facebook. Twitter. Instagram. Google+ (just kidding). They’re all websites that are used by hundreds of millions of people every day, and they all have one thing in common.

They’re social networking sites.

Before we go any further into this post, if you haven’t already read our post on what a social network is, and how to create one, I’d recommend checking that out as well.

Social Network Websites & Online Communities

A social networking service is an online platform which people use to build social networks or social relationship with other people who share similar personal or career interests, activities, backgrounds or real-life connections. Social networking services vary in format and the number of features.

Social Networks according to Wikipedia, an open-source online community

We’ve already looked at a few incredibly popular social networking websites, like Facebook, but here’s a few more that we’re going to analyze in detail about what makes them successful.

  • The Wordpress.org Community –> Wordpress, the popular CMS that powers over 25% of the world’s websites, has a successful community powered by the robust BBPress forum plug-in
  • [Tumblr](https://tumblr.com] –> The popular blogging system that was bought out by Yahoo is a social networking website
  • Youtube –> While it’s 99% a video-sharing platform, it’s still a social network
  • Reddit –> Perhaps the epitomy of social networking websites. Really puts the community into social network

With over 3.2 BILLION users on social media worldwide, it's one of the best-selling product genres

With the exception of Reddit, and perhaps the Wordpress website, I’d argue that none of the websites mentioned above are “community websites”. Sure, they all have social networking features, but do the fit with the criteria that makes them a community website as well? Well, yes - according to Wikipedia:

An online community, also called an internet community or web community, is a virtual community whose members interact with each other primarily via the Internet. For many, online communities may feel like home, consisting of a “family of invisible friends”.

But there are different definitions when it comes to this subject. Here’s a definition for community building from social media today:

Community building is a process of building a following of people with a common interest around a product/brand, personal brand, blog, or site online. (outline of how this is accomplished online - utilizing social media tools, providing a platform, contesting, online chats, webinars, providing resources, etc)

There’s plenty more that you can easily find by doing a search on google:

But here’s a definition that, as both a user and a creator of social networks & community websites, I find valid:

A social networking website is an online service that individiuals use to form connections with other users through the sharing of content (like photos, text posts, and videos) and to discover new communities related to their interests. Social networking websites are also used to promote a brand to a wide community, while community websites are mainly for already-established groups regarding a main, overarching topic, whether that’s a movie series or a brand like Apple, or anything in between.

That’s a bit of a long definition, and I understand that that’s going to cause some controversy. So I’d like to whack a big “Disclaimer” before I go any further:

Disclaimer

You are free to call Facebook an online community, and to an extent it is - billions of people sharing content and making connections with anyway. But services like Facebook, Instagram, the whole of Reddit , and many other large websites, are successful because they cater to everyone, not to a specific clique of individuals or users. Imagine if Facebook was only for Star Wars fans to discuss Star Wars-related topics. Suddenly the number of users would plummet into the millions. Similarly, if the Star Wars website was expanded to cater to everyone and every topic, you’d see many more people joining (the number of users does depend, of course, on the quality of your content and the amount of traffic your site gets).

Community websites

Subreddits are, under my definition, online communities as well as being a social network, because you’re able to discover other communities through Reddit. When you’re on the r/StarWars subreddit, for example, you’re seeing recommendations in the sidebar for other subreddits to join, making it a rare example of a website truly being both a social networking service and an online community website

The Buddypress Forums are another example of a community website. A large group of people discuss the world’s most popular tool for creating online social networks, but it’s about one topic, rather than thousands.

Social networking websites

On the other hand, Facebook & Twitter are great examples of social networking sites. Twitter’s recently unveiled something called “topics”, which are one-way conversations of news topics that you subscribe to. It’s not really a community feature as you can’t post anything to a topic directly.

Topics in Twitter aren’t groups. They’re essentially glorified hashtags that contain more high-quality tweets regarding a certain topic, for example FIFA 20 or Github. However, using Twitter or Facebook does fulfill my definition above ^.

Tools for creating community websites

The future is open source. And it’s been that way for a long time. You don’t have one of the world’s biggest companies, Microsoft, buying out Github for over $7.5 BILLION if open source is not where the world is heading to. With coding being taught in almost every school now, and from the early years right up until senior school (this is one of the few times I say “well done, Apple”. Their “Anyone Can Code” mentality has helped make this come true), there is no reason that in 10 or 20 years there will still be mostly proprietry and shareware software, with smatterings of open source. Already Github has over 40 million users and that number is only going to increase. Even after seemingly every developer jumped ship to Gitlab after Microsoft’s acquisition, over the last few months we’ve seen that not only is Microsoft embracing open-source, but that they genuinely think that it’s the future. And if that means that the big companies lose a few dollars here and there for an increased population of coders and better-quality software, then in my opinion that’s a small price to pay.

Wordpress

WordPress is a free and open-source content management system written in PHP and paired with a MySQL or MariaDB database. Features include a plugin architecture and a template system, referred to within WordPress as Themes.

Wikipedia

Wordpress powers over 25% of the world’s websites, and when you look at what you can build with wordpress, it’s not surprising:

Online community

Online shop

Dashboard

I have used Wordpress since early 2016. It has a self-hosted plan (Wordpress.org), and a managed hosting plan (Wordpress.com). Let’s compare the two:

Wordpress.com Wordpress.org
Freemium plan - different pricing plans Free to download (open-source), but hosting and domain name required
No plugins Over 50,000 free plugins + many more premium ones
Limited selection of themes Tens of thousands of themes
Shareware Open-Source
Limited support if on free plan Great support (but obscure questions can take a while to be answered

While Wordpress.com (maintained by Automattic) is technically under the moniker “Wordpress”, we’re just going to focus on Wordpress.org, which is the open-source platform.

About Wordpress

Wordpress was first developed by Matt Mullenweg as a replacement for the (at the time) popular blogging service cafelog in 2003. It was written in PHP coupled with a database using either MySQL or MariaDB (the database depends on the host, but in my case it was MySQL). The open-source version (Wordpress.org) is free to install and is created by the Wordpress community (hence the term open-source). However, to create a public site you need to first buy a domain name (like www.mywordpresssite.com) and hosting space (you can buy both at a provider like Bluehost or Hostgator). We’re not going to go into the details of creating and publishing a wordpress site today, but there’s some great posts about this matter that I’ll link in the resources section below. Of course, to test it out you can always try it out on a local machine for free (like a Raspberry Pi, or your own laptop/PC), but it’s sort of hard to share your content with people that way.

As we’ve seen above, there’s so much that you can do with Wordpress - it’s incredible. And the reason for this is that it’s open source. You can add whatever plugins or themes you want, so that in just a handful of clicks a default and bland site can become your major source of income:

The default Wordpress theme for 2020

Many people make a living by selling things on their Wordpress website

As it’s open-source and highly extensible, it’s great to use and we’re going to continue using it for the forseeable future. But it’s not the only option out there…

There’s plenty of great guides about Wordpress and membership sites that I’ve linked in the Resources section of this post.

Humhub

HumHub is a free and open-source social network software written on top of the Yii PHP framework that provides an easy to use toolkit for creating and launching your own social network.

Humhub is all about privacy. Have a big extended family that you want to keep in contact with, but don’t want Big Data (aka companies like Facebook) snooping on your information, or non-relatives unwittingly coming across your data? Install humhub. You could even set up a social network that is only accessible by being on a specific internet network. This can be done by installing humhub (or another open source platform on a device like a Raspberry Pi.

Resources

Wordpress

Installing Wordpress.org

Also check out the links scattered throughout this post!

Comparing the tools

Check out StackShare.io to compare the software listed in this post to find out what’s right for you!

var jv_comments_config = {
"website_id": "183",
"position": "right",
"is_open": "false",
"theme": {
"mainColor": "#29b2ff",
"textColor": "#ffffff"
}
};

(function () {
    var d = document, s = d.createElement("script");
    s.src = "https://widget.jointcomments.com/e/embed.prod.js";
    if (/MSIE|Trident/.test(window.navigator.userAgent)) {
            s.src = "https://widget.jointcomments.com/e/embed.prodIE.js";
    }
    (d.head || d.body).appendChild(s);
})();
Enter fullscreen mode Exit fullscreen mode

Top comments (0)