Intro to Computer Science

High School Students learn foundations of computer science and gain practical coding skills using Python

high school intro to computer science

Foundational Computer Science Concepts

Hands-On Python Programming

Designed for High School Students

Interactive Labs & Creative Challenges

Browser-Based Code Editor – No Setup Required

Hands-On, Project-Based Learning

High School Computer Science Course

A Practical, Project-Based Learning Experience

The course combines both programming and non-programming units, allowing students to not only learn how to code but also build a strong foundation in computer science concepts, emphasizing creative problem-solving and real-world applications.

Throughout the course, students will engage in hands-on projects and programming labs that help them develop practical coding skills. By exploring creative challenges, students will harness the power of computing to create meaningful artifacts while gaining an understanding of how technology shapes our world.

CodeMonkey uses Python as the primary language for programming, offering students a comprehensive learning experience through interactive lessons, guided exercises, and multimedia content. The course incorporates Brython, a Python library that enables students to build and run web applications directly in a browser.

This curriculum is designed to foster an interest in computer science and provide the skills and confidence necessary for success in the field.

Course Syllabus

Digital Information

This unit delves into the core concept of how all information is stored on a computer as a bit – using just 0s and 1s. Students will explore the practical applications of binary, taking an in-depth look at how it’s used to represent colors. Finally, students will investigate how bits can be stored and transmitted efficiently using different compression algorithms.

The Internet

This unit delves into the intricate workings of the internet, exploring its evolution, fundamental protocols, and transformative capabilities. Students will gain a comprehensive understanding of how the internet functions, from the underlying network structure to the protocols that govern data transmission. The unit will also examine the internet’s role in facilitating complex computations and problem-solving through parallel and distributed computing. By the end of this unit, students will have a solid grasp of the internet’s architecture, its impact on modern society, and its potential for future innovation.

Introduction to Programming

This unit provides a comprehensive introduction to the fundamentals of computer programming and syntax of Python. Students will embark on a journey from understanding the core concepts of algorithms and program design to mastering essential programming constructs in Python. By the end of this unit, students will be equipped with the skills to create interactive programs, make informed decisions within code, and effectively manipulate data using variables, operators, and control flow structures. Through hands-on practice and exploration, students will develop a solid foundation in programming logic and problem-solving, preparing them for more advanced programming concepts.

Iteration and Lists

This unit delves into fundamental programming concepts and techniques, focusing on data structures, control flow, and simulation. Students will learn to manipulate and process data effectively using lists, strings, and random list functions. By mastering loops and conditional statements, students will develop the ability to create programs that exhibit complex behaviors. The unit culminates in exploring the application of programming to simulate real-world phenomena, fostering critical thinking and problem-solving skills. Through hands-on projects and exercises, students will gain a solid foundation in programming logic and computational thinking.

Procedural Abstraction

This unit focuses on developing foundational programming skills, emphasizing modularity, code reusability, and effective problem-solving strategies. Students will explore the concept of procedures, mastering how to break down complex tasks into smaller, manageable functions. They will delve into parameters and return values, learning how to create flexible and versatile code. To enhance program creativity and engagement, students will utilize the Python Turtle library to design and create visual projects. The unit culminates in exploring the power of external code resources through libraries and APIs, enabling students to efficiently build upon existing code and expand their programming capabilities.

GUI with Brython

In this unit, students will explore the core technologies used to build interactive and dynamic web applications: HTML, CSS, and Brython. They will learn how to structure content with HTML, style web pages using CSS, and add interactivity with Brython to respond to user input and display dynamic content. Through hands-on projects, students will practice creating user-friendly interfaces that are both functional and aesthetically pleasing, while also considering accessibility and usability. By the end of the unit, students will have the skills to design and implement simple web applications, preparing them for more advanced web development techniques.

Data and Algorithms

In this unit, students will explore the critical role of data in decision-making and problem-solving, from collection and cleaning to visualization and analysis. They will investigate the importance of metadata and learn how to process and interpret various data types, such as numerical, textual, and multimedia formats. Through hands-on challenges, students will practice cleaning and organizing data, applying search and sort algorithms, and understanding how heuristics can be used to improve problem-solving efficiency. The unit will also cover the analysis of algorithm efficiency, focusing on time and space complexity and how to evaluate trade-offs between accuracy and performance. By the end of this unit, students will be able to select and implement the most effective algorithms to solve data-driven problems and present their findings through visualizations.

Data and Algorithms

Artificial Intelligence (AI) is all around us, from recommending your next song, powering your virtual assistant, or even helping doctors diagnose disease. In this unit, you’ll explore what AI is, how it works, and how it’s changing the world. We’ll break down key ideas like machine learning, natural language processing (NLP), and neural networks using clear examples and interactive activities. By the end, you’ll understand both the potential and the problems of AI in the real world.

Whether you’ve heard of ChatGPT, self-driving cars, or image generators, this unit will give you the foundational knowledge to understand how these tools actually work, and ask important questions about their impact.

Impact of Computing

This unit explores the complex relationship between computing innovations and society. Students will investigate how technology can both positively and negatively influence individuals, communities, and the world. The unit delves into issues such as the digital divide, intellectual property, and algorithmic bias, encouraging critical thinking about the ethical implications of technology. By examining real-world examples, students will develop a nuanced understanding of computing’s role in shaping our world and the responsibilities of technology creators and consumers.

Cybersecurity

This unit explores the complexities of digital citizenship and the importance of online safety. Students will gain a comprehensive understanding of their digital footprint, the potential risks of sharing personal information, and the various threats to their online security. The unit emphasizes the significance of critical thinking and informed decision-making in navigating the digital landscape. By the end of this unit, students will be equipped with the knowledge and skills to protect their personal information, recognize online threats, and become responsible digital citizens.

Example Projects

Built with CodeMonkey's in-browser development environment

Students won’t just learn how to code — they’ll learn how to solve problems, think logically, and communicate ideas through technology. These are the skills that prepare learners not just for tech careers, but for success in any field.

Whether students are aspiring coders, future engineers, or just tech-curious, this course provides a strong starting point.

Want to Learn More about our Intro to CS course?

Introduce your students to the exciting world of computing with CodeMonkey’s Intro to Computer Science Course.
It’s more than a class — it’s a launchpad for creativity, innovation, and lifelong learning.

Award-winning Computer Science Program

2023
i-Learn

First Place-Reader's Choice
Computer Science

2024
Edtech Breakthrough

Provider of the Year

2024
Best of STEM

Educator's Pick-AI Curriculum
for Teaching and Learning

2025
Edtech Impact

Top Teaching
Efficiency Tool

FAQ

CodeMonkey, a leading game-based learning platform, teaches students eight years and older the fundamental principles of computer programming. Founded in 2014, CodeMonkey products are designed to maximize engagement and user experience to introduce students to foundational computer programming skills. Using real programming languages and scalability for all learning environments, CodeMonkey provides a turnkey solution for educators by offering basic training, management and reporting tools, automatic grading and detailed tutorials for teachers and real time feedback for students.

The course is designed to be flexible! While it’s perfect for teacher-led instruction, it can also be taken as a self-guided course. Students can move through the material at their own pace, making it ideal for independent learners.

CodeMonkey Intro to Computer Science course is typically offered to 9th through 12th graders.