Recursion is a core concept in computer science and programming. Recursively solving a problem involves solving a simpler or previous version of the problem.
Decoding work done
In a video Suzane Menzel reports on the process of decoding recursion:
- Identify Bottleneck: recursion in algorithms 0.00
- Uncover the Mental Moves of the expert 1.26-2.16 Uncover the tacit knowledge of experts about recursion. Recursion can be about structure and occurs when one of the parts looks like the whole; There’s a process part of recursion –building recursion.
- Modeling (1.12) uses analogies; an Alice Through the Looking Glass image shows how the parts look like the whole; also 2:18 Collecting back the Russian Nesting Dolls as an analogy for the process of collecting the pieces in a recursion that is so difficult for students to understand.
- Practice the recursion structure through code reviews 4.20 AND TBL quizzes on several kinds of algorithms. (5.20)
- Motivation 5.56 Team-based learning: students work in teams of 4-7
- Assessment 7.17 n=190 students final test scores were compared with students in previous semesters (non-Decoding methodology) to with Decoding and found significant results on both the list and tree recursion programming. List recursion in semester w/out Decoding B grade avg; in semester with Decoding, A-. Tree recursion from C to B-. As well, student commented that they enjoyed the Decoding approach, because their brains were being trained which “…challenges you to think in a completely new way.” They also enjoyed working in teams.
- Share 8.41: analyze results of the several assessments and Go public with them as in the attached video.
Researchers involved
Suzanne Menzel
Available resources
- Suzanne Menzel - Decoding Recursion in Computing (Youtube video)