@Scruffynerf this is a great question and thank you for asking! And thank you for running those exercises! (I just saw this post so am only now replying).
The first hurdle is the scattered resources and preliminary instruction set. It would really help if there were a set of references clearly indexed and referred to from a single place. Presently, there is stuff on Github (simap/pixelblaze, that I do not know how to get back to ) , @Pixelblaze kind of, @Electromage, embedded in Patterns, and etc.
And then there is just looking around on the internet for JS term definitions, and etc. Knowing where and how to look is half the battle. Only half, but half. And that starts with PB not with JS. So, an intro resource guide, indexed, linked and organized for starters.
Learning by reading code - I found myself just reading through Pattern code that I accessed through the board. Some patterns pretty well annotated some not at all. As a beginner, in reading most code, I invariably get to places where I say to myself “I do not know what is going on here”.
So, I would suggest thoroughly annotating at least learner code and identifying it as such for ease of access. And, have a noob review the annotations for clarity. You need a crash-tester for language. i would never underestimate how stupid or stuck ) a beginner (I) can be.
As far as JavaScript language goes, I think a reference document especially of terms commonly used would be great. I have started and am pretty well along on putting one together for myself. I am happy to share FWIW.
I think there is also an opportunity to highlight and explain certain oft-used programming tools, code we see repeated often here.
For the first challenge I think throwing out a working piece of code and asking beginners to mod it would be nice. One thing at a time. ( I remember really liking Quantum Mechanics for this reason, it started super conceptually simple (like, “here is a thing and we will give it certain properties”) and built to probability distributions in 4-space, one dimension, one step at a time).
Frankly, I had trouble getting beyond sparks in the first exercise. Sparks was pretty easy, getting them to linger was not so much. So I wrote a simple flasher that I got working and could control some lights (on time,. off time, color, hue, saturation) with. Just my way of doing it, not the best but a way.
So, that’s my 2 cents for now. Its not everything but it is something. Perhaps it helps. Hope so.