Showing posts with label academic advice. Show all posts
Showing posts with label academic advice. Show all posts

Saturday, December 17, 2016

The Structured Procrastination Trap

A wise professor once told me to take advice with a grain of salt, as it is mostly highlights and wishful thinking. Structured procrastination is a prime example of wishful thinking doled out to students eager to ease growing pains.

Structured procrastination promises a productive life with minimal pain. The basic premise is that if you always do something other than the task you are supposed to do, you will be able to always be doing something that you want. Don't want to write that report? Play ping-pong with your students instead, and people will be impressed with how easy you are taking life. Don't want to respond to emails? Read papers you like instead, and people will be surprised you make time to read papers. If you keep waiting, you will want to do that thing that you have been procrastinating, and then you can live a completely pain-free life!

Now let's look at the premises for structured procrastination. It requires that there is always a task that you can and want to do that is productive. It requires that deadlines make tasks miraculously desirable, and it is the fact that something is due soon that makes a task easier to do, more so than other factors (like how easily you are able to do the task). It requires that you have a good sense of how long tasks should take. For structured procrastination to make sense, you need to be at a point where life is simply a matter of execution.

In my many years of being alive, I have discovered that these premises often do not hold. When I was a graduate student and looking for shortcuts to the Productive Life, I felt like I was doing something wrong. When I aggressively tried to apply structured procrastination to my life, I produced a lot of bad work. There were long periods of time when I would try to get into immersive "flow states" where I could have pleasurable levels of focus, but everything felt difficult. I've spent a cumulative total of days, maybe weeks, of my life wondering why it takes me so long to write a paper, or to prepare a talk, or to debug my code. For years I thought that it was possible for life to always be easy, but I had somehow not figured out how to do it.

What I realized is that life is hard, and especially hard if you want to do things you have never done before. If you are doing something that requires you to grow, what you need is a lot of time, and the discipline to force yourself to keep doing something even when it feels like the most painful thing in the world. If you are doing a high growth activity, you need to abandon the idea of structured procrastination. You need set hours that you are going to sit down (or stand up, and lay down) and stare at your notebook, or laptop, or the wall, where you are dedicated to making progress on the Very Important Task. Limiting these hours makes it psychologically bearable. Making these hours the same time every day makes it more likely you can keep this.

Of course, structured procrastination is not all bad. I have recommended this technique to many people, as it is a great way to get oneself out of unproductive loops when a looming deadline kills all desire to do anything. If you allow yourself to admit that you are not going to work on your Very Important Task, then you can at least do "productive" things (like make Ryan Gosling memes) instead of sitting around angsting (which could also be productive according to some value systems). Procrastination is also a good way to trick yourself into doing more things, because deadlines often do make people more efficient.

While structured procrastination provides a useful execution framework, there are times in life when you need to suck it up and do the Very Important Task. In fact, structured procrastination may be most seductive when what you need most is structure. For this reason, you should always think before you procrastinate, and avoid the trap of false busyness.

Friday, September 30, 2016

On Avoiding Stress Culture

I've been at Carnegie Mellon University as an Assistant Professor for a little over a month now, and the students tell me we're approaching "Deep Semester." The glow of summer vacation has worn off. People are skipping classes and skipping meals in pursuit of Excellence. A pall of Seriousness has descended upon the Gates Hillman Complex. (Many days this week, the Seriousness has physically manifested as heavy rain.)

Now is a good time to remind myself that I can stay out of it*. Jim Morris, the former Dean of CMU's School of Computer Science, once told me, "Stress culture is worst among junior faculty. Avoid it." Jim seems to live by this advice. He teaches a course called Campus Stress as a Wicked Problem**. My friend Chinmay, who is in the Human-Computer Interaction Institute with him, tells me Jim is one of the few professors on campus who isn't "so busy" all the time.

At first glance, it may seem difficult to avoid stress culture as a junior faculty member. After all, everyone knows that being junior faculty means working all the time, never sleeping, and having so little of a life outside of work that you can only keep plants alive if they are in the office. But people also seem to think being a PhD student means working all the time, and there are many examples of successful people who did not work all the time as PhD students. Thus I'd like to posit the hypothesis that the idea that one must work "all the time" as junior faculty comes more from a culture of stress than necessity for success.

