Sunday, November 12, 2023

City college (CCNY) undergraduate computer science sequences

The sequences are important to understand for CCNY CS students, because they need to be taken strictly in order across several semesters. Without good planning, it's easy to need more than four years to complete the degree. It's also very easy to get closed out of a full class in any given semester.

The most important sequence is:

  1. CSc 10300 Intro to Computing for Majors
  2. CSc 10400 Discrete Math Structures (this also needs Calculus I, so that should be taken ASAP)
  3. CSc 21200 Data Structures
  4. CSc 22000 Algorithms
Most Computer Science classes depend on CSc 22000 Algorithms!

The next most important sequence is:
  1. Engl 11000 Freshman Composition
  2. Engl 21007 Writing for Engineering
  3. CSc 22100 Software Design Lab
...because multiple required classes depend on CSc 22100 Software Design Lab.

Also important:
  1. Math 20100 Calculus I
  2. Math 21200 Calculus II
  3. Math 21300 Calculus III, Math 34600 Linear Algebra, CSc 21700 Prob & Statistics
  4. CSc 30100 Numerical Issues in Scientific Prog
...because CSc 30100 Numerical is a required class, and is also required by multiple electives.

And, after the first sequence or two above has been completed, the following required classes are better to take sooner rather than later, because they are required for various electives:
  • CSc 30400 Theoretical Computer Sci
  • CSc 33200 Operating Systems
  • CSc 32200 Software Engineering
There's also the required small sequence:
  1. CSc 21100 Fund. of Computer Systems
  2. CSc 34200 Computer Organization & CSc 34300 Computer Organ. Lab
...which is also the prerequisite for just one elective.

It's good to take Speech 11100 Foundations of Speech Comm early, and maybe CSc 11300 Programming Language, but all other classes should be treated as "filler", taken to reach at least fifteen credits per semester when the above are not possible.