In a city with 180km of traffic jams, the only way to eliminate traffic is to get cars off the road. Roll Together combines current driving data with a crowdfunding platform to allow citizens to directly support new Sao Paulo metro lines covering their commute.
What it does
Our system starts with thousands of OpenXC-equipped connected Ford cars uploading their real-time GPS trip data to the Roll Together cloud. The Route Data Cloud analyzes all of the trip data and proposes new Metro routes that cover the most popular and most congested driving routes in the city
The Roll Together mobile app also lets our users browse potential new routes for the Sao Paulo Metro and see how the construction of a particular new route could reduce their commute time as well as save them money.
Following in the footsteps of successful crowdfunding platforms such as Kickstarter and Indiegogo, Roll Together lets users invest in their community via a dedicated crowdfunding platform. Through the mobile app, our users can pledge money toward the construction of new Metro routes, share their pledges via social media, and see which routes their friends have pledged support for.
Roll Together also includes an administrative dashboard which allows government officials and policy makers insight into both realtime and historical trip data to improve short term traffic management initiatives.
The administrative dashboard also provides a summary of the proposed Metro routes and associated pledges from the Roll Together crowdfunding platform. Public transit planners can use this information to organize and demonstrate support for new construction initiatives which will have a long-term impact on the traffic situation in Sao Paulo.
How we built it
The Roll Together Route Data Cloud backend was implemented as a Python/Flask REST API backed by MongoDB as our database. This system keeps track of trips our users have made, and computes routes from those trips using a nearest neighbor clustering algorithm. It also exposes a REST endpoint which OpenXC-equipped vehicles can use to upload realtime trip information in a standardized JSON format.
The Roll Together Crowdfunding Platform backend was implemented as a Node.JS application which talks to the Route Data Cloud, serves up the admin dashboard, and provides an API used by the mobile app.
The Roll Together Mobile App was implemented using the Ionic / AngularJS mobile application framework running on top of Apache Cordova. For this prototype, we only tested and submitted an Android build, but our decision to use Cordova makes developing and releasing an iOS app is extremely easy.
The Roll Together Admin Dashboard was implemented using AngularJS with Angular Material theme, integrating charting support from Chart.js. It pulls data from both the Route Data Cloud and the Crowdfunding Platform and renders it on a site designed for desktop browsers.
Challenges we ran into
Since we don’t live in Sao Paulo, everything we understand about the traffic situation comes from online research and talking to our friends. We know that it’s hard to capture the needs of our users without experiencing the traffic situation first hand, however we believe our system addresses many of the very real pain points experienced not only by Sao Paulo, but every crowded metropolitan area.
Another challenge we ran into is that our platform was designed to automatically capture GPS trip data from OpenXC-equipped Ford vehicles, however neither of us own one so we couldn’t do any end-to-end integration testing. Instead we relied on reading online documentation and using simulated data to build out our application.
Accomplishments that we’re proud of
As a small team of just two individual developers, we were very proud of our ability to create a fully featured app from scratch that addresses the short-term and long-term needs of Sao Paulo’s commuters.
Not only did we give users a way to support the Metro lines they care the most about but we helped them identify which routes those were through analyzing their current driving behavior.
We also created an easy way for city and transit officials to gather information from and engage with their citizens through our administrative dashboard.
What we learned
In brainstorming ideas for this challenge, we came to appreciate just how difficult a problem traffic congestion actually is. Any solution must balance the needs of all stakeholders, including commuters, auto manufacturers, public transit officials, and policy makers.
We challenged ourselves to think outside of the box and build something that could have a long-term impact on how ordinary citizens engage with their community to make it better. While researching existing platforms such as Kickstarter and Indiegogo, we’ve learned about just how powerful the crowdfunding concept is and how much of an impact it can have.
We also learned that building a prototype and demo is just the first step. For each feature we implemented, we came up with another dozen that we wished we could also add. For each minute we talked with others about this idea, we wished we could spend an hour more. And for each user we had test our app, we wished we could launch with a hundred more.
What's next for Roll Together
We’re excited participate in this challenge and were very happy with everything we were able to build out for Roll Together from scratch in such a short amount of time.
The initial reaction we’ve seen for Roll Together has been tremendously supportive - many of our friends who have tried the app wish they could start tracking their own trips and pledging to new transit routes in our home city of San Francisco.
There is still much to do before Roll Together can be launched in a new city. Based on the feedback we receive from this challenge, we will make some changes to our platform, try to raise funding for Roll Together, and choose a city where we can launch our first public beta. Who knows - perhaps we might find ourselves in Sao Paulo before too long!