10 Online Computer Science Courses for High School Students
The field of computer science is evolving rapidly, and high school students have a range of online resources to explore topics like programming, algorithms, and data science. Through virtual learning, you can study advanced topics within computer science, such as AI and ML. Taking online courses in your field of interest can show college admissions officers your motivation to learn outside the classroom. The skills you build through these courses can give you a head start in college.
Here, we list 10 online computer science courses ideal for high schoolers. Whether you’re just starting out or looking to refine your skills, these courses provide valuable tools and knowledge.
Cost: Free to audit; $219 for a verified certificate
Location: Online (self-paced via edX)
Application Deadline: Rolling admissions (start anytime)
Course Dates: 11 weeks long (self-paced)
Eligibility: Open to all high school students
Led by Professor David J. Malan, this course offers a deep dive into programming. You will develop critical algorithmic thinking skills while exploring practical applications across fields like biology, finance, cryptography, and gaming. The 11-week program provides a flexible, self-paced learning experience that covers multiple programming languages, including C, Python, SQL, JavaScript, HTML, and CSS. You will engage with challenging problem sets that mirror real-world computational challenges. To complete the course, you must successfully complete nine problem sets and create a final project that demonstrates your programming capabilities.
Cost: Free to audit; $75 for a verified certificate
Location: Online (via MIT OpenCourseWare or edX)
Application Deadline: Rolling admissions (start anytime)
Course Dates: Self-paced
Eligibility: Open to high school students and beyond
The 6.0001 course at MIT is a great introduction to computer science and programming, especially for beginners. It focuses on problem-solving skills using Python 3.5 as the primary programming language. You will be introduced to critical topics like data structures, abstraction, and other problem-solving techniques. Since this virtual course is self-paced, you can cover the material at your own pace. By the end of the course, you will have developed the ability to write meaningful programs that address practical challenges.
Cost: Free
Location: Virtual
Application Deadline: Rolling basis
Course Dates: 6 weeks at 4-6 hours per week (self-paced)
Eligibility: Everyone is eligible to enroll in this course
The Computer Science 101 course at Stanford introduces programming and computational thinking. The course offers video lectures to help you understand syntax and the principles of programming languages. Through this course, you will gain insight into data structures and how they play a critical role in real-world applications. You will work on assignments that apply the concepts you’re learning and enhance your programming skills. Collaborative online forums complement the technical curriculum, creating a supportive learning environment to exchange ideas.
Cost: Free
Location: Virtual
Application Deadline: None
Course Dates: Flexible and self-paced program
Eligibility: High school students (and all other interested learners)
Programming with a Purpose is a great introduction to basic programming principles, guided by Princeton professors Robert Sedgewick and Kevin Wayne. Over the course, you will build computational skills that begin with basic concepts and advance to programming paradigms. There are three parts to the curriculum. First, you will explore foundational programming elements, including variables, conditionals, loops, and basic operations. Then, you will transition to advanced function design and learn about recursion, modular programming, and code optimization strategies. The last part is object-oriented programming, where you will focus on abstract data types. Using Java as the primary instruction language, the course provides practical skills for computational problem-solving.
Cost:
Online Summer Program (2 Weeks): $3,960 per session
Online Summer Program (1 Week): $2,810 per session
You can find relevant information here. A few need-based scholarships are available for NYC commuter programs.
Location: Virtual
Application Deadline: Deadlines vary based on the dates you choose.
Course Dates: Numerous dates are available in the summer (June-July) and fall (September-December).
Eligibility: High school students with little-to-no experience in coding/programming
Columbia University's pre-college Data Science and Machine Learning 1 program offers high school students an introduction to two rapidly evolving technological fields. This course is ideal for those without coding experience since it provides a foundation in data science and ML. The program blends theoretical knowledge with practical application, teaching you how to analyze and present data effectively. You will gain Python programming skills and explore key ML algorithms. With only 20-25 students in each session, the course ensures a focused teaching atmosphere. Additionally, you will participate in social activities, campus tours, and college preparation sessions.
Cost: $5,314
Location: Virtual
Application Deadline: To be announced
Course Dates: June 24 – July 19 (tentatively, based on previous years)
Eligibility: High school students are eligible to apply
This course at Brown offers an in-depth look at data science and ML. As a course that goes beyond the basics, you will be introduced to cutting-edge technological methodologies.
You will learn data analysis techniques, including visualisation, diagnostic methods, and predictive modeling. The course will cover text analytics, deep learning, recommender systems, and computer vision through real-world case studies across different sectors. You will be encouraged to critically analyze the broader implications of technological innovations, developing not just technical skills but also the critical thinking necessary to approach technological challenges responsibly.
Cost: Free
Location: Virtual
Application Deadline: Applications typically close in the first week of April
Course Dates: April 22 – May 31
Eligibility: High school students are eligible to apply
Stanford University's Code in Place offers a six-week virtual program to introduce high school students to the fundamental principles of programming. Adapted from Stanford's CS106A course, the program distinguishes itself through a unique mentorship model. You will be put into groups of no more than 10 students, ensuring focused learning. The course's curriculum revolves around the fundamentals of Python programming and covers concepts like control flow, variables, and functions. You will be able to work with the SimpleImage module and gain significant coding experience. The course will end with a final project that helps you apply your skills.
Cost: $49
Location: Virtual
Application Deadline: This is a self-paced program
Course Dates: The program runs for 2 months, with students typically spending an estimated 10 hours on work per week
Eligibility: High school students are eligible to apply
This course helps high schoolers explore programming and data analysis. With 5 curated courses within the program, you will learn about foundational Python concepts and gradually advance onto more complex skills. As a participant, you will develop a robust toolkit to process data through various formats. With critical skills like API utilization, XML, and JSON processing, you will learn how to transform raw data into meaningful insights. The program ends with a final capstone project. By working with real-world data sets, you will showcase the practical applications of your programming and analytical skills.
Cost: $49
Location: Virtual
Application Deadline: This is a self-paced program
Course Dates: This is a self-paced program
Eligibility: High school students are eligible to apply
Rice University's Fundamentals of Computing Specialization brings first-year computer science concepts to students through a seven-course series. Designed by faculty, the program offers an exploration of Python programming that progresses from foundational concepts to advanced computational techniques. This course covers everything from basic programming to complex topics such as algorithmic thinking and data structures. You will complete 20 project-based learning experiences and learn about recursive programming, object-oriented design, and advanced algorithm development. The program ends in a Capstone Exam that allows you to showcase what you have learned throughout the program.
Cost: $3,050 (financial aid available)
Location: Virtual
Eligibility: Grades 9-11 at the time of application with prior exposure to a computer programming language and a working knowledge of statistics
Application Deadline: Applications typically close in March.
Course Dates: June 17 - June 28 (session 1) | July 08 - July 19 (session 2)
Introduction to Data Science at Stanford University is a selective program for high school students interested in computational analysis. It provides an opportunity to explore data science, specifically AI, statistics, and mathematical principles. As a participant, you will explore computational algorithms and ML models, with the opportunity to apply your skills to diverse data sets from natural and social sciences. The program utilizes R as the programming language. You will engage in 2-hour daily sessions that are complemented by projects and collaborative activities. You will learn to navigate the process of data collection, analysis, and interpretation, developing an understanding of how computational methods can solve real-world problems.
One other option—the Lumiere Research Scholar Program
If you’re interested in pursuing independent research, consider applying to one of the Lumiere Research Scholar Programs, selective online high school programs for students founded with researchers at Harvard and Oxford. Last year, we had over 4,000 students apply for 500 spots in the program! You can find the application form here.
Also check out the Lumiere Research Inclusion Foundation, a non-profit research program for talented, low-income students. Last year, we had 150 students on full need-based financial aid!
Stephen is one of the founders of Lumiere and a Harvard College graduate. He founded Lumiere as a PhD student at Harvard Business School. Lumiere is a selective research program where students work 1-1 with a research mentor to develop an independent research paper.
Image Source - Harvard Logo