Paint it black: mapping Space Invader mosaics in Paris
🗺️ "I solemnly swear that I'm up to no good"
Do you hunt with a map?
This odd question makes sense in the context of the very Parisian hobby of looking for Space Invaders. The playful mosaics created by the street artist Invader can be found in over 1000 locations around the City of lights.
The official app gives you points and plays a triumphant melody whenever you take a photo of a new mosaic, but it doesn't include a map. You're on your own on how to find them!
… or are you not?
(Un)fair advantage?
It turns out that there's an unofficial iOS app offering a detailed map with a location of every mosaic in Paris:
Whether to use a map like this or not is a personal preference (and for some, a question of ethics, morality and fair play :)). But it seems unfair that this capability is available only to iPhone users.
So let's balance things out! This week we’ll create a map of our own, available for free on the open web 💫.
Invaders, oh Invaders, where are you?
Step one: find out where the mosaics are. Luckily, someone already did the hard work of writing down their addresses:
After reading and tabularizing this data (we can safely ignore the I’m an aligatooor 🐊part), we get something like this:
This is good! Now, to put the Invaders on the map, we need to translate those street addresses to geographical coordinates (latitude, longitude). This is called “geocoding” and, of course, there is a library for this:
Lessons of impermanence
Art is forever, but the mosaics are fragile. I once spent a long while looking for one of the remaining Invaders in Bangkok, only to find the spot where the tiles used to be:
For our map to be useful, we need to distinguish destroyed Invaders from those that are still intact. Another great fan site tracks the status of each mosaic:
We could write down the status of each mosaic by hand, but with 1 minute per mosaic that would take 22 hours without breaks. So we better make a helper program to browse the website for us:
The time we saved on web browsing we can spend on actually making the map!
Hey computer draw me a map
Learning how to do things used to be harder:
Given the schema of my list of Invaders, ChatGPT wrote pretty much complete code needed to put them on a scrollable map. It isn’t pretty… but it works!
Paint it black
For a final visual makeover, I switched the tileset to the sleek black-and-white Stamen toner base. I also tweaked the icons and the colors of the markers. The final result:
📢 📢 📢 You can check out the live map on my website here.
Now that the map is ready, we can come back to debating whether it’s fair play to use it for Invader hunting :).
In other news
OpenAI hosted their first developer conference, announcing a new, improved GPT4 Turbo model with knowledge cutoff brought into 2023.
OpenAI also announced a platform for “custom GPTs”, allowing everyone to easily wrap the GPT model, adding custom instructions, data points and actions. (The Internet was quick to comment on what this may mean for various startups that build specialized thin wrappers over GPT.)
Postcard from Montmorency
Beautiful autumn light in Montmorency, 20 minutes by train from Paris.
Stay warm 💫,
– Przemek
Hello
Thanks a lot for the article and your sharing effort. I am also trying to build a complete database of the Space Invaders in the world. Your database helped me a lot. I also looked at Invader-spotter.org to get the current status. And finally, I completed with some manuals inputs for the last SI, including the last invasion of Biarritz (BAB). I shared all this in this repo https://github.com/goguelnikov/SpaceInvaders so everybody can access it. Do you agree with this sharing as many of the data come from your site? I was actually surprised how difficult it is to find a centralized accessible Invader DB… feel free to used it for the last SI (in Paris, BAB…) Thanks
Amazing insight into how you made this a possibility. Now the next step is to make the map interactive so you can mark off the ones you have personally flashes so you don't go around in circles.