Winter Cohort Deadline is November 22, 2026!
Apply here
May 16, 2026
Share
linkedin iconx iconfacebook meta iconMail icon

15 Computer Science Courses for High School Students

Explore computer science courses designed for high school students, covering programming, algorithms, and foundational concepts to support early learning in tech.

If you’re a high school student exploring a future in computer science, taking a course early allows you to build skills and learn how the field operates before college. Courses in coding, AI, cybersecurity, web development, and software systems offer a guided way to begin.

Computer science courses for high school students focus on skills such as programming, problem-solving, and data analysis. You might learn a language like Python, build small applications, or solve structured coding problems. Some courses also cover debugging and basic system design, helping you understand how software is built step by step.

What do computer science courses for high schoolers include?

Computer science courses for high school students usually begin with programming basics, including syntax, logic, and control structures. You then move on to topics such as data structures and algorithms, where you learn how to organize and process information.

Many courses include projects, such as building simple apps or working with datasets. Depending on the level, you may also gain exposure to areas such as artificial intelligence, cybersecurity, or web development. 

To make your search easier, here are 15 computer science courses for high school students! If you’re also considering research opportunities, check out here for options beyond coursework.

15 Computer Science Courses for High School Students

1. Harvard’s CS50x — Introduction to Computer Science (edX / OpenCourseWare)

Location: Online (self-paced via edX or OpenCourseWare)

Cost: Free to audit; verified certificate from edX at $219

Acceptance rate/cohort size: Easy enrollment

Dates: Self-paced (12 weeks; 6-18 hours per week)

Application Deadline: Rolling

Eligibility: Open to all; no prerequisites

CS50x is Harvard’s full introductory computer science course offered online, where you move through a structured curriculum covering languages like C, Python, SQL, HTML, CSS, and JavaScript. You start with low-level programming in C to understand memory and logic, then shift to higher-level languages to build applications across domains such as cryptography, web development, and data handling. Each week includes problem sets that require you to write working code and debug it, not just follow along. The course builds gradually, so you learn how algorithms work, how data is structured, and how systems are designed. A key part is the final project, where you build something independently based on what you’ve learned.

2. MIT OpenCourseWare — 6.0001 Introduction to Computer Science and Programming in Python

Location: Online (self-paced via MIT OCW)

Cost: Free

Acceptance rate/cohort size: Open Access

Dates: Self-paced; always available

Application Deadline: None

Eligibility: Open to all; high school algebra-level math assumed

MIT’s 6.0001 is a core introductory course from its electrical engineering and computer science department, made available online through OpenCourseWare. You learn Python in depth, starting with variables and control flow, then moving into functions, recursion, and data structures like lists, dictionaries, and tuples. The course is built around problem sets that require you to write complete programs, often without step-by-step guidance. You also explore how to break problems into smaller parts and think computationally about solutions. The structure is lecture-driven but expects independent work, especially when solving assignments.

3. Stanford Code in Place

Location: Online (live sections via Zoom) 

Cost:  Free

Acceptance rate/cohort size: Moderately selective

Dates: Typically in April or May

Application Deadline: Typically early April

Eligibility: Ages 16+; no prior programming experience required

Code in Place is Stanford’s live, instructor-led programming course where you learn Python through weekly sessions in small groups. You begin with basic logic using Karel the Robot, which helps you understand control flow and problem-solving, then move on to working with images, data, and simple applications. Each student is placed in a section of about 10 people, led by a trained section leader who meets you regularly. The sessions involve writing code, discussing problems, and getting direct feedback. The course runs over six weeks and builds steadily in difficulty.

4. Codecademy – Learn Python 3 (Pro)

Location: Online (self-paced)

Cost: Free basic tier 

Acceptance rate/cohort size: Open enrollment

Dates: Self-paced; start anytime

Application Deadline: None

Eligibility: Open to all; no prerequisites

Codecademy’s Python course runs entirely in your browser, where you write code and get instant feedback on whether it works. You move through lessons on syntax, loops, functions, data structures, and object-oriented programming step by step. The Pro version adds quizzes, projects, and a review system that reinforces concepts over time. You build small applications like calculators or scoring systems as part of the course. Everything is broken into short, manageable sections, which makes it easy to track progress.

5. AP Computer Science A (College Board)

Location: In-person at school or via virtual AP providers

Cost: Typically included in high school enrollment; AP exam fee $98

Acceptance rate/cohort size: Depends on school availability

Dates: Academic year; AP exam in May

Application Deadline: Varies by school enrollment

Eligibility: High school students; pre-algebra or Algebra I recommended