But why, you might wonder, would this stress culture exist among junior faculty members if it were unnecessary? I speculate below:
  • Your responsibilities are much more divided than they were before and it's difficult to juggle. It's possible to spend all time doing any of the following: teaching, advising, writing grant proposals, and attending committee meetings. Also note that this list does not include the reason you presumably became faculty in the first place: doing research. The solution is not to implode, but to compromise.
  • The closer you get to the top of a hierarchy, the more intense people get. When I go out into the real world people find me to be a total megalomaniac. My academic peers don't seem to think the same thing about me.
  • A lot of people who made it all the way to becoming faculty did get there by working all the time. Though not the only way, this is a legitimate way of working.
  • As humans we're not engineered to say "no" too often, and there are infinite things to say no to as a faculty member. If I said yes to every meeting and answered every email I'd die of not eating and not sleeping very quickly. (This might be a harder thing for women because we're socialized to be agreeable.)

In support of my hypothesis that stress culture is something to be eschewed rather than embraced, I present a list of my role models when it comes to finding space and balance:
  • My undergraduate professor Radhika Nagpal. This recent excellent profile of her talks about how, as junior faculty, she avoided politics and made it a rule not to check email on weekends. She wrote the most-read post on Scientific American's website about her approach to the tenure track called "The Awesomest 7-year Postdoc."
  • Turing Award winning MIT professor Barbara Liskov, who famously worked only 9 to 5 on weekdays, working an evening here and there only if there was a deadline.
  • The aforementioned Jim Morris, and also my friend Chinmay, who seem to make time to do the things they want to do.
  • My postdoc advisor Walter Fontana, who lives by the Goethe quote "Do not hurry; do not rest." He seems to have always found the space to do the science he wants to do. He once told me it is important to have a "strong internal compass" and know when you believe your work to be good so you can avoid pressures to hire more and publish more.
Stress culture might not be bad for everyone***, but it certainly is not productive for me. (My friend Seth once observed that I seem to work best in the complete absence of pressure.) So though I could be doing more work, right now I'm going to go read a book. Good night.

* In Influence, Robert Cialdini says if you want to do something, tell the entire world. Then you'll feel more accountable and be more likely to do it.
** The course focuses on problems at CMU, but in terms of pressure CMU is not so different from the other elite higher-education institutions I've experienced.
*** A student once told me I needed to put more pressure on him so he would get more work done!

Saturday, September 17, 2016

Five Things More Important About a Research Project Than Being in Love

I recently talked to an early PhD student trying to decide between two projects: one they were in love with, and one with a much longer list of "pros" including "more likely to go somewhere" and "the faculty involved have experience working in the area." I was surprised to learn that I was the only person (out of faculty and students alike!) who told her I would pick the second, more reliable project.

It's not that I'm not a romantic*, but I do believe advice to make decisions based on feelings rather than facts can be dangerous. Apparently my point of view is so much in the minority that I need to write a blog post to elucidate my position.

Like most of you, I am a sucker for stories about people finding meaning, love, etc. When I watched movies as a kid, I would always be so confused when the female lead turned down a proposal from a perfectly eligible paramour**. But they look so good together! But they are in love! As time passed, however, I learned that there is this thing called happiness, that happiness is important, and that happiness depends on many more factors than looking good and being in love.

And as I came to learn that all things in life are the same, I learned that these lessons also apply to research. For me, the following things are as important, if not more important, than the specific dream I am chasing in any given research project:
  1. The day-to-day. I'd love to be a lab scientist for the glamorous photographs of me in my lab (and of course the direct contributions to science, etc.), but I am pretty sure I would die if I had to spend my days doing wet lab experiments. (In high school my "will become" in my senior yearbook was "a better lab partner." This unfortunately never happened. In college I loved studying organic chemistry but I would do things like accidentally shatter our sep funnel and throw it away, leaving my lab partner confused about why we were missing half our experiment.) What I love doing is coding, formalizing things every now and then, and apparently, spending days and days writing grant proposals and Powerpoint presentations. Hence my present set of projects.
  2. Collaborators. For some reason people love this idea of the lone scholar. (Maybe because it's hard enough to imagine one person who wants to work on such obscure stuff??) In reality, most science (and probably all other things in life) moves forward not only through single people sitting alone in their attics, but through conversations between people sitting in attics. It's good to know whether you like working by yourself, with a small handful of collaborators, or on massive collaborations where you can't ever tell how many other people are on the same Skype call. There are tradeoffs to each of these situations: the fewer people you collaborate with, the more "out there" your work can be. The more people you collaborate with, the bigger the project can be (for different senses of "big"). Especially when you are working hard, your collaborator interactions are most of your entire world, so it is important to like both the collaboration format and the collaborators.
  3. Community. People tell you that the PhD is about the relationship between a student and their advisor, but it's really about the student entering into a set of conversations within a community. My happiness certainly depends on my position within a community: how much the community accepts me/my work; how much my community values my work and similar work. I like being part of a research community that shares my values; I like it when my community accepts me as one of them and engages with me about my work. As a young researcher, your community is especially important because these are the people who will shape your values and your ideas about what it means to do research.
  4. Evaluation. I used to think that once work was good enough, it would be universally recognized as good, and then we could all celebrate and move on. Unfortunately, this is not the case, and each community has its own customs about how it evaluates work. The evaluation mechanisms determine what work gets recognized as good and ultimately how people work. I much prefer my work to be evaluated on things that feel more objective than subjective, and I want to believe the evaluation is demonstrating something about a universal truth, rather than being a measurement of a particular artifact. (For these reasons, I prefer to be evaluated on correctness--in the form of theorems--than user studies or performance numbers.) This determines what I choose to work on and what I emphasize when communicating about my results, decisions that play a large role in my work-happiness.
  5. Resources. Behind all things in life there is the question of money. While most people would certainly not like their work to be completed dictated by what funding is available, how much funding there is and where it comes from determines many things about your work: whether you have funding to travel to conferences; whether you have additional funding meetings where you are to present concrete deliverables. There are also other resources besides the financial. How many people at your university could give you feedback on this project? How many other people could contribute to actual work on the project? For young researchers, there is also the question of how much attention the advisor would provide on a project, and also the attention other researchers in the field might provide.
Of course, everyone has their own happiness function. I'm sure many other people value the idea of being in love with their research more, and value some of these less. No matter what your value function, it is important to think about the dimensions of your happiness, and how project decisions fit.

Supplementary reading:

* Hm, people have called me the "least romantic person they have ever met."
** Hey, it's not my fault the movies I watched conformed to heteronormative tropes.

Saturday, September 10, 2016

A Small Reading List for New PhD Students

It's my first semester being on the other side! Giving advice is so fun because it validates all of my life choices! I put together a list of reading for my own students and thought others might find it useful too.
I would also like to reiterate advice from my undergraduate professor Radhika Nagpal that it's important to take all advice with a grain of salt, as  most of it is wishful thinking and highlights. I would like to add that taking productivity advice from other people is about as useful as taking diet advice from fashion magazines. Everyone has different goals and everyone is working with different biology and a different environment. The concept of "productivity" seems to also be subject to various strange fads.

Even so, I would love to hear your recommendations.

Wednesday, September 07, 2016

Yet Another Blog Post on Industry vs. Academia

I recently had the following chat conversation with a Former Student about the possibility of doing a PhD in Computer Science*.

FS: What's the value of grad school if I don't want to stay in academia (other than "grad school might be fun")?
FS: There, I *think* that's the question I've been trying to ask
Me: Oh
Me: Enrichment
Me: You learn to think differently when you go so deep into one thing
Me: You also learn to execute
Me: It's very challenging to do a project start to finish
Me: Maybe I'll write a blog post for you
FS: That's a good reason, but it isn't something I haven't gotten in industry
FS: In fact actually I thought that one advantage of grad school would be that id get to do a more diverse set of things
FS: Than I do now

So here is the blog post in which I expand on my point and explain what I see as some skills one may develop more while doing a PhD** than working at a company. (I have this other "academia is fun" post about the PhD.)

Commitment. A defining characteristic of a good PhD thesis is that it solves a problem of sufficient scale and initial uncertainty ("a big enough research problem"). This usually involves commitment in at least two dimensions, time and emotion. Especially in non-theory areas of Computer Science, problems worth solving can take years before yielding satisfactory results. This kind of timeline seems quite different from what I've seen in industry. Committing to a research problem also means committing to uncertainty and faith that you will one day find a solution. This often involves believing in ideas that many other people don't believe in--in fact, Great Work is often met with initial disapproval. Learning how to become robust to other's lack of approval is useful for most of life. (And not something companies necessarily train you to do. In fact, it's in their best interest to train you for the opposite.)

Execution on open-ended problems. The point of having a company is to build a product that makes money. A product is more likely to make money if it actually works. Thus, in companies, a lot of the focus seems to be on getting the details right on things we already know we can build. The more time I've spent at a company, the better of an engineer I've become, and the better at Engineering Process. In research groups, much of the focus is on collecting evidence that you could build things you previously weren't sure could really exist. While engineering is certainly a useful skill here, more important skills include prototyping ability, and the ability to deal with significant uncertainty during the research process. (This is perhaps why research code so often does not meet engineers' standards.)

Self-direction. For many, the PhD involves long stretches of time working on one's own. (In the very least, the dissertation is a document that you are expected to write on your own.) Most advisors will not micromanage this time, especially in the later stages of a PhD. As a result, sooner or later PhD students will need to manage the relationship between work and time day-to-day and also month-to-month and even year-to-year. Though my industry internships have all been pretty self-directed, in which I was given a project and told to make as much progress as possible, I've been told this is not usually the case in companies. Self-direction makes you a more independent employee if you want to return to industry. On the one hand, people may feel comfortable giving you more responsibility. On the other hand, you may have trouble working for other people after getting used to working for yourself.

Emotional resilience. There are three parts of most (many? my?) PhD experience(s) that do not seem to be part of most industry experiences: 1) solitary work, 2) long periods of thinking without doing, and 3) long periods of doing without having much to show for it. This leads to many existential crises, as the emotionally difficult nature of the process causes one to Question Everything. I'd like to think that people emerge stronger from these existential crises. One of my college roommates has been getting a PhD in Comparative Literature and during our PhDs we often discussed how our research situations forced us to deal with questions about our values and goals, and how we felt that this process of questioning led to important emotional growth. The existential crises that a PhD exposes you to seem more similar to the experience of starting a company than that of being employed by one.

And on diversity of topics: in graduate school you will get breadth from classes, you will get to see a breadth of work in your field through reading papers, attending talks, and talking to other researchers, but depending on how your PhD is structured you may work on very few different projects. The Computer Science PhD provides a certain kind of intellectual breadth, rather than breadth of work.

I'd like to add that the "graduate school vs. industry" debate is like the "public school vs. private school" debate, or other debates that make no sense in a vacuum. Yes, in principle there are many ideological differences, but there are very applied research groups and very experimental industry groups. In practice, it really depends on the specific circumstances. Even so, one way to look at a PhD is as an investment into having greater access to experimental groups. There may be industry groups now that let you do out-there things, but without a PhD you rely on certain companies continuing to exist.

Anyway, as much as I would like said Former Student to do a PhD (and specifically with me :)) it really depends on FS's particular situation, hopes, and dreams. And since everyone's situation is different, I'm also curious to hear what others think they "get" out of a PhD (other than "fun," and the opportunity to continue on the academic track).

* I wrote this post with programming languages/systems research in mind. I'm curious how well it generalizes.
** What I say definitely applies for students in top CS PhD programs with advisors who give them certain kinds of freedom. I'm not sure how it applies to everyone else.

Saturday, June 25, 2016

Counter-Advice for the PhD

Recently I attended the Programming Languages Mentoring Workshop, a program to introduce advanced undergraduates and early-stage PhD students to research in general and research in our field. (By the way, this is a fantastic workshop and I highly encourage students to attend!) While listening to advice from other academics and talking to the students about their questions, I realized that I have come to disagree with much of the conventional wisdom and advice for PhD students, some of which I have been guilty of re-dispensing. I express my dissent here.

