Course Sequence
Dulaney High School's Computer Science Courses


Foundations of Computer Science*

AP Computer Science Principles*

AP Computer Science A
(aka AP Java)

C++ Programming

*While Foundations of Computer Science is the simplest entry point to the sequence, many students also start with AP Computer Science Principles.


(A) Start with Foundations

  • Provides a gentle introduction to computer science with a broad range of topics that includes programming.

  • Recommend for students who...

    • Have zero experience with programming / computers

    • Want to earn a tech credit without a heavier AP workload

    • Students who want to briefly survey computer science and see if they like it.

(B) Start with Principles

  • Provides a faster paced introduction to computer science with a stronger focus on programming.

  • Recommend for students who...

    • Have good grades in advanced math courses

    • Have very strong work habits

    • Want to take all three advanced courses but have a tight schedule


Probably Not

In very rare circumstances, a student may get special permission to start out in AP Java, skipping the first two courses. To do so, a student must meet with Mr. M and demonstrate significant mastery, including:

  • Be a junior or senior who would otherwise be unable to take the highest level courses.

  • Share personal programming projects in a language similar to Java (such as Processing, C++, or C#) that demonstrates significant skill.

  • Show experience with variables, conditionals, loops, arrays, recursion, inheritance, and object oriented programming.

  • Have a DHS math teacher who is willing to voice for your aptitude and work habits.

In almost all cases, it is strongly recommended you take AP CS Principles, even if you could skip it. You'll learn a lot, there is room to explore and grow beyond the base curriculum, and you can get college credit.

Skipping the first half of the sequence is a big leap and requires special permission to make sure you don't fall.