Author: Milton Posner
Date: 12.05.24

In response to the increasingly varied backgrounds, needs, and journeys of its students, Khoury College is revising its introductory series of computing courses, which currently comprises two “Fundamentals of Computer Science” courses (Fundies 1 and 2) and “Object-Oriented Design” (OOD). This revision aims to better serve students — those with and without CS experience — and better prepare them for a competitive job market. The design process for this curriculum began in the fall 2024 semester and will continue into 2025.
For a primer on why, how, and when these changes will occur, Khoury News sat down with Christo Wilson, the college’s associate dean of undergraduate programs.
Khoury News: Why is Khoury College revising the first-year curriculum?
Wilson: The Undergraduate Committee routinely revises all of the courses in the curriculum. But the introductory undergraduate computing courses haven’t been significantly revisited in almost 20 years. It’s time.
Students are entering the college with increasingly heterogeneous backgrounds and programming experiences. Some are completely new to computing, while others bring transfer credits or NUin credits from partner universities abroad. Roughly 40% of Khoury students enter with AP CS credit, and others have learned on their own or through nontraditional means. Rather than sending everyone to Fundies 1, we’re aiming for a more adaptable intro sequence in which each student takes the courses that make the most sense for them given their starting point.

Another issue is with Fundies 2, which spends a whole semester taking students from functional programming in Racket to imperative programming in Java. That transition is necessary because of where we start people in Fundies 1, but it wouldn’t be necessary if we started in a different language.
“Object-Oriented Design” is a good course that teaches a lot, and it’s effectively the gateway to co-op, the course you need to take to be ready. But because it’s so important, it has too much responsibility and material, and it’s too much for many students. It has one of the highest workloads of any course we offer; we hear that consistently in students’ course evaluations. The thinking is not to get rid of material; it’s to spread it out throughout the curriculum so it’s not all in one semester.
Which courses are being kept vs. altered vs. eliminated?
Fundies 1, Fundies 2, and OOD are going to be phased out, and we’re starting from a clean slate. That doesn’t mean that the content and the things we like about those classes are going away; they’re just going to be moved into a different format.
This will have implications for the other courses as well. For example, the “Foundations of Cybersecurity” course can’t cover much material because it doesn’t assume much of students’ programming ability when they start. But with an intro sequence that spaces material out more effectively, that class can be taught at a more rigorous level.
Which programming languages and libraries will be emphasized?
The Undergraduate Committee spent lots of time considering the pedagogical implications of each option, as well as the teaching methods of other universities and the needs of co-op employers. We want to make sure our program is designed around widely adopted languages. Currently, the thinking is that the three new courses will be in Pyret and Python, Python, and Java, in that order.
Just like Fundies 1 currently starts in a teaching language, we are planning to start the new first course in Pyret, a teaching language developed in part by Khoury faculty Ben Lerner and Daniel Patterson. Unlike Fundies 1, students will end this course being able to program in Python, move into more Python in course two, and then do Java in the third course the same way they currently do in OOD.
Can students place out of intro courses?
For people with transfer or NUin credit, we’ll give them proper substitutions and let them move forward.
We’re still trying to decide how to treat AP credit. Many universities let students skip right into the second class if they have AP credit. We may do that, or we may encourage those students to take a self-assessment exam and choose where to start based on the assessment.
Students who are self-taught or who took some other kind of course in high school can take a self-assessment and use it to guide their decision on where to start. The question is whether this assessment should be mandatory or voluntary.
How can students still get everything that Fundies 1 offers if they skip it?
In talking to Khoury students who come in with experience, they consistently tell me that they like the Fundies 1 design recipe. It offers structure and a way of thinking about problem decomposition that was often lacking in their high school CS courses. But those same students also find Fundies 1 too easy; they get the design recipe quickly and are ready to move on.
We’re taking these comments to heart in the design of the new courses. Because the second course no longer needs to serve as a bridge from one language to another, it can instead focus on design skills, including the design recipe. The goal is to take the parts of Fundies 1 that transcend a specific language and incorporate them throughout the second and third courses in the new sequence, so that even students who skip the first class benefit from those course components.
How will the revised curriculum prepare new Khoury students for co-op and industry work in general?
The goal of the intro sequence isn’t just to teach students how to program in a language; it’s also how to think like a programmer and design programs. Those higher-level objectives won’t change. That said, by adopting the same language for the first two courses, we can get to more advanced topics and larger programs faster. This approach also enables us to alleviate the pressure that is currently centered on OOD. As a bonus, students will get extensive training in Python, which is currently the most requested language by co-op employers.
What would the domino effect of the changes be for upper-level courses, especially for students in double or combined major programs?
There’s a lot of uniformity among Khoury College’s many degrees. Everybody takes the same three-course intro, plus either “Software Engineering” or “Software Development” later. This general structure is not changing.
One benefit will be the ability to skip some of the intro sequence if you come in with a computing background. The combined degrees are packed out and tend to have very few elective slots, but if you skip the first programming class, this unlocks a free elective slot later.
Finally, for students who enter Northeastern as noncomputing majors, then choose to combine computing with another major, the new sequence will ensure that they have a course where they can learn with other true beginners.