Clarification: The workshop was not the source of all of the quotes! It was simply what got me thinking about the dangers of taking any one piece of advice too seriously. (The workshop itself is great for showcasing different points of view.)

--

"To decide what to work on, read lots of papers and then choose the best problem."
One of my undergraduate professors once told me, "Take all advice with a grain of salt. Most advice is highlights and wishful thinking." This was one of the best pieces of advice anyone has ever given me. It is easy for people to give this kind of advice about choosing research problems after they have learned what makes a good research problem. The advice is far more difficult to follow for people who are still developing their research taste. While some people probably have chosen research problems this way and while it is helpful to more deeply understand your area, early-stage researchers sometimes just have to jump in, do things, and learn from the confusion.

Also, in the early stages of a PhD, developing research skills (project management, time management, and communication of results) can be far more important than working on the best problem. In this case, I would recommend working on a problem that a mentor is sufficiently invested in to help you gain the skills you need.

--

"Choose an advisor you are completely compatible with."
This advice goes in the same category as the previous one. Once you have gone through the PhD and developed a deep understanding of who you are and who your advisor is, it is easy to think that a good situation can be easily recreated or a bad situation could have been more easily avoided. While you should look enough into your soul and do enough due diligence to make sure there are no glaring red flags, you should not worry if you do not feel like you know enough about your working style or preferences to choose a perfectly compatible advisor. Advisor-advisee relationships, like all other human relationships, depend a lot on many factors, only some of which are under the control of the two main participants, and also can evolve quite a bit over time.

--

"Do a PhD because you are in love."
 I completely agree that doing a PhD out of love of learning, love of discovery, or love for a discipline is a much better reason than doing a PhD for the money, fame, or glory. But I've seen many students get stuck in the "passion trap," the idea that you need to be completely in love with something before you invest significant amounts of time and energy into it. According to Cal Newport, who has written extensively about this, passion is something that often comes later, after you have become an expert and people recognize you for your contributions.

What I have noticed is that people often differ more in the narratives they have about their relationships with their work than in their actual relationships with their work. In my Quora answer to the question "How common is it for PhD students to do work they are not passionate in?" I talk about how one's relationship with a project often follows a trajectory similar to a romantic relationship: infatuation, followed by a steady state that comes sometime later, often much later, with a period of confusion and negotiation in between. I've seen every researcher I know well experience the confusion phase, but some researchers are more open than others to talking about it.

A side observation is that relationships with research seem to vary culturally: for instance, being blanket positive about one's own research seems to go along with the American tendency to be blanket positive about one's own life.

--

"Superstars are born, not made."
No one has said this specific phrase to me, but many people have implied it with the qualities they value in students. Once a professor told me that some students "just can't cut it." I've seen professors pick favorites based on internal metrics they have (often, it seems, based on how much a student reminds them of themselves). I've seen students decide someone is the smartest among them because of confidence, or some other "star" quality that doesn't necessarily correlate directly with research skill. While there is a baseline level of intelligence, curiosity, drive, and tolerance for uncertainty that someone needs to be a good researcher, many of the qualities that make a great researcher--discipline and persistence, to name two--are not entirely innate and definitely not strongly correlated with the confidence and charisma that seem to build many star reputations. (Note: confidence and charisma can also be learned.)

--

"The PhD is lonely without a significant other, especially if you are a woman in a male-dominated field."
I was surprised that people have told me this--and that, at least when I was starting my PhD, there was a common conception that having a romantic partner was somehow necessary for enduring the trials of the PhD. While it is important to nurture healthy relationships with supportive people, a significant other does not need to be one of them. Especially in relationships between people of similar levels of ambition, it can become tricky to negotiate coevolution and colocation, thus adding unnecessary pressure to the PhD experience. (And, unfortunately, because of society's insistence on holding on to gender roles, women who date men often find themselves with more pressure to conform to their partner's desires.) During my PhD, I had many friends, some of them women in male-dominated fields, many who ended up becoming stars in their fields, who were happily single for significant portions of their PhD.

--

"The most successful PhD students work all the time."
See my answer (and other answers) to the Quora question "Do Ph.D. students have time for hobbies?" Nurturing a relationship with a significant other also counts as a hobby, so you can do that too if that's what you want.

--

"If it's not hard, it's not worth doing."
There is something to be said for only doing things that help you grow in some way, but there is necessary challenge and then there is unnecessary challenge. During the PhD, it is necessary to come to terms with uncertainty, confusion, and possible rejection of your ideas from the community. This is crucial for one's development into a full-fledged researcher. What is less necessary, however, is depriving yourself of food or sleep, always working to the point of exhaustion, or mismanaging your time so that you are always under deadline pressure. For some people it may be necessary to endure toxic advisor or collaborator relationships, but I would encourage those people to seek ways out of that if possible--abuse does not need to go hand-in-hand with growth. Self-inflicted struggle only makes the necessary struggle more difficult.

--

I hope you realize by now that there is no single right way to do the PhD and that there are many valid--and sometimes conflicting--views on what a good path is. Have fun with the confusion. :)

Friday, May 13, 2016

Networking Tips for Younger PhD Students

This post was a collaboration with Nadia Polikarpova and Shachar Itzhaky, done while we were supposed to be collaborating on other things.

A younger student in the group where I did my PhD is going to his first conference next week and my advisor sent him my way for advice. Nadia, Shachar, and I had already been discussing research (and attending a BBQ) for hours at this point, so we welcomed the opportunity to discuss something else. Here's what we came up with.
  • Be prepared to show off your research. A main goal of attending a conference is to get your name out there, associated with good work. At a conference, you'll be lucky to get more than five minutes in with someone, especially somebody established. It would serve you well to prepare a succinct, memorable elevator pitch for your work. If you have a demo, it doesn't hurt to have that ready in case someone wants to see. Bonus: if you can tailor your pitch based on the interests of who you're talking to, they'll like it more.
  • Make your networking bingo sheet--and play it. Make a list of people who you'd like to talk to: people about whose work you have questions, people whose work you cite/whose papers your read, people you'd like to tell about your work, and people whose work you admire in general. You may want to consult your advisor and/or collaborators for a good list. Having a list helps keep you on track for making the most of your time at the conference. I also like feeling like I'm on a mission.
  • Don't be afraid to ask for introductions. While most people in my community (programming languages) are pretty friendly, it can often be easier to talk to someone if you get introduced. Don't be afraid to ask people if they are able to introduce you to someone on your bingo sheet.
  • Don't sit with the same people twice. This is a conference, not vacation with your best friends. My former advisor Saman Amarasinghe liked to tell his PhD students to split up at all meals so they can meet new people. It's fine to have a friend you go around the conference with, but make sure you're talking to new people during each break and meal.
  • Prepare questions and talking points. When I was a first-year PhD student attending my first POPL, my friend Luke and I were so excited to see Xavier Leroy, one of our research heroes, standing by himself during the break that we ran up to him and introduced ourselves. As we had no further game plan, we answered the questions he asked us about who we were and then we ran away. At the next conference, PLDI, I was determined to do better. I asked his student, Jean-Baptiste, if I could have lunch with them on one of the days. I figured that since Jean-Baptiste was my friend, Xavier could become my friend by transitivity. The conference flew by and we ran out of lunches, but Jean-Baptiste said I was welcome to walk with them while Xavier fetched his suitcase and walked to get a cab. Again, I was very excited, but again, I had nothing to say and the conversation more or less consisted of me answering questions that Xavier politely asked me. Ever since, I've always made sure to prepare a couple of questions and/or talking points if I really want to talk to someone. It also doesn't hurt to prepare a couple of general stories/talking points to break the ice when you sit at that lunch table full of people you don't know.
  • Listen more than you talk. It is well known that Level 1 networking for graduate students involves ambushing innocent passers-by with a well-rehearsed elevator pitch. While this more or less does the job, there are greater heights to aspire to. The next level involves listening to and interacting with the other person. In How to Win Friends and Influence People, Dale Carnegie talks about how much more people like you if you let them talk first and figure out what they want to talk about. This is also true in research settings. I, for one, tend to be much more impressed with someone if they can ask insightful questions/offer useful suggestions about my work than if they simply presented to me interesting ideas about their own work.
  • Dress appropriately. Dressing appropriately increases one's efficacy in all situations and conferences are no different. Your main fashion goals at a conference are 1) not to stand out too much, 2) to be sufficiently mobile to move between groups and between the conference venue and evening activities, and 3) to be sufficiently comfortable that you can last from the morning until late at night. For 2), make sure your backpack isn't too big and you don't have too much stuff but have your jacket/comfortable shoes if you're going to head out with a group for dinner and/or drinks.
  • Carry a notebook. If you're doing it right, you'll be having lots of conversations. It will be useful to write down things you learn and things to follow up on. Notebooks are also useful for drawing figures to describe your research.
  • Always wear your nametag. People are going to remember who you are a lot better if they see your name every time they look at you.
  • Mind your manners. You want people to remember you for your research without being distracted by poor manners. It's a good idea to be careful not to interrupt people and not to make a mess when you eat. I also try not to make too big of a deal out of my dietary restrictions when we're making decisions about where to eat. It makes it a lot easier, especially in large groups, if you try to be agreeable and go with the flow.