AP Computer Science A is a full-year course where you learn Java programming along with object-oriented design and algorithmic thinking. You study concepts like classes, inheritance, recursion, sorting, and data structures such as arrays and ArrayLists. The course includes coding assignments, problem-solving, and preparation for the AP exam. You also learn how to structure programs and write efficient code. The exam at the end tests both multiple-choice understanding and written coding responses. A strong score can earn college credit. By the end, you have a solid foundation in Java and programming logic.

6. AP Computer Science Principles (College Board / Harvard CS50 AP)

Location: In-person at school or online via CS50 AP

Cost: Typically included in high school enrollment; AP exam $99; CS50 AP version is free online

Acceptance rate/cohort size: Depends on school availability; no centralized selection

Dates: Academic year; AP exam in May; Create Task due late April

Application Deadline: Varies by school; CS50 AP open enrollment

Eligibility: High school students; no formal prerequisites

AP CSP introduces you to computing from a broader perspective, covering programming, data, networks, and the impact of technology. You learn basic coding, how systems communicate, and how data is used. A major part of the course is the Create Task, where you build a program and explain how it works. You also explore topics like cybersecurity and computing ethics. The course can be taken through schools or online versions like Harvard’s CS50 AP.

7. freeCodeCamp — Responsive Web Design & JavaScript Algorithms and Data Structures

Location: Online (self-paced)

Cost: Free

Acceptance rate/cohort size: Open enrollment

Dates: Self-paced; start anytime

Application Deadline: None

Eligibility: Open to all; no prerequisites

freeCodeCamp’s JavaScript Algorithms and Data Structures (v8) is a self-paced coding course where you learn JavaScript by actually building small applications and solving structured challenges directly in your browser. You start with fundamentals like variables, arrays, objects, loops, and functions, then move into ES6 features, debugging, and regular expressions. As you progress, the focus shifts to data structures and algorithms, where you work through problems involving arrays, objects, and logic-based scripting. The course is built around hands-on tasks, so every concept is tied to a coding challenge or a mini-project rather than just explanations. You also complete larger projects like building apps or solving algorithm-based problems that test how well you understand the material. 

8. Coursera — Python for Everybody Specialization (University of Michigan)

Location: Online (self-paced)

Cost: Free to audit; certificate at $49/month via Coursera Plus or individual course payment

Acceptance rate/cohort size: easy enrollment

Dates: Self-paced; always available

Application Deadline: None

Eligibility: Open to all; no prerequisites

Python for Everybody is a multi-course online specialization that teaches programming step by step, from zero to working with real data. You begin with basics like variables, loops, and functions, then move on to data structures, file handling, and working with web data via APIs. As the course progresses, you learn how to collect, clean, and analyze data, including working with formats such as JSON and XML and using databases such as SQLite. The structure is divided into five courses, each building on the previous one, so your understanding develops gradually instead of jumping ahead. You spend most of your time writing code, solving problems, and applying concepts through assignments rather than just watching lectures. The final part is a capstone project where you build an application that retrieves, processes, and visualizes data using everything you’ve learned.

9. Khan Academy — Computer Programming and Algorithms

Location: Online (self-paced)

Cost: Free

Acceptance rate/cohort size: easy enrollment

Dates: Self-paced; always available

Application Deadline: None

Eligibility: Open to all; no prerequisites

Khan Academy’s Algorithms course is a self-paced unit that teaches you how to break down and solve problems step by step using computational methods. You start by understanding what an algorithm is and how to express it using flowcharts, pseudocode, and structured logic, then move into core ideas like selection, iteration, and control flow. The course covers searching and sorting methods, recursion, and graph-based problems such as breadth-first search, where you learn how systems traverse connected data. You also study how to store and represent data using structures like adjacency lists and matrices, and how algorithms interact with them. A major part of the course is analyzing correctness and efficiency, so you compare different approaches and understand which one works better and why.

10. NextGen Bootcamp — Computer Science Summer Certificate (Live Online)

Location: Online (live) or in-person (NYC)

Cost: Varies by session; check nextgenbootcamp.com for current pricing

Acceptance rate/cohort size: selective

Dates: Multiple 3-week sessions from June through August

Application Deadline: Rolling enrollment; register before sessions fill

Eligibility: High school students; no prerequisites

NextGen Bootcamp’s Computer Science Summer Certificate is a structured, live online program where you learn programming through daily instructor-led sessions and project-based work. You start with fundamentals in both Java and Python, learning how to write code, understand logic, and build programs step by step. As the course progresses, you move into topics like object-oriented programming, data structures, and basic algorithm design, working through exercises that require you to apply what you learn. The program also introduces areas like data science and machine learning, showing how coding connects to real-world applications. Classes are interactive, so you can ask questions, get feedback, and refine your work in real time while working on projects throughout the course.

