Reflect on Learning from Failure (Framework)
|Title||Reproduce a Bug Activity|
|Overview||High level description of what the student will do|
|Prerequisite Knowledge||What topics and tools does the student need to know prior to beginning this activity?|
|Learning Objectives||What should the student be able to do after completing this activity?|
Is there background reading material?
Are there other activities the student should have done first?
What is the rationale for this activity?
Include helpful hints to faculty here.
Describe framework and then use a concrete activity to apply our ideas for reflection on learning from failure, probably version control and issue tracking activities, which are already defined, and extending them for our perspective.
Rationale for our framework:
- Students will get critiqued in the world they'll enter into. They need to learn how to deal with that in a constructive way.
- Go look at someone else's code - can you understand it? If yes, students will start feeling more confident. Also, it reinforces how important code documentation is.
- Model behavior for students in the classroom and have students suggest what to put in there, then discuss them. How can that be scaffolded?
- Here’s some code that’s not working, do a quick quiz in class and let them find out why. Then put up “this is what most people think why it doesn’t work. Now go try fix it.”
Outcomes / deliverables (students’):
- Micro-reflections (throughout an activity; in class)
- Can be done at regular interval (e.g. every 30 minutes in class)
- Commit messages where students state their current stage of thought/problem-solving process, snapshot of where they’re at.
- If collecting them in a different place is preferred, a shared doc is an option.
- Index card / Post-its if computers aren’t in use (and public, can optionally be categorized), but would have to be written up / redistributed / photographed if they are supposed to be available to the students for macro reflections.
- There is a social aspect to sharing them as tangible artifacts help students to relate and see the social skills for a moment instead of the technology. Color coded notes/notecards could be used for various categories (technical, communication, big picture, etc.)
- Mini-reflections (weekly; outside of class):
- Prompt a different category every week: soft skills, technical aspect, communication, organization
- Final/macro/meta Reflections (1-3 at milestones/checkpoints; outside of class):
- Milestones: start of the semester (survey), middle of semester (survey), end of semester (survey and essay)
- Surveys: use existing FOSS surveys and maybe add a couple of questions
- Short essay with reflection at the end (using their micro reflections) and the prompt to reflect on how they learned from failure.
- Progress visualization over an academic term...
- How can we (help students) visualize progress? Charting on the following fronts:
- Let students set a goal - may be unrealistic but they engage more if they can contribute creatively
- Level of frustration, just for giggles, hoping it goes down over the semester ;)
- Learning goals / objectives (for the course, as determined by instructor)
- Data collection via Moodle/BlackBoard/whatever your course is already using
- Roger Von Oech - A Whack on the Side of the Head: How You Can Be More Creative - http://courses.washington.edu/art166sp/documents/Spring2012/readings/week_3/AWhackOnTheSideOfTheHead.pdf
What should the student do?
What will the student hand in?
Notes for Instructors
The remaining sections of this document are intended for the instructor. They are not part of the learning activity that would be given to students.
How will the activity be graded?
How will learning will be measured? Ideally, there should be a way to measure each of the objectives described above.
How will feedback to the student be determined?
Include sample assessment questions/rubrics. Feel free to indicate that the activity itself is not graded, however it would be helpful to include any questions that might be used at a later date to interpret learning, for example on a quiz or exam.
The form of the assessment is expected to vary by assignment. One possible format is the table:
|Criteria||Level 1 (fail)||Level 2 (pass)||Level 3 (good)||Level 4 (exceptional)|
What should the instructor know before using this activity?
What are some likely difficulties that an instructor may encounter using this activity?
|ACM Knowledge Area/Knowledge Unit||What ACM Computing Curricula 2013 knowledge area and units does this activity cover? ACM_Body_of_Knowledge|
|ACM Topic||What specific topics are addressed? The Computing Curriucula 2013 provides a list of topics in Appendix A - The Body of Knowledge (page 58) - https://www.acm.org/education/CS2013-final-report.pdf|
|Level of Difficulty||Is this activity easy, medium or challenging?|
|Estimated Time to Completion||How long should it take for the student to complete the activity?|
|Materials/Environment||What does the student need? Internet access, IRC client, Git Hub account, LINUX machine, etc.?|
|Author(s)||Who wrote this activity?|
|Source||Is there another activity on which this activity is based? If so, please provide a link to the original resource.|
|License||Under which license is this material made available? We request that you pick a Creative Commons license. See http://creativecommons.org/licenses/ for general information. Suggested text: This learning activity is available for use under the Creative Commons Attribution-ShareAlike 4.0 International License. Attribution need not include a link back to this site.|
Suggestions for Open Source Community:
Suggestions for an open source community member who is working in conjunction with the instructor.
The blank template for this page is licensed under a Creative Commons Attribution 4.0 International License Anyone using this template need not include a link back to this site as part of attribution.