Young Coders: Exploring Programming Languages
Created byJustin Towner
2 views0 downloads

Young Coders: Exploring Programming Languages

Grade 5MathTechnologyComputer Science5 days
In the 'Young Coders: Exploring Programming Languages' project, 5th-grade students delve into the world of coding by learning the fundamentals of various programming languages and their applications in solving real-world problems. The project emphasizes the role of mathematical concepts, such as order of operations and variables, in enhancing coding logic and problem-solving skills. Through engaging entry events and hands-on portfolio activities, students gain practical coding experience, enabling them to create simple programs and analyze the mathematical foundations of programming languages. The project concludes with reflective assessments on their understanding and confidence in utilizing programming to address real-world challenges.
Programming LanguagesCodingMathematical ConceptsProblem SolvingReal-World ApplicationsVariables
Want to create your own PBL Recipe?Use our AI-powered tools to design engaging project-based learning experiences for your students.
📝

Inquiry Framework

Question Framework

Driving Question

The overarching question that guides the entire project.How can understanding various programming languages empower us to solve real-world problems, and what role does math play in this process?

Essential Questions

Supporting questions that break down major concepts.
  • What is coding and why is it important?
  • How do computers understand different programming languages?
  • How can coding be used to solve problems in everyday life?
  • What are some common programming languages and what are their uses?
  • How does understanding math help in writing code?

Standards & Learning Goals

Learning Goals

By the end of this project, students will be able to:
  • Students will understand the importance of coding and its impact on modern technology and daily life.
  • Students will learn the basics of several programming languages and the unique features and uses of each.
  • Students will develop problem-solving skills by applying coding to real-world scenarios.
  • Students will comprehend how mathematical concepts support programming logic and structure.
  • Students will create simple programs using learned programming languages to demonstrate understanding.

Common Core Standards

CCSS.MATH.CONTENT.5.OA.A.1
Primary
Use parentheses, brackets, or braces in numerical expressions, and evaluate expressions with these symbols.Reason: Understanding and applying order of operations aligns with logical structuring in coding, especially in programming languages.

CSTA K-12 Computer Science Standards

CSTA.2-AP-11
Primary
Create clearly named variables that represent different data types and perform operations on their values.Reason: This directly aligns with learning to code, focusing on variables, a foundational concept in programming languages.

ISTE Standards for Students

ISTE.5.3.c
Secondary
Students develop their understanding of the essential concepts of computer science by accessing and analyzing computer systems and networks, using the internet and technologies to develop solutions and communicate their learning.Reason: This standard supports building understanding in computer science and applying it to solve real-world problems, aligning with the project's inquiry framework.

Next Generation Science Standards

NGSS.3-5-ETS1-2
Secondary
Generate and compare multiple possible solutions to a problem based on how well each is likely to meet the criteria and constraints of the problem.Reason: Problem-solving is a critical aspect of programming and directly ties with generating solutions using code.

Entry Events

Events that will be used to introduce the project to students

Code Your Own Adventure

Students enter the class to find a mysterious box labeled "Open with Code." Their task is to code a simple program that reveals a secret message once executed, introducing them to the basics of coding logic and syntax.

Digital Pet Challenge

Learners start by interacting with a tamagotchi-like digital pet, only to discover they need to program its behaviors and needs in a simple coding language. This creates an authentic connection to gaming and digital interactions they enjoy.

Escape the Room: Code Breaker Edition

The classroom is transformed into an 'Escape Room' where students must solve coding puzzles to 'escape.' Each successfully solved puzzle reveals a clue leading to the next challenge, sparking interest in algorithms and problem-solving.

Build Your Dream Game

Students are tasked with brainstorming their favorite video games, followed by a challenge to create a basic version of one aspect of these games using programmable code. This direct link to their interests in gaming ignites curiosity and creativity.

Coding Treasure Hunt

The schoolyard becomes a stage for a treasure hunt where students follow clues that require them to write short code snippets to unlock the next piece of the puzzle. This event connects logic and sequencing with fun outdoor activity.
📚

Portfolio Activities

Portfolio Activities

These activities progressively build towards your learning goals, with each submission contributing to the student's final portfolio.
Activity 1

Code Quest: Order of Operations

Students embark on a coding adventure to learn the order of operations by creating a program that calculates complex expressions using parentheses, brackets, and braces.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Introduce students to the concept of order of operations in math and how it applies to coding.
2. Provide examples of expressions with parentheses and brackets, then demonstrate how to evaluate them in a coding environment.
3. Guide students to create a simple code that can perform basic calculations utilizing order of operations.

Final Product

What students will submit as the final product of the activityA functioning program that accurately evaluates expressions using the order of operations.

Alignment

How this activity aligns with the learning objectives & standardsAligns with CCSS.MATH.CONTENT.5.OA.A.1 by teaching students to use parentheses, brackets, and braces in numerical expressions.
Activity 2

Variable Voyage

Students explore the world of variables, learning to create, name, and use variables to store data and perform operations in a simple program.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Introduce the concept of variables in programming and explain the different data types they can represent.
2. Provide examples of how variables are used in everyday contexts and in programming.
3. Guide students to create a simple program that uses variables to store user input and perform calculations or logical operations.

Final Product

What students will submit as the final product of the activityA program featuring clearly named variables performing operations based on user input.

Alignment

How this activity aligns with the learning objectives & standardsAligns with CSTA.2-AP-11 by teaching students to create named variables that represent data types and perform operations.
Activity 3

Real-World Coders

