Please enable JavaScript to use CodeHS


Introduction to Computer Science in JavaScript (Bulldog) (2023)

Units

Unit Description
Programming with Karel (Duplicate Shallow): Students learn the basics of programming by giving Karel the Dog commands in a grid world.
Karel Challenges (Duplicate Shallow): Students apply all the foundational concepts from Intro to Karel to solve new challenges.
JavaScript Basics (Duplicate Shallow): Students learn the basics of JavaScript including variables, user input, mathematics, and functions.
The Canvas and Graphics (Duplicate Shallow): Students learn how to add graphics objects and position them on the canvas.
Graphics Challenges (Duplicate Shallow): Students apply what they have learned about graphics and basic JavaScript to complete a set of challenges.
Control Structures (Duplicate Shallow): Students learn how to use control structures such as if/else statements and loops to make advanced programs in JavaScript.
Control Structures Challenges (Duplicate Shallow): Students apply the foundational concepts from the Control Structures module to solve new challenges.
Functions (Duplicate Shallow): Students learn to write reusable code with functions, parameters, and return values, and explore the impact of variable scopes.
Functions Challenges (Duplicate Shallow): Students use what they have learned in the Functions module to solve new challenges.
Animation and Games (Duplicate Shallow): Students learn how to make objects move around the screen and let users interact using the mouse!
Animation Challenges (Duplicate Shallow): Students apply all the foundational concepts from the Animations module to solve new challenges.
Project: Breakout (Duplicate Shallow): Students learn how to make their own Breakout game from scratch using JavaScript.
Final Project (Duplicate Shallow): Students apply the skills they've learned throughout the course to create an original program!
Final Exam (Duplicate Shallow): This course ends with a 25 question multiple choice exam.
Midterm (Duplicate Shallow):
Practice: Karel (Duplicate Shallow): It can take some time to learn all of Karel's tricks. Brush up here with some extra Karel practice problems. These reinforce all of the fundamental concepts introduced in Karel, including commands, functions, loops, conditions control structures, and problem decomposition.
Practice: Functions (Duplicate Shallow): Functions are the critical building block of any program. To be able to use functions, you want to make sure you fully understand parameters, return values, and how to create your own functions. That is what this practice module is for.
Practice: Console Challenges (Duplicate Shallow): A bunch of fun console programs to get practice with JavaScript.
Practice: Graphics and Animation (Duplicate Shallow): A bunch of fun graphics programs to get practice with JavaScript.
Extra Quiz Questions (Duplicate Shallow):
Extension: Visualizing Music (Duplicate Shallow): Learn how to create your own music visualizer!
Extension: Data Structures (Duplicate Shallow): Students learn about lists/arrays, maps/objects, sets, and grids. These are the essential basic data structures that any program will use.
Practice: Data Structures Challenges (Duplicate Shallow): Learn to code Conway's Game of Life and your own Connect Four game using your skills in data structures.
Project: Tic Tac Toe (Duplicate Shallow): Students create their own game of Tic Tac Toe! Students apply what they have learned about data structures and make a two player tic tac toe game.
Project: Helicopter Game (Duplicate Shallow): Students demonstrate their programming prowess as they develop the classic Helicopter game one step at a time.
Intro to CS: JavaScript Pretest (Duplicate Shallow):
Extension: Arrays (Duplicate Shallow): Students learn about lists/arrays, maps/objects, sets, and grids. These are the essential basic data structures that any program will use.
Extension: Objects (Duplicate Shallow):