Inspiration

OpenLearn draws inspiration from many sources but was mainly driven by some of the problems we personally face as students - short attention span, dreadful classes and revisions. We closely examined our thoughts and behaviours in an almost third-person perspective to find that well-hidden splinter that we could get rid of.

What it does

There are two main types of usage for OpenLearn: as an individual and as a group. Although we were much more excited about the group setting, we do realise the need to cater for introverted populations. OpenLearn allows users to open multiple Question Banks which stores Questions that they feel are of particular importance for studying. On top of that, there are self-proposed prizes which users are encouraged to set, as a schmaltzy promise to put in effort into learning. Subsequently, users can draw questions from the Question Banks similar to how flashcards and pop quizzes had been in the past decade.

The group aspect adds on certain complexities which make the bot/'game' a more fun and enriching experience. The type of submitted questions will become more jumbled up (as learners try to look at things from other's perspectives) but would stay consistently on the topic so long as the users play by their own rules. The prize, instead of being an individual promise is a group to the group because only the person who *scores the highest will be gifted by the remaining peers. As for the scoring system, we have intentionally left out a method for the system or users to definite what is right or wrong. This allows us to fully leverage peer learning, for students to discuss what is right and what is wrong - then vote on it. Similar to how Professors do no release their answers sheet for past year papers leaving the students in a deep hollow vacuum during their revision week :')

How we built it

All of the codes are contained within the Python file which has about 500 lines of codes. We utilised Heroku which was is a popular platform to host Telegram Bots - the only downside being downtime after a certain period of daily free time (we will be providing our code to prepare for this too). On Heroku, we utilised the only free database storage solution (that did not require our non-existent credit cards), Heroku Postgres. We also had some help with the starting code after attending the workshop on how to make a Telegram Bot, which was much appreciated.

Challenges we ran into

Manpower, time and coding proficiency definitely did add on some complexity and significantly altered the way we strategise and pace ourselves. And we found ourselves chugging down coffee at the most ungodly hours of the morning just to stay about and finish strong for this competition.

Accomplishments that we're proud of

In all honesty, we would never have imagined developing a fully functional application within such a short amount of time. Sure there will surely be some bugs and glitches waiting to be found but this "time-boxing" experience ourselves really did pleasantly surprise us. We also ended up putting some easter eggs here and there within our code.

What we learned

We entered this competition with barely any knowledge of what we need to know and there were times we contemplated giving up - to submit a half-finished application. But as the saying goes - "Motivation comes from doing". Initially, we thought of developing a simple Python application - without any database or hosting. But as we started doing, we started pulling onboard new technology that we have never even heard of. In retrospect, it was rather amusing to find ourselves fulfilling our own "prophecies" of helping people rediscover the joy of learning.

What's next for OpenLearn Bot by Team HoneyBadger

As we are typing, we are still a few features short in terms of the proper maintenance of the database. Nevertheless, the key features that are required are up and running. Given this, we will definitely be looking into deploying it fullying into production as we were really close to it already as of now. But definitely need more rigorous testing to prevent the abuse of the bot and also to try to innovate more in terms of widening the usage and target group.

Share this project:

Updates

Submission history