As university students and hackers, we aim to resolve our daily problems. One of our main concerns in university is to maximize our learning experience. We always ask ourselves, how can students improve their learning experience outside lecture and tutorial classes? In addition, how can students earn extra savings to support our financials? Our aspirations to solve these problems guide us to finally come up with a peer-to-peer tuition platform, TeachMeLah.
What it does
TeachMeLah acts as a platform for tutees and tutors to send and accept tuition requests for all courses across majors. The tutee can select the course that he/she wants from the list. Afterwards, he/she can select the timing and tutor which he/she is comfortable with. The tutor profile includes important information such as GPA category and his/her experience.
Likewise, the tutor registers, selects his availability, and chooses which course he/she would like to teach. After registration, the tutor can choose to accept tuition requests. When the tuition ends, the tutee needs to confirm and transfer a certain amount of money to the tutor using PayPal. Hence, the tutee will be able to enhance their learning and the tutor will earn some money while reinforcing their understanding.
How we built it
We believe that this application is most suitable for mobile applications. We decided to use Ionic framework with Node.js Express backend and MongoDB as these frameworks allow quick prototyping. In addition to those technologies, we also made use of websocket technology to build a chat feature in our application. This chat feature allows tutees and tutors to communicate before their schedule and understand each other's learning and teaching style. Our application is also integrated with the PayPal payment system. We use the PayPal payment system to ease fees transactions between tutees and tutors.
Challenges we ran into
- We have not used Ionic framework for quite some times and so we have to frequently consult with their documentations.
- There are many cases to cover when we were building the chat backend system from scratch.
- Native websocket API does not work well with AngularJS digest cycle. We only realized the cause after spending a lot of time debugging.
- We have never used the PayPal payment system and at some points we were confused by the API documentation.
Accomplishments that we're proud of
We built an application prototype which can handle end-to-end interactions between tutors and tutees which include registration, user login, tuition request creation, chat, and tuition fees payments in less than 24 hours. Moreover, we can leverage on this prototype to develop a more complete peer-to-peer tuition platform with more comprehensive features in the near future.
What we learned
- We learnt more about the increasing trend of consumer expenditures in education industry in Singapore. Thus, we can conclude that education is becoming a more important factor to Singapore society.
- We learnt how to manage our time properly given that there are so many features we would like to cover and there is only 24 hours.
What's next for TeachMeLah
- Publication of our application in various universities starting from NTU.
- Improvement on the software architecture in order to improve its extensibility, readability, and maintainability.
- Creation of more comprehensive tutor reviews to boost his/her own credibility.
- Addition of new features such as notification system, multiple scheduling, and recommendation system based on the tutees' past performance data.