Everyday to get to school I would carpool with a friend who lived across the neighborhood. We would leave everyday at exactly 7:20, and if I was late that meant we were late to school and received tardies. I wanted to use Uber because it would cost less than $6 for my short rides, however because of Uber's lack of reliability I couldn't. It could take anywhere from 1-15m, and I wake up at 6:51, leave at ~7:00, so even if I immediately called the Uber it could still be too late or they could be forced to wait up to ten minutes. I was forced to use more expensive Uber alternatives that allowed scheduling. It seem illogical that cheap, convenient Uber couldn't be used more reliably.
What it does
Schedule future rides and even create unique recurring schedules.
How we built it
We used Ionic and Angular to create our front end, we used ngOath to have top of the line security and google cloud engine for our database and server.
Challenges we ran into
ngOath. The final and hardest part was setting up the Authorization to verify the user account and data and create top of the line security to protect both our users personal information and Uber's data. Uber actually won't even let you use call a car unless you implement their top of the line security protocols.
Connecting the server to the fronted was additionally a major challenge for our team, especially given the time constraints.
Accomplishments that we're proud of
There are four major elements of the app that were significantly difficult to code.
- The UI. We were inspired by material design, however we thought we could improve on it and make it better. We custom styled almost the entire app.
- The database. Our app has a working user database that stores rides and all the ride details. It's important the Uber works even if you're phone is dead so all processing and data is manipulated on the server.
- Uber's APIs. We successfully integrated numerous Uber API's. Connecting the server to the front also was not easy.
- ngOath. The final and hardest part was setting up the Authorization to verify the user account and data and create top of the line security to protect both our users personal information and Uber's data. Uber actually won't even let you use call a car unless you implement their top of the line security protocols.
What we learned
We learned that authorization is a complete pain, how to stay up all night, and how to take an actual design (wireframes) to a finished product in an extremely short amount of time.
What's next for Uber Scheduler
We need to finish working out the bugs and smoothing out the app.