An open source software platform to deploy and scientifically test digital interventions

Imagine a world where we discover the interventions that are most effective in reducing the online harms caused by platforms like Facebook, TikTok and YouTube. We’d be able to take these interventions and persuade legislators to impose them on the platforms themselves. We’d be able to roll back the manipulative product design that is leading the world into a moral abyss. We’d be able to stem the tide of hate speech, misinformation, addiction and depression. To do this, we need an open source software platform where interventions can be deployed and scientifically tested by researchers from leading academic institutions.

The problem

  • Platforms such as Facebook, YouTube, and TikTok are like cars without seat belts
    • They cause online harms such as hate speech, misinformation, addiction and depression
    • Their commercial incentives override their desire to implement seat belts
  • The seat belts for these platforms could be interventions like:
    • 🕣 Chronological news feeds
    • 👨‍👩‍👦‍👦 More content from family and friends
    • ✅ More embedded fact-checking
    • 🗣️ Copy text to share viral content, instead of using share button
    • ⏰ App time limits
    • 🐢 Slower load times after midnight
    • And many others
  • We’d like regulators to force these interventions on the platforms, but we don’t have enough evidence about which interventions work, and in which contexts

The solution

  • An open source software platform to deploy and scientifically test digital interventions
notion image
This platform will:

🐇 Test more interventions, faster

Researchers are busy. Often, they aren’t software developers, or if they are, they struggle to create consumer-facing tools. They face limited budgets and time.
This platform will lower the cost for researchers to run tests on interventions that can mitigate online harms, which will increase the number of these tests.
If they can simply plug and play interventions on an existing platform, it means they can get more done, faster.
In turn, that means the world gains more research, faster, at a critical time where we face massive threats to our societies from online harms proliferating on tech platforms.

🌐 Build up shared knowledge about interventions

There is no point in researchers reinventing the wheel on an intervention that someone else has already developed.
Our digital interventions platform will be an open source knowledge base of best-practice interventions which researchers will be able to deploy in the many different contexts where online harms are proliferating.
A university in India will easily be able to access interventions originally conceived of by a researcher in Brazil and test them in their context. This will build up knowledge about how effective interventions are in different contexts.

🧑🏾‍🤝‍🧑🏻 Build a community

Researchers will be able to recruit their own participants. But we will also market the platform directly to consumers and ask them if they would like to contribute to a safer internet by participating in studies.
This will help researchers to get off the ground faster, with a user base that cares and wants to participate in research against online harms. And it’ll mean we build a community of people around the world who care about fixing the way the internet works.
In this way, our interventions platform will take inspiration from certain projects by Mozilla, in particular: Mozilla Rally, which asks users to donate data towards various academic partners (but does not do interventions), and Mozilla RegretsReporter, which is also based around crowdsourced data donation (but is focused only on a particular aspect of YouTube). We are in touch with people who have been involved in both of these projects.

How it works

An example around YouTube autoplay:
  • 👩🏽‍🎓 A researcher will decide they want to test whether preventing YouTube autoplay reduces time spent on the platform and access to misinformation
    • They will author a new intervention, which will be a stand-alone script to prevent YouTube autoplay
    • They will submit this intervention as a pull request to our interventions project on GitHub
    • We will suggest a couple of changes and then eventually merge in their intervention
    • At that point, the intervention will become usable in our user-facing intervention tool
  • 👨‍👩‍👦‍👦 The researcher will recruit 100 study participants, ensure they have given informed consent to sharing limited data, and send them a smartlink to install the user-facing intervention tool
    • The smartlink will assign 50 of the researcher’s study participants to a Lifecycle (see Database section below) where the YouTube autoplay preventer will be introduced to them after two weeks, and stay enabled for another two weeks
    • The other 50 of the researcher’s study participants will be assigned to a lifecycle where they do not experience any intervention
    • The user-facing intervention tool will send information on the usage of YouTube by the study participants to Amplitude, an analytics platform
  • 📥 The researcher will be able to export data pertaining to their own study participants, and no others, using a simple API that will add a permissions layer to what they can access from Amplitude
    • The researcher will separately be able to send before and after surveys to their study participants to gain metadata
  • So:
    • ✅ The researcher has deployed an intervention on infrastructure provided by us, instead of having to create utilities like a user-facing tool, a database, and an analytics platform from scratch
    • ✅ They have created a new best practice intervention of how to prevent YouTube Autoplay, which can now be used by other researchers
    • ✅ They have gained data to show them whether that intervention is effective in changing the particular metrics they care about
    • ✅ They publish their results, and the world has one new academic study to inform policy on YouTube

The product

What exactly does the interventions platform look like, as a software product?

Here’s how the interventions platform is structured, broken down into constituent parts on a technical level:
notion image
Here’s more detail about each of the parts of the platform:

🛠️ Interventions (1️⃣)

  • Researcher and community-maintained intervention library (1️⃣)
    • We create an open source library of interventions that can be plugged into the platform
    • Always open source and plug and play:
      • Interventions will be standalone scripts, in a standalone GitHub repository
    • Community-led:
      • Researchers and developers will be able to contribute their own interventions to the repository
      • The user-facing platform will be able to deploy any intervention that is in the interventions repository (and no others)
  • MVP: an open source GitHub repository (1️⃣, on the diagram)

