Tag Archives: teach programming

Design a Coding Unit for the Classroom

STEM learning objectives are being included in many school, district, and national curriculum standards. As a result, educators are challenged with creating engaging and challenging instructional materials to teach computer science skills. But most teachers don’t have a technology background, much less knowledge of programming. Here’s some help. Whether you’re using ScratchJr, Scratch, HTML and CSS, or Python and the Turtle Library, the activities will be similar. Following are some basic strategies to consider when you start to design a coding unit for the classroom.

Practice Sequencing Algorithms Offline

Design a coding unit to include offline exercises. This will develop computational thinking. A starting point for instruction is to build algorithms. An algortithm is a description of the program. It uses words and symbols to sequence the instructions.

The logical order of coded instructions is critical. To build this skill, instruct students to physically act out and order a list of directions in simple, everyday language first. For example, if a programmer had to write a program for the task of putting a piece of paper into the trash, it may have the steps:

design a coding unit

Have students act out the steps they listed to check them. Or, have a list of mixed up steps that students must unscramble to place them in the correct order.

Start Simple

When you design a coding unit, move from simple to more complex code slowly.

Don’t offer a complete set of instructions in code and have the students copy it and run it to see the result. This may intimidate young programmers and even make them think that coding is too difficult. Moreover, they won’t learn what each part of the code does.

Instead, write a few lines. Then test the result. The instant response will create a connection between the coding and its function.

coding for kids

In TechnoWhiz, primary students are introduced to ScratchJr by using one block at a time to move the character on the stage. They observe the resulting motion. Then they combine a series of blocks to create a script and see the effect. Next, they add more characters and move them, and learn to loop their actions. By the end of the project, they are able to make an interactive, one-of-a-kind racing game with a background, formatted text, and characters moving at different speeds, dancing, and talking!

Use Trial and Error

Invite students to experiment with values to figure out what works. Try a number or value. Does it need to be higher or lower? Test often to see what works.

Encourage exploration. For example, when using Python and the Turtle Library, circle(50) draws a circle with a specific size. Students can explore by changing the number to a higher value and a lower one. Or code left(90) to turn the turtle symbol. Then change the value to see what angles the turtle turns. The repeated experimentation will result in learning that can be applied in subsequent activities.

Teach Debugging

Don’t wait until mistakes are made. Early in the project, create errors with intention. Have students ‘break‘ the script, then fix it. As a result, they will recognize mistakes that may be made later in their own programming and be more likely to correct them independently.

design a coding unit

Apply Skills

Introduce a skill, repeat or review it, and then transfer it to another application using the program. Avoid teaching a concept in isolation. When students re-use skills in different contexts, they will accumulate their knowledge and be able to apply it in their own creative projects.

teaching coding to kids

For example, in TechnoTurtle students learn to use Python to control the movement of a turtle symbol. Then they apply their skills to write scripts to draw pictures and to move the turtle through a maze. In other parts of the project, they learn about variables. Then they use this concept to create Mad Libs and to produce an interactive carnival game.

Show Samples

Demonstrate how a completed project might look at the beginning of a lesson. This will serve multiple purposes: students will have a clear idea of what they’re making, they will be inspired to create their own unique version, and the sample can be a coding reference guide to use if trouble shooting is needed.

In TechnoHTML, a sample web page about skateboarding sparks student interest and demonstrates the skills they will learn using HTML and CSS:

design a coding unit

  • Formatting text
  • Adding images
  • Making lists
  • Linking to sites

Provide an Opportunity to Share

At the completion of the project, ensure that students have an authentic audience. This helps students to connect their work in the classroom to the real world and see a purpose for their efforts. Their peers are a perfect audience. Celebrate the finished projects and encourage interaction and feedback. The digital nature of programming projects makes it easier than ever to share work with classmates, family, and friends.

design a coding unit

For example, in TechnoCode, middle school students place their collection of completed animated scenes, stories, mazes, and games into an Activity Studio to share with others.

Then they invite feedback and recommendations for improvements.

Reflect on Learning

Finally, give students an opportunity to reflect on their experiences in learning to code. In either written form in a journal or as a class discussion, ask:

  1. What did you like about learning to program?
  2. Is there anything in your project that you would like to change?
  3. What do you wish you knew how to do?
  4. Have you learned anything about yourself?
  5. What advice would you give to a beginner programmer?

design a coding unit

In TechnoTales, students in grades 2 to 5 use five simple reflection responses to gain some insight into their learning.

