Friday, January 22, 2010

We Win Awards

Or at least, we are nominated for awards. It was announced last week that OneBusAway is a finalist in the Washington Technology Industry Associations (WTIA) Industry Achievement Awards. We've been nominated in the category of "Best Use of Technology in the Government, Non-profit, or Educational Sector". We are honored that we've even been included amongst the distinguished set of finalists and we're keeping our fingers crossed for when the winner is announced on March 4th.

Washington Technology Industry Achievement Awards Finalist

In other news, OneBusAway was also included in Seattle Magazine's Best of 2009 list. In a funny contrast to our WTIA categorization of govt-non-profit-and-ed, we were actually included in the Shopping and Style section (look towards the end of the article) as one of the best local iPhone apps. The best part about the award is that we get a cool window decal, just like you see in the window of your favorite local restaurant. Except we don't have a window! I'm thinking of sneaking it onto the doors of the UW CSE building... don't tell anyone.

Seattle Magazine Best of 2009

We Do Research

You may have noticed a new "Research" link up at the top of the OneBusAway. I'm actually a grad student at the University of Washington working on a Ph.D. in Computer Science and Engineering. Working on a Ph.D. means doing research and while OneBusAway is first and foremost about helping out bus riders like you and me, it also supports a number of interesting research efforts here at UW.

This was not always the case. When I look back to a year ago, I was working on OneBusAway as a personal side project and worrying about getting kicked out of grad school for spending too much time hacking on OneBusAway. That's why it's so remarkable that we now have a number of papers published on various aspects of OneBusAway and I'm making solid progress towards graduation (though I still worry about getting kicked out of grad school for spending too much time hacking on OneBusAway). You can check out all our work on our research page:

My colleagues at UW working directly on OneBusAway include Kari Watkins, a Ph.D. student in Civil and Environmental Engineering, and Alan Borning, one of my advisors in Computer Science and Engineering.

What kind of research do we do? Kari's work falls into the area of transportation research, while mine is generally in the area of Human-Computer Interaction (HCI). I'm most excited about our latest paper, which has been accepted at CHI 2010, a competitive HCI conference. The paper reports on some survey work we did of OneBusAway users. You might be one of the 480+ respondents who took a survey last August asking about how you used OneBusAway and how your perceptions and usage of transit had changed as result of using OneBusAway.

If you are a dedicated user of OneBusAway, the results probably come as no surprise: users of OneBusAway showed a number of positive changes. For example, 92% of users reported an increase in overall satisfaction as result of using public transit.

Chart - Change In Satisfaction with Public Transit

What's more, users of OneBusAway reported using public transit more frequently and spending less time waiting for public transit. Users of OneBusAway also reported an increase in feelings of safety and even reported walking more.

The safety result is interesting, as real-time tools like OneBusAway support riders who might need to make a decision about waiting for a bus late at night in a sketchy area. The result about walking was unexpected, and we did some further surveys to figure out why users were walking more. Users reported that OneBusAway allowed them more flexibility in deciding when to walk to a different stop without worrying about missing a bus that might be just around the corner. Some users walked to find a faster route home and others for exercise, among various reasons given.

Our results join a growing body of work that support the value of real-time transit information to riders. However, our results come with the regular caveats of self-report bias in the survey results and lack of control group. That's while our next project is focused on using instrumented smart-phones to create a very accurate picture of how selected study participants are using public transit. What is the exact tipping point between when someone gets in a car vs when they take a bus vs when they walk to their destination? We hope to help answer that question.

I consider myself lucky as a grad student that I've found a research project that is not only leading to a publication or two, but is also immediately useful to my community. Now all I need to do is graduate at some point!

Saturday, January 9, 2010

Changes to data from King County Metro

One of the other big changes in the last week is the move to a new data source for King County Metro. Traditionally, schedule data has only been available as a raw database dump from KCM's scheduling system. In the transit hacking world, the Google Transit Feed Spec (GTFS) is pretty much the ad-hoc standard for exchanging schedule data. GTFS is the format internally used by OneBusAway and I wrote a converter for KCM's custom data to get it into GTFS.