Finally, have fun. Conferences have helped me solidify friendships with many people in my research area. Especially as you spend more time in a community, conferences can become more like a family reunion than a serious networking event with faceless paper authors.

As always, let us know if you have other tips!

Thursday, March 17, 2016

What The Bachelor Teaches Us About Choosing a PhD Advisor

This post was an experiment in simultaneous co-writing with Claire Le Goues, fellow CMU Computer Science professor, fellow undergraduate alumna of advisor Greg Morrisett from the time he was at Harvard University, and fellow reality TV enthusiast.

--

In academia, many PhD students are lucky enough to receive offers of admission from several different programs, and thus the opportunity to work with a handful of different advisors. During the decision-making process, the prospective advisors engage in Skype calls and often a recruitment open house filled with meetings and fun social events to compete for the favor of each PhD student. The end goal is the PhD student’s decision to work with the advisor.

 A couple of months is a short time to decide to be someone’s student for up to ten years. Especially when you only see each person briefly--and at their best. Especially when you’re trying to make a decision between so many people. Especially when you might not even be sure what you want. Especially when you’re tired from all the travel.

That’s right: the PhD student recruitment process is like The Bachelor.* On the popular reality show The Bachelor, a couple dozen eligible bachelorettes go on dates around the world over the course of twelve weeks to compete for the “final rose,” usually accompanied by a proposal of marriage, from the protagonist bachelor. In our world, the PhD student is the protagonist, and the potential advisers are the bachelorettes. (For those concerned about the gender asymmetry: there is also an inverse show, The Bachelorette.**)

It is not surprising that both on The Bachelor and in PhD-land, there are mistakes. On the 14th season of The Bachelor, Jake Pavelka famously chose Vienna Girardi despite the warnings of all other contestants. While Jake saw only the fun side of Vienna, the other contestants saw how self-centered and unpleasant she could really be. Many contestants were sent home for trying to warn Jake that Vienna “may not be here for the right reasons.” Similarly, on the 16th season, Ben Flajnik was so dazzled by Courtney Robertson’s beauty that he dismissed all hints that she was “different in the house than she is with you.” Viewers across America watched as Courtney charmed Ben while bullying the other contestants, telling them that she was “not here to make friends.”

It is interesting that both on The Bachelor and in academia, the multiple suitors often have access to information that the protagonist does not. The suitors all live together and interact with one another without the protagonist; professors are part of a wide social/professional network and often know one another from graduate school, conferences, and the like. In both cases, however, the person in a position of choice has plenty of reason to doubt the motivations of one suitor saying something negative about another.

Indeed, the smart suitors typically avoid saying negative things about competitors, as doing so typically results in a swift diminishment of their own prospects. Similarly, you will not hear much that is negative from your potential advisors during the PhD recruitment process. All other potential advisors are “brilliant researchers” who “do great work.” But if there’s anything we can learn from The Bachelor, it’s that it pays to pay attention to red flags. There is no such thing as an abusive advisor, only an “incompatible advising style.” The advisor who requires students to work weekends becomes “hands-on”, or someone who “drives students hard.” The advisor who only pays attention to students after they’ve proven themselves becomes “hands-off.” The advisor who barely pays any attention at all to students becomes someone who “gives students a lot of freedom to find themselves.” These ways of describing potential advisors can certainly be confusing. On the one hand, a potential advisor and their students may not have the potential student’s best interests in mind. On the other hand, potentially coded words may actually be the truth.

Fortunately, a key difference between PhD recruitment and The Bachelor is that PhD students are allowed to talk to whomever they want about potential advisors. This means they can talk to current students (which may be like talking to the family of potential bachelorettes in that they have a conflict of interest), graduated students, and former students who ended the advisor-advisee relationship before or without graduating. Though the tabloids do not cover prematurely terminated advisor-advisee relationships the way they covered the breakups of Jake and Vienna or Ben and Courtney, it is possible--and often very productive--to find out about these situations if you ask around. (We also strongly recommend asking a trusted mentor for what should be considered a red flag in a potential advising situation--there are more than we can list!)

When doing due diligence, it’s helpful to ask for concrete facts. How was Ben Flajnik supposed to know that “one way with you, but another way in the house” really meant “Courtney walks past us creepily when we’re having fun and berates us?” Besides, one person’s nightmare might be another person’s ideal. Maybe Ben wants a partner to do these kinds of activities with. (Though apparently not, since he broke things off with Courtney after watching footage of his season.) Similarly, when asking about potential advisors, it is helpful to know whether “hands-on” means “they give me guidance whenever I want it” or “they check in every day” or “they require me to work weekends whether I like it or not.” Daily checkins might be perfect for one student and terrible for another. Asking concretely about requirements and availability can go a long way in resolving possible confusion. Plus, concrete details are much more difficult to fabricate believably.

It’s also important to trust, but verify. On the most recent season, Leah lied to Ben Higgins by saying that obvious frontrunner Lauren B was different in the house than with him. But Leah was the only person who said this, Lauren’s shocked reaction when confronted was very believable, and all other available evidence suggested that Lauren was as warm and friendly with the other women in the competition as she appeared to Ben. Ben sent Leah home and ultimately proposed to Lauren. The lesson is that if you do hear something negative about a potential advisor, asking them--or their students--directly about it, as well as observing the other evidence at hand, are good ways to see if the rumor is true.

We can also learn from Bachelor history that the success of the whirlwind matching process is not sufficient to ensure a successful future. The handful of successful bachelor couples probably succeeded because they actually dated/got to know each other after the final rose and before getting married. Similarly, it is helpful for PhD students to take as much time as they can within the parameters of their program before confirming an advisor. This may mean Skyping with the advisor after the open house or rotating with the advisor’s group before deciding to join. It is also important to remember that the final rose doesn’t determine your fate forever. Just as Jason Mesnick ended up marrying his second choice from The Bachelor season 13 after the show ended, many successful researchers switched advisors at least once during their PhDs***.

Finally, remember that JoJo could, after a couple of months, reflect on her unexpected breakup with Ben Higgins with detached but understanding affection and is now going on to star on her own season of The Bachelorette. Similarly, your potential but ultimately unsuccessful advisors will generally understand---even if not in the moment---that the process works in mysterious and unpredictable ways. Just like the Bachelor alums who are now friends in real life, feel free to approach and talk to your rejected advisers at conferences and in other settings, and consider collaborating with them in the future. After all, you already know you have interests in common.

* We consider this analogy uncreepy only because we do not actually advocate professors developing romantic relationships with their students.
** We acknowledge the problematic nature of The Bachelor/The Bachelorette along lines of heteronormativity, race, gender roles. But so many lessons.
*** Our undergraduate advisor Greg Morrisett has said that when he first went to Carnegie Mellon University, he thought he was going to work with a professor who ended up going to Brown. Then he wanted to work with another professor, who ultimately had too many students at the time to take on another. He worked for a while with a professor who did not ultimately end up advising his Ph.D. thesis. Greg did not end up with his final advisor until late in his graduate career. He has since had an illustrious, award-winning research career and is now the Dean of CIS at Cornell.