The young programmers used Scratch to design a story with four scenes, multiple animated characters, a plot with a dilemma to solve, and a happy ending!

Design a Coding Unit

TechnoKids has elementary and middle school programming projects for Scratch Jr, Scratch, Python and the Turtle Library, and HTML. Before starting to design a coding unit of your own, try one! Visit the TechnoKids online store.

design a coding unit

TechnoKids has programming projects to teach ScratchJr, Scratch, Python, and HTML and CSS

Teach Python Using the Turtle Library

Teach Python using the Turtle Library to ignite an interest in STEM. Python is a popular text-based programming language. It is used every day by programmers.

The Turtle Library is a collection of functions used to control a robotic Turtle. The commands can be combined with Python to build programs that create stunning artwork and original games. The use of the The Turtle Library is a fun way to introduce students to programming.

You may think that using the Turtle Library to teach Python is a waste of time. Shouldn’t students be learning ‘real code’ instead of functions that they won’t use in the workplace? How useful is it for young programmers to move a Turtle through a maze using forward(100) or draw using pendown()? The answer is….very useful!!!

The skills acquired from building programs using Python and the Turtle Library provide a foundation for further learning. By knowing the basics, young programmers can extend their knowledge to more complicated tasks in the future. Discover the 7 reasons you will want to use the Turtle Library with your students.

7 Reasons to Teach Python Using the Turtle Library

1. Produce a Wide Range of Coding Projects

The use of the Turtle Library is not limited to moving a Turtle around the canvas or making artwork. Although this is really fun to do, it can be used for so much more! Want to hook students’ interest in STEM? Then teach Python using the Turtle Library. Consider programming these games using the Turtle Library:

  • Etch-a-Sketch: Invent a drawing game that uses arrow keys to draw lines to create artwork.
  • Carnival Game: Design a game using conditional logic that awards a prize to players based on the option they pick.
  • Mad Lib: Create a word game that stores players’ answers as variables to form silly sentences.
  • Guess the Number: Combine the Random Library with the Turtle Library to build a game that has players pick a number between 1 and 10. Will they guess correctly?

2. Develop the Computational Thinking Skills to Sequence Instructions

Programming requires each line of code to be in the correct order to achieve a goal. When writing code with the Turtle Library of commands, students must apply computational thinking to determine what comes first, second, and third. This ability to sequence instructions will be helpful later when programs are longer and more complex.

3. Effectively Apply Debugging Strategies

No matter whether a programmer is using Python or has code that includes commands from the Turtle Library, the errors are the same. Mistakes in coding generate the identical name and syntax errors. For example, if a : (colon) is missing at the end of a loop, there will be an indent error. Understanding how to identify the problem and fix it is transferable to new programming tasks.

4. Understand How to Organize Scripts

No matter the programming language, programmers add comments to describe each section in a program. A comment is a brief description that acts as a summary. It explains the purpose of the code. Comments are used by programmers to communicate with others about the intent of the code. As well, they can act as markers to identify each part of a program. This makes it easier to locate a specific section for writing new code or debugging errors.

In Python a comment begins with a hashtag #. The symbol tells the interpreter to skip the line as it does not contain an instruction. For example, #store a word list is a useful descriptor that explains the purpose of the following lines of code. It is important for young programmers to get in the habit of using comments as it is good programming practice used by professionals.

5. Import Libraries to Build Programs

The Python programming language uses special words to tell the computer what to do. A function is a word that does a specific task by executing a stored set of instructions. Many Python functions are stored into libraries. Professional programmers use Python libraries to create responsive graphs, display the time, or grab information from a web page. The ability to import the Turtle Library is similar to importing any Python Library, making it a useful programming skill.

The ability to import libraries is an important reason to use the Turtle Library to teach programming skills. Programs that use the Turtle Library to create artwork and build games can include other Python libraries. For example, students can use the Random Library to pick a random number or item from a list. This is a fun way to make surprising geometric patterns or a Guess the Number game. As well, students can use the Time library to set the timing of events. This is very useful when flashing the word “WINNER” across the canvas in Carnival game. The programming skills that are introduced when using the Turtle library can be transferred to more complicated or work-related tasks in the future.

6. Appreciate the Importance of Accuracy When Writing Lines of Code

When students are writing programs using Python and the Turtle Library, they quickly learn the importance of accuracy. A reader can understand a story or report that has a few spelling or grammar mistakes. A computer cannot. If a program has a command spelled incorrectly it will not run. Moreover, if the code is missing a bracket, colon, or indent than an error will display. The emphasis on precision when coding is best taught early, as it is required by all programmers. Teach Python using the Turtle Library to support STEM.

