Google Sheets, or spreadsheets in general, are never a good choice to include when designing your apps. Despite this, we show how we used them anyway for the Misinformation Game, and how this choice was ultimately an unlikely success!
If you’ve surfed the internet, chances are that you have swallowed a dose of misinformation or two. It is so common, and so widespread, that misinformation will find you even if all you view online is cooking recipes, cute puppies, and Irish dancing videos. Therefore, to combat the misinformation, we have all developed robust BS detectors to filter out the crap. However, regrettably, our BS detectors often have bugs, and I know personally I still have to catch myself every now and then.
Unfortunately, it is unlikely that misinformation is going anywhere any time soon, even with AI to help. Therefore, in order to maintain public health, uphold the integrity of our political systems, and prevent radicalism, we must research how misinformation spreads and how we can combat it. This is a really hard problem.
Thankfully, we weren’t tasked with fighting misinformation, but instead we were tasked with developing a tool that the experts can use to research how to fight misinformation. With this goal in mind, we set out on our quest to develop The Misinformation Game! This article details the unlikely advantages we got in our development by making a generally poor decision - using Google Sheets for configuration!
The Misinformation Game is a free and open-source social-media simulator to help run controlled social-media experiments. In short, it lets researchers set up social-media feeds where they made all the posts, so that they can observe how participants interact with them. If you’d like to try it out, we have a live demo that you can try!
We chose to build The Misinformation Game using Firebase, Tailwind, React, and Google Sheets (the star of the show!). The first three, Firebase, Tailwind, and React, are all pretty standard choices. They have a free tier, are quick, and are good for UI, respectively. If you’d like to read more about those choices, you can read more here.
However, if you’re a software engineer reading through this post, you may have just groaned at the mention of choosing to put spreadsheets in a tech stack. Stories from my friends and lecturers who’ve had the, ahem, pleasure of wrestling with Excel databases or yanking companies out of the suffocating clutches of Excel sheets, make the nightmares that spreadsheets can cause pretty clear.
But, let me just say, I think using Google Sheets for this project was one of the best tech choices we made.
Absolutely everything!
Well, not everything. Actually, configuration!
All configuration for studies in the Misinformation Game is done in big spreadsheets on Google Sheets. These spreadsheets may then be downloaded from Google Sheets and uploaded to The Misinformation Game for presentation to research participants.
Maybe, but let me tell you about all of Google Sheets’ quirks and features!
UX for Free. Researchers understand spreadsheets! The user experience of navigating and entering information into a spreadsheet is familiar territory. To me, this is the biggest advantage, as we didn’t have to worry about nearly as many user-experience headaches when building our backend user interface.
Spreadsheets can be Shared. It is now common in many fields for researchers to share the source code of their projects to aid in reproducing results. This is great! However, for tools that require complex configuration, this can still be difficult to achieve and is often not possible. Our use of spreadsheets is one example that does allow the sharing of complex configurations, as all the configuration can be shared as a single file.
Images in the Config. Social-media is full of images. Therefore, it was crucial that our platform had to support them as well. Google Sheets allows users to easily place images right into spreadsheet cells. This makes it really easy and intuitive to add post and avatar images right in your config!
So you’re saying, we can just use spreadsheets instead of configuration files or bespoke configuration user interfaces!
Nope! No. No no no!
Whilst spreadsheets were great for our project, they’re definitely not all sunshine and rainbows! 🌈 They have several significant drawbacks.
Google Sheets may have reduced the time required to develop our tool, but it has also led to significant maintenance and update overheads. So, while our tool is more feature-rich and robust thanks to Google Sheets, keeping it that way may be difficult.
Google Sheets will Change. Our documentation is all based upon a snapshot of Google Sheets at one point in time. It is very likely that Google Sheets will change in the future, and with those changes, our documentation will become outdated. This is acceptable for a research tool that may not live for more than a few years, but it is definitely undesirable for larger commerical pieces of software.
We can’t update people’s configurations in-place. If we make changes to our spreadsheet template, users must manually copy their configuration to the new template. This makes small updates to the configuration spreadsheet much more costly, and it destroys any thought of live updates and bugfixes for the configuration.
We can’t add our own bespoke features. There are several features, such as live previews, that are simply not possible when using this configuration system. While we use spreadsheets, there will always be friction when users must download their spreadsheets to upload them into the Misinformation Game, where we can provide those features.
Sure, spreadsheets have their fare share of hurdles. We don’t control the hosting of Google Sheets, it’s difficult to update people’s configurations, and it makes it hard for us to add bespoke features.
But guess what? Sometimes the path that gets a few side-eyes and raised brows is the one that gives you the edge. Google Sheets, for all its quirks, allowed us to make our project more feature-rich and robust under the limited time and budget that we had available.
And let’s face it, in a world where misinformation is as easy to spread as a cute puppy video, we need all the help we can get. And if that help comes in the form of a spreadsheet… well, bring it on.
So, there you have it, folks. I probably won’t be using Google Sheets for any future projects any time soon, but I’m sure glad we had it in the arsenal for this one. If you’re interested to learn more about the Misinformation Game, we have written extensive documentation for it on this very website (it’s more serious than this post, I promise). We also have a peer-reviewed paper available.
Here’s to hoping that Google Sheets doesn’t suffer the same fate as Google Domains!
This is the first software article that I’ve written, but I hope to write more. If you’d like to find out about those when I do, you can find me (Padraig Lamont) on Twitter or Mastodon! I also run another site called RoyalUr.net, which doesn’t have game in the name, but is actually a game.
Back to Top