Description
@junedev brought up a great point in the discussion of #369 that we need to talk about the underlying reason for why learning mode even exists as a thing in Exercism.
I'm not exactly sure where this belongs though, so for now I'm deferring the problem :)
We can probably formulate something based on the original "rationale" document from when we were just starting to develop v3: https://github.com/exercism/v3/blob/main/docs/rationale-for-v3.md
Here's an extract that is relevant (though there's more in that doc, so we probably want to go back and look at that again).
In learning programming languages, it is essential to understand a concept, work out how to apply that concept, and then practice using that concept in different examples.
At the moment I don't feel like we get this right. We let a student experiment and get it wrong, then give some hints, then ask them to work it out from that and maybe receive more hints. I'm not convinced that at the end of an exercise a student really understands what they've learnt, or how to apply it in the future. This is validated by the fact that on later exercises students often make the same "mistakes" they made early on, or don't apply the techniques they've been introduced to.
I believe the key area where we are failing our students is in not having a clearer separation between explaining a concept and giving the student an opportunity to play. At no point does Exercism actually go about teaching the concepts that someone needs to learn a language - we rely on mentors giving the correct hints when a student makes a mistake. I believe we need to rework core and side exercises to achieve this. I propose renaming "core exercises" to Concept Exercises and structuring them so that they introduce a specific concept in the instructions and then challenge the student to use that concept in producing a solution; and renaming "side exercises" to Practice Exercises, which are designed to allow students to solve an arbitary problem, with the aim of them making use of the concepts they have learnt so far.