This rubric allows the student to self-assess his/her programming skills at the very beginning of an introductory programming course. Moreover, if the teacher collects the results, (s)he can gain an overview of how advanced the group is.
| Parameters: | |
|---|---|
| Duration: | 5–10 minutes |
| Participants: | any number of students |
| Instructors: | 1 teacher |
| Class: | any room |
| Resources: | printed rubric for each student |
| Prerequisites: | none |
- The student gains an overview of the core skills that (s)he will learn in the course.
- The student can use this as a motivational element to track his/her progress over the semester.
- Decide on the purpose of the rubric. Do you want to leave it just for the students or do you want to look at the results too?
- Explain that each student will receive a paper that lists five skills crucial for this course. Ask the students to subjectively self-assess themselves in each of the five skills on a 10-step scale from 0 to 9, where:
- 0 means Unaware, or "I don't know anything about this."
- 3 means Beginner, or "I have seen this somewhere."
- 6 means Course Graduate, or "I will get this far at the end of this course."
- 9 means Ideal, or "This is my vision for the future after I pass multiple follow-up courses."
- There are also two unlabeled steps between each of the consecutive steps.
- The distances are ordinal but not interval, which means that, for example, the gap between 0 and 3 is smaller than between 6 and 9.
- Stress that the rubric has only an informative purpose, and it is not graded in any way. Remind the students that this is an introductory course and it's ok if someone is unaware of all the areas.
- (Optional) If you want to see the results too, ask the students to write their name on the rubric.
- Hand out the printed rubric to each student and ask them to fill it out individually.
- (Optional) Collect the rubric from the students to get an overview of the skills of the group.
- This will allow you to get more detailed information than simply asking "Who of you have done some programming before?"
- You have more time to read and possibly evaluate the results and do not waste the time of the lecture.
- Be sure to bring it back for the next class and return each rubric to its owner.
- Instruct students to keep it to track their progress over the semester. Remind them not to lose it :)
- At the final session of the semester, ask the students to fill it again (print a new one to avoid bias). Then, let each of them compare the versions from the first and final session and discuss in a group whether they made any progress.
- This is a very nice touch at the end of the semester.
- The rubric mentions Python but can be easily adapted to another language.
- You can use it at the very end of the first class session in the semester. Then, you can follow on this in the middle or at the end of the semester.
- Beware that the students can lose the paper with the rubric before the end of the semester.
- An online version (for example, in Google Forms) is easier to evaluate and saves paper.
- There is a rubric of teaching skills in the Teacher's Reflective Diary that follows the same principle.
- The paper A Large-scale Evaluation of a Rubric for the Automatic Assessment of Algorithms and Programming Concepts presents a grading rubric for code (see Table 1).
Valdemar Švábenský, 2017.