Cab Share

Posted: November 29, 2013 in CS3216, Shubham's Posts

I did my third assignment with Yos, Gaoxiang and Tien. I didn’t know them before CS3216.

We thought of many ideas for assignment 3. I was thinking of an event recommendation service. Gaoxiang wanted to do some version of a geolocation based name card. But we ended up make a taxi fare sharing app. I couldn’t convince my team mates about my idea. In hindsight, its good that they were not convinced since I was thinking of using some machine learning to recommend events (a continuation of my summer internship work) and it was probably not the sort of thing appropriate for CS3216. I didn’t see any real use for Gaoxiang’s idea. The idea for CabShare was inspired by one of the problems on

Taxi fare sharing app suddenly made sense to all of us. I liked it because I usually take two cab trips per semester – one going to Changi from NUS after exams, the other coming from Changi to NUS when the semester starts. They cost 30$ each. I hate shelling out 60 bucks every semester when I know that there will be many more people going from NUS to Changi during that period and in an ideal world, I should be sharing rides with them. The idea fitted also because we could fulfil all of the milestones with it like geolocation, local storage, etc..

Working with my team was pretty smooth. Tien and Gaoxiang had used Ruby on Rails before, so they knew what they were doing. Yos is really hard-working and he has done front-end stuff before too. I did geolocation + taxi fare calculation (front-end essentially). It wasn’t like assignment 1 when we used to meet everyday. For assignment 3, our team met less often. However, the communication was good. We used Facebook chat to the max and didn’t really have any problems communicating. We spent a lot of time in discussing and testing the user interface, user flow, etc.. We didn’t let the implementation difficulty dictate the user experience. This was really good to witness and speaks volumes about the quality and motivation level of my team mates.

Working on this assignment was interesting also because this was the time when I had to start spending hours on my FYP. I had totally neglected my FYP during Assignment 1 and so I had to make up for it. Most of the seniors said that doing CS3216 with FYP was hard and I should have listened, but I didn’t. Anyways, thanks to my awesome team mates, I was able to cope with both.

I didn’t feel a lot of pressure working on CabShare. I think this is because I could always rely on my team mates and trust them to not only do their part well but also help me if I face problems.

Also, to calculate the taxi fare, I cheated and was piggy backing on some other service by making requests to their server and pretending it was their website. This is the benevolent service – 😀 If they ever come running after me, I would reiterate what I learned in the first lecture –

ask for forgiveness not permission

The one problem that we faced was deciding what the offline mode should show.Our app is not a content based app, so offline mode doesn’t really make much sense. My team mates didn’t even want to do it since they felt it didn’t add much value (they were right in my opinion too). However, I was a bit more paranoid about my grade, so I convinced them to show at least a message saying the app is offline 😛

In this assignment, I did feel the 7/30 coolness score was a bit low. I still don’t know why the app didn’t work for the teaching staff. In fact, I wish we could demo them our app just like we demo our final projects to them. I completely understand their point of view that we wouldn’t have the chance to demo it to real users. But it would be good to split the coolness marks to 15 (before demo) + 15 (usability after demo). In our case, the teaching staff couldn’t get OTP to work. Now, this prevented them from doing anything inside our app since the app would let them in only if they provided the correct OTP. If we had a chance to demo, even if they wouldn’t have given us more points, they would at least have been able to see how the rest of the app works. This would have led them to be able to comment on the UI in the rest of the app, etc. etc.. I hope Prof Colin agrees with me here and has a demo session for the assignments too from next year 🙂


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s