---
title: Coding fundamentals
description: Learn digital citizenship with Roblox. A full course created for middle to high school students. This session has students learning coding.
next: /education/lesson-plans/digital-citizenship/animating-characters
prev: /education/lesson-plans/digital-citizenship/lights-and-polish
---
**Lesson Description**: Explore the coding concepts of functions, loops, and if/then statements with mini-projects that can be added to Roblox experiences like color changing platforms and traps.
| Lesson Objectives |
- Demonstrate the logic of if/then statements by modifying a part's properties.
- Practice troubleshooting by independently fixing issues in scripts as encountered.
|
| Skills and Concepts |
- Property - Something that controls how an object looks or behaves, like color or if players can walk through it.
- Loop - A set of code that repeats until told otherwise.
- Function - A set of instructions can be e re-used in different parts of a script.
|
### Overview
| Duration |
Activity |
Description |
| 5 min |
Introduction |
Introduce the session. |
| 20 min |
Guided Tutorial: Working with Properties |
Modify the color properties of parts using scripts. |
| 35 min |
Guided Tutorial: Coding a Trap |
Code a trap using functions and if/then statements. |
| 5 min |
Wrap-up |
Reflect on project and recap concepts learned. |
### Lesson Plan
#### Introduction
1. Explain today's session will be different mini-projects to develop skills in scripting.
#### Guided tutorial - Work with properties
1. Lead students through the following tutorials:
- [Object Properties](../../../tutorials/fundamentals/coding-1/object-properties.md)
- [Parents and Children](../../../tutorials/fundamentals/coding-1/parents-and-children.md)
2. Encourage students to troubleshoot independently if they have an error. To help, have them try:
- Redoing their last few steps.
- Asking a peer for help.
3. As students write code, check that students write comments that accurately describe the code.
- Not Specific: Runs code
- Improved: Changes color of PracticePart
#### Guided tutorial - Code a trap
1. Lead students through the following tutorials:
- [Code a function](../../../tutorials/fundamentals/coding-2/code-a-function.md)
- [Intro to if statements](../../../tutorials/fundamentals/coding-3/intro-to-if-statements.md)
- [Traps with if statements](../../../tutorials/fundamentals/coding-3/traps-with-if-statements.md)
2. When working with if statements, check that students indent code to look like code samples. This helps make the code more readable, which becomes important as scripts grow larger.
#### Wrap-up
1. Recap what students have created and vocabulary: **property**, **loop**, and **function**.
### Appendix
### Troubleshooting and classroom tips
- While coding, remind students to double-check their capitalization or ask a peer to check their work. Even one incorrect letter can cause an error in longer words like `FindFirstChildWhichIsA`.
- Try the following below to help students develop troubleshooting skills.
- Purposely make a mistake in your code and ask students to identify the error. This can be easily turned into a game with students as you challenge them to find the error in a limited amount of time.
- Write a partial line of code and ask students to complete it.
- Utilize 'Ask 3 Before Me' where students ask three peers before asking the teacher for help. It's important for students to become comfortable independently troubleshooting as they advance to more complex projects.