To the right is the map for the 1900 N Broadway Ave stop on the Red Line North.
With these maps, I can provide a visual aid to navigation without
compromising the app's ability to run offline. The code for generating
the maps can be found in the maps directory of the repository.
There are a number of worthwhile features that have not yet been
developed, including a "Stops Near Me" geolocation feature, a
crowd-sourcing mechanism for stop landmarks and a dynamic route/stop map
for desktop and mobile users with Internet access. You can see the
complete list of issues and ideas on the project's Github Issues page.
The most significant problem with the application is the relatively
poor accuracy of the departure times. The coarse schedule information
available from official sources
requires that I estimate times for the vast majority of the stops.
Although the estimations are likely good enough to be useful, the
algorithm is crude. Consequently, my next step will be to ask Tyler
Transit for more detailed timetable data. As I mentioned in my last blog post,
it's my belief that governments are much more likely to produce
information if the utility of it is self-evident. Hopefully the
existence of Tyler On Time justifies whatever investment would be required for them to release this data.
Though the basic functionality validates my time investment so far,
this project also has a couple of significant stretch goals. First, I
would like to build an SMS version of the app for users without
smartphones. My friends at the awesome cloud-telephony service Tropo
have expressed an interest in partnering on this project, which
shouldn't be particularly challenging to implement once better
timetables are nailed down.
Second, I would like to convert the bus data into GTFS format and have Google Maps
pick up the results. I suspect this would require an official
endorsement from Tyler Transit, however, the value of doing so would be
very high. It would allow Tylerites and visitors to get directions that
include public transit as a navigation option. It would also allow Tyler
On Time to provide "walk, ride, walk" directions to users of the
application, like this.
Finally, some notes about the technology being used in the app. The stack was heavily inspired by a very successful sprint the Tribapps team executed for the Chicago Breaking News Live application. Similar to that app, Tyler On Time's logic is entirely client-side, backed by a small amount of Backbone.js (for URL routing) and a tremendous amount of Underscore.js (for everything else). The static files themselves are hosted on Amazon S3. Basic styles and
responsive switchy design come from the Skeleton framework. It has HTML5 semantic markup. The data processing was scripted primarily with Python, GDAL and csvkit. Stop maps were produced using TileMill with a modified version of Development Seed's custom base layer for Washington D.C. and data from the Smith County Map Site and Open Street Map. The whole thing was developed on Ubuntu Linux. Everything is open source.
I expect to keep iterating this application for at least a month, so
please leave your suggestions (especially those of you from Tyler).
Hopefully by my next post I will have detailed timetable data and be
ready to move forward with additional methods of delivering that
information to users.
*The application has not yet been deployed to either the
Android Market or the App Store, but those with comfortable installing
unsigned Android packages can download a beta here.