🖥️ Tools (2️⃣ and 5️⃣)

  • User-facing intervention tool (2️⃣)
    • Installed by users, who will either be recruited by researchers using the platform to study a set of interventions, or organic
    • The first user-facing intervention tool that we’ll build is a browser extension. That’s because browser extensions are cheap to develop, and have high scope for interesting interventions
    • In a later stage of funding, we will build desktop and mobile tools, which are more expensive to build and more limited in their scope for interesting interventions
    • MVP: an open source browser extension (2️⃣) modelled on the open source Nudge project (3,000+ users), which was created by the writer of this proposal
  • Researcher API (5️⃣)
    • Once a given study is complete, researchers will need a way to extract the data pertaining to the users who were participants in their study
    • This will be done via a simple API on top of the Amplitude API
      • Amplitude will be the analytics platform where all data generated by the interventions platform will sit
    • MVP: an API endpoint (5️⃣) that researchers can use to download data pertaining only to users related to them, which will essentially be a permissions layer on top of the Amplitude API

📃 Database (3️⃣ and 4️⃣)

  • PostgreSQL database (3️⃣)
    • We create a simple database comprising two main concepts:
    • Users:
      • Anyone who installs the user-facing platform, with columns about their Lifecyles and IDs of researchers they are related to
    • Lifecycles:
      • Schedules of interventions given to a user over time
      • Examples:
        • Chronological news feed for 2 weeks, then back to no intervention
          • Would be tested against a control (no intervention) lifecycle
        • No intervention for 3 months, then prevent YouTube autoplay for 3 months, then back to normal
          • Would be tested against a control (no intervention) lifecycle
      • Initially, researchers will be able to request lifecycles and we will create on their behalf
      • Eventually, researchers will be able to create lifecycles for themselves
    • Researchers
      • Researchers who have been given permission to use the platform
      • We need this table to match users to the researchers who brought them into the platform
  • A study is run by a researcher issuing a smart link to their study participants which will set them up as users and assign them to a given lifecycle
    • Researchers will be able to generate smart links for their needs using URL parameters and lifecycle IDs
  • Amplitude instance (4️⃣)
    • Additionally, we will use an analytics platform (Amplitude is preferred) to host data structured by user ID
      • Only data that the user gives their informed consent to have gathered will go to Amplitude
  • MVP: a PostgreSQL database hosted on Supabase (3️⃣), and an Amplitude instance (4️⃣)

The mobile problem

In an ideal world, we’d start this platform on mobile. That’s where people spend the majority of time online these days, particularly in the developing world.
However, mobile operating systems are extremely closed off to interventions by third parties. They offer only very limited scope to innovate in the space of online harms. Additionally, it’s expensive to develop for mobile. This grid shows the situation:
notion image
As you can see, interventions for the desktop browser are both cheap to develop, and offer extremely high scope for innovation. On the other hand, to take iOS as an example, apps are both expensive to develop and offer extremely low scope for interesting interventions.
Because of this, we would start with a desktop browser extension as the first user-facing tool that is part of the interventions platform.
We think it’s reasonable to assume that if a given intervention is effective for the desktop browser, it would also likely be effective on mobile. This is an assumption that we would like to test — which itself will be hard, because of the way mobile operating systems are closed off.
(You might be wondering why mobile browsers aren’t on the grid above. That’s because most mobile browsers do not allow extensions to be run on them, and so can’t host interventions. The notable exception is Mozilla Firefox, which does allow a limited set of recommended extensions to be installed in their mobile browser.)
After building the MVP and establishing the platform with the desktop browser extension, our next step will be to assess the feasability of creating new user-facing tools for other environments.


We are looking for $100,000 funding for one year to build an open source software platform to deploy and scientifically test digital interventions.
We have already built an open source browser extension with over 3,000 users which we will take as our starting point. The first iteration of our platform will work via a user-facing desktop browser extension, and we will build from there onto other environments such as mobile.
Studying digital interventions will give us the research we need to talk to legislators about changing the way big tech platforms work, to reduce online harms.


Have you spoken to researchers about this?

Yes. So far, we have spoken to Dr David Rand and his team at MIT Sloan, and to Dr Mohsen Mosleh and Dr Chico Camargo at University of Exeter. They are interested in using this platform. We are continuing with outreach efforts to researchers at other universities and institutes.

Who is this proposal by?

Louis Barclay is a technologist who has built multiple open source consumer-facing products to help reduce online harms (Nudge, Unfollow Everything). He was banned for life by Facebook in 2021 for developing Unfollow Everything.
With these tools, he has undertaken academic research together with the University of Neuchâtel in Switzerland.
In addition to his work against online harms, he has spent years in the startup world, as founder of Stacker and Cloakist. He has built products from scratch that have gone on to be used by thousands of consumers.

What will funding be spent on?

  • One product manager for one year
  • Two developers for one year
  • Output: the MVP product as described above

What if a browser intervention requires external code?

  • Some more complex interventions may need a dependency on external code, for instance to run AI on a page
    • Initially, we will not support these interventions, but we will plan to in future releases after proving the need for the platform

What environment will the interventions work on?

  • There are five environments that interventions could be developed for
    • Desktop browsers
    • iOS
    • macOS
    • Android
    • Windows
    • (Mobile browsers generally do not allow interventions, i.e. extensions)
  • These differ greatly in development expense and scope for interventions
  • As you can see from the grid above, the cheapest and highest scope place to start is with a tool for desktop browsers
  • Because of this, our MVP user-facing tool will be a browser extension which will work across all browsers that are compliant with the standard APIs for web browsers
    • This means that the MVP will work across all major desktop browsers

Why are we only talking about digital interventions?

This proposal focuses exclusively on software-based interventions.
However, there is a pressing need to study interventions to mitigate online harms that go beyond software, for instance behavioral changes, real-life nudges, and changes to education.
These should be addressed in a separate proposal.

Why does the platform have to be open source?

It doesn’t have to be. But it should be.
Open source means that anyone can use the code. Anyone can tell us where we are going wrong. Anyone can contribute. Anyone can attempt to reproduce the platform in a different context or create their own version. That means we can move faster and smarter.
And since we don’t intend to make profit, we have no commercial reason to hide the secret sauce.