Course Description
Computer Programming with Scratch
Computer Programming with Scratch is a course offered in grades 6-8 that teaches students how to program using Scratch, a block-based programming language developed by MIT. The course is designed to introduce students to the fundamentals of computer programming and computational thinking through creative projects and interactive activities.
Late Work Policy
Missing work will receive a grade of zero until it is submitted. Late work will be accepted with a single 20% deduction.
The Standards
This course uses the standards for Foundations of Computer Programming (MS-CS-FCP) provided by the state of Georgia.
MS-CS-FCP.1
Demonstrate employability skills required by business and industry and explore, research, and present careers in information technology.
- MS-CS-FCP.1.1 — Communicate effectively through writing, speaking, listening, reading, and interpersonal abilities.
- MS-CS-FCP.1.2 — Demonstrate an understanding of collaborative interactions in the digital world.
- MS-CS-FCP.1.3 — Model work-readiness traits required for success in the workplace including integrity, honesty, accountability, punctuality, time management, and respect for diversity.
- MS-CS-FCP.1.4 — Exhibit critical thinking and problem-solving skills to locate, analyze, and apply information in career planning and employment situations.
- MS-CS-FCP.1.5 — Present a professional image through appearance, behavior and language.
- MS-CS-FCP.1.6 — Investigate educational requirements, job responsibilities, employment trends, and opportunities within information technology career pathways using credible sources.
MS-CS-FCP.2
Explore and explain the basic components of computers and their relationships to programming.
- MS-CS-FCP.2.1 — Identify the basic components of the computer (processor, operating system, memory, storage, ethernet ports) by disassembling and reassembling a demonstration model personal computer (may be done ‘virtually’ online if demo model is not available).
- MS-CS-FCP.2.2 — Demonstrate an understanding of key functional components (input/output devices, software applications, wi-fi and/or Ethernet, and IP addresses).
- MS-CS-FCP.2.3 — Demonstrate an understanding of the fundamental concepts for how computers process programming commands (hex, binary language, sequence of commands, conditional structures, looping structures).
MS-CS-FCP.3
Utilize computational thinking to solve problems.
- MS-CS-FCP.3.1 — Make observations and organize the concepts of modularity, including functions and methods, as it relates to programming code reusability and cloud computing in the software industry.
- MS-CS-FCP.3.2 — Develop a working vocabulary of computational thinking including sequences, algorithms, binary, pattern matching, decomposition, abstraction, parallelization, data, automation, data collection, data analysis, Boolean, integer, branches (if…then…else), and iteration {loops (For, While)}.
- MS-CS-FCP.3.3 — Analyze the problem-solving process, the input-process-output-storage model of a computer, and how computers help humans solve problems.
- MS-CS-FCP.3.4 — Develop an algorithm to decompose a problem of a daily task.
MS-CS-FCP.4
Design, develop, debug and implement computer programs.
- MS-CS-FCP.4.1 — Develop a working vocabulary of programming including flowcharting and/or storyboarding, coding, debugging, user interfaces, usability, variables, lists, loops, conditionals, programming language, and events.
- MS-CS-FCP.4.2 — Utilize the design process to brainstorm, implement, test, and revise an idea.
- MS-CS-FCP.4.3 — Cite evidence on how computers represent data and media (sounds, images, video, etc.).
- MS-CS-FCP.4.4 — Design a user interface and test with other users using a paper prototype.
- MS-CS-FCP.4.5 — Implement a simple algorithm in a computer program.
- MS-CS-FCP.4.6 — Develop an event driven program.
- MS-CS-FCP.4.7 — Create a program that accepts user and/or sensor input and stores the result in a variable.
- MS-CS-FCP.4.8 — Create a computer program that implements a loop.
- MS-CS-FCP.4.9 — Develop a program that makes a decision based on data or user input.
- MS-CS-FCP.4.10 — Debug a program with an error.
MS-CS-FCP.5
Explore the relationship between computer hardware and software.
- MS-CS-FCP.5.1 — Develop a working vocabulary of embedded computing including digital, analog, events, microcontrollers, sensors, light emitting diodes (LED), switches, servos, cloud computing, and internet of things.
- MS-CS-FCP.5.2 — Investigate how software interacts with hardware in the boot process.
- MS-CS-FCP.5.3 — Analyze and explain how computers communicate information with simple hardware inputs and outputs.
- MS-CS-FCP.5.4 — Create a product that analyzes how simple computer hardware can be used to develop innovative new products that interact with the physical world.
- MS-CS-FCP.5.5 — Design a computer program that senses something in the real world and changes an output based on the input.
MS-CS-FCP.6
Create digital artifacts to address a current issue requiring resolution.
- MS-CS-FCP.6.1 — Summarize ethical, privacy, and legal issues of a digital world using current case studies.
- MS-CS-FCP.6.2 — Collaborate as a team to develop an artifact that represents multiple perspectives regarding a global crisis.
- MS-CS-FCP.6.3 — Analyze and explain the functionality and suitability (or appropriateness) of a computational artifact.
- MS-CS-FCP.6.4 — Develop a program for creative expression or to satisfy personal curiosity which may have visual, audible, and/or tactile results.
- MS-CS-FCP.6.5 — Develop a program specifically with the goal of solving a problem, creating new knowledge, or helping people, organizations, or society.