On Friday morning, a friend from another college asked me to post to the private UCLA ridesharing Facebook group for her since she needed a ride from LA to San Diego. I've never used the group so I kind of forgot it existed, but I was surprised to see its 4,500 members post regularly (maybe once/hour). That said, it was the most cluttered, inefficient space to organize rides, and there shockingly isn't an already-existing, university-limited ridesharing platform.
Taken aback by the chaos, it seemed to me like it would be much, much simpler to upload the simple rideshare date/location/contact information to two respective tables: one for requests, and one for offers. Like with the (verified UCLA-only) Facebook group, these tables should be easy to join and view, but only for authenticated students (to add a sense of safety). Also, the contact information should remain fairly private.
The idea was fairly simple, but I have never coded a web app before, which made this a good introductory project. Friday night I started with HTML (using Brackets, also new to me), then CSS and JavaScript Saturday, which led to Firebase, JQuery, Node.js, and finally Bootstrap late into Saturday night. Oh, and basic Github for this submission.
It's probably obvious that there were many many challenges stemming from this complete lack of experience. How to start, how to make code become a product, how to input and store data, how to break away from Brackets (right after I learned to use it), make a database (the Firebase cheater version anyways), use a command window for node.js, the list goes on... The one remaining challenge I have yet to solve is how to cancel requests once the time has passed, but I believe it should be possible using Moment.js.
I know my site isn't a work of beauty, but hey, I knew basically nothing coming in (basic C++) and came out with a fairly functional website in these 36 hours, so I'm really happy with it! I would love to give HUGE shoutouts to my mentors Trever, Bhuwan, Aneesh, and Jenn for help with the icky back-end server/authentication stuff and guiding the general flow of the site. :)
Not only did I learn the foundations of 8-9 (?!?!) new languages/programs, but I learned a lot about how to learn new languages (the Internet is a wonderful, wonderful place). I really just didn't have an idea of what web development involved until TreeHacks, but the people I've met here have been fantastic and so helpful, I really couldn't have done it without their guidance and suggestions.
As evident by the traffic in the disorderly Facebook group, UCLA is ideal for such a rideshare because of its massive student body which is mostly based in California, so I'm not sure if expansion to other schools would be as beneficial. For me, the immediate next steps are to get the site to a live domain name, make sure each page is secured (learn cookies), and let the public test it.
Big thanks to the TreeHacks organizers for putting on this lovely event! :)
Log in or sign up for Devpost to join the conversation.