[Acceptance Letter], [Certificate]
The Google Summer of Code, often abbreviated to GSoC, is an annual international program, first held from May to August 2005, in which Google awards stipends to all students who successfully complete a requested free and open-source software coding project during the summer. The program is open to university students aged 18 or over.
I was fortunate enough to be a part of GSoC 2017 under the organization Oppia. Before I start taking you on my journey I would like to speak about myself a bit - My name is Arunabh Ghosh, an electrical engineering undergraduate at IIT Bombay. I love contributing to open source projects mainly because of the significant real-world impact my work has. Why Oppia - From childhood, I have been interested in working on social causes especially in the field of education.
The primary goal of this project is to engage the learners in a long-term learning relationship with Oppia by providing them with their personal learning space - the ‘Learner Dashboard.’ The dashboard will keep track of the explorations and collections completed by learners, the explorations and collections that are currently in progress, the creators to whom the learner has subscribed to and the list of feedback threads which he/she needs to read or respond to. Also, learners can also create their own curated list of explorations and collections which they may want to play later.
The learner dashboard will help provide an enriching learning experience and will bridge the gap between learners and creators. It’ll be at the heart of the learning process and improve the learner learn faster. Besides, this project will create the foundation for implementing a rich set of features like recommending the right next courses for individual learners and many other such exciting possibilities. This project, I believe, would mark a significant milestone in accomplishing Oppia’s mission - ‘to help anyone learn anything they want in an effective and enjoyable way.’
If you’re a new user and you have signed in for the first time, here’s how the learner dashboard would look:
The page urges you to go out there and explore: learn new things! As you start learning, the page begins to look a bit different. Its primary goal is to track what you’ve learned, which we believe is a crucial step toward mastery. After all, if you don’t know where you are, how will you get to where you want to be?
Here’s how the learner dashboard looks to an experienced learner:
As you can see, all the information about your progress is neatly organized in the learner dashboard. On the left-hand side you can see a menu which tracks different things:
- In Progress: Tracks all of the explorations and collections you are currently completing.
- Completed: Tracks all of the explorations and collections you have finished.
- Subscriptions: Tracks all of the creators to whom you have subscribed.
- Play Later: Tracks all of the activities you want to play later.
- Feedback Updates: Tracks all the feedback threads in which you are involved.
Milestones of the project
- In this milestone, database models are created for tracking the progress of the learner.
- In this milestone, our first ever learner dashboard will be released to all users. The learner dashboard will display the explorations/collection completed by the learner, explorations/collections in progress and the creators to which the learner has subscribed.
- In this milestone, database model is created for tracking the messages read/unread by the learner.
- In this milestone, a new feature is released to all our users. Learners are now able to view all the feedback threads in which he/she is involved. Learners can even respond to any of the feedback threads from their dashboard itself.
- In this milestone, database models are created for storing all the explorations and collections which the learner wants to play later.
- In this milestone, functionality for the play later feature is implemented. Services for carrying out user actions such as adding an exploration to the play later list are created.
Fixing bugs and miscellaneous tasks:
- Introduce the learner dashboard to the users.
- Assign the default dashboard to all users.
- Fix the bugs that were discovered in the learner dashboard.
- In this milestone, a new feature will be rolled out to all our users. A learner will now be able to add explorations/collections to his/her play later list and even rearrange them in the order he/she wants to play them.
To conclude, I would like to thank Google for enabling students to participate in open source development through GSoC, the whole of Oppia community for accepting my project proposal and letting me embark on this fantastic adventure, and most importantly my mentors - Sean Lip, Jared Silver and Rachel Chen for being there to help me. I also want to express my gratitude to all the mentors who are extended their help from time to time.
I never thought I could learn so much in just three months. I really enjoyed building the learner dashboard for all the users of Oppia, and I would like to thank the entire Oppia community for extending me this opportunity.
Finally, I would like to say that this is just the start of the learner dashboard. I believe this project can be extended in many ways and the experiences of learners can be made more awesome than before. I have also promised some future work and J would be more than happy to do that!