How will the changes impact data science students?
Currently, we have separate computer science and data science intro sequences, which makes it hard for students to switch from CS to DS or vice versa. This is a problem we can solve.
We’re entertaining the idea of a more unified CS–DS intro sequence, which would have a lot of advantages. This might encompass one or two of the three new courses. Depending on where they are in the sequence, students could switch paths without having to change too much. Many students start without knowing which path they want, so the new courses are being designed to introduce both CS and DS concepts, giving students a much clearer sense of each path and helping them to make more informed choices. If we pull that off in a thoughtful way, it would be an extremely innovative approach that would serve both populations.
Many students take their first-year courses outside of Boston, whether at Northeastern’s Oakland campus or at partner universities abroad. How will the changes impact them?
The network campuses will follow the same revised curriculum. All of the faculty across the network know that these changes are happening and they’re being involved in the process. The goal within Northeastern is to have uniform courses within a uniform curriculum.
If students take Python at a partner university, come here, and jump right into the second course in the sequence, it’ll be a challenge for them. We’ll expect a high level of ability. They won’t be allowed to turn in spaghetti code. But I prefer to assume that students are strong and want to be challenged — and that we can help them to achieve.
What is the timeline for implementing the changes and how can people offer feedback?
It’s an extremely ambitious timeline. We’d like to start offering the revised classes in fall 2025.
That means that over the next few months, we need to design the classes at the week-to-week level, then get them approved by the college and university undergraduate committees. Early next year, we start on detailed course development, including lecture materials, assignments, and auto-grading infrastructure. That happens until the summer, when we’ll train faculty in the new sequence.
As for input, I’m talking to everyone and relaying feedback to the course designers. I’m holding town halls for faculty in December and January to get rapid feedback, I’ve already started talking to students — including our undergraduate advisory board — and I’m planning on talking to our deep bench of TAs. Other than that, if people have feedback, they’re more than welcome to contact me directly.
The Khoury Network: Be in the know
Subscribe now to our monthly newsletter for the latest stories and achievements of our students and faculty
Author: Juliana George
Date: 11.26.24
Machine learning algorithms are never fully fair. Facial recognition software has more trouble distinguishing between women and people with darker skin than between white men, and a 2019 study found that a predictive algorithm used by the health care professionals to identify patients in need of care showed a racial bias against Black patients.
There’s a reason for these disparities. Algorithms are only as good as their training data, and sometimes a sufficiently representative data set is unavailable. But Cynthia Dwork, Harvard University’s Gordon McKay Professor of Computer Science, doesn’t think that should stop computer scientists from pursuing fairness. In fact, she’s working to create algorithms that aren’t limited by existing data, and in doing so, she’s putting her faith in the possibility of a better world.
On October 21, Dwork shared some of her research on algorithmic fairness and prediction during her lecture “Prediction, Fairness and … Complexity Theory?” at the Fenway Center on Northeastern’s Boston campus.
For a time, Dwork focused on distributed systems, cryptography, and differential privacy, which enables data analysis while preserving the privacy of individual data subjects. Since 2010, she has studied algorithmic fairness in both theoretical and applied settings to advocate for more equity in machine learning. In 2023, she founded the Hire Aspirations Institute, bringing together top minds from Harvard, Northeastern, and other research institutions to investigate the fairness of online hiring processes.
Dwork’s research on algorithmic fairness, she told the Fenway Center crowd, began with defining group and individual notions of fairness. Group fairness can be evaluated by statistical parity — in which groups with different characteristics have an equal chance of reaching a certain outcome — or by within-group calibration. She discovered that group methods are not ideal for assessing fairness because statistical parity doesn’t necessarily lead to equity, and group boundaries are difficult to define.
By contrast, individual fairness would mean that similarly classified subjects would also receive similar outcomes, but using the right metric for the task is tricky. For one, the metric would have to be taken from a fair system, which doesn’t always exist. For another, no one knows the probability of a nonrepeatable event, so while there may be broad group statistics, it’s impossible to accurately predict whether, for example, a certain cancer patient’s tumor will metastasize or whether a particular convict will re-offend.
To get around this issue, Dwork established the concept of outcome indistinguishability, which determines the efficacy of an algorithm not by the number of errors, but by the indistinguishability of the real world from the model’s predicted world. This would be a stronger method than a fractional approach based on historical data because it would allow researchers to measure the viability of an algorithm based on their degree of access to the code.
With no access, an auditor would only see individuals and outcomes and could not gauge the model’s accuracy. With sample access, auditors could compare the model’s predictions against real-life outcomes, which would make for a stronger case for or against successful outcome indistinguishability. With Oracle access, or limited access to raw data that still protects the identities of individual subjects, auditors could even test an algorithm on individuals and potentially build a discrimination case if the model is found to be unfair.
These findings are germane at a time when, as Dwork noted, the public distrusts predictive algorithms that diverge from reality. For example, in 2020, Californians voted against a ballot proposition that would have replaced cash bail with an automated risk assessment system for certain charges. Despite widespread support for bail reform, critics worried that the risk assessment algorithm would rely on existing racial biases in the justice system.
Dwork believes that the key to ensuring the impartiality of similar systems is fairness auditing using outcome indistinguishability, which is more effective when the auditor has higher code access.
“People say, ‘Oh, this is the best I can do with the data I have,’” Dwork said. “I think this is really problematic, that you can look at something and say, ‘Gee, with this data, the only thing I can produce is this sexist scoring function.’ Then don’t produce the scoring function. Say, ‘No, I need different kinds of data.’
“If we imagine that our current world is a certain kind of transformation from a more ideal world,” Dwork added, “then we can build predictors that give us something closer to what would be the chances of success in a better world, even though we have no data from those worlds.”
The Khoury Network: Be in the know
Subscribe now to our monthly newsletter for the latest stories and achievements of our students and faculty