Enrollment for Spring 2025
CS will be returning to regular enrollment procedures (no central form, only a few courses override only) for Spring 2025. While many courses will still have caps (for space and staffing planning), registration will otherwise proceed as it had in semesters prior to Fall 2024. Courses will again be open to students from any concentration (not limited to CS concentrators). We have many more seats in courses for the spring semester than we did for the fall, including in AI courses.
Please make sure that you put the courses you hope to take (with some reasonable likelihood) in your primary cart during pre-registration. This is the only way CS can gauge demand.
If there are classes you definitely need to take, enroll during pre-registration if you can.
New Courses (some are still getting entered into CAB)
- CSCI 1302 (Intro to Sociotechnical Systems and HCI): a new course, not yet in CAB
- Description: This course will explore how technological systems are designed and implemented within broader social, organizational, and ethical contexts. The course will also cover the unique considerations introduced by data-driven and AI systems, and what a sociotechnical lens can bring to their design. The course will introduce theory, methods, and ethical and policy considerations relevant to this space, including: qualitative interviews, participatory approaches, inclusive design, algorithmic justice, and data collection & visualization.
- Prereqs: none
- Time Slot: still being finalized (T/Th 10:30-11:50 requested)
- CSCI 1390 (Systems for Machine Learning): a new course on designing systems to support ML applications.
- Description and Prereqs -- see CAB
- Time Slot: T/Th 9-10:20
- CSCI 1640 (AI and Security): a new course, not yet in CAB
- Description: Artificial Intelligence (AI) concerns the design of machines that perceive the environment and learn from experience to act wisely. Security concerns the protection against machines that exploit opportunities and behave maliciously to inflict harm. CSCI1640 will study these two fast-growing, practice-relevant and life-impactful CS fields, conjointly, as they relate, influence or apply to each other. With new concepts introduced from the ground up and using both a holistic and an analytical exposition of ideas, CSCI1640 will address the question of “How do AI and Security intersect, interleave or interfere?” and will cover a variety of topics around the impact that AI has to Security and the role that Security has in AI. Topics include trustworthy and privacy-preserving Machine Learning (ML), secure federated learning, crypto-enhanced neural networks, adversarial ML, ML-based security and cyberattacks, rational cryptography, generative AI, AI safety and superintelligence.
- Prereqs: (1) at least one of (the AI courses) CSCI0410, CSCI1410, CSCI1411, CSCI1420, CSCI1470, or CSCI2470 and (2) at least one of (the Security courses) CSCI1510, CSCI1515, CSCI1650, CSCI1660, or CSCI2660.
- Time Slot: Mon 3-5 (M hour)
- CSCI 1675 (High Performance Network Systems): a new course, not yet in CAB
- Description: How can we understand the performance of network systems and make them run faster? To explore this question, we will break it down into pieces, including (i) how to define and measure a system’s performance, (ii) how to determine what factors in the system’s design affect its performance, and (iii) how to use this information to make the system faster. Through lectures, labs, readings, and hands-on programming projects, we will explore topics including tradeoffs between threads and coroutines, blocking and non-blocking execution models, cooperative and preemptive multitasking, open and closed request generation, and throughput-latency curves. Hands-on projects will involve modern Linux technologies such as perf and derivative tools, io_uring, eBPF, and XDP as well as modern microservice architecture tools such as nginx, kubernetes, and distributed tracing frameworks.
- Prereqs: CSCI 1680 or 1670
- Time Slot: Mon/Wed 9-10:20
Notes on Course Changes for Next Fall/Spring
"Next academic year" means Fall 2025-Spring 2026.
-
CSCI0220 (Introduction to Discrete Structures) will be offered both semesters next academic year
-
CSCI0300 will be offered every semester starting Spring 2025 (CSCI0330 will no longer be offered)
-
CSCI0410/1411 and CSCI0500 will be offered in spring 2025, even though they are not yet in CAB. Timing details for both are forthcoming. Both will be offered both semesters next academic year
-
CSCI1430 (Computer Vision) will likely only be offered one semester next academic year, but we don't yet know which one
-
CSCI1510 (Introduction to Cryptography) might not be offered next academic year
-
CSCI1670 (Operating Systems) will not be taught next academic year. After this spring, the next offering will be Fall 2026, at which time the course will move to being offered in the fall (rather than in the spring as in the past)
-
CSCI1680 (Computer Networks) is shifting to a spring course after this year, so it's next offering will be Spring 2026.
-
CSCI1952B (Responsible Computer Science in Practice) will not be offered in Spring 2025
-
CSCI1952Q/CSCI1520 (Algorithmic Aspects of Machine Learning) will not be offered next academic year
-
CSCI2952Q (Robust Algorithms for Machine Learning) will not be offered next academic year
-
John (Spike) Hughes will offer a course "Projective Geometry and Proof Assistants" in Spring 2026. Prereqs are being determined, but MATH 1530 would be useful, as well as experience with lambda (functions as arguments and return values)
-
A new course called "Intro to Sociotechnical Systems and Human-Computer Interaction" is being piloted this spring (by Diana Freed and Harini Suresh); it will be offered annually going forward.
Frequently Asked Questions
-
Why are there still enrollment caps in some courses?
We have limited ability to change classrooms and limited budget for hiring additional TAs.
-
I didn't get a seat before the cap was reached. What do I do?
Every semester (including in the fall), there is a lot of turnover in who enrolls throughout shopping period. Seats are likely to open up in most courses as shopping period plays out. Keep an eye out during pre-registration, and try for a seat again when the semester starts if you still need one at that time.