Suggestion to make lessons even more effective

Preamble: This is in the hopes of adding some additional context to this now-closed post about explaining the content. I know that @jwilkins.oboe and @JeremyLT provided some comments there, and I hope this additional feedback is helpful toward the plans mentioned. Also, I am a professional trainer in the hospitality space and have deep experience and expertise in learning and development and lesson planning, for what that’s worth. Lastly, as a polyglot, I am comfortable learning new languages, their grammar (syntax), and vocabulary, and this is no different an exercise. Sorry for the long post.

Two suggestions:

  1. In the instructions, add the “why” or result of the prompt (I understand why this may not be desirable in various cases) and/or,
  2. the Success message, should reiterate/explain the impact of what you just performed.

I have spent almost the entirety of the JS course trying to understand the practical impact of the code I just wrote. As things get more complex, this compounds. When the lesson requires me to recall what I’ve learned (like in the DOM manipulation*) with very limited instruction, I really struggle because I just spent 170 steps being told what to do but not why.

For example, on this step of the project I’m working on, I was able to complete it, but I don’t entirely understand what it’s doing in my context. The instructions focus on the “what” and not the “why” in the context of building this player nor in the context of the UX.

In the lesson prompt it says, "In the example above, the callback function is (number) => number * 2, and it’s run on each element in the numbers array. The map() method then returns a new array with the results." and then says, Pass in a callback function to the map() method. The callback function should take song as a parameter, use the arrow function syntax, and have an empty body.

So, to the point, I’m suggesting adding something like, “This will allow the player to ::do a thing::” or if in the success message, “Now what you’ve done is made it so the ::blah blah:: does ::thing it does::. This will enable us to ::thing-to-build:: later in the project.” Voila!

In the success message, this reinforces the initial prompt but contextualizes it. This context allows me to recall the lesson in because I don’t yet think in the highly abstracted way that these prompts require. In other words, for example, the first step in the Rock, Paper, Scissor project requires me to be able to recall that I need a randomIndex — something that was only introduced once in another lesson (pretty sure). If I had more context, I may be able to recall this (even after retaking other lessons I struggled here).

I think the issue that I am experiencing, and I think what the original post was getting at, is that these lessons are very abstracted which makes applying the concepts in a different context difficult or impossible (for me) and I think what I’m proposing is a reasonably easy solution to implement with a high-value impact. It’s also worth mentioning I did not have the same problem with the HTML or CSS courses at all.
###

*I had so much trouble with this I actually repeated the Role Playing builder lesson, still couldn’t do it, so I moved on to the music player in the hopes of understanding and cementing the core concepts. We’ll see what happens!

2 Likes

I think it is easy for posts like this one to get ignored on the forum. You may want to open a GitHub issue to get a discussion going with the developers.

Hi @dkotah !

Welcome to the forum!

The new changes will address this problem. There will be more emphasis on why certain things behave the way they do

This will also be resolved in the new changes being worked on now

The new changes will have a better use of active recall and spaced repetition so you will feel more comfortable working with concepts introduced earlier.

Hope the helps :+1:

4 Likes

I read your closed post as well. I mimic your sentiments. Those are good suggestions. It’s good to hear from @jwilkins.oboe that they are planning on addressing these issues.

An additional suggestion would be to improve the failure message you get when you click “check my code” and your code is wrong. This message is usually useless to you, and sometimes actively detrimental.

I’m currently on JS, and concur that these lessons are a lot poorer than the HTML & CSS ones. Though those weren’t perfect either (had a lot of the same flaws).

If you plan on continuing the JS course before they redo the curriculum, I can offer this advice: take notes. It is key. What works best for me is using a note taking app on my computer. When introduced to a new term or topic I will copy-paste the instructions into my app. As I learn more about it, I might add to the note. The important thing about the app is search functionality; make sure your app has this.