The OpenStreetMap project has over half a million map contributors and a fairly extensive developer community. This past weekend, the first-ever OpenStreetMap hack weekend was held in Toronto, Canada (second-ever North American hack) at Ryerson University. This event was jointly hosted with the Department of Geography, Master of Spatial Analysis and the Student Association of Geographic Analysis. Event coördination was taken care of by Richard Weait, long-time advocate of OpenStreetMap.
Thanks Richard!
The event ran through the weekend, with an introduction to OpenStreetMap on Friday afternoon. Richard presented his well-prepared spiel on how OpenStreetMap is cool to Ryerson University students, professors, staff and visitors. A panel of OpenStreetMap developers, which included Tristen and A.J. from MapBox, were able to attend and answer the many questions that came up during and after the presentation.
My own goals for the weekend included asking a bunch of questions about OpenStreetMap and TileMill, as well as shadowing the developers as they worked on their own projects. It was a great time to be asking questions, as many of the attendees had a wealth of knowledge and/or experience about/with many of the topics that I brought up. Not only was I able to get answers to questions about simple conceptual ideas, I was also given hands on help that got me started and up-and-running with TileMill (Thanks Steve & A.J.).
All but one of our guests this weekend attended the Saturday Night Social Event. Dinner, beer and laughs were on the menu, as well as serious discussion about how the OpenStreetMap board and it’s members could better communicate with the rest of the community. As a new member to the community myself, I enjoyed the insight that I gained to what is much like a large family. I spent a lot of time asking questions, but most importantly, I made sure to listen to answers! Never have I learned so much in such a short period of time. For that, I am truly thankful!
What I worked on during the hack
Since this was my first real introduction to the development portion of the OpenStreetMap, I found myself at odds and contemplated what would be the best thing to do this weekend. Should I try and help an experienced programmer with his/her project? Probably not. Could I sign up on OpenStreetMap and contribute to the map itself? Why yes, yes I can! I also took the opportunity to populate my PostgreSQL/PostGIS database with OpenStreetMap data from geofabrik for the province of Ontario. I later installed TileMill and with the help of Steve and A.J. was able to start pulling data out of this database to style and compose a fancy map!
I quickly learned how complex the styling rules associated with the current OpenStreetMap base layer were, and that I would have some trouble trying to replicate items such as multi level roads/overpasses, bridges, tunnels or anything that requires drawing order (z-order) to be considered. I was quickly overwhelmed with the amount of data that I was trying to display and style at once.
My First Attempts with TileMill!
Querying park-like features out of PostgreSQL/PostGIS:
( SELECT * FROM planet_osm_polygon WHERE building IS NULL AND (amenity IN ('park') OR landuse IN ('recreation_ground', 'greenfield','cemetery') OR leisure IN ('park', 'pitch', 'track', 'golf_course', 'common', 'playground', 'garden', 'plaza')) ) AS parkarea
Some Carto in TileMill that styles (some) roads:
#highways [highway='residential'] { [zoom>14] { ::casing { line-width: 6; line-color: darken(darkgray,20); line-cap: round; line-join: round; } ::residentialfill { line-color: white; line-width: 5; line-cap: round; line-join: round; } } } #highways [highway='tertiary'], #highways [highway='tertiary_link']{ [zoom>14] { ::casing { line-width: 6; line-color: darken(darkgray,20); line-cap: round; line-join: round; } ::tertiaryfill { line-color: lightyellow; line-width: 5; line-cap: round; line-join: round; } } }
Encountering cobwebs of roads… unsure how to style effectively
and how OpenStreetMap does it…
I look forward to writing about my future work in TileMill with the Carto styling language. I hope to ultimately create my very own base map for future projects. I think one of the best pieces of advice that I could give to anyone starting from scratch, as I did this weekend, is to take your time and thoroughly style a thematic element on your map. For instance, I could import all park-like features from OpenStreetMap and style them to suit my needs before moving on to the next set of features. By doing so, you focus your creative power to completing chunks of your map at a time, instead of loading all the road-, park– and water-like features and trying to style them at the same time.
The first ever Toronto OpenStreetMap Hack Weekend was a blast and a complete success. I thank all those who were involved, including my classmates and colleagues at Ryerson University, as well as those who made the trip across borders to be here in Toronto for the event. Let’s hope the next one can be just as good, if not better!
Thank You
If this post helped you and you enjoy my site I would happily accept Litecoin donations:
LKPfT772e9HxvXYcA8LVDctTmENoqQxQF3
[…] Ryerson Geographic Analysis student Michael Markieta has also posted a summary on his fabulous Spatial Analysis […]