Full transcript of Q&A panel
Can you summarize what you do in a few sentences, and why?
Jean: I work in programming languages which means I spend a lot of time thinking about how to make it easier for people to write the programs they want to write, and so I build languages and tools.
Jon: I’m a first year PhD student and I study distributed systems, which is essentially trying to get lots of computers to cooperate about doing something. Like the Apple iCloud is a good example, or like the traffic control system in any big city - where things have to be coordinated between lots of different things.
Mike: So I’m in computational biology and my work involves figuring out how genes regulate other genes. So we want to figure this out basically to see how diseases develop, how cells turn into different tissue types, and lots of other interesting biological questions.
Sabrina: My field is computer architecture, which is all about building computers-- actually, physically building the computers. So I kind of enable all the rest of the computer scientists to do their work. At the moment, I’m working on how to make them more power-efficient.
Valentina: I’m in computer graphics, and so I deal with visual data - images, videos, or 3D models. And there’s many different applications to them - so I work with analyzing them, and processing this visual data.
Josh: And I work at the intersection of STEM and computer science education - so working on how to help people learn and apply computer science, earlier and more easily. Specifically, I work on AppInventor, which is a tool environment for building apps for Android devices, with block-based programming.
Andrea: I work in computer vision and I try to build systems that recognize who is doing what in a video. And applications of this can be like finding the best Taylor Swift video on YouTube, or if you imagine a world where we cooperate with robots, it’s very important that they understand what your intentions are - so that they don’t get in your way, and so they understand what you’re doing.
Benji: So my work is in trying to make school easier. So I work in the field of education, so I’m really using data to understand how students learn. I’m working on improving that experience, and I also work on AppInventor, which is the same project as Josh.
Where did you come from originally?
Zoya: I’m from Russia originally, but I’m mostly Canadian. I’ve been in Canada for most of my life, and for grad school I’m here in Boston.
Jean: I was born in China. I grew up in Pittsburgh, Pennsylvania. I’ve been in Boston since college.
Jon: Ok, so I’m Norwegian. I grew up in Norway, I did my undergrad in Australia, I worked in Norway for a couple of years, then I did my masters in London, and then I came here.
Mike: So I was born in Poland, but I spent most of my childhood and my undergrad in Canada as well.
Sabrina: I was born in Miami, but then I moved to LA, and then I came here for undergrad and I stayed.
Valentina: I was born and grew up in South Korea, and I came for college to the United States, and I stayed here for grad school.
Josh: I grew up living on a farm in Northeastern Pennsylvania.
Andrea: I was born and raised in Italy, and after my undergrad I worked for a couple years in Switzerland, and then I came here.
Benji: and I thought I had come from far… I was born in Texas, I grew up in Northern California, and I’m here.
Did you always know you wanted to be a computer scientist?
Jean: so I didn’t always know I wanted to be a computer scientist but both of my parents were, and actually, for a lot of my life they thought maybe I should do something that is more appropriate for a girl… so my parents, they grew up in China, which was communist - which means that they just assigned you your job - and so they told them that “you’re both going to be computer scientists”... and I don’t know if they ever decided to do that… they’re always like “there are a lot of options out there… maybe you should consider other things.” So I thought about a lot of things. A lot of people thought “maybe you should be a doctor, or a lawyer, or something that girls do.” But in college what happened is that I took a bunch of computer science classes, I fell asleep in a lot of my other classes, and I really liked my computer science homework… and that’s how I ended up here.
Mike: so I guess my experience was a little different. I never really knew what I wanted to do. So in undergrad I was a math major, but I was taking CS courses and really not liking them. But it wasn’t until I did a bunch of random internships during my undergrad - that’s how I ended up doing research in computer science, and that’s how I decided to choose computer science for grad school. But it definitely wasn’t through class - there are other ways to get into computer science other than doing classwork.
Zoya: and for me, I actually always wanted to be a psychologist or a neuroscientist… and it ended up being that I thought about it long and hard and… I’m really squeamish, and I didn’t want to cut brains, and I realized I would have to do that if I was going to go into neuroscience. So I went into computer science, because then you could work on simulated brains, which is much better - and that is actually how I ended up here. But I end up doing a lot of psychology as well, and I try to simulate human behavior, human memory, and human attention: where do people look in images, what do they remember in images, and it really is a form of psychology - and it’s fun to make computers behave the same as humans.
What did you end up doing that you never thought you’d be doing as a computer scientist?
Sabrina: Well, actually, I didn’t think I was going to be a computer scientist. My undergrad degree was in electrical engineering, so I thought I was only going to be messing with circuits and electricity, and never doing any programming. So it’s interesting, actually, that I’ve gravitated under the umbrella of computer science. But I do something kind of different: I design stuff on the computer, but then in the end I stamp it out in metal and have to turn it on. I guess it’s unexpected how diverse the field can be and what you do in it.
Josh: Yeah I would say the same thing. It’s not all the things that I’ve done - which, I’ve done plenty - but things that my friend, who’s at the wargames did - where they were simulating war with China, and examining the human-computer interfaces, and they weren’t allowed to bring any disks in and out of the room, because they contained potentially classified information - about how this might go down in the South Blank Sea (that they would, you know, rename). Or the kids in the program we did last year who were teaching President Obama how to use AppInventor. I mean those are the things that I wouldn’t expect immediately to see people doing from a computing class, but that happen.
Jon: I think another thing that surprised me is that when you do computer science, there is a lot of programming involved... but a lot of it is also not about programming. It’s about figuring out what problem you’re trying to solve, what’s the best way to solve it, who can help you solve it. And we spend a lot of time talking to other people. We spend a lot of time just researching possible solutions for the problem at hand, and surprisingly little really sitting down and actually writing code.
Jean: Yeah, I would say that was the same for me. You know, in high school, I told my teachers: “I’m thinking about doing computer science.” And they said “what? You’re just going to sit in a room all day? That’s such a waste of everything else we ever taught you.” But I think, especially if you’re doing research and not being an engineer, you spend a lot of the days talking to other people, giving talks, listening to talks. And we also spend a lot of time travelling, which is surprising to me. So, one thing is - if you’re a programmer or computer scientist, you don’t need to be in the lab or any sort of place, and so you spend a lot of time flying around, meeting collaborators, going to conferences. So there’s a lot more adventure than I thought… like not just sitting around.
Valentina: And you do a lot of physical activity that’s not apparently related to computer science. For example, my first project involved going to archeological sites to scan fragments that they discovered, and so I spent a month in a remote island in Greece, scanning and working with archaeologists, and that was a very unexpected part of my professional life.
Zoya: I ended up spending a lot of my first semester with an eye-tracker. So an eye-tracker is this camera that you put in front of a person and it watches their eyes, and later you can basically replay a video of where a person looked in the picture. And so if you want a robot to look at an image the same as a human does, this is how you go about doing it. A lot of my first semester was doing this, and this meant sitting in rooms with a lot of people and getting them to look at pictures.
Do you feel that you end up being social here, at MIT, as a computer scientist?
Mike: So there’s a lot of social activities going on here, way more than I expected. You have the choice of being social if you want to be. I mean we’re in the middle of Boston too, so there’s a lot of things to do here as well - if you want to go out and get out of the grad school bubble. But yeah, that’s the cool thing about being in grad school: you get to lead the life you want to, nobody’s telling you what you should be doing, or how. You kind of get to do what you want.
Zoya: So the nice thing for us being researchers here at MIT, being grad students - we set our own schedules. We wake up whenever we want to, we leave here whenever we want to, and if we stay here really late, it’s because we’re really interested in what we’re doing. So that’s a really cool part. And in my lab we have 10 people, and each one of those 10 people arrives at a different time of the day - and some people arrive at 10 pm and leave at 10 am, or the other way around. So people will come in the night, work over the night, and sleep the whole day, because that’s the schedule that they like. People set their own schedules and that’s a cool part about being a researcher.
Jon: I think this is part of the reason of why the social activities are so important. Because when you first do work, you do very focused work: you sit down and you try to keep an entire problem space in your head, and then you just work on it for a long time. And then when you need to take break, you need to just do something completely different, and this is where all the social activities come in. They help - not quite distract you - but they help you not think about the problem you were working on for a while.
Jean: I think actually a lot of the learning happens socially. So I have some friends who came in the same year as me, and they’re in the same area. And after we go to a talk, we’ll just go into one of our offices, and just close the door, and everyone will yell for a while: some people liked the talk, some people didn’t like the talk, and people who didn’t like the talk are supposed to know why they’re supposed to like it and vice versa. And so I think that a lot of how we learn happens in a very social way.
Andrea: I think that was also very surprising for me. I really thought, before I did any of the research, that research was some very bright people sitting in a room by themselves, thinking about very hard problems; and doing it I realized that it’s a lot about understanding where the community is and where it’s going. And the best ideas... you have them while talking to people, bouncing ideas off each other. So my work is very social in that sense, for sure. Like, it’s almost required that you do some talking to other people.
Zoya: And people come visit you from different countries. People will come in for conferences or talks and they’ll be from all over the world. And if you get to talk to them, and they’re interested in what you do, then they might invite you over. So that’s really fun that you can form these collaborations with people all over the world, and go wherever you want - there’s a lot of freedom there.
What opportunities do you have as a computer scientist that you don’t think you would have otherwise?
Jon: So I think one advantage you have as a computer scientist is that everything is becoming digital. Every single field is now using computers for one thing or another, and so having the skills that you form as a computer scientist - be it just programming, or working with computers, or working with any kind of digital system - gives you a lot of experience - even in other fields you don’t have any other familiarity with. So it might be easier for you to get into almost any kind of position, simply based on that knowledge.
Jean: Yeah, I agree. I think programming skills are really coveted right now - so all the time, random recruiters e-mail me, and they say: “we have some company; we have no programmers”. And I think that most people don’t experience this. I think it’s hard for a lot of people to find jobs, without the programming skills.
Zoya: You also get invited to a lot of companies that show you really cool things before the rest of the world can see them. Last year I got invited to fly over to Google and they were presenting all the things to us that they weren’t presenting to the world yet. So we were the first to find out about a lot of new things. Finding out about things before everyone else lets you have this head start, and you feel really special. And you get these opportunities because you’re a computer scientist.
Josh: I mean you also get treated like a superstar. I mean being at MIT in computer science: there’s this something that people gravitate towards. You get invitations to go China or Qatar or Korea, to talk or present. You know, we’re figuring out ways how to educate people... but people think “you’re at MIT, you must know - come tell us.” So it’s interesting.
Mike: There’s a lot of people I went to school with who also did math, and then they graduated. And even though you think math is this big, important thing… in the real world nobody gives a crap if you can do algebra well… but even being able to program just a bit really helps you to find a good job once you leave school. So as a computer scientist I’m really glad to have that kind of opportunity.
What would you guys wish to have known in high school about computer science and what you’re doing right now?
Jon: That it’s such a big field. Like computer science is a - massive field. You sort of go in thinking that “I’m going to do computer science” - but that’s not really how it works; “computer science is just learning about computers” - but computers can do a lot of different things. Just take the panel here: we’re all doing very different things within computer science and I don’t think I could do whatever any of these other people do. I’m good at my field, but they do completely different things, and it’s still considered computer science. And that’s sort of the fascinating thing - that you can go into this field, and you can work on whatever you’re interested in, and there’ll be some part of that - that ties into computer science, and you can do both.
Zoya: Yeah, I think the fields are very different; so if you want to go into biology, or chemistry, or physics, or art, or psychology, you can do it all through computer science. You can be called a computer scientist, but really what you end up doing your whole day is something related to that other field. So you can do computational art for instance, but you’re still called a computer scientist, and that’s really cool. You can end up doing all the things you like and a computer’s there to help you - it’s your buddy.
Jon: I wouldn’t say that the computer part is not what you might not like. You might like computers and something else.
Zoya: It’s a toolset, it’s something that helps you do what you want - and what you want to do can be anything.
Jean: Yeah, I have a friend who runs a school for computational poetry, I think, or poetic computation. I’m not actually sure what it is but they just have artists come and think about how computers and art relate. But it’s a really good skill even if you’re more interested in artistic things - you have this toolkit that you can work with now.
Jon: Or the people who study how to make computers generate jokes - like, that’s a thing that people study, and it’s a great field.
Is there anything specific that you’ve retained from high-school that’s been significant?
Mike: So in highschool I had a couple of really good teachers who taught me how to write. So if there’s one skill that’s really important to learn early and then do it - it’s writing. So even as a computer scientist, you think that my job is all about programming and doing all kinds of analysis. But at the end of the day, you still need to be able to explain what you did to a large audience, and the easiest way to do this is to communicate well through writing. So definitely it’s important to do programming, and math, and all that other stuff in highschool… but if there’s one skill that’s going to stick with you no matter what field you go into, it’s good writing. So that is something I really encourage everyone here to focus on. We write a lot of papers, research proposals… I mean it just comes up all the time.
Josh: I mean it’s even day-to-day: writing e-mails to your colleagues. If you’re the person who writes the 5-page blabbering thing that’s too long and nobody reads, you don’t get your point across. But if you’re a decent writer and can say succinctly what you want to…
Sabrina: Yeah, that’s actually super critical in research or inventing anything. If you make something but you can’t describe to people what you did, it’s useless. Even if you gave something to people and they’re able to run it or use it, they can never improve it-- they don’t understand how it works. So if you can’t communicate your ideas to other people, it does nobody any good.
Zoya: So we spend most of the time actually writing what we want to do or what we did do than actually doing it.
Valentina: I would also say that in addition to the specific skills, or even more than the specific skills or knowledge that you learn, you learn to go through and finish well the work you’re doing - whether you like it or not; because I think although we all like our jobs, there are certain points in time when it’s very boring or it’s very difficult - we don’t know where we’re heading, and it is a virtue to see through the finish of that, and I think that’s a lot of what we learn in high school and in college.
Jean: I’d like to also say that I use everything I learned in high school at some point, and I wish I had learned it better in high school. So I guess if you’re a researcher, you have to talk to people from different fields, and even if you’re not directly working with them, sometimes they say stuff and you have to understand it. Like you know right now I’m talking about working with a computational biologist, who does lots of chemistry stuff, and some of this stuff I haven’t heard about since high school, and so I spend time thinking: “what was that thing my chemistry teacher said that time in school”. And also for a lot of the math I saw in high school, I thought I would never use it again, but it came up in college computer science classes, it comes up talking to other researchers, and sometimes I really wish I’d paid better attention. Also the biology is really important, because I’m always reading the news about - “am I going to die if I do this” - if you can understand some of the biology, you know whether you can believe some of the articles or not. So I would say that in high school I thought a lot of the stuff would be irrelevant, but I see it again all the time.
Josh: Yeah, things for me: probability and statistics are huge. Learn all that you can because people try to lie to you all the time.
Jean: Yeah, and the health studies - they have all this math. Paying attention to the math really helps.
Josh: And the other thing is how to run, and how to think about running a controlled experiment. It’s not any of the specific science that I learned there, but how to think about a problem in a setting.
Sabrina: The scientific method is actually useful.
Andrea: I think as far as contents go that are covered, I think as far as skills go: I’d learn how to study, I’d learn how to take notes - which you don’t think while you’re doing it - it’s actually a skill. Also I learned that to a certain extent even studying literature - to take something somebody else has written and take it apart, and put it in context and things like that… we spend most of our days reading and writing. So having the skills to put things in context and dissect them and take them apart and see what they have to say - is important.
Jon: Yeah I think that’s right, I think being able to obtain knowledge is important - like being able to seek out new information that you need for some report you’re writing or whatnot. It’s important to have that skill of being able to do research on your own. Even at smaller scales, even just like knowing how to look up wikipedia, and look beyond the text that’s there, and follow the references at the bottom, and read other things that other people have written, and then come up with a better answer - that’s probably what we do every day.
Josh: And the one thing I wish I had known in high school but didn’t get until later is that knowledge is still being constructed - that it’s not what’s in a book that’s “the word”. You know, we’re still learning computer science: there’s stuff that’s happening in the forefront here every single day; and we have to figure out what’s good in it, what’s not good, and make analyses of that - and that’s something I really wish I had grasped on in high school.
Sabrina: That’s actually exactly what I was thinking of right now-- it’s spooky you said that. I was thinking to myself, “The one thing I wish I had emphasized for me in high school was how little we know,”-- because in high school you’re still learning what we do know. You haven’t gotten to the point where you know all of the things people already know. They’re teaching you those things. But because you’re learning things people already know, you don’t realize that we’re not there at all. There’s so much that we don’t understand, there’s so much that we need to understand, and all the stuff you have there is subject to change, because we’re going to debunk some fundamental part of physics, or we’re going to learn more about how the brain works… Neuroscience: baffling! We all have a brain, but we have no clue how that works. It’s just-- it’s just happening. Thank goodness it does, but we have no clue. We’re really at early stages of that, and so many other things. So, get excited: there’s stuff to do-- it’s not all done. So much to do!
Andrea: So mit.edu has a research feature on the front page every day and I think like what if we don’t find anything new, what are they gonna do? But it hasn’t happened yet. So there’s a lot of stuff that we still have to do.
Sabrina: Every single day, there’s a new thing there.
What would be a good way to start getting a foothold in computer science?
Sabrina: Go to college for sure. College is super fun, and also productive. In college, I’d say get your feet wet in some introductory-level courses in stuff you’re interested in. If you want to pursue computer science, there’s usually an “Intro to Computer Science” class. Get involved. Oh, and if you want to start going in a research direction-- if you start taking computer science classes and you like it and would like to work more on this stuff, don’t be afraid of professors. I know you’re in high school and right now you think, “Oh, teachers: I don’t want to talk to them,”-- they’re kind of ‘other’. When you get to college, you’re even more intimidated, “This professor probably knows so much!” But talk to the professors, they’re really friendly people (like your teachers). And if you start building up relationships with them and you talk to them, you can often get involved in whatever it is they’re working on-- it’s always crazy cool stuff.
Benji: If we take a step back from college, like even if you’re still in high school or somewhere in between, it’s all about like what we said earlier - getting social. So find a group of people - and share what you’re interested in. For example, if you’re interested in video games, grab a couple of other people interested in video games and make a little game. And it’s about getting social, it’s about asking people when you don’t have the answers, or looking it up. I really encourage you to find a few friends and do it - cuz if you try it alone and you get stuck, then you might want to give up. If you’re with a group, the group kind of sees it through, and there’s a lot of web resources and the internet is powerful - so yes, do something.
Zoya: Computer science is something you can learn, on your own, at any point in time, on the web, or later on in life. So just to go back to a previous question: we asked you guys if you liked your first computer science course - in high school, I hated my first computer science course, and I actually dropped it. And I told my parents - who are both computer scientists - that I’m never doing computer science again. And then I ended up applying to computer science in college and I ended up liking it. So I didn’t give up on it fully, but I was really close to it. And that’s one thing I want to tell you, one thing I want you to walk away with: is not to give up, and give things a second, third, fourth try... and you might find a part of it that you actually really, really like, that you never thought existed - and that’s what I discovered for myself.
Jon: I think pursuing it on your own, or in a group is a great thing - to do it on your own time. And one thing that you’re going to find very quickly is that - say you wanted to build a small game, when you start out, you’re going to see that “there’s so many things I don’t know”. And then you realize that you can build a simpler version of the game, using only some of those things. And then you realize “there are so many things I don’t know - and there’s so many cool things I could do with this game that I have no idea how to do now” - and then you have a million options of where to go from there. But it’s just like taking that first step and figuring out where do I begin - and once you’ve started, it’s easier to find new things to learn. Like it’s whatever thing you need now to make your game a little bit better. So getting started is the most important step.
Andrea: Yeah, to back up a little - get started on something you’re passionate about - like even a small game, or a small website about your favorite game, or something like that, and you’ll get hooked and feel how amazing it is to create something in that box, that’s happening and doing things.
Josh: Another thing I would say is that it doesn’t have to be games, it can be like - Benji, what do you do in Code4Good?
Benji: Yeah, so I work for a group called Code4Good, and it’s part of a local non-profit, and we’re really trying to help the non-profits do whatever they need, and right now we’re trying of all things to improve their twitter - like collect some data and figure out how to improve their twitter accounts. And I’m also making like a dashboard so they can monitor their own metrics - so they can see: how did my twitter do this week, did I get more followers, this that and the other. So that’s really - not a video game - but it’s ok, it’s still fun.
Jean: Yeah there are more resources out there than ever before for learning to code - like the CodeAcademy. And pretty much if you want to do something, you search online for “how do I do X” and people would have written about it. So my first programming-for-fun experience was when I was 11, I really liked tamagotchis. I don’t know if you’ve ever heard of tamagotchis, but they’re these little things that you have to feed all the time, you keep it in your pocket -
Josh: electronic, I guess
Jean: - yeah, heh. So I had this website for tamagotchis in ‘98 or something like that, which was like early days of the internet. So a part of it was just seeing who else was on the internet - there was no Myspace back then, no Facebook. And at the same time, I was taking programming classes in school that I thought were the most boring things ever. But I thought it was really cool that I could find other people on the internet who liked tamagotchis too. So you know, you just have to find the thing that you want to do, and often it’s not maybe what you’re learning in school.
Jon: And I think further down the line, if you do learn - say, how to build video games - even just simple games, but if that’s a skill that you acquire, then try to write a guide for other people to learn the same way you did. Like you learn so much by teaching other people. So over the winter holidays, I wrote a tutorial on how to write a tetris game, and it’s just because my brother asked me - “well how do you do that?” - I was like: “here, let me show you”. But writing that guide - even though there wasn’t anything new in programming there, for me - I still learned a lot about how to convey that information to other people - that makes you understand better what you’re actually doing.
Andrea: I think another thing that is - at least it was important to me, when I was starting programming - was to show off what I did. No matter how bad it was, I would tell my friends “look how cool this program is” - I can like count how many goals this soccer player did in the last year, just scraping off this website. But they’re like “um, that’s the bottom row”. Yeah, but I did this. I think it’s really important to feel proud of what you did, no matter how small it is.
How long is the process of becoming a computer scientist?
Jon: Ah, well you’re in for life.
Josh: Anywhere between a day and… 40 years.
Jon: Well so it depends what you mean by being a computer scientist. I mean if you mean how long does it take to get a degree in computer science, then it’s a sort of standard bachelor’s degree. But if you’re thinking of computer science as - like being a computer scientist is knowing how computer work - it’s like an endless journey: you keep discovering stuff every single day, and you could do it for the rest of your life.
Jean: And they keep making new computers every day, so…
Valentina: But to write a simple program, I would say even a day or a week. You can start writing a simple program very quickly. But to build upon that, with more knowledge... to do more complex things, it takes a longer time.
Andrea: It can take as long as you want, and it’s also, I believe, never too late. If you’re at the end of high school and you never touched a programming language before - nevermind even at college - if it’s after college, there’s plenty of people that are extremely successful doing computer science jobs that take online courses after college. So I think it’s one of the few things where it’s never too late to learn the trade.
Zoya: And it’s the fastest thing to learn too. So, if you take chemistry or biology or physics, you actually need to sit down with a textbook, and understand the fundamentals before you do anything else - but with computer science, you pick up one tutorial, and you already understand a bunch. So without having any other prior knowledge, you can already build something that a computer scientist can build. You can make an app for your iPhone, and you’re already a computer scientist. That’s maybe a few days of work, maybe a few weeks of work, depending on how long it’s going to take you... but you can’t become a biologist in a day. You can start to think like a computer scientist in a day. I think that’s really promising.
Why didn’t you like computer science in high school?
Zoya: So the way that we were taught computer science, I thought it wasn’t straightforward, and I didn’t think that what we were doing was very interesting. We were writing a calculator, and at that point, I didn’t really care about calculators. So if somebody came to me and said: “you know what, you can actually build a little brain” - I would be super excited. But we were building things that I didn’t care about. Some computer science classes teach you, for instance, how to make video games, and for some people that’s going to be super exciting, but for other people it won’t be exciting. For instance, I never liked video games, and so if that was my first computer science course, I wouldn’t like it either. It’s very difficult to design a computer science course in high school that everyone’s going to like, because you have to start somewhere, you have to build something - you have to build a calculator, or a brain, or a video game - and then half the people aren’t going to like what you’re doing, and so half the people are going to think that they hate computer science. But then there’s all these other things that you could build with computer science - which is why I’m saying, if you don’t like it now, give it a second try, third try - maybe the second or third time, they will actually build what you care about. Or if they don’t, then go on the internet and in one day build an app for your phone, or something, and build what you want on your own - you don’t even need teachers for that, you don’t need anyone for that. That’s what’s great about computer science.
Josh: I also hated my high school computer science class - and it’s for a very specific reason: that I started programming on my own, with my best friend down the street, with a thing that you guys don’t even recognize as a computer. But we got to know what a computer could do, and then I went to this computer science class, and I was like “come on, we can do far more than this - and why are we wasting our time”. And I think that’s the thing to remember: that you can build the things that matter with computers, and that’s the really key part. You can build something that matters to you, to your community, to your world. And don’t let some computer science class drive that out of you.
Andrea: That was also for me one of the moral dilemmas that I faced when I decided to become a computer scientist - like I can’t do anything useful with this thing. All I’m going to do is build computer games - which are awesome - but there are more important, moral things that I can do if I was a doctor, or something like that. And I later found out that that’s not true. Like computer science is everywhere: some of the best diagnostic procedures that we have today - especially, early diagnostics - are based on computer science. We can integrate data, health-related data from a lot of places, and we can try to find a cure, and things like that. So there’s a lot of things that you can do and also help the world, if that’s your call.
Zoya: There’s actually these huge groups here at MIT that work on this: they work a lot on medical devices or medical imaging, and they actually help doctors. So doctors would go, and look at images for tumors, for instance, and that’s a very hard thing - and doctors can miss them. So why not let a computer do that? So people here write computer programs that are going to look at images of your brain scans, or organ scans, and try to find a tumor really quickly - maybe even faster and more accurately than a doctor. That’s something that computers can help you with, and so the doctors and medical professionals in hospitals are dying to work with computer scientists that can help them do their job.
Josh: - not dying in hospitals.
What’s the most interesting thing that you’ve done with computers?
Jean: So my thesis is on making a language for automatic enforcing of privacy policies. So if you’re using something like Facebook, and there’s all these settings, there’s all this stuff happening - like if you say where you are, this could show up anywhere: on your profile, or in some news feed, or in a search, or in some other site scraping Facebook. And you know, Facebook has, as of 2013, like 60-some millions lines of code, like 1500 engineers, and it’s really hard to trust all those people looking at all those lines of code not to make some mistake that reveals a lot of information about you. So what I’m trying to do is design new languages that will automatically handle this for the programmer. So you can state what the privacy policies are in one place, and you just have to write code that doesn’t have to worry about it anywhere else. And I’ve been working on how do we prove that this is doing it right, and how do we do it in a way that’s fast enough so that programmers actually want to use this, and so the goal is to make it so that you don’t have to worry about all these people getting it right together. You just worry about the language getting it right, which is much easier.
Zoya: The most exciting thing that I did was recently I wrote a program that - it’s related to the eyetracker - so a person would look at an image, and as they look at an image, my program predicts whether they’re going to remember the image or not, just based on where they’re looking in an image. It’s going to say: “you’re going to forget it, look at it longer”, or: “you’re going to remember this, you’re good to go”. So for me that was super exciting because I could actually predict what people are going to do - I can almost look inside their brain and be like: “I know what’s going to happen to you, and you might not”. So I think this is moving towards the future of things you would have on your cell phone, like little educational guides that are going to tell you that “you didn’t study this well enough, I’m going to remind you again later”. But maybe you don’t know that you’re going to forget it, but the cell phone is smarter than you. So I think it’s really cool when the cell phone becomes smarter than you.
How did you figure out the exact thing you wanted to do as a computer scientist?
Jon: I still don’t think I have. So the bachelor I did is something completely unrelated to my master’s degree, which is completely unrelated to the research work I did after, which is completely unrelated to what I’m doing now. Like just completely different things - because there’s so many things that interest me, and that’s one of the great things about computer science. You can mix and match different fields. I think now that I’ve started a PhD, I’m going to have to focus on the same thing for a while, but that’s ok, because it’s an interesting thing. So yeah, I don’t think you necessarily have to pick. I think the important thing is that you start doing something, and if you find out that that’s not for you, then pick something else. Just start something.
Andrea: The thing that got me hooked was, like I always liked science. Like I read a lot of popular science books about physics and things; and then I thought these people are really cool, but I can do better. And so I started to think about how we understand things - and so, artificial intelligence, and that kind of stuff. I think if we understand how we understand things then... we’re done, right?
Sabrina: I also sort of wandered my way into where I am right now. All I started with was with the sense that I like to build things, and so I thought, “Well, engineers build things-- I’ll be an engineer. What kind of engineer? I don’t know, electrical sounds interesting.” So I went into that, and by the end of that I realized electrical engineers can build computers. And I realized: computers are interesting, so I started pursuing that. And I wound up in an area where I’m moving higher and higher up and working with these computer scientists and building hardware for them, and who knows, I might go in a different direction soon. When you move around a lot, an interesting thing you learn is the principles that are the same all the time-- like good practice when you make things, how to be careful, how to debug pieces bit by bit and keep things separate and not turn things into a giant mess when making things.
Zoya: You also learn all these things through talking. Through talking to other people, you figure out what you want to do. You go and you talk to your friend; they tell you what they’re working on, and you’re like “oh, that’s cooler than what I’m working on now”, and then you switch. And then you go and talk to someone else, and you say: “oh, that’s cool” and you switch. And you keep switching, and there’s huge flexibility.
How much of your time do you spend doing computer science, and do you find that a lot of what you do is repetitive?
Jon: No, I don’t think that’s true. I probably spend a lot of my time doing computer science - not all of it is related to my research. Like when I leave for the day, I probably go home and do more computer science. But that’s because I want to, it’s not because I have to. And you sort of choose a PhD because you think computer science is interesting, and you’d probably do it on your own anyway, but you might as well get a degree out of it.
Josh: The whole point, in some ways, of computer science - or computer programming, I should say - is to not be repetitive. To make it so you reuse code, and you’re not doing the same thing, programming the same thing twice. So I think that that’s maybe a misconception some people have. And then how much time you get is how much time you want to pour into it. I think - speaking for the people here - everybody loves what we do and we enjoy pouring the time into it. I have a family, so I don’t pour quite as much in, but I spend a lot of time because I love it.
Valentina: I can say, on the other side, that there is a repetitive element - in that coding, you sit at the same computer, you look at the same code that you’ve been developing... for months, or maybe even for years. But there is a new step in each of the same - apparently, same - tasks. And I think that it’s not just true for computer science, but for most of the jobs in order to become a professional and to acquire a certain level of skill… you need to have a sort of repetitiveness and schedule in it - a routine.
Zoya: What’s not repetitive though is the fact that, as a computer scientist, unlike anyone else, you can do you work wherever you want. You can move to Hawaii, and sit on the beach, and do your computer science stuff. No one else can do that. Other people have to go to particular places, and do their job. We can go wherever we want, we can keep travelling around the world, and keep doing what we want - because all we need is a little computer - and they’re getting smaller and smaller, so really all you need is your cell phone, and you can do your job.
Jean: I would also like to say I don’t spend all my time doing computer science - I have a lot of other hobbies. I spend a lot of time writing, actually. I spend a lot of time thinking about how to tell the world about why computer science is cool and why the things I think are cool - are cool. But I would say that for a lot of grad school, I spent like 6-9 hours a day in the office on weekdays only, and all the other time, I spend doing all the other things I want to do - like writing and my other hobbies.
Sabrina: Yeah, I want to second that. You can pull whatever sort of hours you want, and spend all of your time, and work in a burst and then spend three days sleeping or whatever. Or you can have regular hours, if you feel like it. I usually keep regular hours. I also have hobbies: I play sports, I like to do theatre stuff. So it’s what you make of it, how you use your time, whatever sort of rhythm you want to get into. I think in computer science in general-- In academia (in colleges that do research) you can make your own hours, but you know what? In computer science, in particular, if you work in industry-- for Google or whatever-- they tend to be pretty flexible too. (That’s my understanding…). So a lot of computer scientists go to the rhythm of their own drums.
Benji: I guess the confession is that a lot of what anyone does is going to be repetitive - whether it’s a basketball player hitting a free-throw a thousand times or something like that; in practice, you know, it’s going to be repetitive, but I guess the big payout is when it does pay off, when that person gets the free-throw in the game; you know, for theatre, when you get it right on stage, in front of all your friends. So it is repetitive, but it is a question of if it’s worth it all in the end to you. And I think that is the most important question.