As Computational Thinkers, students break problems into component parts, identify key pieces of information, and use that information to solve problems. Subtopics include Abstraction, Algorithms, and Programming and Development.
Standards
K - N/A
1st - Classify and sort information into logical order with and without a computer.
2nd - Create and sort information into useful order using digital tools.
Tools for Students
Standards
3rd Grade
1 - Use numbers or letters to represent information in another form.
2 - Analyze a given list of sub-problems while addressing a larger problem.
4th Grade
1 - Construct a basic system of numbers, letters, or symbols to represent information as a cipher.
2 - Formulate a list of sub-problems to consider while addressing a larger problem.
5th Grade
Construct a complex system of numbers or letters to represent information.
Tools for Students
Standards
6th Grade
1 - Remove background details from an everyday process to highlight essential properties.
2 - Define a process as a function.
7th Grade
Create a function to simplify a task.
8th Grade
1 - Design a function using a programming language that demonstrates abstraction.
2 - Explain how abstraction is used in a given function.
Lesson Planning
Abstraction – Number Systems and Data Representation
Abstraction with MadLibs - code.org
APT PBS Learning Media - Coding Lessons
Magic and Computational Thinking
NYC Computer Science 4 All - Abstraction Lessons
DLCS Standards Unpacked - Computational Thinking - 6-8
DLCS Standards Unpacked - Computational Thinking - Abstraction
Tools for Students
Standards
1 - Decompose problems into component parts, extract key information, and develop descriptive models to understand the levels of abstractions in complex systems.
2 - Explain how computing systems are often integrated with other systems and embedded in ways that may not be apparent to the user.
Tools for Students
Standards
Kindergarten
List the sequence of events required to solve problems.
1st Grade
Order events into a logical sequence or algorithm.
2nd Grade
Create an algorithm for other learners to follow.
Lesson Planning
Tools for Students
Standards
3rd Grade
3 - Explain that different solutions exist for the same problem or sub-problem.
4 - Examine logical reasoning to predict outcomes of an algorithm.
5 - Create an algorithm to solve a problem as a collaborative team.
6 - Describe the function of a flowchart.
4th Grade
3 - Show that different solutions exist for the same problem or sub-problem.
4 - Detect and debug logical errors in various basic algorithms.
5 - Use flowcharts to create a plan or algorithm.
6 - Define a simple pseudocode.
5th Grade
2 - Create an algorithm to solve a problem while detecting and debugging logical errors within the algorithm.
3 - Create an algorithm that is defined by simple pseudocode.
4 - Create a simple pseudocode.
5 - Develop and recommend solutions to a given problem and explain the process to an audience.
Lesson Planning
Magic and Computational Thinking
NYC CS 4 ALL - Creating from Scratch Unit
Playground Games Algorithm Lesson
Computational Thinking and Puzzles
Intro to Computational Thinking Unit
My Robotic Friend - Unplugged - Any Age
DLCS Standards Unpacked - Computational Thinking - 3-5
DLCS Standards Unpacked - Computational Thinking - Algorithm
Standards
6th Grade
3 - Create pseudocode that uses conditionals.
4 - Differentiate between flowcharts and pseudocode.
5 - Identify algorithms that make use of sequencing, selection or iteration.
7th Grade
2 - Create complex pseudocode using conditionals and Boolean statements.
3 - Create algorithms that demonstrate sequencing, selection or iteration.
4 - Design a complex algorithm that contains sequencing, selection or iteration.
8th Grade
3 - Create an algorithm using a programming language that includes the use of sequencing, selections, or iterations.
4 - Create a function to simplify a task.
Lesson Planning
Creating algorithms to solve problems
Computer Science Discovery Code.org
Future Engineers Smile Project
TGR Edu Explore - Video Game Lesson
APT PBS Learning Media - Coding Lessons
Teachable Machine from Google - Training Ideas
Computational Thinking and Puzzles
Magic and Computational Thinking
Getting Up Algorithm Using Microsoft Publisher - Could be done with Goggle Draw too
My Robotic Friend - Unplugged - Any Age
Buggy Playground Games with Debugged Key
NYC Computer Science 4 All - Algorithm Lessons
DLCS Standards Unpacked - Computational Thinking - 6-8
DLCS Standards Unpacked - Computational Thinking - Algorithm
Standards
3 - Differentiate between a generalized expression of an algorithm in pseudocode and its concrete implementation in a programming language.
a. Explain that some algorithms do not lead to exact solutions in a reasonable amount of time and thus approximations are acceptable.
b. Compare and contrast the difference between specific control structures such as sequential statements, conditional, iteration, and explain the benefits and drawbacks of choices made. Examples: Tradeoffs involving implementation, readability, and program performance.
c. Distinguish when a problem solution requires decisions to be made among alternatives, such as selection constructs, or when a solution needs to be iteratively processed to arrive at a result, such as iterative “loop” constructs or recursion.
d. Evaluate and select algorithms based on performance, reusability, and ease of implementation.
e. Explain how more than one algorithm may solve the same problem and yet be characterized with different priorities. Examples: All self-driving cars have a common goal of taking a passenger to a designation but may have different priorities such as safety, speed, or conservation; web search engines have their own algorithms for search with their own priorities.
Standards
Kindergarten
2 - Demonstrate use of input devices.
1st Grade
3 - Construct elements of a simple computer program in collaboration with others.
2nd Grade
3 - Construct elements of a simple computer program using basic commands.
4 - Identify bugs in basic programming.
Tools for Students
Standards
3rd Grade
7 - Test and debug a given program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.
4th Grade
7 - Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs, in collaboration with others.
5th Grade
6 - Create a working program in a block-based visual programming environment using arithmetic operators, conditionals, and repetition in programs.
7 - Identify variables.
8 - Demonstrate that programs require known starting values that may need to be updated appropriately during the execution of programs.
Lesson Planning
Whymaker Programming/Coding Lessons
Magic and Computational Thinking
NYC CS 4 ALL - Creating from Scratch Unit
Computational Thinking and Puzzles
Intro to Computational Thinking Unit
My Robotic Friend - Unplugged - Any Age
DLCS Standards Unpacked - Computational Thinking - 3-5
DLCS Standards Unpacked - Computational Thinking - Algorithm
Tools for Students
Standards
6th Grade
6 - Identify steps in developing solutions to complex problems using computational thinking.
7 - Describe how automation works to increase efficiency.
8 - Create a program that initializes a variable.
7th Grade
5 - Solve a complex problem using computational thinking.
6 - Create and organize algorithms in order to automate a process efficiently.
7 - Create a program that updates the value of a variable in the program.
8 - Formulate a narrative for each step of a process and its intended result, given pseudocode or code.
8th Grade
5 - Discuss the efficiency of an algorithm or technology used to solve complex problems.
6 - Describe how algorithmic processes and automation increase efficiency.
7 - Create a program that includes selection, iteration, or abstraction, and initializes, and updates, at least two variables.
Lesson Planning
Whymaker Programming/Coding Lessons
Boolean Logic History and Gates
APT PBS Learning Media - Coding Lessons
Developing Computational Thinking
Pseudo-code, Python, VB.NET Quick reference
NYC Computer Science 4 All - Programming Lessons
DLCS Standards Unpacked - Computational Thinking - 6-8
DLCS Standards Unpacked - Computational Thinking - Programming & Development
Standards
5 - Design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using current events.
6 - Decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, and/or objects, with parameters, and which return a result.
7 - Compare and contrast fundamental data structures and their uses.
8 - Demonstrate code reuse by creating programming solutions using libraries and Application Programming Interfaces.
9 - Demonstrate the ability to verify the correctness of a program.
a. Develop and use a series of test cases to verify that a program performs according to its design specifications.
b. Collaborate in a code review process to identify correctness, efficiency, scalability and readability of program code.
10 - Resolve or debug errors encountered during testing using iterative design process. .
Lesson Planning
Book of Programming Challenges
Whymaker Programming/Coding Lessons
APT PBS Learning Media - Coding Lessons
Understanding Procedures in Python
NYC Computer Science 4 All - Programming Lessons
DLCS Standards Unpacked - Computational Thinking - 9-12
DLCS Standards Unpacked - Computational Thinking - Programming & Development