UVA CS 2020 Curriculum Pilot Program

The Pilot Program has ended! Thanks to all that have participated! This site is being kept available solely for documentation purposes.

Quick Facts

Since the introduction of the pilot courses in AY 2018-2019, interest has grown in what the CS department is doing, but with that, some misinformation has gotten around. So here are some quick facts:

  • The pilot teaches the same material as the current courses. We are working on updating our curriculum, as any degree program should do every several years.
  • So what exactly is the difference? We are moving topics around between courses in a way that we believe better covers the material.
  • What are the advantages of the new curriculum? We believe that the new ordering of topics will better prepare students for internships earlier in their career, will remove some duplication of topics, and will help us bring the BS and BA programs closer together.
  • The pilot program IS NOT an honors program!
  • Upon completing the pilot, pilot students will have covered the same material as other CS students.
  • After the pilot courses, students take the exact same courses and electives that all other CS courses take. The pilot is one year of taking the courses with the rearranged topics.
  • The pilot is not for everyone! Incoming first year students should only consider the pilot if they have credit for CS 1110 AND credit for several other courses in the first year (such as Chemistry, Physics, and/or some HSS courses). This is necessary so that there is room in the first year to take three CS courses each semester.
  • In particular, the CS Pilot may well not be practical for first-year College students, because of the schedule demands of the College general education requirements. First-year College students should strongly consider courses in the “current” curriculum instead. The CS Pilot may be a good choice for second year students who have made good progress on their general education requirements.
  • The pilot: 1) does not allow you to "get ahead"; 2) does not reduce the number of courses/credits you will take; 3) does not expose you to a great deal of new material that other students won't see.
  • The pilot: 1) does have smaller classes than the current courses (it is a pilot, after all); 2) does cover some material earlier than the current courses; 3) does use some new methods for teaching current material; 4) is still experimental and thus some courses are being designed/refined on the fly.

Simply put, the pilot courses are being run by the CS department to determine if this is the direction we would like to take our current courses in the future. We sincerely appreciate students willing to participate in the pilot and their patience as the courses evolve. We hope that the pilot shows that these courses are something we would like for all students to take. If this happens, these courses will replace the current courses in the future.

If you have any other questions or would like anything else cleared up, please do not hesitate to email cs2020pilot-questions@virginia.edu and we will respond to your inquiry ASAP.

Should I take the pilot or the regular course sequence?

There's no single best answer; here are three important pros and cons to consider

Pro: Reorganized
We're moving material to reduce redundancy and unify the BA and BS experiences.

Con: Pilot
We're still working out the kinks before making this our official curriculum.

Con: Compressed
To be in the pilot, you take 6 CS courses in 2 semesters. If not in the pilot, you can pick your pacing of CS courses; most students prefer a slower pacing. This is even more of a con if you are a first-year SEAS student: fitting this many CS classes into your first year requires you to have significant incoming advanced standing.

Neutral: Unchanged
Many aspects of the pilot are unchanged from our regular courses. You'll take the same number of CS courses, learn the same core material, have similar work and difficulty per class, be evaluated under the same grading policies, etc.

Info for Incoming First Year Students (Class of 2023)

If you are:
  • an incoming first year SEAS student (incoming College students are strongly encouraged to not enroll in the pilot in their first year);
  • have credit for CS 1110;
  • have signficant AP, IB, or dual enrollment credit for other first year courses;
  • will be majoring in Computer Science (not Computer Engineering); and,
  • have room to take several CS courses in your first year
you may be interested in participating in the CS 2020 Curriculum Pilot. For more informaiton, please read the following:

or look through the rest of this site.

NOTE: In order to participate in your first year, you need to have significant space free in your schedule. The pilot is not a "get ahead" program for students just starting Computer Science. However, the pilot could be a good option for students who arrive at UVA with programming experience and enough credit that most of your first year courses are already completed.

Feel free to email cs2020pilot-questions@virginia.edu with any questions. This address will be monitored throughout SEAS orientation.

Info for the 2019-2020 Pilot for Current Students

After a successful pilot in the 2018-2019 Academic Year, we will be running the pilot courses again during the 2019-2020 Academic Year.

Students can participate if you meet the following qualifications:

  • Have declared or intend to declare the BSCS or BACS degree;
  • Are currently enrolled in or have already completed our Introduction to Programming requirement; and,
  • Have not yet taken CS 2110 or ECE 2330.

What is the 2020 Curriculum Pilot Program?

The CS UGCC is considering changes to the undergraduate curriculum with an anticipated implementation date of Fall 2020. The 2020 Curriculum is anticipated to consist of two broad categories of changes:

  • Revisions of the current required courses, which we will now call the Foundation Courses, designed to unify the requirements of our degrees and be the common foundation for all anticipated future courses.
  • Introduction of Tracks, sets of additional required and elective CS courses that provide students a guided opportunity to specialize.

For the 2019-2020 Academic Year, we are repeating the pilot of the first set of changes - namely, the Foundation Courses.

The primary change with the Foundation Courses is a reorganization and refocusing of core content currently found in the first several CS courses. Because this involves moving several topics across current course boundaries, we cannot change the courses one at a time, requiring instead the large-scale adjustment we are inviting you to participate in. While none of the material in the pilot courses is new to the department, its organization and order of presentation is, which is why we want to try out a smaller-scale first run before we deliver the classes to all students.

What courses are being redesigned?

We are redesigning the following courses to build the new Foundation Courses:

  • CS 2102 - Discrete Mathematics
  • CS 2110 - Software Development Methods
  • CS 2150 - Program and Data Representation
  • CS 2190 - Computer Science Seminar
  • ECE 2330 - Digital Logic Design
  • CS 3102 - Theory of Computation
  • CS 3240 - Advanced Software Development
  • CS 3330 - Computer Architecture
  • CS 4102 - Algorithms
In their place, students will take:
  • Data Structures and Algorithms (DSA) 1 & 2
  • - Covers material currently found in CS 2110, CS 2150, and CS 4102
  • Discrete Mathematics and Theory (DMT) 1 & 2
  • - Covers material currently found in CS 2102, CS 3102, and CS 4102
  • Computer Organization and Architecture (COA) 1 & 2
  • - Covers material currently found in ECE 2330 and CS 3330
  • Software Development Essentials (SDE)
  • - Covers material currently found in CS 2110, CS 2190, and CS 3240
For the 2019-2020 school year, we are focusing on DSA 1 & 2, COA 1 & 2, and SDE.

How can I get more information?

Email any time! - cs2020pilot-questions@virginia.edu