Friday, February 05, 2016

Computer Science PhD School Visits, Revisited

Here you are, PhD admissions letters in hand, trying to decide how best to spend the next n years of your life. Congratulations! The part of the process that is out of your control is over. The hard work is about to begin.

I previously wrote a couple of other blog posts (School Visits; Somes notes on picking grad schools/advisors) about the process of choosing schools and advisors. Now that I have the wisdom and authority of someone about to start a faculty position, here is some revised and reorganized advice.

This is a pretty high-level post. For more concrete advice, you may find it helpful to read my previous post or Neha Narula’s blog post on specific questions to ask.

What I Would Consider Now

If I had to make the decision again about where to go for a PhD, here’s how I would go about considering the decision, in order of most important to least.

Advisor fit. When I attended graduate student orientation, I was told that my relationship with my advisor was going to be my most important relationship for the next however many years. This was true. You’re going to graduate school to grow into the researcher you’re going to be and your advisor will be the primary person overseeing your growth. You are going to go through some tough times with your advisor, so you need to start out with enough goodwill and respect to make it through. As with a business partnership or long-term romantic relationship, you will want to consider the following things:
  • Compatible core values. Whether you like it or not, you’re going to pick up a lot from your advisor about how they are as a researcher, from the way they choose problems to the way they execute on problem to the way they walk and talk. It’s going to be a much easier growth process for you if you match on the same core values as your advisor, for instance how much you value formalism and how much you value impact. It is important to have compatible working styles. You’re going to do a lot of work with your advisor. It will really help if it’s not a battle every time you try to schedule a meeting or work towards a deadline. How hands-on is the advisor in managing the research process? How involved are they in the technical research? How involved are they in the paper-writing process? How much do they do things last minute, versus doing things early? How detail-oriented are they? How detail-oriented would they like you to be?
  • How much they care about you. When you are starting out, especially if you want a lot of attention, it is good to find an advisor who is excited about you. Excitement often doesn’t last throughout the course of a PhD, so for your long-term happiness it’s helpful to get an advisor who cares about your career development, even if your interests veered out of their comfort zone. Part of this has to do with how well your interests and skills match what the advisor is looking for. Part of this has to do with how open the advisor is to the ideas of others and part of this has to do with how much they care about students in general. You can get a sense of this by talking to them and also to people they work with.
  • "You marry the family." Especially if your advisor is more senior, you will spend more time with your groupmates and officemates from the department than with your advisor yourself. It is important to take this into account as part of the whole package.
Research area fit. You’re going to spend the most time talking to the people in your research area. They are the ones who will give you the most feedback on your choice in research problems and the way you go about solving them. The people in your research area will be who prepares you to communicate about and defend your research to the rest of the world. They are your team. You want to make sure you have one that will support you intellectually and otherwise in the ways you want. Also, it may turn out that you are not the best fit with your advisor. It is likely you’ll want to stay within the same area, so it’s good if you like the other professors in your area enough to be able to imagine working with some of them.

Department fit. Concretely, the requirements your department places on your PhD will affect your life. (How many courses do you have to take? How intense is the qual process? Are people in the department happy?) More abstractly, the department is your extended family. Presumably, you’re going to be friends with the other students in your department. Their research ideas and outlooks on life will influence your personal and professional development for the next few years. Also, you’re young: you might not stay forever in the research area that you discovered after taking a class with a charismatic professor your sophomore year. In case you decide your research area isn’t for you, it would be good to have the safety net of being in a department where you have the flexibility of moving around.

School fit. One of my favorite things about being in academia is about being embedded in a university. Being in a university means that you are surrounded by people passionate about intellectual and other pursuits. Each school has its own flavor and activities and it’s nice, if you are in a position to choose, to take this into consideration as well.

Lifestyle fit. Most people have things they like to do outside of work. By the time I was a senior undergraduate, I had spent so much of my time working I could not really imagine having hobbies again, but even I found space in my life for hobbies during my PhD. Each school will sell different lifestyle packages. Some schools are in cities. Some schools have good access to the outdoors. Some schools are in places where you could have an incredible quality of life (for a PhD student). Figure out what is important to you, whether the geographic location the school is in offers it, and whether the culture of the department and the resources (financial and otherwise) offered to you would allow you to achieve that lifestyle during your PhD years.

How I Would Consider Things

Here’s how I would go about making the decision given what I know now:
  • Don’t go with your feelings. Most professors don’t get to become professors without learning how to sell--themselves, their research, and whatever else they need to sell to achieve their professorly goals. This selling usually involves a nontrivial amount of manipulating people’s emotions to make them feel positively. That’s right. Professors are masters at making you feel whatever they want to make you feel. From this we can derive that professors are masters at making you feel you should go to their school and work with them. Therefore, it’s dangerous to trust your feelings. I recommend allowing feelings to settle for as long as possible after talking to any professor before you make a decision.
  • Talk to as many people as possible, especially people not invested in where you go. Many people are invested in you making a certain decision. Professors who are recruiting you want students--and like to win. Their students like validation that they chose the right advisor--and school. In general, people like to win. The more invested people are in your decision, the more they are going to be charming and make statements designed to make you feel more positively about a certain school or advisor.
  • Go to a place that feels different from where you are now. Many people have an attraction to what feels “safe.” To overcome this it’s often important to place more weight on the new and different so that you have more opportunities to grow.

What I Actually Did

My undergraduate professor Radhika Napgal says to take all advice with a grain of salt, since it’s largely highlights and wishful thinking. To support her point, here is what I actually did. :)

When I was a college senior, I valued fit in this order: lifestyle, school, department, research area, advisor. If you want to make your decisions based on how I made mine, here is what to do: Talk to some people. Get really excited that all these senior professors you had idolized are actually talking to you. Get overwhelmed with how many people are telling you different things. Avoid talking to people after that. Out of lack of other strong heuristics, eliminate schools based on the geographic preferences of your significant other at the time. Realize this was not the best heuristic after you and said significant other break up a year later. Allow multiple local professors to take you out to meals. Disregard the fact that you may feel more positively about their school because you have received gifts of food and time from them. Go with which school “feels” like the best fit.

Based on the decision-making process above, I ended up choosing MIT, even though it wasn’t the best research fit. Not realizing I had some agency in deciding who would be my advisor, I ended up getting assigned Mike Ernst and Saman Amarasinghe. Mike Ernst left for UW the week I arrived. Saman and I got along very well and I loved talking to him and getting life advice from him, but it wasn’t a great research fit. My PhD advisor, Armando Solar-Lezama, showed up to MIT November of my first year. His PhD advisor, Ras Bodik, had tried to recruit me to Berkeley but I told him I felt MIT was a better fit personality-wise, despite my preference for Berkeley-style projects. Ras quoted this back to me and told me to work with Armando. I became Armando’s first student. Saman and I still hang out. I attended his group meetings for years after I quit the group. Last summer he invited me to Singapore with him and got the Singaporean government to fly me business class both ways.

Things turned out all right for me, but I got pretty lucky. From my story you may take comfort in the fact that it is possible to remain alive and in research even after engaging in questionable decision-making processes. To avoid making my mistakes, however, you may also want to read about the time I almost accidentally joined a cult.

Parting Words

Remember to have fun! If it’s a hard decision, then don’t worry so much about it. You probably can’t go wrong. Try not to accidentally join any cults.

Also. If you’re reading this and CMU has admitted you, I’d love for you to join us. I love how collegial CMU is and the breadth and depth of its School of Computer Science. (How many other places have so much CS that it constitutes a School?) A graduate stipend goes a long way in Pittsburgh, which is becoming more hip every day. (I’ve long thought it’s the next Portland, even before others started saying so.) Programming languages at CMU is particularly great because we have the largest group at a university that I know of, with an incredible range from theory to practice. It’s particularly active now that they hired Jan Hoffmann, Matt Fredrikson, and me. And let’s talk about why I’m the best advisor for you. ;)

Thursday, April 11, 2013

On Choosing Between Good Schools

