Welcome to 2019 everyone! (Yes, I know it’s February but I’ve been doing things. Give me a break.)
This year I thought it would be fun to learn JavaScript. “Why?”, you ask? Because I’m a nerd. Don’t ask nerds why they do things. You’ll get either a) it’s fun or b) a very elaborate and detailed explanation which makes you zone out and rethink every step in your life that brought you to this point.
Anyway, I wanted to learn JavaScript so I am. Now, I’m not new to this whole coding thing but I do teach a lot of people who are newbs so I thought I would see how smart people teach new people to code. Hence, Google Grasshopper. I’ve been tinkering with Grasshopper for a little bit now and so far I really like it. It starts with a small “What is Code” section that tries to convey the why of programming. It’s short and I would like it to be a little longer, but I understand it’s not coding so it’s possible they would lose people if the programming doesn’t start early in the process.
Once you get into the real coding lessons it steps you through concepts making the problems incrementally more difficult. Screenshots below show how it works. One big design choice (at least early on in this implementation) is that the user doesn’t really type in the code but rather selects the code from a small set of options. This has the benefit of making each step quick and fairly hassle-free. However, it means that the user doesn’t experience the most common bug I see in student code – typos that make code crash. It’s a double-edged sword and I’d love to see how long-run code quality changes as a result of this design choice. If only I had more time…