This commit is contained in:
Joe 2026-02-02 12:08:47 -06:00
parent a9b4f8e83b
commit e6efc04756
8494 changed files with 495610 additions and 0 deletions

View file

@ -0,0 +1,110 @@
---
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.
<table>
<tbody>
<tr>
<td><b>Lesson Objectives</b></td>
<td>
<ul>
<li>Demonstrate the logic of if/then statements by modifying a part's properties.</li>
<li>Practice troubleshooting by independently fixing issues in scripts as encountered.</li>
</ul>
</td>
</tr>
<tr>
<td><b>Skills and Concepts</b></td>
<td>
<ul>
<li><b>Property</b> - Something that controls how an object looks or behaves, like color or if players can walk through it.</li>
<li><b>Loop</b> - A set of code that repeats until told otherwise.</li>
<li><b>Function</b> - A set of instructions can be e re-used in different parts of a script.</li>
</ul>
</td>
</tr>
</tbody>
</table>
### Overview
<table>
<thead>
<tr>
<th>Duration</th>
<th>Activity</th>
<th>Description </th>
</tr>
</thead>
<tbody>
<tr>
<td>5 min</td>
<td>Introduction</td>
<td>Introduce the session.</td>
</tr>
<tr>
<td>20 min</td>
<td>Guided Tutorial: Working with Properties</td>
<td>Modify the color properties of parts using scripts.</td>
</tr>
<tr>
<td>35 min</td>
<td>Guided Tutorial: Coding a Trap</td>
<td>Code a trap using functions and if/then statements.</td>
</tr>
<tr>
<td>5 min</td>
<td>Wrap-up</td>
<td>Reflect on project and recap concepts learned.</td>
</tr>
</tbody>
</table>
### 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.