2017 marks the Processing Foundation’s sixth year participating in Google Summer of Code. We were able to offer sixteen positions to students. Now that the summer is wrapping up, we’ll be posting a few articles by students describing their projects.
Maps, Maps, Maps!
My first experience with programming was through Mata, the language Stata uses for data and statistical analysis. I was doing econometric analysis as a senior student in Chile and programming was for me an abstract concept, where the output was always bounded to tables, rows, and dry numbers. Fortunately, in 2013 I learned about Processing and discovered projects like “Flight Patterns” by Aaron Koblin, “Zipdecode” by Ben Fry, and “Wind Map” by Fernanda Viégas and Martin Wattenberg. Those visualizations made me realize the power of programming as a visual tool for creative endeavors. But inadvertently also, most of the projects I was curious about were built using some kind of map and so, I got interested in maps too.
I wanted to build something that would be simple to use and compatible with as many other mapping libraries as possible without taking away the full potential of them. The main concept is to facilitate work between p5 with existing map libraries and APIs by providing a layer between these two. Right now the add-on supports working with static maps (map images), use Google, Mapbox, or Mapzen APIs. It also allows the use of p5 over tile base maps with Google Maps, Mapbox, Mapbox-GL, Mapzen, Tangram, and Leaflet with any set of tiles and works with p5 in WEBGL mode too.
I’m working on adding enough documentation to make it easy for non-experts to start building something without having to guess how everything works and fits together. I’m also writing full-length tutorials that explain the complete development of map-based sketches with p5. One of my first examples was, of course, to recreate Fry’s “Zipdecode.”
The 2016 Processing Foundation Community Survey revealed that one of the most popular interests for using p5.js or Processing was data visualization. I’m excited to see how my contribution during my Google Summer of Code can help more people use p5 for these endeavors.
If you want to contribute or follow my GSoC project, visit the repository here.