KCM, hoping to encourage developers to work with their data, held a developer workshop last October where they announced the availability of their own GTFS feed. While the feed is a big improvement, it still has a number of issues (holiday scheduling errors, route label errors) that I got a chance to work on over the winter break.

The upshot is that OneBusAway is now using KCM's GTFS feed with some custom modifications. The modifications include better stop names, fixes for interlined routes downtown and at UW, and finally correct holiday scheduling information.

Let me repeat that: we've got a fix for the interlined routes issue. This has been a major problem with KCM's data in OneBusAway since day one. To quickly summarize, a number of downtown Seattle routes enter downtown as one route and leave as another. The tricky part is where they make the switch. Most routes in practice switch right before they enter downtown. Unfortunately, KCM's schedule database often showed the switch happening well into downtown. The upshot is that many people would check OneBusAway for a particular route and not see it because it was mislabeled in the system. For example, as a Ballard resident, I'd often check for a route 15 or 18 from Pioneer Square, but see route 21 and 56 instead. This affected a ton of routes:

1 => 36, 10 => 12, 11 => 125, 12 => 10, 124 => 26, 124 => 28, 125 => 11, 13 => 2, 13 => 3, 13 => 4, 131 => 24, 132 => 19, 132 => 24, 15 => 21, 15 => 22, 15 => 56, 15 => 57, 17 => 27, 18 => 21, 18 => 22, 18 => 56, 18 => 57, 19 => 132, 2 => 13, 2 => 3, 21 => 15, 21 => 18, 22 => 15, 22 => 18, 222 => 233, 23 => 28, 233 => 222, 236 => 238, 24 => 131, 24 => 132, 249 => 921, 26 => 124, 27 => 17, 28 => 23, 3 => 13, 3 => 4, 33 => 39, 39 => 33, 4 => 13, 4 => 3, 43 => 44, 49 => 7, 5 => 54, 5 => 55, 54 => 5, 55 => 5, 56 => 15, 56 => 18, 65 => 67, 68 => 31, 7 => 49, 921 => 249

Through some additional data made available by KCM and through data collected on our own, we've written a tool to fix KCM's schedule data to fix the interlined routes issue.

That said, even though the feed comes with a ton of fixes, there are also some issues with the data. For example, I've gotten a couple of reports of bad data for the 255 headed to Kinsgate. If you notice anything, definitely let us know.

Changes to the OneBusAway iPhone App

It's been a busy couple of weeks for OneBusAway. There have been a number of changes, both major and minor, that hopefully improve the usefulness of OneBusAway. In this post I'm going to talk specifically about changes to the OneBusAway iPhone application.

In late December, the OneBusAway iPhone app 1.0.1 update went live in the app store. This was primarily a bug fix release. First and foremost was a work-around for some bugs in Apple's CoreData database libraries that was causing random crashes of the app. The bug was a bear to track down, but based on crash-report data I'm getting from Apple, it seems to have done the trick.

In addition to the bug fixes, there were a few minor UI tweaks. For example, when we don't have arrival prediction data for a bus (listed as "scheduled arrival" in the UI), we also change the color to black to make it more obvious. See Link light-rail in the following figure, for example:


In addition, we made some changes to stop icons that no one probably should have noticed until about 10 minutes ago. See if you can spot the change:


That's right, you're seeing light-rail and heavy-rail icons! What changed?

The big change is that after six-month of hacking, we're now running OneBusAway with multi-agency support! To kick things off, we've added a lot of additional Sound Transit data. That means, for example, that you can see the Sounder schedule using the OneBusAway iPhone app:


More new agencies are hopefully coming soon (Pierce Transit for starters), but we wanted to start small to make sure there were no major bugs. Note that the additional Sound Transit data is only active in the iPhone app (and any other apps that use the OneBusAway API). We're working to get it live on the main website soon.

Though we've done our best to make these changes seamless, there's always the chance for bugs. If you notice anything weird or have any problems, be sure to let us know. In the meantime, thanks for using OneBusAway!