One of my goals as I teach myself python is to use the data found on the Toronto Open Data site. I'm far more motivated to make useful things than I am by programming-for-the-sake-of-programming, and I like the challenge of using external data sets in interesting ways.

And so, my first attempt to make something useful out of Open Data data:

Garbage & Recycling Day Google Calendars

Solid Waste Pickup calendars are already available to download from the City's garbage website in .pdf format. These calendars are great to print and post at home, but personally I don't use paper calendars or appointment books at all anymore, and I don't think I'm alone. I use Google Calendar at home, and a corporate calendar at work. All digital, all the time. I'm also super forgetful and completely reliant on email notifications (and again, I don't think I'm alone.)

Luckily, The City of Toronto also makes all of their Solid Waste Pickup data available on the Toronto Open Data site. You can download all of the schedules in plain text, Excel or .csv.

The raw data looks like this:

Calendar,WeekStarting,GreenBin,Garbage,Recycling,YardWaste, ChristmasTree MondayNight,9/2/2012,M,0,M,0,0 MondayNight,9/9/2012,M,M,0,M,0 MondayNight,9/16/2012,M,0,M,0,0 MondayNight,9/23/2012,M,M,0,M,0 MondayNight,9/30/2012,M,0,M,0,0 ... MondayNight,12/2/2012,M,M,0,M,0 MondayNight,12/9/2012,M,0,M,0,0 MondayNight,12/16/2012,M,M,0,M,0 MondayNight,12/23/2012,T,0,T,0,0 MondayNight,12/30/2012,T,T,0,0,T

Not terribly useful for most people.

So I decided to write a small program that would convert this raw data into something that could be imported into a Google Calendar, iCal, Outlook, or Yahoo! calendar.

You can see the code I used to do this here.

And here's a sample of the converted data:

Subject,Start Date,All Day Event,Description Recycling Day,09/07/2012,True,Put out Recycling and Green Bin waste! For more information on what can be recycled click here: http://www.toronto.ca/garbage/bluebin.htm Garbage Day,09/14/2012,True,"Put out Garbage, Yard and Green Bin waste! Find basic sorting information here: http://app.toronto.ca/wes/winfo/search.do" Recycling Day,09/21/2012,True,Put out Recycling and Green Bin waste! For more information on what can be recycled click here: http://www.toronto.ca/garbage/bluebin.htm Garbage Day,09/28/2012,True,"Put out Garbage, Yard and Green Bin waste! Find basic sorting information here: http://app.toronto.ca/wes/winfo/search.do" Recycling Day,10/05/2012,True,Put out Recycling and Green Bin waste! For more information on what can be recycled click here: http://www.toronto.ca/garbage/bluebin.htm

At first glance, still not terribly useful. However, in this format you can directly import this file into Google Calendar.

Download or Subscribe to your Toronto Waste Pickup Calendar

If you live in Toronto and want a Solid Waste Pickup calendar for your own use you have a couple of options.

First find what zone you live in.

If you use Google Calendar, you can subscribe directly your public calendar. The public calendars have notifications built in, so if you choose to subscribe you will receive an email every week to remind you of your garbage or recycling day. I will be able update these calendars with new dates as they become available.

You can also download your own calendar to import to your own account. If you use Google Calendar or iCal, you should download the .ics file. If you use Microsoft Outlook or Yahoo! Calendars, you should download the .csv file.

Although the calendars should theoretically work universally, I haven't tested these on iCal, Microsoft Outlook or Yahoo! Calendars yet, so if you do import to any of these and it works, let me know! If it doesn't work, let me know too, and I'll make adjustments!

Monday Night

Subscribe

Download (Google Calendar, iCal)

Download (.csv, Outlook, Yahoo! Calendars)

Tuesday 1

Subscribe

Download (Google Calendar, iCal)

Download (.csv, Outlook, Yahoo! Calendars)

Tuesday 2

Subscribe

Download (Google Calendar, iCal)

Download (.csv, Outlook, Yahoo! Calendars)

Wednesday 1

Subscribe

Download (Google Calendar, iCal)

Download (.csv, Outlook, Yahoo! Calendars)

Wednesday 2

Subscribe

Download (Google Calendar, iCal)

Download (.csv, Outlook, Yahoo! Calendars)

Thursday 1

Subscribe

Download (Google Calendar, iCal)

Download (.csv, Outlook, Yahoo! Calendars)

Thursday 2

Subscribe

Download (Google Calendar, iCal)

Download (.csv, Outlook, Yahoo! Calendars)

Friday 1

Subscribe

Download (Google Calendar, iCal)

Download (.csv, Outlook, Yahoo! Calendars)

Friday 2

Subscribe

Download (Google Calendar, iCal)

Download (.csv, Outlook, Yahoo! Calendars)

Feedback is appreciated.

I am a rookie and forever learning. If I've gotten something completely wrong I'd love it if you could send some constructive criticism my way.