7/26/2019 Introduction to Programming.docx
1/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
Course Title:Introduction to Programming
Content Area: Technology
Grade Level(s): 10-12
Course Description:
This course is designed to introduce students to the concepts of computers and
computing with a focus on programming and problem solving.
Date Created: May 2014
Date Approved by Plumsted Township Board of Education: August 2014
Pacing Guide
Unit 1 Human Computer Interaction
Unit 2 Problem Solving
Unit 3 Programming With Karel
Unit 4 Basic JavaScript and Graphics
Unit 5 Animation and Games
Unit 6 Capstone Project
__2__ Weeks
__2__ Weeks
__4__ Weeks
__5
__ Weeks
__4__ Weeks
__2__ Weeks
Unit 1 Human Computer Interaction
Unit Summary:
In this unit, students are introduced to the concepts of a computer and computing while investigating the major
components of computers and the suitability of these components for particular applications. Students will experiment
1
7/26/2019 Introduction to Programming.docx
2/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
with Internet search techniques, explore a variety of websites and web applications, and discuss issues of privacy and
security. Fundamental notions of Human Computer Interaction (HCI) and ergonomics are introduced. Students will learn
that intelligent machine behavior is not magic but is based on algorithms applied to useful representations of
information, including large data sets. Students will learn the characteristics that make certain tasks easy or difficult for
computers, and how these differ from those that humans characteristically find easy or difficult. Students will gain an
appreciation for the many ways in which computing--enabled innovation have hadan impacton society, aswell as forthe
many different fields in which they are used. Connections among social, economical, and cultural contexts will be
discussed.
Interdisciplinary Connections/Content Area Integrations: technology, mathematics, science, reading, writing
NJCCCS
8.1.12.D.1 Technology
Operations and Concepts
8.1.12.D.2 Technology
Operations and Concepts
8.1.12.D.3 Technology
Operations and Concepts
8.1.12.B.01 Creativity and
Innovation (Tech Ed)
8.1.12.A.03 Technology
Operations and Concepts
8.1.12.F.2 Technology
Operations and Concepts
9.1.12.A.1 21st-Century Life
and Career Skills
Evaluate policies on unauthorized electronic access (e.g., hacking) and disclosure and on
dissemination of personal information.
Demonstrate appropriate use of copyrights as well as fair use and Creative Commons
guidelines.
Compare and contrast international government policies on filters for censorship.
Design and pilot a digital learning game to demonstrate knowledge and skillsrelated toone or
more content areas or a real world situation.
Participate in online courses learning communities social networks or virtual worlds and
recognize them as resources for lifelong learning.
Analyze the capabilities and limitations of current and emerging technology resources and
assess their potential to address educational, career, personal, and social needs.
Apply critical thinking and problem-solving strategies during structured learning experiences.
Essential Questions:
What is a computer? What is computing?
What are the components of a computer? Describe the uses of the computer hardware components. Differentiatebetween hardware components for various types of users.
What does the term Web 2.0 mean?
What is a search engine? How do they work?
What resources would you use to locate information on the Internet?
What are good websites?
Differentiate between ranking based search engines and social bookmarking (collaborative) search engines.
2
7/26/2019 Introduction to Programming.docx
3/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
What role do computers play in communication in todays society? How have they changed?
What is the difference between information and data?
How do we most effectively exchange information and data?
How has social media transformed the way we communicate?
What level of privacy should we anticipate/expect when we communicate electronically?
Instructional Outcomes:
What will the students learn? The students will be able to:
Describe ways in which computing enables innovation.
Discuss the ways in which innovations enabled by computing affect communication and problem solving.
Analyze how computing influences and is influenced by the cultures for which they are designed and the cultures inwhich
they are used.
Analyze how social and economic values influence the design and development of computing innovations.
Discuss issues of equity, access, and power in the context of computing resources.
Communicate the legal an ethical concerns raised by computational innovations.
Discuss privacy and security concerns related to computational innovations.
Explain positive and negative effects of technological innovations on human culture.
Formative Assessments:
Journal entries
Completion of daily assignments
Informal checks for Understanding
Student handouts
Class discussions and Feedback Students will be graded using the rubric system
They will be graded on their performance and participation
Summative Assessments: Unit project (or test)
Suggested Learning Activities:Computer Buying project, Computer Components Checklist, Jigsaw Activity, Website
evaluation, ScavengerHunt, Communications Methods Chart, Privacy Activity,Room ActivityPicture, DataJournal,Virtual Bead
Loom Tutorial, Culturally Situated Design Tools Project Sample Rubric, Following Directions Quiz, Drawing Pictures Activity,
Bread, Peanut Butter, Jelly, and a Knife, Computer Intelligence Activity.
Curriculum Development Resources:
http://www.exploringcs.org/
The Wayback Machine: http://www.archive.org
Google Maps (including StreetView): http://maps.google.com
Wikipedia: http://www.wikipedia.org
3
http://www.exploringcs.org/http://www.exploringcs.org/7/26/2019 Introduction to Programming.docx
4/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
Encyclopedia Britannica: http://www.britannica.com
Mapquest: http://www.mapquest.com
Internet Movie Database: http://www.imdb.com
Switchboard: http://www.switchboard.com
Yellow Pages: http://www.yellowpages.com
How Stuff Works: http://www.howstuffworks.com
YouTube: http://www.youtube.com
Howcast: http://howcast.com
http://www.delicious.com
http://www.stumbleupon.com
http://www.wordle.net
http://www.tadalist.com
The white nationalist site on Martin Luther King, Jr.: http://www.martinlutherking.org
Culturally Situated Design Toolshttp://www.csdt.rpi.edu (site and adaptations of tutorials courtesy Ron Eglash)
Virtual Bead Loom Tutorial
Pacific Northwest Basket Weaver Tutorial
Navajo Rug Weaver Tutorial
Culturally Situated Design Tools Project Sample Rubric
http://www.photoshop.com
http://www.justriddlesandmore.com/direct.html
The basis for the following directions quiz (the quiz was modified slightly)
Computer Science Unplugged Activity 20: Conversations with ComputersThe Turing Test
(http://www.csunplugged.com), pp. 213--226
Computer Science Unplugged Activity 20: Conversations with ComputersThe Turing Test, p. 225
questions (one copy for each pair of students)
Computer Science Unplugged Activity 20: Conversations with ComputersThe Turing Test, p. 226 answers
(one copy to post or display)
Unit 2 Problem Solving
Unit Summary:This unit provides students with opportunities to become computational thinkers by applyinga variety of
problem-solving techniques as they create solutions to problems that are situated in a variety of contexts. The range of
contexts motivates the need for students to think abstractly and apply known algorithms where appropriate, but also createnew algorithms. Analysis of various solutionsand algorithms will highlightproblemsthat arenot easilysolved bycomputerand
for which there areno knownsolutions. This unit also focuses ontheconnectionsbetweenmathematics andcomputer science.
Students willbe introduced to selectedtopics in discrete mathematics includingBoolean logic, functions,graphs, andthe binary
number system. Students are also introduced to searching and sorting algorithms and graphs.
Interdisciplinary Connections/Content Area Integrations: technology, mathematics, science, reading, writing
4
http://www.photoshop.com/http://www.photoshop.com/7/26/2019 Introduction to Programming.docx
5/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
NJCCCS
8.1.12.B.01 Creativity and
Innovation (Tech Ed)
8.1.12.A.03 Technology
Operations and Concepts
8.1.12.F.2 Technology
Operations and Concepts
9.1.12.A.1 21st-Century Life
and Career Skills
Design and pilot a digital learning game to demonstrate knowledge and skillsrelated toone or
more content areas or a real world situation.
Participate in online courses learning communities social networks or virtual worlds and
recognize them as resources for lifelong learning.
Analyze the capabilities and limitations of current and emerging technology resources and
assess their potential to address educational, career, personal, and social needs.
Apply critical thinking and problem-solving strategies during structured learning experiences.
Essential Questions:
What is intelligence?
To what extent is a computer a strategic thinker?
How important is problem-solving and strategy?
How do you determine if you are going to develop a short or long term solutions?
What is an ill-structured problem? To what extent does every problem have a solution?
How do you know if your solutions are options for solving a problem?
Instructional Outcomes:
What will the students learn? The students will be able to:
Name and explain the steps they use in solving a problem.
Solve a problem by applying appropriate problem-solving techniques.
Express a solution using standard design tools.
Determine if a given algorithm successfully solves a stated problem.
Create algorithms that meet specified objectives.
Explain the connections between binary numbers and computers.
Summarize the behavior of an algorithm.
Compare the tradeoffs between different algorithms for solving the same problem.
Explain the characteristics of problems that cannot be solved by an algorithm.
Formative Assessments:
Journal entries
Completion of daily assignments
Informal checks for understanding
Student handouts
Class discussions and feedback
Students will be graded using a rubric system
5
7/26/2019 Introduction to Programming.docx
6/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
They will be graded on their performance and participation
Summative Assessments: Unit project (or test)
Final Project (This project is adapted from MathmaniaCS Lesson 13 (http://www.mathmaniacs.org/lessons)
Final Project Sample Rubric
Suggested Learning Activities:Data Journal, Communication Methods and Data Chart, Number of Pieces/Number ofBreaks Chart, HandshakeandFencepostActivity,HandshakeActivity#2 Sample Solution,ComputerScience UnpluggedActivity
1: Count the DotsBinary Numbers, pp. 3--13, Tower Building Activity, Computer Science Unplugged Activity7: Lightest and
HeaviestSorting Algorithms, pp. 64--70, Computer Science Unplugged Activity9: TheMuddyCityMinimalSpanning Trees,
pp. 76--80
Curriculum Development Resources:
http://www.exploringcs.org/
Polya, G. How to Solve It. 2nd. Princeton, NJ: Princeton University Press, 2004. Candy bar problem suggested by Dr.Manuel Blum, Carnegie Mellon University
Candy bars for student groups to use
Number of Pieces/Number of Breaks Chart
Polya, G. How to Solve It. 2nd. Princeton, NJ: Princeton University Press, 2004
Culturally Situated Design Tools Cornrow Curvescsdt.rpi.edu (courtesy Ron Eglash)
Bell, Tim, Ian Witten and Mike Fellows. Computer Science Unplugged. Canterbury, New Zealand: 2002
Binary number cards for each student
Large binary number cards for the demonstrations
Shasha, Dennis. The Puzzling Adventures of Doctor Ecco. Mineola, New York: Dover Publications, Inc., 1998
Sample Solutions for Tower Building Activity
Bell, Tim, Ian Witten and Mike Fellows. Computer Science Unplugged., New Zealand: 2002
Containers of the same size with different weights
Balance scales
Bell, Tim, Ian Witten and Mike Fellows. Computer Science Unplugged. Canterbury, New Zealand: 2002
Mapping website such as www.maps.google.com
Unit 3 Programming With Karel
Unit Summary:Students will learn thefundamentals of computer science whilecreating theirownanimations, graphics,and
games for the web. This is the beginning unit for the www.codehs.comcurriculum.
Interdisciplinary Connections/Content Area Integrations:technology, mathematics, reading, writing
NJCCCS
6
http://www.codehs.com/http://www.exploringcs.org/http://www.exploringcs.org/http://www.mathmaniacs.org/lessons7/26/2019 Introduction to Programming.docx
7/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
8.1.12.B.01 Creativity and
Innovation (Tech Ed)
8.1.12.A.03 Technology
Operations and Concepts
8.1.12.F.2 Technology
Operations and Concepts
9.1.12.A.1 21st-Century Life
and Career Skills
Design and pilot a digital learning game to demonstrate knowledge and skillsrelated toone or
more content areas or a real world situation.
Participate in online courses learning communities social networks or virtual worlds and
recognize them as resources for lifelong learning.
Analyze the capabilities and limitations of current and emerging technology resources and
assess their potential to address educational, career, personal, and social needs.
Apply critical thinking and problem-solving strategies during structured learning experiences.
Essential Questions:
How similar is the language of computer programming to that of the English language?(features, patterns,symbols,
syntax) What is programming?
Who/what is Karel?
What is a command?
What is a function?
What is the analogy we use to describe functions in Karel?
What is a bug?
What is top down design? How would you apply top down design to everyday activities? Eating lunch, Waking up,
Playing a sport?
Why should you use comments?
What is programming style? What can SuperKarel do?
What is a loop?
What is a for loop? When do we use a for loop?
What is an if/else statement?
What is a world? Why is it useful to use different worlds to test code?
What are examples of situations when you use if statements or if/else statementsin yourlife? Whatis a while loop?
How do we decide if we should use a while loop or a for loop?
What are the different types of control structures, and how do we know when to use each one?
Why is indenting important?
What are the important factors for good programming style?
How do you approach breaking down a tough coding problem into smaller problems?
What are edge cases? What are some edge cases you have run into?
Instructional Outcomes: What will the students learn? SWBAT
Programming with Karel
Differentiate between a command and a function
7
7/26/2019 Introduction to Programming.docx
8/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
Define what a function is
Define what the term bug means
Define top down design
Apply top down design to everyday activities
Utilize comments in code Develop a programming style
Work with SuperKarel
Understand and utilize loops and For Loops
Utilize conditional logic such as If, If/Else statements
Identify examples of situations when to use If statements or if/else statements in life
Define what a world is
Understand why it is useful to use different worlds to test code
Define and use a while loop
Differentiate between a while look and a for loop
Identify different types of control structures and when to use them
Understand the importance of indenting code
Understand the important factors of good programming style
Develop an approach breaking down a tough coding problem into smaller problems
Define edge cases and list some edge cases students may have run into
Test and debug programs
Utilize techniques for fixing bugs in a program
List the important things they have learned from Karel
Formative Assessments:
Completion of daily assignments
Informal checks for understanding
Student handouts
Class discussions and feedback
Quizzes
Students will be graded using the rubric system
They will be graded on their performance and participation
Summative Assessments: Unit project (or test)
Suggested Learning Activities:
Introduction to Programming with Karel reading and video, Your First Karel program activity, Short Stack, More Basic Karelreading and video, Tennis Ball Square program activity, Make a Tower, Pyramid of Karel, Karel Can't Turn Right
Curriculum Development Resources: http://codehs.com/
Unit 4 Basic JavaScript and Graphics
8
7/26/2019 Introduction to Programming.docx
9/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
Unit Summary:Students will be introduced to JavaScript programming basics. The use of graphics and
JavaScript code will the mastered and applied.
Interdisciplinary Connections/Content Area Integrations: technology, mathematics, reading, writing
NJCCCS
8.1.12.B.01 Creativity and
Innovation (Tech Ed)
8.1.12.A.03 Technology
Operations and Concepts
8.1.12.F.2 Technology
Operations and Concepts
9.1.12.A.1 21st-Century Life
and Career Skills
Design and pilot a digital learning game to demonstrate knowledge and skillsrelated toone or
more content areas or a real world situation.
Participate in online courses learning communities social networks or virtual worlds and
recognize them as resources for lifelong learning.
Analyze the capabilities and limitations of current and emerging technology resources and
assess their potential to address educational, career, personal, and social needs.
Apply critical thinking and problem-solving strategies during structured learning experiences.
Essential Questions:What are programming languages used for?What is JavaScript? How are graphics
important to an applications design?
Instructional Outcomes:
What will the students learn? SWBAT
Define what a variable is Read input from a user
List the different types of input they can get from a user
Decide what type of program they design based in the user input received
Define what a modulus operator is
List the process for writing this type of program
List the steeps for creating a graphics object on the screen
Understand the importance of constraints in a program
Define a magic number and the problem with using them in a program
Understand and utilize Boolean logic and logical operators in a program
Develop examples of a Boolean Define what a comparison operator is and when to use them
Develop If/Else logic from examples in their day to day life
Compare the For loop in Karel to the For loop in JavaScript
Use debugging techniques learned in the previous unit to programs created with JavaScript
Identify the parts of the For loop
Explain how to write a For loop
9
7/26/2019 Introduction to Programming.docx
10/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
Use the Randomizer in program code to simulate a random coin flip and dice roll
Compare While loops in JavaScript to those in Karel
Define what a loop and a half is and when to use it
Define what a Parameter is and site three examplesof day today tasks thatyou can turnintoa problem offunctions
and parameters
Come up with three examples of day-to-day tasks that you can turnintoa problem offunctions and parametersand
return value
Define what a global variable is and use Return values, Local variables and Scope
Formative Assessments:
Completion of daily assignments
Informal checks for understanding
Student handouts
Class discussions and feedback
Students will be graded using the rubric system
They will be graded on their performance and participation
Summative Assessments: Unit project (or test)
Suggested Learning Activities:
Hello World, Your Name and Hobby, Variables, Basic Variables, Apples and Oranges, User Input, Basic User Input, Grocery
Store, Basic Math in JavaScript, Simple Calculator, Dollars to Pounds, Dividing Up Groups, T-Shirt Shop, Running Speed,
Graphics, Graphics Hello World, Blue Circle, Red Rectangle, 8 Ball, French Flag, Snowman, Booleans, First Boolean, Do You
Have a Dog?, Logical Operators, Light Switch, President, Wasting Time, Can You Graduate?, The Weekend, Comparison
Operators, Walk into a Bar, Grade Range, Rolling Dice, All Star, If Statements, Negative Numbers, Great Names, Even
and Odd, Secret Password, Teenagers, Stop Light, Basic For Loop, For Loop, Chalkboard, Caterpillar, General ForLoop,
Countdown, Count By Twos, Count BySevens, Powersof Two, For LoopExamples, For LoopSum, BetterSum, Factorial, All
Dice Values, Random Numbers, Rolling a Die, Flipping a Coin, Lots of Dice, Random Color Square, While Loops, While Loop
Countdown, Inventory, Fibonacci, Loop and a Half, Adding Up Numbers, Snake Eyes, Better Password Prompt, Functions
and Parameters 1, Double Number, Square, Triple, Functions and Parameters 2, Sum Function, AreaofTriangle, Heightin
Meters, Functions and Parameters 3, Draw Circles, Horizontal Lines, GraphicsStopLight, PoolTable, Functions and Return
Values 1, Double Number, Square with Return Values, Triple with Return Values, Functions and Return Values 2,
Return Values, Is ItEven?, Max, Local Variables and Scope, ReturnValues, LocalVariables, Ghosts, GuessingGame and Draw
Something
Curriculum Development Resources: http://codehs.com/
Unit 5 Animation and Games
10
7/26/2019 Introduction to Programming.docx
11/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
Unit Summary:Students will expand on the knowledge acquired in the previous unit and develop more interactive
applications using graphics and animations. Concepts covered previously will be mastered and applied.
Interdisciplinary Connections/Content Area Integrations: technology, mathematics, reading, writing
NJCCCS
8.1.12.B.01 Creativity and
Innovation (Tech Ed)
8.1.12.A.03 Technology
Operations and Concepts
8.1.12.F.2 Technology
Operations and Concepts
9.1.12.A.1 21st-Century Life
and Career Skills
Design and pilot a digital learning game to demonstrate knowledge and skillsrelated toone or
more content areas or a real world situation.
Participate in online courses learning communities social networks or virtual worlds and
recognize them as resources for lifelong learning.
Analyze the capabilities and limitations of current and emerging technology resources and
assess their potential to address educational, career, personal, and social needs.
Apply critical thinking and problem-solving strategies during structured learning experiences.
Essential Questions:Define what a computer game is? What makes a computer game a good game? What is user
interactivity? Now that you have made your first game, what are some other games you think you can make?
Instructional Outcomes:
What will the students learn? SWBAT:
Use the Timer commandDifferentiate between when to use the Timer command and the While loop
Identify what global variables are
Understand why to use a global variable on an object that you change in a time?
Mix local and global variables when using a timer
Recognize when to use local and global variables
Figure out a way to keep track of information when using a timer
Identify and define what a mouse event is
Design a program with user interaction
Define and identify what a keyboard event is
Design a program with a keyboard event
Define what a key code is
Write general functions
List the importance of using return values when coding
Formative Assessments:
Completion of daily assignments
Informal checks for understanding
11
7/26/2019 Introduction to Programming.docx
12/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
Student handouts
Class discussions and feedback
Students will be graded using the rubric system
They will be graded on their performance and participation
Summative Assessments: Unit project (or test)
Suggested Learning Activities: Timers,Moving Ball, Magic 8 Ball, Crazy Ball, Example: Random Circles, Random Circles,
Spinner, Growing Circle, Paint Splatter, Example: Random Ghosts, Random Ghosts, Random Fireworks, Circle Wall, Example:
Bouncing Ball, Bouncing Ball, Hotspot Ball, Trail, Mouse Events: Mouse Clicked, Click for Circles, Click for Ghosts, Teleporting
Ball, Pause, Mouse Events: Mouse Moved, Simple Painting, Colorful Drag to Paint, Coordinates, Coordinates (finish up), Target,
Example: Drawing Lines,Drawing Lines,Leash, KeyEvents, Keyboard Square, Basic Snake,CrazyBallGame1,CrazyBall Game 2,
Drag and Drop, Bricks, Ball and Paddle, Breakout, Catch up, and Finish up module
Curriculum Development Resources: http://codehs.com/
Unit 6 Capstone Project
Unit Summary:Students will complete a capstone project based on the skills acquired during the course. They will utilize
programming syntax (code) and skills mastered throughout the semester.
Interdisciplinary Connections/Content Area Integrations: technology, mathematics, reading, writing
NJCCCS
8.1.12.B.01 Creativity and
Innovation (Tech Ed)
8.1.12.A.03 Technology
Operations and Concepts
8.1.12.F.2 Technology
Operations and Concepts
9.1.12.A.1 21st-Century Life
and Career Skills
Design and pilot a digital learning game to demonstrate knowledge and skillsrelated toone or
more content areas or a real world situation.
Participate in online courses learning communities social networks or virtual worlds and
recognize them as resources for lifelong learning.
Analyze the capabilities and limitations of current and emerging technology resources and
assess their potential to address educational, career, personal, and social needs.
Apply critical thinking and problem-solving strategies during structured learning experiences.
Essential Questions:Define what a computer game is? What makes a computer game a good game? What is user
interactivity? Now that you have made your first game, what are some other games you think you can make?
12
7/26/2019 Introduction to Programming.docx
13/13
PLUMSTED TOWNSHIP SCHOOL DISTRICTAligned to Common Core State StandardsCourse Title: Introduction to Programming
Instructional Outcomes:
What will the students learn? SWBAT
Work collaboratively to complete this project.
Design and create an interactive game using JavaScript and graphics.
Apply various coding techniques such as looping, conditional testing, and Boolean logic.
Test and debug the program.
Formative Assessments:
Completion of daily work on the projects
Informal checks for understanding
Student handouts
Class discussions and feedback
Students will be graded using the rubric system
They will be graded on their performance and participation
Summative Assessments: Unit project (or test)
Suggested Learning Activities:TBD-Students will apply their knowledge of programming to create their own computer
game for pre-school aged students to use. Students will work in groups of 2-3 to complete the final project.The final project
will count as 20% of their overall grade for the course.
Curriculum Development Resources: http://codehs.com/, http://www.exploringcs.org/
13
http://www.exploringcs.org/http://codehs.com/Top Related