Take a look inside 5 images
Grasshopper: Learn to Code
Pros: Clear learning progression, interesting challenges; teaches concepts as well as a specific coding language.
Bottom Line: This app will no doubt help individual, motivated learners see how coding works using real programming language.
Grasshopper is designed for individual learning rather than classroom implementation, so there's no dashboard or central place to monitor student progress. This makes it better suited for students to learn and practice at their own pace with teacher support. Though middle schoolers interested in programming could walk through the courses, the sweet spot is high school. Teachers with some coding experience can advise and coach students as they encounter complex problems, while teachers without much coding experience can encourage students to work collaboratively and/or use the available help in the app. For classes using unplugged activities to teach coding concepts, Grasshopper is a great way to let students start putting that knowledge to use on an individualized basis.
The app is divided into Fundamentals (where you learn about things like variables, arrays, and loops), Animations, Array Methods, Automation, Debugging, Intro to Web Pages, and Using a Code Editor. There's even a course called Intro to Interviewing which prepares users to job interviews that require a coding test. Moving through the levels, students take short quizzes to reinforce knowledge and understanding of how code works.
Grasshopper will work for beginners, but it will work best for students who already have some computer science conceptual understanding (say, from unplugged activities) and who are ready to start working with the real application of code. It's not necessary, but it will make for a smoother start. The app would reach even more learners if it was available in more languages than English. It would also be great to give users the option to jump into other sections if they feel ready -- and with a strong recommendation to follow the careful progression -- rather than have them locked.