The following is the very first draft of Parable of the Polygons, originally posted to a semi-secret Github Gist. I sketched it up shortly after meeting Vi Hart at the Explorable Explanations workshop.
Compared to the final thing, a lot was removed: most notably, the shapist cartoons, and background information on Thomas Schelling. Then there was all the stuff we added: interstitial interactives, and clearly setting up the rules of the game in the introduction.
Looking back at it, this was quite an effective way to plan out the flow of the piece, the mechanical plot twists and beats. A balance between interactivity and text, between show and tell. I should totally do this again soon, for my upcoming explorable on behaviorism, “I'd Like To Be A Machine”.
I'm still humbled and honoured by how much Parable of the Polygons took off. Neither Vi nor I expected that. And it all started with some crap sketches on scrap paper.
These are the adorable Polygon People.
They're 50% Triangles, 50% Squares, and 100% slightly biased against each other.
Emphasis on the word slightly. A Polygon would be happy with an even 50/50 split of neighbours of different types, but if less than 33% of their neighbours are like them, they will be unhappy, and want to move somewhere else.
Keep that in mind. Every single Polygon would be happy with a fully integrated neighbourhood. However, let's see what happens over time...
Click and drag unhappy Polygons to a random empty square.
Repeat until all Polygons are happy.
And the result... near-complete segregation.
This wasn't just a fluke. You can run this process over and over again with different boards, and it will almost always tend towards a highly segregated outcome.
Try it yourself! This next interactive bit automates the Polygons moving around, and measures the average % of a Polygon's neighbours that are the same shape. We'll call this the Sameness %.
Because it's random at first, the Sameness % will usually start at around 50%. But let's see what happens, what almost always happens, once they start moving around.
Click GO to start the simulation.
Click RESET to create a new random board of Triangles and Squares.
Right now, the "unhappy" threshold for self-similar neighbours is at 33%. Let's call this the Bias %. Now, play around with the Bias %, and see what level of Sameness % this results in at the end.
Use slider to change Polygons' Bias %
It also graphs the Sameness % this results in.
Now you may be thinking, well then the solution to desegregation is obvious, right? Just turn the bias all the way down to zero? Alas, in real life, we are not starting out on a randomly distributed board.
Here's a simulation where the board starts off very segregated - see what happens when you adjust the Bias %.
As you can see, nothing happens. In fact, it can get even more segregated if you turn the Bias % upwards.
New rule: Polygons are now also unhappy if too many of their neighbours are exactly like them. Let's call this the Conformity %. This next simulation starts with a segregated neighbourhood, and all Polygons at 20% Bias and 99% Conformity. (They're only upset it ALL of their neighbours are like them)
Finally, A FULL SANDBOX SIMULATION.
Cautiously optimistic conclusion