I have been talking to many people recently about choosing schools, both for undergraduate and graduate education. Here is a compilation and elaboration of what I have been saying. It is important to read the last point so you can appropriately discount this advice!

Note that this advice is for the last stages of the decision process. For some more substantive advice about doing the research to get to this point you may want to read my blog posts on school visits and choosing schools/advisors.
  • Don't assign yourself too much responsibility for deciding your life outcome. Do your research and all about what's good and bad and what's a good fit, but remember that there are many things out of your control. For undergrads: you might find that you are interested in completely different fields from what you expected. For grads: your advisor might transfer; you might transfer; you might decide to do research in an entirely different area; you might decide to drop out. It's good to plan but always remember that if you over-optimize for your current life plan while screwing yourself over with respect to all other possible futures, you're probably doing yourself a disservice.
  • Look at what people are showing rather than telling. It's easy to become convinced by schools telling you how great they are, especially according to metrics they have designed to make themselves look good. In addition, professors can be really awesome, but how great someone is on paper or during a short interaction is not necessarily indicative of how your life will be like working with them. Look at the senior students in a program and ask yourself and them whether they represent what you want. What resources have they had access to? What are they going to do with their lives? Are they happy? Are you impressed with how smart they seem? Are you impressed with the work they've done? Are you impressed with the people they have become? Ask about past students to help with extrapolation.
  • Go with what you're in love with. We are governed by our emotional selves. In some cases you will have a gut reaction. You should pay attention to that gut reaction. If you really want to be somewhere, even if can't put your finger on why, you will be fine doing more work (for instance, having a lower standard of living or taking on a heavier courseload) to make that happen. If you only like something on paper but can't become emotionally invested, it's going to be hard work.
  • If you're not in love with anything, then the choices probably aren't that different. If you've done the research and there are a bunch of choices that are the same to you, flip a coin (or roll an n-sided die). Yes, your future will be different based on the choice you make but in most cases there are multiple parallel universes in which you develop into different versions of yourself but are happy. At this point you're not going to screw up your life with any of the choices. It's about making a choice in such a way that you won't keep wondering what would have happened had you made another choice.
  • Nobody (reasonable) will hate you for not choosing them. This doesn't matter at all for undergrad, as you might expect, since nobody is really keeping track. As for grad school, I still keep in touch with many of the professors at schools where I didn't go: I am friends with many of them on Facebook and we say hi at conferences. I found my current advisor because I had talked to his advisor at Berkeley and ultimately decided not to go there because I liked the cultural fit of MIT better. (It helped that I communicated that I had decided go elsewhere for reasons of cultural fit rather than research fit.)
  • Beware of advice. A professor once told me once that during her assistant professorship she stopped taking advice because it was all "highlights and wishful thinking." People tell you a lot of things but you have to remember that our world views and value systems are different from yours. And before you know what you want it's useful to ask people what they would do, but remember it comes with the context of what they wish they had been told.
The important thing to remember is to have fun. Nothing is so important and life is all about what you make of it anyway.

Friday, December 21, 2012

On the Importance of Seemingly Useless Work

When I first started graduate school, an older student told me about the importance of maintaining a feeling of incremental progress. Even if you are doing seemingly useless work. This may be the best advice I ever received.

During grad school, I have found this "feeling of progress" at a macro level mostly in the non-academic parts of my life: in co-founding and seeing the growth of Graduate Women at MIT, in becoming a better, yogi, in developing deeper friendships, and in various channels of personal development.  Doing engineering on other people's research ideas during internship was also helpful.  Though it probably would have been nice to have more incremental results and feedback on my Ph.D. project (the first paper of which took three years to be published), this other progress gave me comfort that I had not been wasting my life.

Feeling progress is also powerful on a micro, day-to-day level.  The structured procrastination approach is a fantastic way of maintaining a feeling of progress.  (This essay quotes this other humorous essay by Robert Benchley here.)  The main idea is to allow yourself to do less urgent but also necessary tasks while procrastinating the task at hand: for instance, playing ping-pong with undergraduates (as part of attending to Resident Fellow duties) rather than finishing an essay.  Allowing yourself to do, and even prioritize, those tasks can make you more productive.

This all justifies my philosophy on work/life balance* (which is remarkably similar to my philosophy on eating): work when I want on what I want to work on**.  A lot of projects/tasks, personal and professional, fall into this category of "work."  Although I assign higher importance given to professional tasks and tasks with imminent deadlines, it is important to have non-urgent, non-professional items.  I have also begun assigning higher importance to tasks that easily yield high levels of progress-feeling: for instance, refactoring code and running errands.  Doing something because I want to do it, rather than because I feel like I need to, requires far less energy and discipline and also has a higher work-to-progress-feeling ratio.  (If something gets close enough to a deadline, however, I often suddenly desire very much to do it...)  This philosophy probably presupposes that I have a deep inner drive to work.  (Similar to my deep inner drive to eat.)

Progress is not so much a state of achievement but a state of mind.  I have to come to value and seek the feeling of progress as much as I do actual progress.  Not sure yet how much it is improving my output level, but it is certainly making me feel happier and more productive.

* We all know that the point of my blog is to validate my life choices.
** From a restricted set of permitted items.

Sunday, December 09, 2012

Treat Yo Self: Clean Up Your Code

A couple years ago, I discovered what I thought was the shortcut to building research systems.  Forget good software engineering practice!  Forget functional abstraction!  Copy-and-paste code all over the place; modify it to fit your needs.  Thinking before coding?  So college.  After all, premature optimization is the root of all evil.

In the beginning, this worked out well.  In my first year, even my advisor told me he was impressed with how quickly I got things working.  I saw in other research code the same patterns that I was learning to adopt: monstrous tangles of functionality with scant documentation.  I have found the secret to research productivity, I thought.

A couple deadlines later, I began to feel the consequences of my actions.  Pre-deadline, systems would begin to fall apart: a patch here revealed another hole there.  Post-deadline I had no desire to go back to disgusting soups of one-off functions, barely usable in the first place and certainly not reusable.  Much time was spent either avoiding my code or writing replacement code from scratch.

In other researchers, I observed that the few who had designed their systems well were able to make quick bug fixes and extensions.  For everyone else, either their code bit-rotted in obscurity or they were a slave to maintaining their systems for barely-satisfied users.  During paper deadlines, those who had built up good infrastructure could build comfortably on previous work while others ran around fighting fires and despairing.

During the course of grad school, my relationship with my code has become increasingly important.  Clean, modular, and well-documented code (with tests!) is not only less likely to have bugs but will be useful for longer.  Clean code provides a solid foundation for you and potentially other researchers.  Modular code makes it easier to reuse parts of your code. Also, knowing exactly what your code does just feels good.

On his blog, Harvard professor Michael Mitzenmacher advises graduate students to take a day every now and then to find better tools: for organizing papers read, for recording ideas and progress, etc.  Rewriting and refactoring code has become an important part of these activities for me.  Not only is refactoring useful, but it is also a relatively low-effort way to achieve a feeling of progress*.  For me, refactoring has become a treat for working hard.

Don't tell too many people now, but I think this is the real secret to research productivity.

* The importance of the feeling of progress is a topic worthy of its own blog post.

Sunday, November 25, 2012

On Productivity in Grad School

I was recently invited to be on a panel about being productive in graduate school.  This invitation surprised and flattered me.  I do not consider myself to be particularly productive as a graduate student: there are graduate students who have far higher-volume research output and/or greater publication count.  I also don't follow the productivity rules: I don't always remember to track my progress; I don't have a great way of organizing papers I read; I often work on what most catches my attention.  And I spend a good deal of time doing things that are not my research.

That said, I seem to be getting by decently well.  I am happy with the work I have been doing and my papers are in good venues.  When I am in a serious thinking or building mode, itemized goals are not always necessary.  Sure, being more organized about papers would help, but for many topics I am interested in I can give you a short bibliography off the top of my head.  High-level goals usually keep me focused and deadlines can make certain tasks seem pretty damn interesting.  Outside of research, I co-founded Graduate Women at MIT in 2009; we now have over 50 planning committee members running programs serving our over 1200 mailing list members.  This has taught me enormously useful lessons about collaborating with peers, managing people, and managing my time.  The time I spend traveling, doing yoga, and enjoying life with friends also contributes to my happiness and creativity.

