Q: How would you describe yourself?
A: I would describe myself as, maybe not first and foremost a computer scientist, but definitely as a scientist. I really care about describing to students why they might want to learn a thing. That’s something that’s really important to me as a professor. But in terms of who I am and what I do, I’m more on the computer hardware side of computer science compared to a lot of my colleagues. I’m really excited to bring that energy to the department and to the classes that I teach. I do like to talk a lot about not just the data we’re using but how it is stored and why it is stored that way. As a human, I care very deeply for my dogs. I’ve really been enjoying getting to know the area and spending a lot of time outside here.
Q: Ever since your arrival, how has Amherst been treating you?
A: The first thing that pops into my mind is the students. I have a lot of students who come to have a conversation with me about their project or their homework. Then, they ask me how my day is going or how Amherst is — that’s really thoughtful! I especially like having a lot of first-year students in my intro class and being able to say, ‘Oh, you don’t know what’s going on here. I don’t know what’s going on. Let’s figure it out together!’ That’s been pretty fun. Also, I’m surrounded by my junior colleagues on all sides. I have a lot of people that I can ask questions to, and figure out what I need to be doing, or want to be doing, or what I want to change, since I’m trying to settle in and see what I like about the department.
Q: What’s the best thing about teaching computer science at the college so far?
A: So far, one of the things I get really excited about is students not realizing how interesting and sophisticated their own questions are. As you’re learning the skills, a lot of questions come up, like ‘How does the computer know how to do that?’, ‘Why is the code written in this particular way?’, or ‘Why is the example you’re giving me written in this particular way?’ Usually, questions like that really get to the heart of ‘Why is a computer designed the way it is?’ Like, what’s the point of it? What higher level things can we say about what is computable — why we express things in certain ways and how it relates to computer science being used as a tool in other fields. Things like that. What I’m really enjoying about teaching so far is the excitement of it. I’ve had prior teaching experience, but it’s never been the volume of teaching that I’m doing, and the diversity of teaching an intro class at the same time as a more advanced class is just really fun.
Q: Congratulations on your recent Ph.D. dissertation from Harvard! Now that you’re spending a large portion of your time teaching the undergraduates, what are your current research interests?
A: My current research interests are primarily understanding, modeling, and evaluating the impact of new memory devices. It’s going to come down to this question of the methods and the materials we use to store bits, like in our smartphones or on our devices right now. They aren’t going to get better in the future. We’ve reached the end of the road in terms of them just getting faster or denser year over year and our phones being able to get smaller and smaller. Since that’s not happening anymore, we still have a lot of opportunities for new devices like embedded devices, medical devices, very, very small devices, very, very big computers. We need to have different ways of storing information, and different physical manifestations of how bits are stored, in order to better support a diverse set of computers of different sizes and purposes. That’s a really broad idea, but what I do in particular is develop mathematical models and simulation tools that estimate the impact of pairing a particular memory technology with a particular set of hardware and a particular set of software applications. And then I also do more hands-on evaluations with small hardware platforms of how a certain application performs when the data is stored or used, or something else is done in a different way — [basically changing] those lower level aspects of the system about the hardware and figuring out how that affects software: Can we tune all of the pieces in a way where they work better together?
Q: This question is for our students who are figuring out the majors that they will stick to for four years of college. If you can still remember back in the days when you were a freshman, why did you choose to major in physics and computer science?
A: I started out college planning to be a history major. In high school, I had a lot of encouragement about my writing. I went to a liberal arts college, and my older brother is a mechanical engineer. What my brother really wanted me to do was not forget about the fact that I was good at math or science. My brother, when I was selecting classes for my first year, basically said, ‘Oh, you’re good at math. You should take one science class. Just take something that’s not what you want. You want a diverse schedule anyway. Take something that’s not what you end up majoring in.’ I was like, ‘Fine, only because I don’t want to write too many papers.’
And I took an intro physics class. In the intro physics class, what really made the difference for me was I made a lot of close friends very quickly. I felt a real sense of community in that class. I ended up just getting more excited, and my social sphere [was] becoming really connected to physics. I realized that even though I didn’t feel like I was the best at it, it’s what I was thinking about a lot of the time. I decided to continue with physics, and then, when I was going into my sophomore year, I talked to a physics professor. I was like, ‘Oh, are there any other classes I should take that would make me better at physics or ready to do research?’ I was getting really eager about it. And they were like, ‘Oh, well, maybe you want to take computer science. Maybe you want to learn how to program. That could be useful.’ And I was like, ‘Fine.’
So I started computer science in my sophomore year. I remember just feeling like, ‘Oh, I didn’t realize there was an academic subject that was just solving puzzles.’ I really liked puzzles, so I guessed I would keep doing computer science too. What really tipped it over the edge for me later on, as an undergraduate, was the fact that I was studying electronics on the physics side, and I was really, really into that class. Then, on the computer science side, we had a class about hardware and computer organization. I felt like they were two very different classes that were talking about the same things, but they weren’t really, so I got really interested, and I would ask both of my professors really annoying questions like, ‘Well, in the computer hardware class, we talk about it this way. Why don’t we talk about it this way in electronics class?’ Taking both of those courses at the same time was what made me realize that was the topic I was interested in. That’s when I decided, ‘Oh, I think I want to keep thinking about this.’ So I took more classes that were more relevant to that part of computer science, and I went to grad school for it. A number of years later, I’m here, and that was probably very long-winded, but I really did not start out my undergraduate degree thinking I would do computer science at all.
I’ve never forgotten how much I really enjoy writing. I think I also never really forgot how much I appreciated a balance of being in a place where it’s not just science or engineering that’s valued. When I was trying to figure out what professor I wanted to be, Amherst was a really good fit for me.
Q: How has double majoring in physics complemented the way that you view computer science and other things in life?
A: I think for me, it’s given me two big factors that continue to influence me. The first is that because of the research I do, I still actually use a lot of [physics]. One of the things I research is new memory devices and new memory technologies. These are just different materials and different types of devices that we would use to store bits of information. In order to understand those devices and have conversations and collaborations with researchers who do the more physics side of the development, I need to be able to have that vocabulary and have that ability to describe things in a physical way. I also think that it gave me a lot of confidence in considering myself a scientist at a time, when I didn’t think I would have felt very taken seriously as a scientist if I didn’t have the community and that sense of my physics community as an undergraduate.
Q: In your own experience, what does it take to be successful in the field of computer science?
A: Hmm. I think that’s a really hard question. I find it challenging because as much as I developed as a programmer over the years — and when I go to do my research, it is a lot of writing code — I also don’t really think of myself as a programmer. One of the things that I would want to say is that to me personally, there’s been a big difference between being an effective computer scientist or doing well in computer science as a research discipline and now as a career, compared to being really good at applying to jobs in computer science, like being a software engineer or something like that. It’s possible to really engage and be interested and excited about computer science, even without being overly excited about writing code. For better or worse, persistence is a big part of being a computer scientist.
Q: How do you engage students, especially the non-majors, in your ‘Introduction to Computer Science’ class?
A: It’s a question of putting it all out on a platter, in a way that I want to be both exciting and also honest. Like, here are some skills and also some important problems and questions that have to do with computer science. If you can do both those things in a way that conveys your own enthusiasm, that also conveys at least a part of why and how computer science could be the thing for you.
The point of COSC-111 [‘Introduction to Computer Science I’] is not to convince everyone to do computer science because I think there are plenty of other good majors to do, just to be honest. But I think my role as an instructor in COSC-111 is to give an honest and enthusiastic and inclusive view of what computer science could be like for you.
I think COSC-111 is a little hard because it has this scope of we’re also doing the job of teaching you how to program for the first time, and there is a lot of frustration that comes with that. I want to be really cognizant of the fact that I have students in COSC-111 who are doing a better job than they know and don’t have the confidence to realize that they are getting the concepts and solving the puzzles in a really effective way. Even if the syntax is annoying, and even if there are a bunch of bugs in their code all the time. I’m finding COSC-111 really, really fun day to day, but also definitely challenging for the reasons you’re saying, like engaging everyone and also trying to give that portrait of ‘What are the skills you want to get out of this?’ and ‘How does it relate to computer science more broadly?’
Q: What has your experience been like as the second female faculty member in the computer science department?
A: I feel positively about it, generally. I think it’s a move in the right direction. I generally feel like I’m joining a very supportive place that cares about, and is very aware of, the fact that there are two female-presenting tenure track members of the faculty now in the department. But that doesn’t mean that there is representation that speaks to our student body effectively still; steps in the right direction are not necessarily big steps. But the department is only so big. I think it’s a hard question.
Q: As an undergraduate, what difficulties did you have to combat? How did you overcome them?
A: Let me go back [in time], haha. When I think about all of the work that I did as an undergraduate, the course load was intense for sure. I think what made it possible for me was the communities of friends and the mentors I had that really addressed what the challenges were. I think the challenge was never that I was not interested in what I was doing, it was always that I just had too much to do. What ended up being really important was that I had a community of my friends and physics and we could do problems together and we could be really engaged with each other. Then I also had my acapella group where I could not talk about physics, and that was really important too. And not talking about computer science for a while, that was really important too.
One challenge I had that might be relatable is … I started my computer science major relatively late. I didn’t start until my sophomore year, and so I had to really scramble to get enough electives to complete the major at all. And I had to weigh a lot of difficult decisions, like, is it worth it for me to complete the computer science major? It ended up being important because I wanted to apply for graduate school in computer science. I remember that being really challenging and that being another point where it was really important for me to have mentors [and] professors that I could talk to say, ‘What am I doing?’ and ‘Does this even make sense?’
Q: Have you had a chance to visit the Amherst downtown area?
A: Oh, definitely. I was there over the weekend. [The place] I frequent the most is Momo [Tibetan Restaurant]’s Dumplings. My partner and I ... our favorite place when we lived in Somerville was a place called Tasty Mo:Mo. When I first visited here, we saw that there was a Tibetan restaurant and we’re like, ‘We can move here!’ because it’s one of our favorite things to eat. If you’re ever in the Boston area, I can’t stop recommending Tasty Momo anymore than I already have.
Q: Rumor has it that you love baking in your free time. What is your favorite pastry to bake?
A: I do have to say that my favorite thing to bake is usually something savory, not necessarily sweet things. So I like doing [something] like a scone if I’m in a casual mood. I [once] had a really intense bread phase that has mostly passed now.