Mapping with kids

On Friday nights while my middle kid practices with his soccer team, my youngest and I go to the nearby coffee shop and work on code. He’s 10 years old. Our first project was a Choose-Your-Own-Adventure program in Python, then we moved to a random generator (again in Python), and last night he mapped some of the places he’s been, using Google Spreadsheets and Fusion Tables. The original plan was to map all the places he’s been, but he decided to cap it at 15 since we had just under two hours. I wanted him to finish the night with something completed.

Here’s the map he made:

Blue is for pools

Red is for libraries

Purple is for schools

Orange is for stores

Green is for restaurants

I’m inspired by my daughter, who’s taking her last year of high school computer science. The school she’s at offers three years of courses. In year one they do Turing (and Flash), the next is Python, and in the last they do Java. She’s planning on going on to study either Computer Science or Engineering at university in another year. She also loves the humanities so I’m excited to see what combination she puts together with double majors or minors.

I’m eager for my kids to grow up as creators, not just consumers of technology. The two younger kids both have old computers that run Ubuntu (one has no internet, one has restricted internet) so their use of the machines might be different because of that. They first started out making their own levels in kGoldrunner, but they’ve moved on to spreadsheets of stats for the characters in the role-playing games they create as well as using the word processor in Open Office to write stories for their games. Learning to program seemed the next step, but one they weren’t making on their own. Friday night at the coffee shop seemed like a good way to clear away distractions, learn something new, spend time with mom, and wait for big brother to finish practice. It’s also great for the youngest to learn something before his older brother. Youngest kids often get stuck tagging along and doing everything last. An added bonus here is altering that pattern.

We made the above map in about an hour. We started in Google Spreadsheets, which he’d never used before (limited Internet), though he’d used OpenOffice Calc so understood how a spreadsheet works. He made the list of fifteen places he’d like to map. Then we used map search plus everything search to track down the street addresses and postal codes of all the places on the list. We got to talk about good web practices because the first few addresses we found were images of text instead of text — frustrating! He quickly learned we wanted addresses as selectable text so that there’d be no need to retype long strings of text.

Once all the addresses were found (we took turns after awhile because this was tedious) we added a data type for each: pool, library, school, restaurant, or coffeeshop and had a look at our choices for map icons. He decided which marker he wanted for each data type and we added that to the spreadsheet.

Next we imported the spreadsheet into Google Fusion Tables, set the map to grab location using the street address in the Address column and visualized as a map. Then we modified the map style to use the marker specified in the Icon column and cool! a map was born! He knows that he can go back to his map and add more data, re-purpose it, or use it as an example for a new one.

Once it was done, we shifted to a conversation about places he’d like to go. He navigated Google Street Maps to travel to Spain, Venice (to see canals), Paris (to see the Eiffel Tower), Iqaluit, Japan, Korea, and Rome. We walked down the streets in every place that had street view (we’re both bad at controlling the little person) and looked at the relationships between cities and large bodies of water.

I really do love these Friday night nerd sessions and I know that I’m making it normal to use computers for more than surfing. He’s learning that he can visualize his data, turn his stories into games, and make whatever he can imagine.