7. Instant Feedback Develops Confidence

The Turtle canvas instantly shows the result of the code. This visual is helpful during program development. Nothing is more frustrating then trying to figure out why the code does not work the way it is supposed to when the program runs. Young programmers can quickly become frustrated. With a lack of immediate success, they can start to believe that they are not good at programming. Since the Turtle Library displays the output on a canvas, the programmer can see what they need to change to improve their program. For example, they might notice that the Turtle moves in the wrong direction, the pen needs be picked up to stop drawing a line, or the game title is too small to read. Seeing what needs to be fixed helps young programmers understand how to improve their code.

Support STEM. Teach Python using the Turtle Library. Spark an interest in programming.

TechnoTurtle Has Lessons to Create Artwork and Build Games

TechnoTurtle is a technology project, by TechnoKids Inc. that has lesson plans to teach Python using the Turtle Library. It has over 30 assignments that gradually introduce programming skills to elementary and middle school students. The instructions guide students to build programs, with additional open-ended challenges to spark creative exploration of code.

How do I Use Python on Chromebooks? Trinket and TechnoTurtle

You may wonder, “How do I use Python on Chromebooks?” There are many web-based apps, but most work if the program contains only Python code. They tend to limit the use of many Python libraries.

However, if you are teaching young programmers then the Turtle Library is important. The Turtle module can be used to create artwork and design games. It requires a graphic interface that will display output on a canvas. One web-based option is Trinket.

What Is Trinket?

Trinket is web-based coding environment designed for education. The platform can be used to develop programs using Python, HTML, and Java. Subscribers can save their files called “trinkets” online. Non-subscribers can still use the Trinket platform to write code. However, at the end of a programming session, they must download the program to save it. Later, the file can be uploaded to continue editing the code.

Trinket Is Ideal for Young Programmers

The programming lessons in TechnoTurtle published by TechnoKids Inc. were written for IDLE Python 3. IDLE is Python’s Integrated Development and Learning Environment. This software includes a Python text editor, Python Shell that interprets code, plus a graphic interface that displays a canvas. IDLE Python 3 will run on Windows, Linux/Unix, and Mac OS X operating systems.

The latest version of IDLE Python makes programming easier for children to learn. At this time, there is not a web-based IDLE Python version for Chromebook users. For this reason, Trinket is a great web-based coding option for educators interested in introducing Python to young children.

python and trinket

How do I Use Python on Chromebooks? Use Trinket, which is a web-based coding environment.

How Can I Use the TechnoTurtle STEM Project with Trinket?

If you are using the TechnoKids Inc. STEM project TechnoTurtle, follow the instructions below to get started with Trinket. You will use the Pygame option to build programs. Refer to the tips at the bottom of this article to help teach TechnoTurtle.

How Do I Use Python on Chromebooks?

You may be wondering, how do I use Python on Chromebooks? One solution is to use Trinket.

  1. Visit trinket.
  2. If you are using Chromebooks with your students they will all have a Google account. Look around the Home page to find the Sign in with Google option.
  3. Once signed in, click your username to display a menu.
  4. Select New Trinket and then pick Pygame.
  5. how do I use Python on chromebooks

    Select Pygame to build a program using the Turtle Library.

  6. Write the code in the left pane. Click Run to see the result in the right pane.
  7. Use Trinket to program using Python and the Turtle Library.

  8. If necessary, click Stop.
  9. If your students cannot complete their program (and they are not subscribers), they can copy the text to Google Doc file for safekeeping. Another option is to download the file. To do this click on the three lines. From the menu, select Download. Give the file a suitable name and then click Save. The file will be zipped. You will need to unzip the file to access the Python.py program.
  10. To continue working on the file, you can paste the text onto the Main tab or Upload the text file (see tip below).

Tips to Using TechnoTurtle with Trinket

