Please enable JavaScript to use CodeHS

Virginia Computer Science Foundations

This course builds on the concepts of computer science developed in prior grade levels and provides a transition from block-based programming to a text-based programming language and familiarize students with developing and executing computer programs.

Overview & Highlights

High School
Contact Hours

Course Overview

To view the entire syllabus, click here or click to explore the full course.

Digital Citizenship and Cyber Hygiene
Students learn topics on Internet etiquette, how to stay safe on the web, potential effects of digital footprints, how to protect their information, and the implications of cyberbullying.
Programming With Karel
Karel helps teach foundational skills in programming by simplifying JavaScript to four simple commands. Using these commands, students solve increasingly difficult problems and explore how complex programming languages can be developed from simple commands.
Karel Challenges
Students take all the foundational concepts from Karel to solve programming challenges.
Networks and the Internet
Students explore the structure and design of the internet, and how this design affects the reliability of network communication, the security of data, and personal privacy.
JavaScript and Graphics
Students are introduced to the basics of JavaScript, including variables, user input, mathematics, and basic graphics.
Graphics Challenges
Students learn how to pair program and take all the foundational concepts from JavaScript Graphics to solve some programming challenges.
JavaScript Control Structures
Students learn how to use control structures such as if/else statements and loops to make more advanced programs in JavaScript.
Control Structures Challenges
Students take all the foundational concepts from the Control Structures unit to solve programming challenges.
Functions, Events, and Lists
Students learn to write reusable code with functions and parameters and learn about various data structures.
Final Project
Students learn the theory and practice of user interface design. With rapid prototyping and user testing, they design and develop their own engaging web pages.

Offline Handouts

Demo Programs

Explore programs that your students will build throughout this course!

Course Resources

Here are a few examples of teacher resources and materials to use in the Virginia Computer Science Foundations course


Virginia Computer Science Foundations is aligned with the following standards

Standards Framework View Alignment
Virginia Computer Science Foundations View (100%)
Virginia 8 View (76.9%)
Virginia Computer Science Principles View (68.8%)

Customizable Assignments

Create and organize Assignments in any CodeHS course that you're teaching. You can even add custom assignments to pre-existing CodeHS courses.

Learn More

Actions for Teachers

Didn’t find what you were looking for? Here are a few links that might be useful to you.