An intensive online computer science program for serious and talented middle and high school students, providing structured exposure to university-level algorithms, machine learning, and frontier artificial intelligence.

Computer science is the science of our century. Yet, all too often, computer science education in schools and coding camps stops at syntax and exam-ready exercises, producing students who can, at best, produce a correct program yet do not understand why.
The Princeton Computer Science Program is built for students ready to dive beneath the surface of a superficial education. In our intensive and highly selective environments, students begin by exploring classical foundations—algorithms, data structures, computational theory—before moving toward cutting edge advancements in machine learning, neural networks, transformers, and generative models.
Students will also develop the same habits sought by researchers and engineers working at the frontier of AI: reasoning from first principles, building and interrogating models, designing disciplined experiments, evaluating performance, and diagnosing why systems fail.
The goal is for students to see themselves not simply as users of AI, but as its future researchers, engineers, and builders.
The Structure
Course Levels
The Princeton Computer Science Program is offered across three levels to match students’ programming experience, mathematical preparation, and intellectual readiness.
Each level includes five hands-on programming assignments. At Levels 2 and 3, the fifth assignment is a culminating machine-learning project through which students apply and extend what they have learned.
Students should select their level based primarily on their prior experience and the areas of computer science they are most interested in exploring.
Level 1 – Foundations / Algorithms
Level 1 introduces students to the fundamental ideas used to organize, analyze, and solve problems through computation.
Beginning with data structures and algorithmic complexity, students examine how computers store information and how the choice of an algorithm can dramatically affect the time and resources needed to solve a problem. They then explore sorting, searching, binary trees, heaps, graph traversal, shortest-path algorithms, recursion, memoization, and dynamic programming.
The course is taught through concrete problems and implementation. Students may compare the efficiency of sorting algorithms, construct a priority queue for a hospital triage system, use breadth-first and depth-first search to solve a maze, implement a route planner using Dijkstra’s algorithm, and apply dynamic programming to optimization problems.
By the end of the level, students will understand that computer science is not simply about writing code. It is about designing efficient, precise, and general solutions to complex problems.
Recommended Grade: Grades 9–10, including strong Grade 8 students; also suitable for older students with limited formal exposure to algorithms.
Preparation Benchmark: Basic familiarity with Python or another programming language is recommended. Students should ideally be comfortable with variables, conditionals, loops, functions, and lists. Prior competitive-programming experience is not required.
Level 2 – Deepening / Machine Learning Fundamentals
Level 2 introduces students to the central ideas and architectures underlying modern machine learning.
Students begin by examining how a machine-learning model learns from data and how training, validation, and test data are used to measure performance. They then study linear classifiers, multilayer perceptrons, loss functions, stochastic gradient descent, backpropagation, overparameterization, and the bias-variance trade-off.
The course progresses to convolutional neural networks for computer vision, recurrent neural networks for sequence modeling, and the self-attention mechanisms and transformer architectures that support modern language systems.
Students gain hands-on experience implementing and training different models. Possible assignments include handwritten-digit classification, image classification, character-level language modeling, and machine translation.
During the final sessions, students complete a machine-learning challenge in which they develop, test, and improve a model for a real-world problem.
Recommended Grade: Grades 10–11, including advanced Grade 9 and Grade 12 students.
Preparation Benchmark: Completion of Level 1 or equivalent experience with Python and algorithmic problem-solving. Students should be comfortable writing and debugging programs and should have a working understanding of algebra, functions, and basic probability.
Level 3 – Advanced / Machine Learning Theory and Generative AI
Program Outcome
Early Exposure to University - Level Computer Science
Gain meaningful exposure to algorithms, machine learning, and artificial intelligence at a level rarely available in standard middle or high school courses.
A Deeper Understanding of How Computational Systems Work
Move beyond the use of existing software and learn how algorithms and models are designed, analyzed, implemented, and improved.
Independent Computational Thinking Through Applied Projects
Develop the ability to translate open-ended problems into computational form through substantial programming assignments and a culminating machine-learning project at Levels 2 and 3.
Learning from Leading Minds in the Field
Learn from Teaching Fellows and professors affiliated with leading institutions, gaining insight into how computer science is studied, practiced, and advanced at the highest level.
A Network of Like-Minded, Serious Peers
Become part of a selective intellectual community of students who share a serious interest in computer science, machine learning, and artificial intelligence.
Stronger Problem-Solving for Any Future Path
Develop algorithmic reasoning, quantitative thinking, technical independence, and disciplined experimentation—skills valuable across computer science, mathematics, engineering, scientific research, and future careers.
PSI Institutional Recommendations
Students who successfully complete Level 3 will receive a formal institutional recommendation from the Princeton STEM Initiative, sent directly to university admissions offices or other institutions for advanced academic opportunities.
The Schedule (Fall 2026)
All instruction—including both the Lectures and the Individual Tutorial —is delivered entirely online.
The program includes two integrated components:
Live Lecture: Students attend live lecture sessions held on a set schedule. Each session is conducted live and recorded, allowing students to revisit the material at any time.
Live Individual Tutorial: Students are encouraged to book one 30-minute 1:1 session per week on demand. These sessions provide personalized time for questions, clarification, targeted problem-solving, and feedback, supporting consistent progress throughout the course.
This structure allows students worldwide to access Princeton Physics Program while accommodating demanding academic schedules. Students unable to attend a live lecture can review the recording and use the 1:1 Tutorial Sessions to clarify questions and maintain steady progress.
Level 1
Starting Date
September 19, 2026 (every Saturday and Sunday)
End Date
October 18, 2026
Cohort #1
Sat & Sun 8:30–10:00 am ET
Cohort #2
Sat & Sun 11:30 am–1:00 pm ET
Level 2
Starting Date
September 19, 2026 (every Saturday and Sunday)
End Date
October 18, 2026
Cohort #1
Sat & Sun 8:30–10:00 am ET
Cohort #2
Sat & Sun 11:30 am–1:00 pm ET
Level 3
Starting Date
November 14, 2026 (every Saturday and Sunday)
End Date
December 13, 2026
Cohort #1
Sat & Sun 8:30–10:00 am ET
Cohort #2
Sat & Sun 11:30 am–1:00 pm ET
Admissions
All applications are reviewed holistically by the Admissions Committee, with careful consideration given not only to academic preparation but also to each student’s commitment to mathematics, intellectual engagement, and readiness for rigorous study.
Fall 2026 Early Admissions Deadline: August 13, 2026 (Thursday)
Fall 2026 Regular Admissions Deadline: September 6, 2026 (Sunday)
All deadlines are at the end of the day in each applicant’s local time zone. Applications submitted in the Early Admissions pool will be prioritized.
Step 1: Submit Your Application
Complete the online application form. The applicant will be asked to select the level for which they are applying and respond to questions designed to help us assess their scientific background, mathematical preparation, readiness, and intellectual curiosity.
We generally encourage students to begin with Level 1 unless there is clear prior preparation. Students already familiar with Level 1 topics and with substantial formal coursework in related areas may consider applying directly to Level 2.
For Level 3, students must either have successfully completed Levels 1 and 2, or their equivalents, or demonstrate exceptional preparation in physics and mathematics.
Step 2: Admissions Committee Review (rolling basis)
The Admissions Committee convenes weekly to review each application submitted during the preceding week to determine each applicant's appropriate placement and overall fit for the program.
Step 3: Decision Day (around 10 business days after submission)
All applicants will receive an official admission decision around 10 business days after submission. Applicants may receive a deferral or rejection, a place on the internal waitlist, or an official offer letter. Successful applicants will generally be asked to complete enrollment within five business days before the seat is released to the next waitlisted student.
Tuition, Scholarships, and Financial Aid
The program tuition is $1,450 USD for Fall 2026 cohorts.
At present, the Princeton STEM Initiative does not offer financial aid or scholarships for 2026 cohorts. We will be extending financial aid to low income families starting 2027.
Meanwhile, we are actively working with partner schools and institutions to broaden access and expand support pathways in the future. Our goal is to foster mathematical talent and support intellectually curious students through meaningful enrichment opportunities.
School Funding
We strongly encourage students to speak with their school counselor or mathematics teacher about pursuing advanced mathematical opportunities such as the Princeton Physics Program. Many schools maintain discretionary or academic support funds that may be applied toward programs of this nature. Early engagement with your school can help identify potential avenues of support. If your school requires verification of your application to the Princeton Physics Program, they are welcome to contact us directly.
If you are an educator, teacher, or school leader interested in bringing the Princeton Physics Program to your students, we warmly welcome you to contact us to explore potential school-based partnerships.
For students and families facing financial constraints, we encourage consideration of the following external funding opportunities.
External Funding
A widely used scholarship search platform for high school sophomores, juniors, and seniors seeking educational funding opportunities.
FAQ
Admissions
Teaching & Learning


