As students at UCLA, we have recently been introduced to beacon technology through our involvement in a club. We were amazed by the versatility and cost-effectiveness of such novel devices, and we really wanted to explore the area of public good with them at LA Hacks. During the brainstorming stage, one of our teammates, Hannah, recounted her tale of taking the wrong train and ended up going the opposite direction. We decided that it would be a perfect fit to attempt to tackle the problem of instilling more user-friendliness into public transportation. Thus, Ryder is born.
What it does
At its core, Ryder uses beacon technology to both notify users of and help them identify nearby buses and trains. This can be applied to help plan more efficient and less worrisome public transit experiences. It does this with data-efficient technology at a reliable speed, all wrapped up in a clean and approachable design.
How we built it
Ryder is built using the Gimbal SDK for communication with the beacon hardware and Swift for everything else in the iOS app. Using Firebase’s Cloud Firestore, a flexible real-time database service, we are able to deliver accurate transit timings at scale. We also make use of the much appreciated LA Metro API (as provided by NextBus), a part of City of Los Angeles’ Open Data initiative.
Challenges we ran into
Despite the availability of a set of standardized data for buses throughout the nation, having a common database structure for all transit types (not just municipal buses) was a first challenge we met. To remedy this, we resorted to taking a subsection of the available data and fix it to provide a more reliable experience for a Minimum Viable Product.
On a slightly more specific note, we ran into issues with coloring in the iOS SDK vs. coloring on UI design applications (like Sketch), although we remedied those after some experimentation.
Accomplishments that we're proud of
We designed a sleek and user-friendly UI, even - or especially - for users unfamiliar with public transit which works intuitively with our scalable use of transit data. We also ventured out and used a rarely thought-of API to create a helpful and unique application of a real-world problem. The idea for the hack came through fairly quickly and we followed through thereafter with great direction and focus. We seemed to gauge our timeline and capabilities accurately and our use of Git as a version-control system was particularly well-executed.
What we learned
Transit data is actually a bit more standardized and well-maintained than originally thought, which was a nice thing to learn actually.
What's next for Ryder
Future plans for Ryder include integrating the Google Places API to allow users to create routes in advance and preemptively subscribe to notifications to all buses and/or trains along that route. In addition, a logical next step is to not only use other cities’ transit data and APIs, but also perhaps work with them towards a more open-data, open-source future.