Initial Bus Transit Directions

Continuing on with my project to get Birmingham’s MAX bus system on Google Transit, I was able to get the Open Trip Planner software up and running. This is letting me visualize some of the preliminary GTFS data to validate it before I continue work on the rest of the routes.  Here’s two examples showing trip planning between various locations. The stop locations are coming from my stop cataloging site.


Riding from Downtown to the west side on Bus #8
Riding from Downtown to the west side on Bus #8
Riding from Highland Park to South side on bus #12
Riding from Highland Park to South side on bus #12

Getting Birmingham, AL’s BUS system on Google Transit

Birmingham’s bus system, the MAX, still isn’t up on Google Transit. As a bus rider, I have found this to be a huge hurdle in getting more riders. After four years of their website having a coming soon, and still no trip planner in site, I’ve decided to take on the project myself.


I started off looking for some free programs to create GTFS data. I was unable to find what I needed as they all assumed you already had a database of your stops, and just need to convert the data.  Unfortunately, the BJCTA does not publicly publish their stop locations, and I’m convinced they don’t even know where their stops are located. This meant I needed to catalog all the stops too.


I’ve started work on software to help me with this project. The project consists of two parts:

  1. A website to crowd source the stop locations
  2. An application to take all the cataloged locations, build routes, create time tables, and generate GTFS data


You can find my website for cataloging stop locations here. This site is designed so that anytime you see a bus stop, take a picture of it with a GPS enabled phone, and upload it. This gives me the location of the stop, plus I can see which routes pass through that stop. So far, with the help of the community, I have cataloged over 800 stops. I am estimating there are about 2500 stops in Birmingham, so we still have a long ways to go.


As the community helps me catalog stops, I am also developing an application that takes those stops, builds routes, creates time tables, and generates all the GTFS data. This program has been developed for me, so it is still very rough around the edges, and only implements what I need, but I have released the source, so you can branch it and use it. It currently only runs on linux, I’m running it under Fedora 18. If you want to branch the code, you’ll need the bzr tool.

bzr branch subte-master


Hopefully, in the next few months we’ll have finished cataloging all the stops and will be able to begin beta testing the trip planner on Google Transit! If you are interested in helping out, please visit the above site and start cataloging. Every picture helps!

Birmingham Neighborhoods on Click that ‘hood

Click that ‘hood is a fun site developed by Code for America where you test your knowledge of the neighborhoods in your city. Being an activist for Birmingham, along with my fondness of maps, I decided I would get Birmingham up on their site. After all, they just need some GIS data formatted properly. No problem, I’ve worked with GIS data plenty of times before!

Unfortunately when it comes to GIS data, neighborhood boundaries are difficult to come by. This is probably because neighborhood boundaries are fluid and aren’t completely defined like political boundaries. The most popular site for neighborhood boundaries,, didn’t have any available for Birmingham. I kept searching and came upon Birmingham’s Map Portal. This site has some great data on it, including all the neighborhoods. It was just what I was looking for, except, you can’t actually export any GIS data off of it. You can only view it and take screen shots. (It sounds like it’s time to get an open GIS site running for Birmingham… maybe my next project?)

I had images of the neighborhood data now, but this meant I still had to draw the vector data to overlay on a map. Using QGIS, openstreetmaps, and finally Google Maps, I traced out each of the neighborhood boundaries as vector data. I have it available in both KML and GeoJSON formats:

You can also view my Google Map of the neighborhoods.

With that, I was able to upload the data to Click that ‘hood. So, go play and see how well you know Birmingham’s neighborhoods!