Juniors Coding Development Path
What grade 7-8's should know¶
Competencies¶
Functions: Understanding how to create and use functions¶
- Create a function that plays a sound when it is called.
- Create a function that moves a sprite a certain distance when it is called.
- Create a function that changes the background color when it is called.
- Create a function that spawns a new sprite when it is called.
- Create a program that uses multiple functions to create a more complex program.
Lists: Basic understanding of lists and how to use them¶
- Create a program that stores a list of student names and their grades and calculates the class average.
- Write a program that filters a list of strings based on a specific criterion, such as length or character.
- Create a program that generates a random password by selecting characters from a predefined list.
- Using keyboard inputs to make a bird jump
- Creating a dance party based on certain inputs
Control Structures: Understanding different control structures, such as for loops and while loops¶
- Write a program that uses a for loop to iterate over a list of items and perform a specific action.
- Develop a program that uses a while loop to simulate a game or a simulation.
- Create a program that uses a do-while loop to continuously prompt the user for input until a valid value is entered.
Variables: Intermediate understanding of variables and how to use them effectively¶
- Create a program that stores data in variables and performs calculations based on the values.
- Write a program that uses arrays or lists to store data and access specific elements.
- Develop a program that uses variables to store user input and manipulate the data.
Functions: Intermediate understanding of functions and how to use them effectively¶
- Write a program that defines and calls a function to perform a specific action, such as printing a message or performing a calculation.
- Develop a program that uses multiple functions to perform a complex task, such as sorting a list or searching for an item.
- Create a program that uses recursion to solve a problem, such as calculating the factorial of a number or finding the Fibonacci sequence.
Decomposition: Understanding how to zoom in and break down a problem into smaller parts¶
- Write a program that breaks down a complex problem into smaller, more manageable sub-problems, and solves them individually.
- Develop a program that uses modular programming concepts to separate code into reusable and understandable parts.
- Create a program that uses abstraction to hide the complexity of the code from the user, such as by using a simple interface to interact with a more complex system.
Debugging: Advanced problem-solving skills to fix complex errors in code¶
- Debug a program with errors caused by incorrect data types, such as trying to perform arithmetic operations on strings.
- Fix a program with errors caused by incorrect variable scopes, such as using a variable outside of its defined scope.
- Debug a program with errors caused by incorrect control structures, such as an incorrect loop condition or if/else statement.
Resources¶
Tools¶
- Python turtle complex project
- Autonomously building games in code.org