Reflecting upon this, I realized that productivity looks different for everyone.  Unlike many people I consider productive, I find it difficult to make myself work.  If I want to work, nothing can stop me; if I don't want to work, then I am better off waiting until I want to work.  To want to work, I need to feel like I am working on something meaningful: technically interesting to me and potentially impactful to the world.  I also refuse to sacrifice a certain quality of life in favor of work: if some end goal requires me to work harder than I would like, then that goal is not for me.

For me, learning how to be productive was about understanding how to harness my motivation and focus it towards productive endeavors.  Below I elaborate on my "top five" strategies that I was asked to discuss at the panel.
  1. Figure out what drives you.  When I am uninspired, I can spend weeks pretty much running in place.  When I am inspired, it is scary what I can do in even one hour.  If you have experienced this, you will agree that the difference between inspired effort and uninspired effort is immense.  Some people are driven by a desire to understand something, others are driven by a desire to create something, and yet others are driven by more abstract goals: a desire to be influential; a desire to be "successful."  Many people are driven by imminent deadlines.  Knowing what you are going after and why you are doing it will make it easier to find those moments.
  2. Stay away from rat races.  Being in a position where you are constantly measuring yourself up to other people is exhausting and, in my opinion, inefficient.  Find your niche; make yourself irreplaceable.  This will give you the freedom to come up with ideas and work at a more leisurely pace.  Discover what topics and groups of people you have the most mutual "chemistry" with.  Figure out what you have that nobody else has--this can be a skill set or a deep interest in some topic.
  3. Learn the rules of the game.  Invest time in figuring out what matters, what doesn't matter, and the relative mileage about different things you can do to achieve your goals.  For instance, I have also been told that your top three papers matter more than how many papers you have.  I have also become increasingly aware of the importance of publicizing work via talks and personal meetings.  I now spend up to one month preparing a talk; if you told me as a young graduate student I would later be doing this, I would have found it preposterous. 
  4. Optimize your environment.  Take time to configure your programming environment, your bibliography collection tools, your way of recording ideas/research notes, etc.  Surround yourself with smart and productive people who motivate you to do good work.  Know the people in your network--a quick e-mail to an expert in a subarea can quickly point you to the most relevant reference materials, saving you days of paper-reading.  Similarly, being in an environment where you are discussing your ideas with peers you respect will make it easier to do innovative research.
  5. Take care of your body and mind.  Learn how to hack your body; one hour of work when you are on top of your game can be equivalent to hours of less high-quality work.  Eating, exercising, sleeping, taking breaks, spending time with friends, and meditating are the solutions to most problems.
A caveat is that this advice is best-suited for those similar to me: workaholics who prefer doing to thinking.  And of course, who knows how good this advice is, as I have yet to really prove myself.  As my own productivity is a work in progress, I welcome what advice you may have.

Related reading:  For those of you who struggle with traditional productivity advice, Structured Procrastination is a nice essay.

Sunday, November 11, 2012

Simple Advice for Being Effective in School

As a result of hijacking a few recitations in MIT's 6.005: Software Construction course to evangelize Scala, I have come into contact with numerous undergraduates.  Engaging with these students, I have realized how much more effective I could have been during college were I less focused on my work and more focused on things like showing up on time.  I have come up with the following list of things that go a surprisingly long way towards academic success.

  1. Show up.  It goes without saying that you miss a lot of things if you don't show up.  There is also a two-way thing.  If you don't get face time with an instructor, it does not matter how good you are.  They are not going to know who you are, they will probably feel less motivated to answer your questions, and they will probably not write you a recommendation letter.  (I am not important enough to have written many recommendation letters so I am extrapolating a bit on the last one.)
  2. Be on time.  During the first few minutes of a lecture/recitation/talk, many important things happen: there might be administrative announcements; there might be high-level motivation; there might be contextualizing facts.  If you show up late, it is more difficult to motivate yourself to pay attention and to follow what is going on.  You will often miss other things when you spend the whole time trying to catch up.
  3. Stay awake.  The more you are able to absorb directly from the person who is trying to convey information to you, the less unnecessary self-teaching and work you will have to do later.  If you are not able to stay awake in lecture, hack your body (get more sleep, drink more coffee, move your body before lecture) until you learn how to stay awake.
  4. Be present.  Focus on being in the classroom rather than surfing the web, doing other homework, or zoning out.  Paying attention, not just to the lecture/exercise but also to other students' responses, can save a lot of work.  I have noticed that students do a fair amount of unnecessary work because they did not listen to either verbal or written instructions or because they missed the answer to another student's clarifying question.  Getting enough sleep helps a lot.
  5. If in doubt, ask.  If you don't understand something, it could probably be explained to you better, either by the instructor or by another student.  Asking makes it more likely that you can get this explanation.  Also, instructors like to see effort.
  6. Be curious.  It is great to ask "what if" and "why" questions.  Instructors love this and they will remember you for it, as long as you are not being obnoxious.
  7. Find the motivation.  Knowing why you (personally) should learn the material will help you with 1-6.  Do not be afraid to ask the instructor what the current topics are good for in the real world and what mastering the current content can do for you.
  8. Don't be lazy.  Read instructions.  For programming classes: look up syntax and try things out with the compiler/interpreter.  Your TA might like to be there for you, but you are better off trying things on your own.  You will not always have a TA in the real world.
  9. Be nice.  How smart you are often matters less than how nice you are.  For instance, the instructor will be much more likely to answer your questions thoroughly if you are nice.  
  10. Be a commitment minimalist.  If you have so many classes and extracurricular activities that you are not able to accomplish 1-9, cut down.  Many people have told me that they would have gotten a superior college education had they had done less and focused on it more.
In summary: school is often not about how smart you are, but about how much you are participating as an engaged human being.

Saturday, October 27, 2012

How to Give a Talk Where I Stay Awake

I fall asleep during lectures. I have even fallen asleep during one-on-one meetings. While I am not proud of my poor attention span, it has made me think about what makes a speaker compelling. Here are some actionable items from my observations.

Develop rapport with your audience. If your audience can identify with you as a human being, they will have an easier time listening to you. There are many ways to establish rapport: for instance, by making eye contact, by making jokes, and by identifying things you have in common with the audience. Anecdotes--especially those from your struggle in coming up with the solution--are great. Treat the audience as potential supporters rather than potential detractors. Avoid being defensive.

Address your audience’s interests. In How to Win Friends and Influence People, Dale Carnegie says you should prioritize the other person’s desires and interests in conversation. For instance, the standard advice for technical talks is motivate the talk with respect to the questions the audience is interested in. There are also other dimensions of audience interest. For instance, some audiences may be interested in having everyone understanding all parts of a talk, whereas others may prefer talks with an obscure section that only a few experts understand. The interests need not be relevant to the topic at hand: for instance, internet kittens in addition to operating systems.

At least pretend you are having a two-way conversation. Speak at a reasonable pace.  Make eye contact.  Pause before and after the important points to give the audience time to process. The most engaging talks I have seen involve the audience without derailing the talk. This is done through asking questions the audience already knows, asking the audience to solve small problems, or asking the audience for questions. Strategically injecting opportunities for audience questions is the most lightweight way of achieving this. Skilled speakers may even moderate some amount of discussion.

Keep things interesting. Give a talk you would want to attend. Entertain. Tell a good story. Make slides that someone would want to look at (as little text as possible, with text as large possible). Make a cool interactive demo. Be outrageous.

Convey passion. If even you do not feel strongly, why should we care? Show this by putting energy into your speaking and/or by saying why you find something interesting.

In summary: focus on what the audience wants to hear rather than what you want to say. This is easier to achieve if you are comfortable with what you want to say. Prepare well. It is not uncommon for among my peers to run through a 20-minute talk at least five times. Being comfortable with your talk allows you to focus on establishing a connection with the audience and paying attention to their needs.

I hope to take some of this advice in my upcoming lectures and talks. Perhaps then I will not have to resort to throwing candy at those who have fallen asleep.