If you purchased TechnoTurtle and you use Chromebooks, you may wonder, “How do I Use Python with TechnoTurtle on Chromebooks?” A few of the instructions in TechnoTurtle will require modification when using Trinket instead of IDLE Python. However, almost every lesson will work perfectly. Below are some tips to using TechnoTurtle with Trinket:

  • Stop the Canvas from Becoming Blank: After you run a program in Trinket the canvas can appear empty. To be able to see your work, add exitonclick() to the last line of the program. This will keep the image or game in view.
  • Upload Background or Stamp Images: Picture files can be used as a background or turtle shape. When using IDLE Python, the Python.py file and picture files must be in the same folder. When teaching using Trinket, you must upload the file using View and Add Images. You must then select the file and click Done to attach it to the program.

    Upload picture files to use them as background images or Turtle shapes.

  • Get to Know the Trinket Canvas Size: The Trinket canvas is smaller than the IDLE Python canvas. The Trinket canvas is about 350 pixels wide by 400 pixels high. Whereas the IDLE Python canvas by default is about 600 pixels wide by 600 pixels high. To view your work easily you may need to reduce the values used for the coordinates. For example, use goto(-175, 200) to reach the top left edge; goto(175, 200) to reach the top right edge; goto(175, -200) to reach the bottom right edge; and goto(-175, -200) to reach the bottom left edge.
  • canvas

    To place objects on the canvas you need to plot the x and y coordinates.


  • Use the Trinket Resources: TechnoKids has recreated the Python templates, Python examples, and images to fit the Trinket canvas. They are in a Trinket folder. Use them instead.
  • Picture Files Used for Stamps Need to Be Small: Since the Trinket canvas is smaller, if you want to add a picture file to the Turtle shape list the image should be a maximum of 50 x 50. This looks better when adding multiple stamps.
  • Keep Movement Below 375 Steps: To keep the Turtle on the screen it is a good idea to limit forward and backward commands below 375. For example forward(450) will move the turtle symbol out of view.
  • Divide the Values in TechnoTurtle by Half: Almost every assignment in TechnoTurtle will work with Trinket with no modification. A few of the activities do provide sample coordinates or movements. These might be too large to see on the canvas. In those cases, take each number and cut it in half. If the value is forward(200) make it forward(100). This will quickly make the sample scripts work.
  • Reduce the Font Size to Fit Text on the Canvas: Given that the Trinket canvas is smaller than the IDLE Python canvas, you will want to use font size 12 or less. This will allow you to fit more words on the screen. For example, write(“Add a message to the canvas.”, font=(“Arial”, 12, bold))
  • Have Patience With Input Boxes: If you want to store a player’s answer as a variable you must be patient when playing the game. It takes time for the cursor to show in the box.
  • Upload a Template or Saved File: Subscribers can easily save or open Python files. However, non-subscribers cannot. If you are not quite sure if you want to commit to a Trinket subscription just yet, you might need to copy the code to the Main tab to run it.
  • Do Not Set the Canvas Window Title: In IDLE Python, programmers can customize the title bar. This looks great on a large screen. However, in Trinket the frame around the window is very tiny. Do not bother using the code title(“Text in the title bar”). It does not generate an error, but you also cannot see anything.
  • Notice that Color-Coding is Different: Words in a program are often color-coded. This makes the code easier to read, write, and debug. The color scheme in Trinket is different than IDLE Python. For example, comments are green instead of red.
  • Speed Differences are Not as Noticeable: The speed of the turtle can be set to slowest, slow, normal, fast, and fastest. The difference between the speeds often cannot be seen in Trinket. For this reason, it is best to use either speed(“slowest”) or speed(“fastest”).
  • Line Number Errors are Not Clickable: In the IDLE Python Shell, error messages with line numbers are clickable. This takes you right away to the problem in the code. Trinket’s error messages do not have clickable links. Instead, programmers must read the line number in the error message and then find it in the code.
  • Use the Chrome Web Browser: If you are using a Chromebook, you are using the Chrome web browser. However, for anyone using Trinket on a different device, be certain to use Chrome. Trinket will work better. The screen tends to scale larger and there is less hesitation when running the code.

Python Programming Activities for Kids

Are you looking for Python programming activities for kids? Great news! TechnoKids Inc. has just released TechnoTurtle. This project is ideal for elementary and middle school students new to text-based programming languages. The lessons use Python and the Turtle library of commands to teach computer science concepts.

python programming activities for kids

Introduce programming to beginners with Python and the Turtle library of commands.

Build Original Creations Using Programming Activities for Kids

Empower your students to become programmers! Instead of using instructional materials that promote the mindless copying of scripts to write programs, teach with lessons that emphasize exploration and experimentation. TechnoTurtle gradually introduces programming concepts that are then applied to code original creations.

In the TechnoTurtle project, students become programmers. They follow step-by-step instructions to build programs that solve mazes, create artwork, and play games. The fun begins when students edit code to gain an understanding of the structure of Python scripts. Once familiar with basic concepts, students are introduced to debugging, loops, variables, and conditional logic. Ignite an interest in programming with meaningful activities designed for beginners.

