Suggestion for Exercises linked to Learning Concepts

This is a small and really minor thing (and probably I just stumbled on it due to my way of working [opening all exercises I want to work on in a queue of browser tabs and then going through them and closing them one by one]), but I often find myself reading an exercise and then wondering if that exercise should be solved with a certain learning goal in mind.

If I click on a learning concept (e.g. Ruby: Instance Variables) I can find all the associated learning exercises on the side, so I know for instance that Matrix, Two Bucket, Simple Cipher, etc. should be solved with Instance variables in mind. This is however not true for the other way round; if I somehow find myself on the exercise Bob for Ruby, I cannot see if this is connected to a concept (and which) or if it is not, and I would then need to hover over every exercise circle on the learning concept map (and might end up not finding it there at all).

Therefore my suggestion: I would love to see a back-link to a concept the exercise is associated with on the exercise overview page.

When Exercism was invented, there were only practice exercises. They didn’t really have groupings, just a bunch of discrete exercises. Then the concepts and syllabuses were created. Some tracks associated the existing practice exercises with the concepts, but some did not. Many tracks still do not have a syllabus at all.

All that to say: not every practice exercise will have a concept to link to.

Having said that, I think it’s a great idea to be able to link an exercise back to a concept document, if a link exists.

Chiming in to say that it can get even more complicated: many practice exercises can link to multiple concepts – and depending on the approach a student takes (recursion vs looping, helper functions, various OOP or functional strategies, etc, etc), associated concepts can vary widely. Its rarely a 1-to-1 relationship, because the practice exercises were designed to be open-ended and conversation provoking, which includes exploring lots of different ways of solving the problem.

On the Python track where we have associated practice exercises to concepts, I am often suppressing the urge to prompt students to “go back and revisit practice exercise X, now that you’ve learned additional strategies” – because (for example) once you learn something like recursion or comprehensions, exercises that practice loops become excellent ones to also practice looping alternatives.

Agree - and having a sort of “suggest the following to practice this concept” blurb/note/section on concept docs as well…although that becomes harder to catch attention if a student has already completed an exercise through an earlier concept association.

1 Like