NetsBlox Programming: Getting familiar with visual block-based programming. Learn about RPCs and message passing.

NetsBlox Overview

Learning Goals

  • Understand how to navigate around the various areas of the NetsBlox interface and use a variety of features

  • Learn several programming concepts that will be necessary to understand when it comes time to work with the physical robot down the line

Description

Introduction to programming in NetsBlox. The curriculum does not assume any prior knowledge of computer programming. Therefore, the first day is dedicated to teaching basic programming concepts, such as control structures, variables, data types and functions.

Required/Authorized Commands

Categories of NetsBlox blocks utilized: Motion, Looks, Pen, Network, Control, Sensing, Operators, Variables, and Custom. Almost all categories of blocks will be required at some point or another.

Activities

  • Introduction to the NetsBlox environment

    • Basics of creating projects and navigating the interface.

  • Cat and Mouse Game

    • Mouse is “driven” by the user using the keyboard arrow keys, while the cat is following the mouse trying to catch it. Time-based scoring, with increasing difficulty level as time progresses. Introduces if-statements, sprites/backgrounds, loops, variables, events and concurrent scripts.

  • Digital Art

    • Polygon drawing custom block. Implements various ways of creating geometric art. Introduces custom blocks (functions).

  • Interactive Weather Map

    • Create a fully interactive google map background with panning and zooming. Display current weather conditions wherever the user clicks. Introduces Remote Procedure Calls (RPCs).

  • Shopping List App

    • Simple project to introduce lists. Set variables equal to lists and then add items to them. Further list manipulation is available as time permits.

Additional Training Projects

  • Chatroom

    • Introduction to messages. Learn how to automatically send messages from one computer to everyone else able to receive it.

  • Movie Cast Info

    • Using the MovieDB service, display photos of leading cast members of any movie based on its title. Stresses lists.

Common Pitfalls

If students are brand new to programming concepts make sure to address any confusion about loops, conditionals, variables and their ability to store more than just numerical values, etc.

Hints

For students without programming experience, the "core" curriculum should be sufficient. More experienced students could try their hands at the complementary extensions of problems.