About the TechnoTurtle Python Project

The TechnoTurtle project has everything you need to introduce Python programming to your students in Grades 3-8. It is jam-packed full of programming activities for kids:

  • 30 Coding Assignments – The assignments are divided into six Sessions. Each Session targets a different coding project and programming skill. The Sessions gradually progress in difficulty, with students transferring their skills to new tasks.
  • 5 Programming Reviews – The programming review questions include fill-in-the-blank, true or false, multiple choice, or short answer. They assess knowledge of Python, Turtle commands, and debugging techniques. The files are customizable allowing teachers to add, delete, or edit the content.
  • 5 Skill Reviews – The skill reviews have students apply their programming knowledge to build a program. The activities use the same skills taught within the Session in a novel way. This provides an opportunity to solidify learning.
  • 6 Extension Activities – The extension activities challenge students to extend their knowledge of Python programming. The enrichment activities introduce new skills and computer science concepts. They are ideal for students who have a keen interest in coding and want to do more.
  • Assessment Tools – The project includes multiple methods of assessment to evaluate coding projects. The materials include self-assessment checklists, peer review checklists, coding journal reflection, marking sheets, and a summary of skills. All files are customizable.

Helpful Python Resources Support Learning

  • Python Templates – To jump start learning TechnoTurtle has several templates that invite young programmers to edit code. This allows them to gain an understanding of how scripts are constructed. It also encourages them to actively discover ways to alter output by changing values. In addition, by “breaking” existing code they explore debugging techniques to find and fix errors.
  • Python Examples – TechnoTurtle includes sample files for all programs developed in the project. These files can be used to demonstrate the final product as a source of inspiration. Furthermore, they can also be used as an answer key or reference point when assisting students with their own original creations.
  • Python and Turtle Reference Files – Helpful resources support learning. TechnoTurtle includes a reference sheet that summarizes Python functions and Turtle commands at a glance. A Turtle canvas worksheet helps students plot x and y coordinates to place objects. Moreover, a Color Names file provides an easy way to customize coding projects to enhance the overall design.
  • and more!
  • programming and looping

    Loop a set of instructions to design colorful artwork.

    Programming Activities for Kids – TechnoTurtle Sessions

    The TechnoTurtle project has Python programming activities for kids. The assignments are divided into six Sessions:

    Session 1 – Python, Turtles, and Bugs

    In session 1, students become programmers. To start they learn how the programming language Python is used in daily life. Next, they visit the Turtle library to study the commands and make predictions about their function. They test their ideas by modifying a program to control what it draws. Once familiar with how to run a Python program, students add bugs to the code. This allows them to identify and fix common errors.

    Session 2 – Conquer the Maze

    In session 2, students control the movement of a Turtle through a series of mazes. The fun begins when the young programmers write their first script. It marches a Turtle around the screen by moving forwards, backwards, and turning. Once they have mastered this set of commands, students are challenged to develop a script that will guide a Turtle through a maze. Can they solve the puzzle?

    Session 3 – Draw Pictures

    In session 3, students write code to draw pictures. To start, they learn how to plot a point on the canvas using x and y coordinates. They apply this knowledge to stamp a unique design. Next, the young programmers follow instructions to design a robot by combining lines, rectangles, circles, dots, and symbols. Once familiar with how to control the Turtle’s drawing tools, students build their own program to draw a picture.

    Session 4 – Design Colorful Spirographs

    In session 4, students paint stunning artwork. To start, they learn code that repeats a set of instructions forever or for a specific number of times. Next, they complete a series of exercises to discover how to construct looping geometric shapes called spirographs. Once students are familiar with designing patterns, they use the Random library to produce colorful creations.

    Session 5 – Create a Mad Lib Generator

    In session 5, students design a word game, called a Mad Lib. It has players provide a list of words that are used to complete a silly sentence or story. To prepare for this coding task, students learn about variables by chatting with the computer. Next, they edit a Mad Lib party invitation to discover how to join variables and text together to form sentences. Once familiar with the structure of the code, they program their own wacky word game.

    Session 6 – Invent a Carnival Game

    In session 6, students become game designers. They combine Python and Turtle programming commands to produce a Carnival Game. To start, they learn about if, elif, and else. Once familiar with conditional logic they invent a game that prompts the player to pick an option to win a prize. Optional challenges enrich the design such as looping a flashing message or showing a picture of their winnings. Get ready for fun! Step right up to win a prize!