my avatar image, a naturally textured flat green torus

Modeling virtual social spaces: in this house we post cat pics on Saturday

Jan 22, 2023, updated Jan 28, 2023


As I work on social software, I've been thinking about virtual social spaces and how I don't know enough about them. This post outlines a simple model:

  • virtual: existing not physically but through software
  • social: including multiple people
  • space: a context containing and governing our interactions

So a virtual social space is a software-mediated context of multiplayer interaction. We're all familiar with them - they include our messaging apps, social media feeds, forums etc. By modeling the virtual social space, we can more easily imagine reshaping them for our individual and collective benefit.

The example

In the software I work on, a hub is a grouping of any number of virtual social spaces. Simple! Except neither humans nor networks are simple, and it becomes a situation when they're combined. To help us along, we'll analyze virtual social spaces with a hypothetical usecase. Let's say I have a public web forum containing a specific space that has some very strict rules: participants are allowed to post only on Saturday, and posts must contain pictures of cats they know personally. We'll use this example to think concretely about the model.

The model

To construct our model, we define 5 powers or abilities provided to actors in the space. You can probably think of more, but these get us pretty far:

  1. control
  2. access
  3. interaction
  4. curation
  5. distribution


Control is the manifestation of power over the space. When I first create my forum and the space containing the cat pictures, the software gives me control over everything. One example is the ability to name the space. Given the design goals of the space, I choose the common and descriptive name Caturday. More abstractly, control is the center around which the space exists: I, as the creator and administrator of this tiny web forum, have carved a distinct boundary of control out of the infinite virtual void. The software doesn't necessarily have to grant all of that control to me, but it does in this case. In our model, the control power controls the other 4 powers. Naturally.


Now that I have control over my tiny world, I want others to join so we can enjoy it together. Access is the ability to enter the space. It's similar to the "read permission" of a document. For Caturday I exercise my control over the space to choose public access, meaning everyone is welcome, even those creepy surveillance drones disguised as well-meaning people, because I'm prioritizing open participation over privacy to get more cat pics and joy. Additionally, even though we have a Saturday-themed space, actors can read posts any time. Now that people can access it, our virtual space is social!


We have a publicly accessible social space, but nothing much is happening yet. Interaction describes the things people can do in the space. It's like the "write permission" of a document. To make Caturday live up to its name, I again exercise my control, this time defining the rules of interaction in the space:

  • actors can post only on Saturday
  • each post must include exactly one image (photograph, painting, etc) of a cat or cats that the poster personally knows, with an optional short bit of text
  • actors can react to each others' posts, on Saturday only, in one of three ways: an emoji, a BIG emoji, or a tiny bit of text (let's say max 24 characters)


Now that we've defined the rules of interaction, let's talk about the meta layer of activities around those interactions. When people visit the space with cat pictures, I want them to be able to choose how they see and use the content. People may choose to:

  • view all of the posts in a single feed with the most recent at the top
  • view posts sorted by most all-time big emoji reactions, excluding the text reactions
  • view posts grouped by cat, so we can see each cat change over time
  • view only the posts they've reacted to, with the most recent listed first, so they can show their friend their favorites in person
  • today is Saturday! view the flurry activity with random sorting, excluding posts they've already seen

And so on, deep into the kaleidoscope of human creativity.

In our model, we define these meta-interactions of organizing and managing posts as curation. Depending on your point of view, good curation may be even more important than the core interactions of posting and reacting. If our goal is to maximize our collaborative agency, creativity, and utility (joy) within the constraints of the space, which it is in this case, we want users to be able to create those views themselves, and then easily share them with others. So, I exercise control over the space to grant participants various powers of curation.


We now have posts, reactions, and all sorts of ways to view them. The final power in our model is distribution, the ability to communicate the space's data beyond its boundaries. In our hypothetical, we explicitly support distribution in a few open-ended ways, so the joy of each post can spread wherever it's wanted:

  • social media share buttons (only to the good sites in our case)
  • a lightweight way to embed a post on any website
  • a data service that sends post data to anyone who asks for it (an API)

By intentionally designing how distribution works in the space, we unlock another dimension of creativity that reaches the wider world beyond our little web forum. Technically every reader already has the data, but explicit distribution powers enable an ecosystem more readily.


We started with the idea of control over a virtual social space, and then:

  • decided who gets access, public in this case (and mostly ungated, but that's another post)
  • and what interactions are available to them
  • and then how they're able to curate the data from those interactions, creating new metadata and interactions
  • and then how we can support distribution of that data and metadata to the wider world

This model seems useful for exploring the rich territory available to us when designing our virtual social spaces.

So when dog folks come along with their predictable request, we can say, ah yes, they want us to exercise our control over the space to change the rules of interaction, so every dog can have its day too.


Special thanks to Medardo Rosario for help with revisions.

One of my primary influences on this work is "Modular Politics: Toward a Governance Layer for Online Communities" ( by Nathan Schneider ( and colleagues.

My thinking on this subject is rooted in the perspective of consent for all involved actors, informed by the paper "Yes: Affirmative Consent as a Theoretical Framework for Understanding and Imagining Social Platforms" ( by Jane Im ( and colleagues.


Some questions from this:

  • We've defined some hard-to-enforce rules of interaction, like personally knowing the cat. How could authentic participation be incentivized/enforced?
  • What mechanisms can we use to collectively exert control over each of the other powers in the model? What could it look like to have public control over the space?
  • How does gating fit into this model? What are the ways we can gate public and private access? And the other powers?