Thank you everyone for your helpful comments.
They certianly made a difference to me.
Here are some thoughts I have on developing the idea of explaining how return works in the context of recursion in this challenge: replace-loops-using-recussion.
In my opinion a slightly fuller explanation of the return mechanism within the code is necessary becasue this is the first example in the course where values are “passed around a function” without using a variable.
I think some thought needs to be given to this aspect of explaining the challenge.
Sometimes, in any area of life, we have to use initial explanations that “let us into an idea”, that let us “understamd an idea”, even if the initial explanation of an idea is not strictly correct. Any initial idea should work as a spring board to a full understanding, not as the full understanding.
Learning this way often allows a student to comprehend a bigger picture such that they can make the step towards a correct understanding of a bigger concept.
When such an initial understanding is offered a caveat should be given as follows “it’s not the correct understanding” but the "correct understanding is coming."
Then once the teacher has the class on board with the concepts a further development of the idea is given that rounds thing out.
I feel this is a better approach than trying to take a class from 0 to 100%, or zero to hero, and loosing half the class on the way.
Often teachers forget what they already know, in other words what they already know is so obvious to them that they forget, or do not realise, that there is a “sticking” idea or concept, that they have passed over, that is holding their student class up, that needs some level of explanation.
We have all listened to someone making an explanation, and said to ourselves while listening to them doing so:
“that person does not realise that while they understand the concept inside out they are assuming that everyone else does so as well, and they are missing or taking forgranted some key concepts / steps, becasue those concepts/ steps are second nature to them”
Often teachers make the mistake of not allowing pupils to “find their feet” through concepts.
BTW Free Code Academy is a fantastic platform. The above is intended as helpful criticism so that others can grasp the concept a little more easily.