Grasshopper

Logo for Google's Grasshopper coding app.by Jennifer Robb

Are you interested in text-based coding, but aren’t quite sure where to begin? Google’s Grasshopper uses a game-based approach to teach the fundamentals of JavaScript, one of the world’s most commonly used programming languages. JavaScript has numerous applications, including website development, game creation, robotics, building mobile apps, and more, making it a valuable starting point for anyone learning text-based (i.e., syntax) programming. Grasshopper is a free application, available on both Android and Apple mobile devices, as well as in your web browser.

A screenshot from the Grasshopper coding app showing the modules available for people who wish to learn JavaScript in order to build skills for their job.

Example series of modules for learning job-related skills.

Grasshopper was intentionally designed to be accessible to coders with a range of programming experience and motivations for learning JavaScript. When opening the app on a mobile device, it asks you a series of questions to gauge your comfort and experience with coding, as well as what you might be looking to do with JavaScript. Depending on your responses, the app curates a series of Modules designed to ease you in to learning JavaScript in ways that align with your interests. For example, the screenshot to the right illustrates the Modules that are available if you choose the “I want to gain skills for my current job” option. Learning just to learn? Select “I’m just curious or I’m not sure yet”, and you’ll be able to go through Grasshopper’s entire selection of JavaScript Modules.

A screenshot of the Grasshopper coding app, showing an example of how programming concepts are summarized.

Grasshopper summarizes programming concepts *after* you’ve applied them.

Each Module contains a series of interactive puzzles, multiple-choice questions to apply your understanding, and concept highlights, which provide a brief definition and example of programming concepts as you learn them. These concepts can be revisited at any time by selecting them in the module pathway or by visiting your Grasshopper Dashboard. Although Grasshopper uses a game-based approach to learning, it is by no means easy! Each Module is lengthy and designed for long-term engagement, providing multiple activities per concept to reinforce the user’s understanding of how it could be applied.

Within the Modules, each puzzle has been carefully constructed to facilitate learner-driven engagement, providing a brief introduction to the concept, instructions for solving the puzzle, a visual representation of the puzzle’s solution, and a coding workspace that allows the user to insert and remove “blocks” of JavaScript code. Hints and a link to the solution are available for learners who are stuck on a given concept, but these must be actively selected by the user, encouraging them to experiment with the code first. See below for an example of one of the early puzzles available in the Fundamentals Module, introducing the user to functions and arguments:

As each Module progresses, learners are introduced to increasingly complex programming concepts and authentic practices, such as increasing the efficiency of your code. And if you’re still craving more of a particular programming concept once you’ve “achieved it” in the Module pathway, navigate to the Practice option in the Grasshopper menu for more examples and puzzles to try. Want to try something outside of your current Module? Grasshopper’s Code Playground allows you tinker with already-existing Code Snippets, or create your own Code Snippet and share it with others!

In addition to the puzzles, Grasshopper has numerous game-based features to keep learners engaged, including:

  • Customizing your avatar: As you progress through the Modules, you earn experience points which unlock clothing and accessory options for your Grasshopper avatar.
  • Earning achievements: Referred to as Patches, Grasshopper has numerous achievements that can be earned and showcased in students’ profiles, such as Quiz Crusher, Perseverance, and Practice Makes Perfect.

Grasshopper also offers certificates of completion as you progress through your JavaScript learning Path, highlighting the programming concepts you’ve learned to date.

There is so much more to this app than is possible to explore in this blog, so download it yourself (Apple, Android) or check out the website and give it a shot! When it comes to digital making, particularly with Primary and Junior divisions, block coding is where we usually start. However, this app makes it easy to learn JavaScript at any age and is well worth checking out.

This entry was posted in Android, app, coding, games, iOS, Tech Tool Tuesdays, web-based. Bookmark the permalink.