Students apply their understanding of coding concepts to develop a solution for a real-world problem, enhancing their learning through practical application.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Discuss the importance of coding in solving real-world problems, providing examples from various industries.
2. Have students brainstorm common problems they encounter that could be addressed with coding.
3. Guide students through designing a simple program to address one identified problem using the coding skills and knowledge they have acquired.

Final Product

What students will submit as the final product of the activityA program designed to solve a specific real-world problem identified by the students.

Alignment

How this activity aligns with the learning objectives & standardsConnects to ISTE.5.3.c and NGSS.3-5-ETS1-2 by developing solutions through programming to meet specific criteria.
Activity 4

Programming Language Explorer

An exploration of different programming languages, where students analyze their features and uses, reflecting on how math supports their structure.

Steps

Here is some basic scaffolding to help students complete the activity.
1. Introduce various programming languages, focusing on their unique features, history, and applications.
2. Analyze the role of math in programming languages through specific examples, like how loops and conditionals relate to arithmetic and logic.
3. Have students create a comparison chart of several programming languages, noting their uses and how mathematics supports their functionality.

Final Product

What students will submit as the final product of the activityA chart comparing different programming languages, including their applications and mathematical foundations.

Alignment

How this activity aligns with the learning objectives & standardsSupports the standard CSTA.2-AP-11 and the curriculum goal of understanding mathematical concepts in programming languages.
🏆

Rubric & Reflection

Portfolio Rubric

Grading criteria for assessing the overall project portfolio

Coding and Programming Languages Portfolio Assessment

Category 1

Mathematical Logic in Coding

Assessment of students' ability to apply mathematical order of operations within coding environments.
Criterion 1

Order of Operations Application

Evaluating the use of mathematical order of operations in coding expressions.

Exemplary
4 Points

Uses order of operations in coding expressions with high accuracy, demonstrating sophisticated understanding and innovation in problem-solving.

Proficient
3 Points

Correctly applies order of operations in coding expressions, showing thorough understanding and consistent application.

Developing
2 Points

Inconsistently applies order of operations, showing emerging understanding with occasional inaccuracies in coding expressions.

Beginning
1 Points

Struggles to apply order of operations in coding, showing minimal understanding and frequent inaccuracies.

Criterion 2

Mathematical Integration

Evaluation of how mathematical concepts are integrated into programming logic.

Exemplary
4 Points

Demonstrates exceptional integration of mathematical concepts within programming, enhancing program logic and functionality.

Proficient
3 Points

Effectively integrates mathematical concepts into programming tasks, supporting logical code execution.

Developing
2 Points

Shows partial integration of mathematical concepts in programming logic, resulting in inconsistent program performance.

Beginning
1 Points

Shows limited understanding of mathematical integration in programming, often leading to incorrect or incomplete code.

Category 2

Programming Concepts and Practices

Assessment of students' ability to understand and use fundamental programming concepts, particularly variables and data types.
Criterion 1

Variable Use and Data Types

Assessment of students' understanding of variables and their use in coding, involving different data types.

Exemplary
4 Points

Sophisticated use of variables representing diverse data types, showing deep understanding and skillful execution in code.

Proficient
3 Points

Thorough understanding and appropriate use of variables and data types in coding tasks.

Developing
2 Points

Basic use of variables and data types with emerging understanding, resulting in partial success in coding tasks.

Beginning
1 Points

Limited understanding and use of variables and data types, struggling to apply these concepts in coding.

Category 3

Problem-Solving and Innovation

Evaluation of students' ability to solve real-world problems using coding and apply innovative thinking.
Criterion 1

Real-World Problem Solutions

Assessment of the effectiveness and creativity in coding solutions designed to address real-world problems.

Exemplary
4 Points

Develops innovative, effective coding solutions with strong real-world impact, showing leadership and creativity.

Proficient
3 Points

Creates effective coding solutions addressing real-world problems, demonstrating a strong practical application of knowledge.

Developing
2 Points

Attempts to solve real-world problems with coding, showing potential but with limited effectiveness or creativity.

Beginning
1 Points

Struggles to develop effective coding solutions for real-world problems, showing minimal innovation or practicality.

Category 4

Comparative Analysis of Programming Languages

Assessment of students' analysis and understanding of various programming languages and their uses.
Criterion 1

Programming Language Comparison

Quality and depth of analysis in comparing different programming languages, focusing on features and mathematical foundations.

Exemplary
4 Points

Provides in-depth, insightful analysis of multiple programming languages, clearly articulating features and mathematical correlations.

Proficient
3 Points

Conducts a thorough comparison of programming languages, effectively identifying core features and mathematical support.

Developing
2 Points

Shows basic comparison with limited depth, missing key details in the analysis of programming languages.

Beginning
1 Points

Struggles to compare programming languages effectively, showing minimal understanding of features or mathematics involved.

Reflection Prompts

End-of-project reflection questions to get students to think about their learning
Question 1

How has your understanding of the role of math in programming evolved through this course?

Text
Required
Question 2

On a scale from 1 to 5, how confident do you feel about using programming languages to solve real-world problems?

Scale
Required
Question 3

Which entry event or portfolio activity was most engaging for you, and why?

Multiple choice
Required
Options
Code Your Own Adventure
Digital Pet Challenge
Escape the Room: Code Breaker Edition
Build Your Dream Game
Coding Treasure Hunt
Code Quest: Order of Operations
Variable Voyage
Real-World Coders
Programming Language Explorer
Question 4

What is one new skill or concept in coding that you are excited to explore further after this course?

Text
Optional
Question 5

Rate your understanding of variables and their application in programming from 1 to 5.

Scale
Required