Skip to content

Gamification #77

@anandology

Description

@anandology

We need to create a score for every student to encourage them to make progress in the course and also help mentors to see how the students are performing.

Tasks

  • create a Student Score doctype with the fields email, cohort, subgroup, executions, exercises, sketches, score
  • a progress page for each subgroup with score for every user
  • compute daily active users per subgroup and cohort (also weekly active users) - @nikochiko
  • compute #executions and #exercise-submissions
  • Show the score on nav bar
  • Page to show score activity (Student Score Activity)

Doctypes

  • Student Activity
  • Student Score Activity
  • Student Score
  • Cohort Daily User Activity

Server Scripts

  • Code Run -> Student Activity
  • Exercise Submission -> Student Activity
  • LMS Sketch -> Student Activity
  • Student Activity -> Student Score Activity
  • Student Score Activity -> Student Score
  • Student Activity -> Cohort Daily user Activity

Formula for computing score

bool(executions) + bool(sketches) * 5 + bool(exercises) * 4 + exercises

This is updated on every execution, sketch creation, new exercise submission.

Active User

If a person has a code run or a sketch or exercise submission, he/she is considered active.

We need a doctype: Cohort Daily User Activity

  • email
  • course
  • cohort
  • subgroup
  • date

unique(email, cohort, date)

on new-execution or new-exercision-submission, or new-sketch:
ensure (email, cohort, date) entry exist.

Score Activity

As a student I should be able to see all the activity that gave me score.

  • there should be a web page that lists all the activities that contributed to my score

For example:

  • ★1 Good job! you solve exercise 1.2.
  • ★5 Yay! You've created your first sketch!
  • ★5 Yay! You solved your first exercise!
  • ★1 Congratulations! You executed some code on mon school for the first time!

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions