About the Course

Foundations of Programming

This course explores methods of computer programming—the algorithmic aspects of computer science and the theoretical constructs common to all high-level programming languages. You and your classmates will study the syntax and basic commands of a programming language such as Java, C, C++, or Python and, building upon this knowledge, move on to study additional concepts of programming, such as object-oriented programming or graphical user interfaces. By solving a variety of challenging problems, you will learn to work through the steps of writing a program: defining a problem and its desired solution, outlining an approach, encoding the algorithm, and debugging the code. Through a combination of individual and group work, you’ll complete supplemental problems, lab exercises, and various programming projects to reinforce concepts learned in class. By the end of the course, you’ll be familiar with standards of software development practiced in the professional world, and understand how to apply techniques to other high-level programming languages.

Note: The specific programming language used is based on the instructor’s preference.

Typical Class Size: 18-20
 

Course Overview

This course is

ungraded.

Summer Dates & Locations

Registration deadline:

After May 2, 2025, registration is available upon request pending eligibility and seat availability. To request placement, email [email protected] after submitting a program application.

Session One

Image of Dickinson College
Carlisle, Pennsylvania
-
Residential cost: $7,259
Commuter cost: $6,459
Additional fees: $180
image of the Skidmore College campus
Saratoga Springs, New York
-
Residential cost: $7,259
Commuter cost: $6,459
Additional fees: $180

Session Two

Image of Dickinson College
Carlisle, Pennsylvania
-
Residential cost: $7,259
Commuter cost: $6,459
Additional fees: $180
image of the Skidmore College campus
Saratoga Springs, New York
-
Residential cost: $7,259
Commuter cost: $6,459
Additional fees: $180

Testing and Prerequisites

  Math Verbal
Required Level CTY-Level Not required
Check your eligibility using existing test scores If you do not have existing test scores:

Students must achieve qualifying scores on an advanced assessment to be eligible for CTY programs. If you don’t have qualifying scores, you have several different testing options. We’ll help you find the right option for your situation.

Sign up for Testing Learn More

Cost and Financial Aid

  • Tuition
    • Varies
  • Application fee
    • Nonrefundable Application Fee - $55 (Waived for financial aid applicants)
    • Nonrefundable International Fee - $250 (outside US only)

Financial Aid is available
We are committed to serving all talented youth regardless of financial circumstances. Financial assistance is available based on need.

Learn More

Course Materials

Students should bring basic school supplies like pens, notebooks, and folders to their summer program. You will be notified of any additional items needed before the course begins. All other materials will be provided by CTY.
 

Course Extras (Lab fee info, etc)

Lab fee: $180

About Computer Science and Technology at CTY

Build robots, conquer the world!

Introduction to Robotics is perfect for students who want to learn introductory-level programming and apply what they've learned through real-life engineering projects. You can even test your coding and design skills by having your robot complete obstacle courses and other challenges.

You’ve learned to code—now what?

Data Structures and Algorithms is for students who have some proficiency at programming and are looking to take their abilities to the next level. By diving deep into how computers organize and store data, you will learn to design and utilize algorithms with peak efficiency.

Meet our instructors and staff