At CS, we’ve been working with open source transit software like OneBusAway and OpenTripPlanner for many years, and we believe in the community benefits of that approach. So when a new open source software application for transit appears on the scene, we get very excited. When Sheldon Brown, CS’s Director of Engineering, attended a presentation by the MBTA at the 2020 Transportation Camp DC of their work on Skate, he immediately understood how it might extend our own engagement with real-time bus information: “We’re used to translating bus location data into customer information, but Skate is a really nice way of using the same information for operations.”

The MBTA Customer Technology team created Skate to help their bus staff in the field manage bus operations. You can read more about their approach and development process here. They worked closely with their internal customers to make the app intuitive and user friendly, and they’re still pushing along the roadmap to add features and make Skate more powerful. But most importantly for us, they also shared their experience and made the code open source, so others can build on their work.

Adapting Skate

We wanted to understand how much effort it would take to get Skate to run with data from another transit agency. Lydia Chang, one of our developers, brushed up on her Elixir and got to work adapting the application.

While Skate is based on GTFS and GTFS-RT standards, we know from experience that every agency can have slightly different data flavors. We had to turn off certain custom data fields that the MBTA uses, and also take into account differences in how agencies treat timepoints in their schedule. Loading in schedule data was also a challenge since the original configuration was optimized for a specific data environment. But in the end, we got the application running with live data and could admire the buses running up and down the route ladders – with the occasional “ghost” bus coasting along.

Skate's Route Ladder


Our next step is to talk to our transit agency partners about Skate and see how it might help their bus operations. Our little experiment was just one piece of the puzzle, starting to align the technical framework. The application’s ultimate success lies in the hands of potential users in the field at other transit agencies!

Open Source Software in Transit

We hope that with some industry engagement and new features, Skate can grow into a sustainable open source application like OneBusAway, supported by many agencies and a robust developer community. Open source can be a lot of work, but at CS we believe it can be powerful in the transit industry because many organizations face similar challenges calling for a shared toolkit, albeit with adaptations and integrations to account for local needs. If you are interested in Skate or other open source transit software, please get in touch!