Complexity in Social Networks

How network structure impacts consumer experience.


In college, I took a class called Networked Life. I’m pretty sure it was early 2004, and we looked at everything through the lens of complex networks, whether it was Google’s PageRank algorithm or why controlled burning can help contain forest fires. About halfway through the semester, I emailed the professor to tell him about a new website called Facebook (maybe I called it “the facebook,” but I don’t remember). Facebook was creating a graph of people who knew each other in real life and it was the most literal representation of everything we were learning. That class formed the foundation for my view on complex systems.

In the same way software has “eaten” many industries and continues to devour more, the structure of complex systems is relevant in an increasing number of subjects, from neurobiology to industrial engineering. In the consumer internet, many of the most interesting technology platforms are, at their core, networks. As with most complex systems, small changes can have large consequences, and the structure of a network can materially impact consumer experience, many times changing the core way that people interact with the service.

One way to think about these technology platforms is to think of any complex network as having four fundamental components:

  • Nodes (the objects in the graph, e.g., people, things)
  • Data/content (the thing being shared between the nodes, e.g., tweet)
  • Edges with rules (e.g., bidirectional “friend”, single-directional “follow”)
  • Jumping functions, specifically ways to transmit the data/content from one subgroup of people to another on the same platform, usually based on rules surrounding how the edges are structured (e.g., retweeting / liking / favoriting).

Picture Twitter before any users were on the system yet. What were its primary components? The concept of a user was a node in the Twitter network. Users created data/content in the form of a 140 character messages. Users followed one another, which meant the requesting user would get access to the tweets from the followed user — a single directional arrow that didn’t have to be approved by the followed party. Prior to the introduction of the retweet, Twitter was simply a way for a user to broadcast to followers.

The massive dissemination of information — and I would argue a large contributor to a network’s massive value — comes from the ability of information to jump from one subnetwork of users to another. On Twitter, the jumping function is the retweet. A person who lives and breathes technology tweets about a new streaming music service called Spotify, to people who care about tech, but one of those followers also cares about music and retweets to his or her own followers, enabling the information to jump networks from people who care about technology to people who care about music.

All of these dynamics come together to create the primary consumption experience — the feed or inbox (e.g., newsfeed, email inbox, photo stream). This outline of a network is an oversimplification, but it gives some structure to what different “network shapes” might emerge, which is where thinking of these networks as complex systems is helpful. (One example of how it’s an oversimplification is that the inboxes themselves may have rules, e.g., Facebook has a dynamic algorithm based on recency, popularity, etc to determine what to show you whereas Twitter displays every tweet, in reverse chronological order.)

Network Shapes Shape Networks

In my view, the game changing networks — there have been many and will continue to be more — are ones that in some way alter one of the four elements of the network that makes the new network fundamentally different. If we define the shape of a network graph as the literal picture made by each node in the graph and which other nodes it’s connected to via edges, then the most obvious difference in network shape is between Facebook’s bidirectional edges vs. Twitter’s single-directional edges.
That one rule changed everything.

Small tweaks can create a massive macro changes in complex networks, and because of the bidirectional edge, Facebook ended up with a much more private network whereas Twitter looks more like news distribution. Stories from brands can feel forced on Facebook because they don’t truly have a bidirectional arrow, which in the context of Facebook means friend. The friend and follower models created two fundamentally different social utilities.

A second “shape” difference might be the result of what content is intended to be shared, and is really a function of consumer expectations and behavior. I’ll use an example that I got wrong at first. When Foursquare was getting popular, I incorrectly assumed that it would become a feature of Facebook because, after all, location was just a few extra columns in the database: latitude, longitude, location name, maybe a timestamp. While in a literal sense that is somewhat true, the content itself impacted the shape of the network graph. The overlap of the graph of people who you wanted to be Facebook Friends with was not a 100% overlap with the people with whom you want to share your location (there are several reasons for this).

So, what kinds of companies have built new shapes of network graphs? Companies that focus on different/new types of:

  • Nodes. Instead of just focusing on people, Quora and Skillshare let you follow topics.
  • Data. Instead of 140 characters, you can share a message that has ephemerality like SnapChat or can be made pretty, like Instagram.
  • Edges. Not only friend vs. followers, but also how data travels back and forth within groups — data travels very differently in GroupMe (many-to-many) than it does in SnapChat (one-to-many, then each-back-to-one)
  • Jump functions. It’s difficult to move beyond the concept of the retweet/like/reblog. Note that GroupMe and SnapChat have no way to get your data across to a new subnetwork. But…

One company that opened my eyes to an interesting way to utilize jump functions and different network shapes was Meetup. It was one of the first companies to create a way for content to jump subnetworks that wasn’t a direct function of people. A really important object in Meetup is the event tag. It’s a second type of node in addition to users.

If you think about event tags as nodes that you’re following, then you’ll notice when you join a NodeJS Meetup group, it asks you why you’re interested. You can multi-select tags such as NodeJS, less specific tags such as Javascript, Programming, Startup, or even adjacent items Machine Learning and Ruby on Rails. When you select these tags, you’re really saying that you want to follow those objects in the graph. The core piece of data on Meetup is the event. So when you’re subscribed to a meetup group, there can be multiple events. That’s nice, but what’s really interesting (and ultimately valuable) is the jump function — the fact that Meetup can make events jump across groups of people who initially joined because of a different event.


So What?

Okay so maybe this is academically interesting (or maybe not) but why is it actually important? Technology can be fun for its own sake, but great technology is almost transparent — at its best, Facetime isn’t a video chat app, it’s an opportunity to see and talk with my friends and family. A Facebook message doesn’t feel like it’s coming from Facebook, it feels like it’s coming from your friend. We tune our social networks over time by friending people on Facebook we know in real life, following people on Twitter whose views we’re interested in, and choosing the topics we care about on Meetup.

The more personalized the experience, the less the updates, digests, and feeds feel like spam and the more they feel like they’re actually adding value. New suggestions feel natural, which means users are likely to take those suggestions, which creates value both for the suggester and for the thing being suggested. This is valuable for the platform because the user spends time tuning his or her preferences (by connecting with other nodes in the network), so as long as the quality remains high, the user won’t want to leave and start all over on another platform.


If you’re building a technology platform, making it “social” really means figuring out what the nodes, edges, and jumping functions should be. One way to do this is to work backwards. What should the experience feel like at scale? Do users care about what other people are doing on the network, or do they really care about other types of objects, like tags and categories? On Meetup, the most popular tags are in effect functions of choices people make, which might inform future suggestions, so they’re almost a layer on top of the users themselves.

Quora has extremely rich connections— users can follow other users, individual questions, and topics. They also have an edge between people who have posted answers and others who’ve voted those answers up. This gives Quora a whole lot of insight into what your weekly email should look like. I have no inside information here, but I’ll bet the weekly Quora email is one of the most opened, most clicked through, and least unsubscribed from weekly emails out there. That’s great for Quora and great for its users.

As long as there are new technology platforms, types of media content, and shifting user behaviors, there will continue to be opportunities to build massive networks with complexity at their core. The ones that fundamentally alter some of the core components of a complex network can create really interesting and novel product experiences.

A single golf clap? Or a long standing ovation?

By clapping more or less, you can signal to us which stories really stand out.