11. Udemy — The Complete Python Bootcamp From Zero to Hero (Jose Portilla)

Location: Online (self-paced)

Cost: Typically $15–$20 on sale (regular price higher)

Acceptance rate/cohort size: Open enrollment

Dates: Self-paced; lifetime access after purchase

Application Deadline: None

Eligibility: Open to all; no prerequisites

The Complete Python Bootcamp on Udemy is a self-paced course that teaches you Python from the ground up through a structured mix of lectures, coding exercises, and projects. You start with basics like data types, loops, and functions, then move into more advanced areas such as object-oriented programming, error handling, and working with modules. The course includes over 100 lectures and around 20+ hours of content, so it builds gradually without rushing concepts. You write code alongside the instructor using notebooks, which helps you understand how programs actually run and how to fix errors. There are quizzes, assignments, and multiple projects that push you to apply what you learn instead of just watching. 

12. The Coding School — National High School Research Program (Data Science / AI Track)

Location: Online

Cost: Varies; financial aid available

Acceptance rate/cohort size: selective

Dates: Summer sessions 

Application Deadline: typically rolling with limited seats

Eligibility: High school students; some Python experience recommended for advanced tracks

The National High School Research Program is a five-week virtual research program where you learn advanced topics in areas like artificial intelligence, data science, and quantum computing, then apply them to a real project. You start with foundational training that covers the tools, coding concepts, and research methods needed to work in these fields. After that, you join a research group and work with mentors from academia, industry, or government, contributing to a project using real datasets and technical methods. The program is structured around both learning and application, so you move from theory into actual research work within the same experience. 

13. edX — CS50’s Introduction to Programming with Python (Harvard)

Location: Online (self-paced)

Cost: Free to audit; verified certificate at $169

Acceptance rate/cohort size: easy enrollment

Dates: Self-paced; always available

Application Deadline: None

Eligibility: Open to all; basic programming exposure helpful but not required

CS50P is a self-paced online course where you learn Python from the ground up through structured lectures and problem sets that require you to write and test real code. You start with basics like variables, conditionals, loops, and functions, then move into more detailed topics such as exceptions, file handling, regular expressions, and object-oriented programming. The course is built around practice, so you spend most of your time solving coding problems and debugging your own programs rather than just watching lectures. You also learn how to test your code properly using tools and methods that are used in real programming workflows. As the course progresses, you work with libraries and build programs that reflect real-world use cases.

14. Girls Who Code — Pathways Self-Paced Program

Location: Online (self-paced with weekly live sessions)

Cost: Free

Acceptance rate/cohort size: selective

Dates: Multiple cohorts throughout the year

Application Deadline: Rolling

Eligibility: Girls and nonbinary students in grades 9–12

Girls Who Code Pathways is a free, fully virtual program where you learn coding through flexible, self-paced tracks over several weeks. You choose from areas like web development, cybersecurity, data science, artificial intelligence, or game design, and work through lessons that include real coding tasks and small projects. The program is built so you can move at your own pace, but you are expected to complete structured coursework and apply concepts through exercises. Alongside learning, you join optional live events where you interact with engineers, entrepreneurs, and other students, which helps you understand how these skills connect to real careers. 

15. Wolfram High School Summer Research Program

Location: In-person (Champaign, IL) and/or virtual 

Cost: Check wolfram.com/summer-programs for current pricing; financial aid available

Acceptance rate/cohort size: Selective; 50 admitted annually

Dates: Mid-to-late June through early July (approx. 2.5 weeks)

Application Deadline: Typically spring

Eligibility: Students ages 14–17

Wolfram’s High School Summer Research Program is an intensive 2.5-week residential experience where you learn computational thinking and apply it to a real research project using the Wolfram Language. You begin with a fast-paced bootcamp that builds your coding skills, then move into deeper sessions exploring topics such as machine learning, natural language processing, and computational modeling. Most of your time is spent developing your own project, taking an idea from early concept to a finished research output under mentor guidance. You work with real data, build models, and test ideas, while also attending talks from researchers and guest speakers. The program is designed to push you to think independently, so you are expected to figure things out, refine your approach, and explain your results clearly.

One more option – Horizon Academic Research Program

If you’re looking for a competitive mentored research program in subjects like algorithms, computer science, and information technology, consider applying to Horizon’s Research Seminars and Labs! This is a selective virtual research program that lets you engage in advanced research and develop a research paper on a subject of your choosing. Horizon has worked with 1000+ high school students so far and offers 600+ research specializations for you to choose from. You can find the application link here!

Image source: Girls Who Code