Monday, October 22, 2012

FAQ: Applying to Graduate School for Computer Science

Over the years, I have gotten various e-mails asking me about what it is like to be a graduate student at MIT and how to apply.  I have compiled this list of frequently asked questions.

--

Q: What is the best school for studying computer science in the United States?  Where should I apply?
A: The top-ranked schools are MIT, Carnegie Mellon, Stanford, and Berkeley but the best school for you depends on many factors, including the area(s) you are interested in, the professor(s) you would work with, the size of the school, the size of the department, the location of the school, etc.  I would recommend applying to all schools you may be interested in and then talking to potential professors and their groups once you are admitted.

My personal notes from visit weekends at MIT, Carnegie Mellon, Stanford, Berkeley, University of Pennsylvania, and University of Washington can be found here.

--

Q: Can you tell me about the work in research group X?
A: The best way before applying to get a sense of what is current in group X is to look at the websites of the professors and  the graduate students.  The group itself may also have a website.  After you are admitted, you will have plenty of opportunity to talk with professors and students to determine what is the best fit, either through the visit weekend or over the phone.

--

Q: How much work is the Computer Science Ph.D. program at MIT?
A: The course requirements tend to be lighter than other Ph.D. programs: I had four required courses and two additional for a non-CS minor.  (They may be changing this.)  The focus is on your research: as long as your advisor thinks you are doing good work and a couple of other professors can confirm this, there is not too much bureaucracy to deal with.

As for research, you are technically expected to do at least 20 hours of work for your advisor and 20 hours for coursework/your own interests.  I would say the average student should expect to work 40-60 hours a week, depending on how well they use their time and how demanding their advisor is.  The number of expected hours varies by student and by group.  I work on average 40 hours a week if there is no deadline, 50 hours a week the month before a deadline, and 60 hours right before a deadline.  I would imagine the amount of work expected of MIT students is comparable to that at other top computer science Ph.D. programs.

My blog posts Reasons to Pursue a Ph.D. and The Life of an Academic, Explained may also give you insights as to what life at MIT may be like.

--

Q: Could you look over my personal statement?
A: Unless I know you personally, I probably do not have time to look over your statement.  Here is some good advice, most of which was given to me by others:

  • Your personal statement should be an answer to the question "why should we admit you and what would it be like to have you here?"  You should argue convincingly for the first point while also giving an idea of your research interests and research personality.
  • Someone should be able to read your statement quickly to answer the question above.  Reading the first sentence of each paragraph should give someone a pretty good idea of what your statement says.
  • Leave out unnecessary details from your statement, especially if someone can find those details on your resume.
  • Be as concise as possible.
  • Don't use excessively flowery language.
  • Start early and revise often.  Show your statement to anyone who will read it and ask for their feedback.
I have posted one of my personal statements here.


--

Q: What advice do you have for me on my resume?
A: Here is some good advice for resumes:

  • Try to be as concise as possible.  If you are applying straight from undergraduate, there is little reason why your resume should exceed one page.
  • Use action verbs, state your achievements clearly--all that standard advice.  People should be able to quickly be able to evaluate the contributions you made in each role.  I prefer having 2-3 bullet points per role to clearly communicate this.
  • Ask other people who have graduated from your institution and/or people you have worked with to look over your resume.  They will have the best idea of what people expect and how it will be evaluated.

--
This is one of my "applying to grad school" blog posts.

  1. Deciding to Apply
  2. Standardized Tests
  3. Fellowships
  4. Applications
  5. School Visits
  6. Some notes on picking grad schools/advisors
  7. FAQ: Applying to Graduate School for Computer Science
You may also be interested in these blog posts I have written:

Thursday, December 29, 2011

Reasons to Pursue a Ph.D.

Several months ago, I spoke with a former schoolmate who is considering whether to leave Google to pursue a Ph.D. Since I like to believe I make good decisions, I immediately gave a rundown of the pros. As a responsible advice-giver, I initiated the same conversation between the schoolmate and a Ph.D. graduate whom I know to be actively against recommending graduate school. Surprised I could agree with so many of the cons, I reevaluated my stance and again convinced myself that graduate school is worthwhile. I discuss the reasons in this post.

There are many reasons not to go to graduate school. If you are in computer science, your income will be about a quarter of your market value. (There will also be no onsite massages or free dry cleaning.) You will probably be working on problems that are difficult to explain to your friends and family. You may not see positive results for months, even years. Even if you get results, your work may not have impact on the greater society for years—maybe never. Nobody will understand you or your work, including your fellow graduate students, who will often be unhappy. After you graduate, you will find that you did not need a Ph.D. for what you end up doing. And then you will cry.

Less hedonistic people will tell you to endure this suffering for longer-term goals: that faculty position, that job in science policy. As someone who believes in short-term pleasure, I have other reasons for recommending a Ph.D. While I would not mind becoming a rock-star professor, I am in graduate school for the freedom and for the opportunities. Graduate school is an all-you-can eat buffet for ideas and self-development. Rather than serving as a mercenary in implementing someone else's vision, I am paying (with opportunity cost and time) for the chance to solve open-ended problems of my choosing. In realizing the solutions, I can choose which skills to focus on developing: for instance, delivering a talk. In exploring questions, I have access to the experts in their fields. I can even call random companies to ask questions about their operations. (I have done this.) I also have access to almost every course at my university, as well as the library collection and academic journal subscriptions. As long as I can demonstrate progress on a potentially interesting problem, nobody complains. Even if I do not use my Ph.D. in my future career, it will have been a fun (and productive) few years.

The freedom and opportunities of graduate school also extend to lifestyle. Graduate school is conducive to a fabulous lifestyle—and I mean this seriously. Since entering graduate school I have become an avid yogi, explored aerial acrobatics, and co-founded Graduate Women at MIT, which now has over 800 mailing list members, two annual conferences, and a mentoring program. Since entering graduate school, I have traveled—for work and for pleasure—to Ireland, Canada, Germany, Serbia, Romania, Hungary, Austria, China, Belgium, Peru, and various US locations. I have a fantastic social network of fellow graduate students, many of whom have similarly rich life interests. (My officemate does bike racing; several friends do outdoors activities almost every weekend; another friend has had his own company for several years.) I am also in a book club called Whiskey and Words: we discuss literature over scotch. The flexibility and community of grad school have facilitated the exploration of my personal interests.

Before you get too envious, I should admit that graduate school is not always a party. With the freedom to choose what you work on comes with the possibility that what you work on may not be interesting valuable to anyone else. My first paper with my advisor was rejected five times over the course of two years before it was accepted to a major conference. I have spent months working on ideas and implementations that I will not ultimately show to the world. For the majority of my time in grad school, I have worked alone with my advisor or internship mentors. Fear not that I am some sort of happy freak: I have done my time in states of questioning, despair, and isolation. The struggle, however, has been part of the learning process: of developing my taste in research problems and of learning how to realize a high-level vision. It helps that I have a high risk tolerance and do not take myself that seriously—and that I have a sun lamp to augment the short days of Cambridge winter (made shorter by occasional deadline-driven visits to Samoan time*).

A caveat is that various logistical advantages have contributed to my positive experience. For my first three years, I was supported by a fellowship that gave me some flexibility and bargaining power. I have an advisor who works closely with me, believes in the work, and gives me a fair amount of freedom. (It also helps that he is an assistant professor who is, arguably, on a more demanding clock than I am.) I have also done a couple of internships at Microsoft Research that have helped me both establish additional credibility in my field and finance a more luxurious lifestyle. Not everyone has the advisor and/or funding situation that yields such freedom: it is important to ask the right questions to know what to expect.

If you like the freedom to work on open-ended questions, then graduate school may be a good fit. Pursuing a Ph.D. provides amazing opportunities not just to make an impact in your field, but also to develop life skills and to indulge in personal exploration. While there are tradeoffs (financial, time, and other), pursuing a Ph.D. is an experience I recommend**.

* Computer science conferences seem to have decided midnight Samoan time is the most fair time for paper submission cut-off.
** This is only based on the first 3.5 years of my Ph.D. We will see how I feel in a couple of years.