Welcome to the Hour of NODE computer programming website. As a teacher, you may not have programmed before. Relax, on this page we will tell you everything you need to know to get your students programming TurtleLingo, a brand new, easy-to-use programming language. This hour long lesson, will give your students a fun experience programming a turtle to do complex tasks just using a web browser on your PC or tablet, (e.g. iPad). If you have any questions, see our Contact and Help page. Use the following lesson plan to teach this Hour of Code programming tutorial we call the Hour of NODE!
Hour of NODE Lesson Plan
Title: Introducing the Hour of NODE programming
Time required: 30-60 minutes
Equipment required: PC or tablet web browser
Suggested age: 7+ years
- Introduce student to computer programming using the Hour of NODE website, hourofnode.org
- Teach students how to write event-driven programs in the TurtleLingo programming language.
Overview of Lesson Plan:
- Teach students to learn the basic program controls while solving simple puzzles.
- Pair students at computer workstations or on tablets.
- Instruct students to go to the website: hourofnode.org
Exercises (Read aloud to students):
INTRODUCTION TO TURTLES
- The goal of the Hour of NODE game is to teach you to program the turtles to find the exit from the maze.
- The Turtle will bump off of walls, logs, and the boundaries of the playing field.
- You program the Turtle by adding Action bricks in the “Run” program code area. The program in the Run program code area will continue to run and repeat itself until the turtle reaches the exit.
- You program the Turtle to react to logs and edges, or boundaries, by adding Action bricks to the “Bump” program code area. In computer science terms, this is called an event handler. Having the Turtle bump into an obstacles, such as a log, causes an event to occur.
There are 9 programming levels in this tutorial. The instructions are given in the Hour of NODE status window. Instruct the students to continue to “solve” each program level until level 9 is reached. Each level overview and description is given for you, the instructor, to help you understand the learning objectives for each level.
- Learning objective: Student will learn to use the “Run” control to begin the Turtle’s continuous program loop.
- Description: Click the “Run” control to move the Turtle forward to the maze exit.
- Notes: Students can experiment with the other control buttons.
- Learning objective: Student will learn to use the “Run” loop rather than “brute force” procedural programming.
- Description: Click the “Run” control and watch the program loop over Action bricks.
- Notes: Introduces students to the idea of Action bricks.
- Learning objective: Student will learn to use program Action bricks to create her own programs.
- Description: Click “Forward” Brick to create the “Run” program.
- Learning objective: Students will learn to design concise code.
- Description: Use just one Action brick to complete the puzzle.
- Notes: People can usually only handle 7 +/- 2 items in short-term memory. Good programs typically only have 7 lines per method. So we limit “Run” programs and “Bump” subprograms (see level 7) to length of 7 Action bricks.
- Learning objective: Student will learn the concept of an editable program buffer, i.e. the “Run” program buffer.
- Description: Click the “Right” Action Brick to remove it from the Run program buffer.
- Notes: This is an example of debugging, or removing the bugs, from a computer program.
- Learning objective: Students will create a multi-stage, or multiple Action bricks, program.
- Description: Use alternate Left and Right Action bricks to move the Turtle to diagonal squares.
- Notes: The student can get the top score by using the run loop to avoid final “Forward” Action bricks.
- Learning objective: Students will be able to create an event handler subprogram
- Description: “Bump” event handler subprogram is used by the Turtle to bounce off of Edges and Logs.
- Notes: This program level shows the power of reactive programming.
- Learning objective: Students will learn to create their own event handler program.
- Description: Click “Bump” subprogram buffer to add Action Bricks to that “Bump”, or event handler, program.
- Learning objective: Students will learn to program a complex puzzle solution using event-driven programming.
- Description: Use the “Run” program and the “Bump” event handler subprogram to solve the Final Maze.
- Notes: Instead of trying to solve this program in “traditional” procedural program, the complex puzzle is solved simply using event-driven programming.
How can I teach Hour of NODE in my classroom?
I don’t know how to code myself!
- We give you this simple one-hour lesson plan
- We show you how to start the Hour of NODE on a Web browser
- And we tell you how to explain the basic building blocks to your students
- Then just turn them loose to have fun!
What will this teach the students?
Will it help them get a job coding?
- First, it will teach the students to have fun coding!
- It will teach them a particular type of programming called event-driven programming. For example, if you touch your smartphone’s screen it causes an event that will make some action happen.
- It will also teach them abstractions in programming. An abstraction is something in code that represents something in the real world. We use turtles that represent real turtles performing different actions in a turtle pond.
What if I have more questions?
Can I talk to a real person?
- You can check out our Frequently Asked Question (FAQ) Web page
- You can send us email at firstname.lastname@example.org
- Or you can call and talk with Dr. Ernie himself!