Skip to content
This repository has been archived by the owner on Sep 25, 2019. It is now read-only.

Google Summer of Code 2015

WANG QIANG edited this page Feb 20, 2015 · 25 revisions

Coursemology is a learning platform with gamification built into its core. Students will enjoy earning Experience Points, leveling up and scaling the leaderboard. For educators, Coursemology comes with powerful monitoring and analytics features that allow near real-time tracking of each students' learning.

Whether you are a high school teacher or a college professor with a cadre of teaching assistants (or one of the teaching assistants), Coursemology can be customized to suit your needs.

Try out the platform here: http://coursemology.org/courses/186/

  • Ruby on Rails.
  • Get to work

Have a chat with us!

If you're interested in participating in GSoC 2015 as a student, you should join the `coursemologydev`_ mailing list and post your questions and ideas there.

Gitter account.

Give them a trail as a student. To try. Create a course for them.

Brief explanation Whether we’ll add a new programming language to our system depends on the requirements of courses. Currently the programming languages are hardcoded, however, it works well because we don’t have many languages. To think further, new teachers would require more programming languages and we need a framework to make inserting new languages more easy.
Expected results
  • Provide an interface to add/delete programming languages
  • Not require code modification on other parts when adding/deleting a language
  • Including code evaluator for code evaluation of different languages
Required skills Ruby on Rails
Difficulty level High
Mentor(s) Joel Low, Wang Qiang
Brief explanation Code and get evaluation online is a main feature of Coursemology. The code inside code box is dynamically rendered (grammar highlighting). Currently we are using CodeMirror for code rendering. However, we want a more general and global code rendering solution, which supports various languages and provides more flexibility.
Expected results
  • Provide an interface to add/delete programming languages
  • Not require code modification on other parts when adding/deleting a language
  • Including code evaluator for code evaluation of different languages
Required skills Ruby on Rails, JavaScript
Difficulty level High
Mentor(s) Wang Qiang, Jason Yeo
Brief explanation To make Coursemology looks more like an application and improve user experience, we want the forms in settings/management pages to be automatically submitted after any changes made by user.
Expected results
  • There is no save/submit button in settings/management pages and any changes made by user should be immediately saved on server
  • If the changes are not valid, they should not be saved and hints should be displayed
  • If user’s browser doesn’t support JavaScript, the original view with save/submit button should be showed
Required skills Ruby on Rails, JavaScript
Difficulty level Medium
Mentor(s) Weiqing Toh, Jason Yeo
Brief explanation In Coursemology students can submit code which will be auto-graded by our system, and teachers are supposed to give grade according to the auto-graded results. However, sometimes students' code cannot be tested due to mistakes/typos and teachers might to slightly modify students' code and get the evaluation results again.
Expected results
  • Teachers should modify code in a separate view/tab
  • Provide proper buttons to let teachers re-run/revert the code
  • Students' original code should not be modified
Required skills Ruby on Rails, JavaScript(Ajax)
Difficulty level Medium
Mentor(s) Jason Yeo, Brian Koh
Brief explanation There are currently only MCQ/MRQ and coding auto-graded questions. We would like another auto-graded questions where students enter a string and the auto-grader will match the string against the correct answer provided.
Expected results
  • Hints should be showed when students' answers do not match any given answers.
Required skills Ruby on Rails
Difficulty level Low
Mentor(s) Brian Koh, Weiqing Toh