Introduction to Programming uses the Python programming language to introduce students to basic programming skills. Students learn the principles of programming by comparing Python to other programming languages. The course begins with algorithms, and then it lays a foundation of mastering variables, operators, and control structures. Students use models as a way to quickly solve new problems using knowledge and techniques already learned. After this foundation is established, students learn to design programs and write functions. In addition, students learn program design, documentation, formal debugging, and testing.
Students complete numerous programs in the course, including both text and graphics/animation programs. In their culminating project, students create their own computer game of Tic-Tac-Toe, Pot-Shot, Blackjack, or Shoot-the-Ball, demonstrating all of the programming skills and knowledge they have acquired. Students hone the important skills of problem solving, thinking logically, looking at the big picture, and paying attention to detail. Students also examine career opportunities as system programmers, application programmers, and system engineers, and they consider the education, experience, and skills needed to enter and succeed in programming-related professions.
This course is expected to take a total of 86 50-minute class periods.
Course Scope & Sequence
The Scope & Sequence lists the learning objectives for each lesson, providing you with an overview of what your students will learn during the course. You can use these learning objectives as a guide to determine how the course enables your students to reach the requisite goals set for them.
The Lesson Descriptions document includes a brief overview of every lesson in the course. This is the narrative companion to the course Scope & Sequence document.
If you have questions about this course, need a hand with a particular lesson, or just have a great idea to share, please contact the NAF Instructional Managers directly at email@example.com. We are available to support you in teaching the course while also gathering feedback to improve the NAF curriculum.
Culminating Project Overview
In every NAF course, students complete a culminating project and present it in the final lesson. Download the Project Overview to learn the details about the culminating project for this course and to find out what advance preparation the project entails.
NAFTrack Certification Course Guide
NAFTrack Certification is a nationally recognized, standards-based set of tools developed by NAF to evaluate students' readiness for college and career. By completing all NAFTrack Certification requirements, students demonstrate mastery of academic skills and career-related knowledge. The requirements are as follows: for each of four NAF courses, students complete all coursework, pass the end-of-course exam, and fulfill culminating project responsibilities, as evidenced by uploading key pieces of work.
Correlations to the Common Core State Standards
This document identifies which of the ELA and Math Common Core State Standards are met by each lesson in the course. You can use these correlations as an aid to preparing your students for college and careers.
We welcome questions and feedback about these course materials. For a prompt response, please email the NAF Instructional Managers directly at firstname.lastname@example.org.
The ZIP file below contains the current version of every file for this course. Be sure to download it before the start of each school year. If you just need a specific file or two, it's quicker to use the individual links listed on this page.All Course Files (ZIP file) (last updated )