Demystifying Algorithms by Doing
“Algorithm” is a word that has become more and more meaningless in our day and age – given how it is thrown around everywhere. If you bring it up with people who didn’t undergo some form of tech initiation – be that formal education or self-learning - it’s easy for them to conjure a picture like the one above: A colourful mess of things, too complex to understand if you don’t have some advanced degree in computer science. And so it’s no wonder what we all - myself included - tend to mystify algorithms.
Depending on which side of the algorithm issue you are coming down, algorithms will either use AI and big data to save us and cure all diseases before the end of the century, not least thanks to the mighty block chain. Or they will be used against us, leading to total surveillance, predicting our behaviour, with large corporations like Facebook shaping our world thanks to superior algorithmic firepower.
I think both - the utopian and dystopian - vision give algorithms too much credit compared to what they actually can achieve. After all, the term ‘algorithm’ is little more than a fancy word for ‘recipe’. If you’ve ever adjusted a recipe you found in a cookbook or on a website: Congratulations, you’ve participated in optimizing an algorithm.
And to stay with the image of the recipe for a little while longer: There are recipes that are easy to get right, with little effort but to little effect. And then there are those recipes that are a bit harder to pull off but that will impress your dinner guests without a fail. But to borrow a German idiom here: At the end of the day, both are only cooked with water.
So why are we having a better understanding of the limitations of cooking recipes compared to the algorithms that shape our world and use our personal data? I’d argue that for large parts it comes down to familiarity. Many of us will have happy memories of cooking with friends and families, learning from each other, interacting. In that sense our cooking algorithms are a social enterprise with shared experiences and ideas. Which is in stark contrast to how we perceive our non-food algorithms: We never get to experience them interactively, we can never tinker with them and most often there’s little social component. It’s like only going to a restaurant where our meals are prepared behind closed doors.
It’s time to open them. The open source movement has been cooking with the kitchen doors wide open for years. Everyone can see the recipes, make copies of them and tinker with them until they are to the individual’s liking. But open source isn’t designed for playing around with algorithms & personal data. And if we’re honest, getting started with Open Source is still a huge barrier. That’s why I’m happy to work on changing this - along with a great team at Open Humans. And that’s the reason why we integrated Jupyter Notebooks right into our platform.
Interactive notebooks allow people to explore their personal data that’s stored in Open Humans – right in their web browser. There, people can write and modify these recipes. And the best part: They can be easily shared between people - without having to share any personal data. So if I write a recipe to perform a sentiment analysis on my social media data, anyone of you can re-use that recipe with your personal data as ingredients and adjust parts of the recipe’s instructions. That way we can come together again, to explore and learn about algorithms, their promises and limitations. Let’s demystify algorithms by cooking and playing together.
If you want to give it a try yourself: This link contains a how-to along with some example recipes/notebooks for you to get started. And with that: Bon Appetit!
The text above was a lightning talk I gave at this year’s Sage Assembly in Seattle (yes, that GIF was my one and only slide).
I didn’t even notice it while writing the talk, but it was heavily inspired by many of the conversations with awesome participants at and around the 2016 FORCE11 The Future of Scholarly Commons workshop in Madrid.