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. 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.

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. ;)

Friday, December 25, 2015

What to Wear for Academic Interviews, or How to Dress Like a Man Without Looking Like a Man

Wearing the Computer Science "uniform."
I first became aware of the problem when I took a female faculty interview candidate out to lunch a few years ago.

"Deciding what to wear to interviews is a real challenge," she had told me. "My advisor knows what the male faculty candidates should wear, but for me he had no clue."

Indeed, professional dress is a difficult problem for women, especially those in male-dominated fields. As psychologist Virginia Valian writes in Why So Slow?, men have a professional "uniform," but women are always "marked." While men's clothing is intended to help men blend in, women's clothing is intended to help women stand out.

Stands out in CS.
Unfortunately, standing out does not often help women in science careers. I have heard otherwise well-meaning male faculty members at MIT say the following about female candidates:

"She just doesn't... look like one of us."

"How can you take someone seriously when they are wearing heels?"

And so I came to understand that in order not to have my clothes jeopardize my chances of being taken seriously during my own interviews, I needed to forget how I was taught to "look professional" and instead solve a difficult constraint satisfaction problem. I needed to somehow achieve man-level blending in without looking like I was blatantly cross-dressing (which, I've been told, would also make me stand out). This was a particularly difficult problem for me because I am fairly particular about what is "my style" and my style is not particularly mainstream.

What an MIT professor typically looks like.
Towards solving this problem, I solicited some advice from my professors, who all happened to be male. The advice consisted of confusing heuristics for blending in with men:

"People should remember you, not your clothes."

"Never, under any circumstances, wear a skirt."

"Wear exactly what a man would, but the female version."

What I found more helpful was asking women who had been on the job market (thanks, Claire Le Goues, Raluca Ada Popa, and Franzi Roesner) what they wore. (To my relief, none of them told me to dress like a man--and in fact described outfits that sounded relatively feminine.) Claire taught me about the general idea of coordinated separates. Claire taught me that it's okay to repeat pants. Claire gave tips about modesty (nothing too form-fitting; avoid displaying skin). Claire alleviated many of my concerns by telling me it was all right to wear the "exact same outfit" for every interview. (Thanks, Claire, for being a more senior female academic in Computer Science and also my friend.)

At an event with AtlanticLIVE.
Keynoting a conference in Vegas.
Synthesizing advice from my female colleagues, the advice to dress "the way a man would," and my own fashion inclinations, I put together the following main interviewing outfit: gray blazer (Theory, acquired for under $50 at a thrift store and tailored for under $100), patterned button-down (Brooks Brothers, on sale for under $100--the pattern was also my "flair" item), black theory dress pants ($100ish from the Theory outlet, then tailored for $30ish), and black oxfords. (I had two pairs of oxfords, a beautiful pair by Donna Piu that I never broke in and a pair from Camper that I ended up wearing.) I particularly like oxfords because of how masculine they are. When I sent my groupmate Nadia a photo, she told me I looked like Doctor Who. I liked this outfit so much I continued wearing it for all speaking engagements, to the point when my mother offered to buy me a second shirt. (No shame in wearing the same outfit every day, Mom!)

Outfit is versatile; good also for cutting cake.
Following Claire's advice, for the second day of two-day interviews I wore a different button-down shirt with a sweater. Starting around this time, I have begun acquiring a collection of button-down shirts and pullover sweaters. I particularly like the men's section of Uniqlo; the men's section of J. Crew is pretty good too. I like buying men's clothes because it allows me to have clothes that fit me like the clothes of my male colleagues fit them. (In fact, I am pretty sure a male professor was wearing the exact same shirt as me at a retreat I went on.) I also have a couple of shirts and a cardigan from Everlane. (It's definitely not necessary to go as far as to buy exclusively men's clothing, but I found this to better suit my preferences.)

My other professional outfit.
In figuring out what to wear for interviews, I also acquired a more out-there outfit that I also wear for professional situations, but was never brave enough to wear for an interview. The outfit centers around a pair of black Rebecca Taylor pants that are what I consider to be a sartorial parody of men's suit pants (photo here). (I acquired them from Nordstrom Rack online for ~$100 and had them tailored for something under $100). I wear them with a loose-fitting silk button-down (I have one from Everlane and one from a thrift store from the 80s) and pointy John Fluevog flats. (The pants need to be paired with something more feminine than oxfords. John Fluevog is, by the way, a great shoe designer if you want interesting, functional shoes with an edge. Unfortunately, the shoes are usually a bit too aggressively stylish for a job interview.)

Looking professorly with my former professor.



Here's a summary of the main advice points:
  • What you wear matters.
  • Male mentors don't always give the most helpful fashion advice.
  • It's possible to wear clothes you like that are also professional, even if you are a woman.
Of course, there are more ideal worlds in which things are less gendered and/or people accept people who have different fashion orientations. (And one would hope that the dismissals of these women's appearance doesn't completely invalidate their professional achievements.) Until then, it remains a fun game for women in male-dominated fields to navigate the narrow space of fashion choices available to us. Would love to hear what other women do.

Sunday, December 13, 2015

My Minimal Travel Core

Traveling is an important part of being an academic. It's an incredible privilege to be able to go all over the world to places like Fredrick, Maryland*, where I am right now. Travel is also a difficult part of the job. Having to fly around and be immediately brilliant everywhere you land can be exhausting. In graduate school, I liked to think about conference and related travel as "practice" for the "real" job, when I would have to do the same thing at much higher frequency. In the eight-ish hours I spent after leaving my home before arriving at my hotel, I had some time to think about what I've learned.

During travel practice, I've come to see work-travel as a constraint optimization problem. Having a good work-travel experience is all about finding the minimal set of things I need to be happy away from home and satisfying those constraints given the other constraints imposed by having to fly and be away from home.  Finding a good minimal core may involve training yourself to have fewer constraints in general. (For instance, travel has become easier ever since I stopped using shampoo or face wash. But these are stories for another time.)

What I've learned is that for me, having a good time while traveling is all about ensuring that my body has as similar conditions as possible to when I'm home in terms of food, hydration, and activity. For sleeping, I also try to replicate my home sleep environment as much as possible. After much iteration, I have developed the following minimal core for traveling:
  1. Food. Ever since I realized how much eating at the right times improves my life, I  avoid going anywhere without carrying backup food. I usually have more than three meals a day, so I try to bring along 1-2 bars (my current favorite is Kind bars) and fruit. Trail Mix is also nice.
  2. Moisturizer. I used to take it as a given that flying is bad for your skin. Ever since I found the right moisturizers I realized this is not the case. My current system is to moisturize my face before short flights (I like Skoah's face kream) and to apply a light mask for longer flights (I like Skoah's hydradrew mask). What do you know, moisturizer combats plane-induced dryness the same way it combats any other kind of dryness. Moisturizing the body is also helpful.
  3. Exercise clothes. I've realized that I have a lot more trouble getting to sleep and staying asleep when I haven't been sufficiently active physically. I switched to minimal running shoes (I run with New Balance Minimuses) partly because they are easier to pack.
  4. Yoga mat. I purchased the super light, foldable Manduka travel mat when I was living in San Francisco one summer, needed a yoga mat, and was too cheap to buy the non-travel version. I've found this to be one of the best purchases I've ever made. I pretty much take it on every trip, including those that are only 1-2 nights. Even if I don't do a full yoga session, I usually spend some time stretching every day and this is nice for that. Stretching is especially useful if I've spent the day sitting on planes or in meetings.
  5. Lacrosse ball. My former massage therapist introduced me to the usefulness of lacrosse balls in working out knots. Especially if you wreck your body daily using computers, I highly recommend you try it--it's great. (For non-travel I've started using the Soma system, which I also recommend.)
  6. Eye cover and ear plugs. I always find these helpful, but if you are sensitive to noise but live in a quiet place you might find these useful for travel too. The eye cover is less important if you are staying in a hotel. (Light matters! My former roommate acquired blackout curtains after he observed the improvement in my sleeping-in abilities after my acquisition of good curtains.)
  7. Backup alarm clock. I've stopped traveling with this little guy as much, but I tend to get nervous that my phone will die and/or my poor knowledge of electronics will cause me to set my hotel clock wrong, so I feel better if I have a small battery-powered backup clock. This is the one I have.

Here are some other things I've learned over the years:
  • It helps to trick myself into drinking enough water. If I take long flights I'll buy a huge bottle of expensive airport water (and sometimes multiple bottles) to guilt myself into drinking it all. 
  • Temperature matters a lot while sleeping. I observed that temperature is the biggest external factor to negatively affect my sleep. It's not that hard to get the temperature right in a hotel room and can make a huge difference.
  • Hunger and fatigue are only feelings. Sure, hunger and fatigue are supposed to be useful signals, but they are less useful when we are yanking ourselves from one place on earth and zooming ourselves to places very far away. I've found it really helps to force myself to eat and/or exercise a sufficient amount before sleeping.
After reading this post, you may come to the same conclusion that my frequent travel companion Kate did after we had already taken several trips together: "Jean, you are secretly high maintenance, but you take care of yourself." I firmly believe that with the right amount of thought and iteration, even the pickiest of people can be as happy and functional while traveling as they are at home. Would love to hear about your minimal cores to explore this hypothesis!

* I told some of you I was going to Fredricksburg, Virginia. Was off by a few dozen miles, sorry.

Monday, November 30, 2015

What I Learned from Becoming A "Biologist"

Not what I do all day.
For those of you wondering what I'm doing this year, I'm a biologist now. By this I mean I now work in a Systems Biology group next to people who wear lab coats*. One time my officemate dressed me up in a lab coat. (See photo on left.) While I will follow up soon with a technical post, this post is about what I'm learning from being in an environment where I am not expected to be an expert.

In between my finishing my PhD in Computer Science and starting an Assistant Professor position, I negotiated a gap year. I had originally planned to spend the year visiting colleagues in Europe, but my PhD advisor convinced me to consider switching something other than my continent. "What about those applications of programming languages to biology you're always talking about?" he asked. For years, I had been fascinated with the emerging field of executable biology, where people use programs to model biological systems operationally (as opposed to denotationally using systems of equations). Now I finally had the chance to see what work I could contribute to the area.

So here I am, a member of the Fontana Lab. I had found Walter Fontana by asking a colleague for a list of all biologists in the world interested in executable biology. Prepared to relocate myself across the world for the love of science, I ended up moving my office less than six miles---but to a completely new environment. My former colleagues got excited about making it easier to prove software correct and build software that runs fast. My new colleagues are primarily interested in understanding biological mechanisms that underlie diseases such as cancer. While the work in understanding these biological mechanisms often looks like work in building better software--especially for me--the words my new colleagues use and the ways they approach problems are markedly different.

Here are some life facts that I forgot during my PhD that I am learning again:
  1. There is no shame in asking naive questions. When I first started working in the Fontana Lab, I was telling some molecular biologist friends about the goals of the lab. They asked a few questions and quickly reached the limits of my knowledge. "Maybe you should talk to us again once you've read Wikipedia," they teased. Given where I started, I have no pretensions. I show up to meetings and am not embarrassed to ask about anything from the premise of the work to the meaning of specific symbols. My questions occasionally lead to interesting discussions, thus motivating me to continue asking questions. This is a refreshing change from the end of my PhD, when I felt that there were many questions too embarrassing to ask as a supposed expert. I am no longer afraid!
  2. Nomenclature matters. My first few weeks, I furiously wrote down all words that were said in meetings, thinking to myself "OHMYGOD WILL IT BE LIKE THIS ALL YEAR" and then looking up all the words on Wikipedia for hours. One time I made a sample program for a biologist and he told me he had no clue what was going on. (The biologists out there might find this amusing: I called MEK a "site," Serine a "protein," and S222 a "kinase.") With his help, I renamed the data types with the correct identifiers and then the program made perfect sense. The other day, I was telling a couple of former groupmates about my current work when one of them said, "How do you know all of these words?" In Computer Science, I had been against using technical words when simpler ones were sufficient for explaining the concepts at hand. With biology, I have been forced to use technical words because there is simply too much complexity. From being forced to use nomenclature, I have learned that nomenclature 1) is efficient for communication, 2) builds trust by showing people you are one of them, and 3) is intimidating to people who don't know it. I now accept--and even embrace--the importance of nomenclature.
  3. Learning new things is energizing! When I started learning about the biological modelling space, I realized how easy it is to learn new things if I know nothing about a field. This is in contrast to the end of my PhD, when, saturated in the knowledge of my field, it felt very hard to learn anything that would rock my world. Now I'm excited to learn about even parts of my field that I didn't previously think interested me, for instance hybrid systems and stochastic model checking. It is so reinvigorating to learn at such a fast pace that I'm going to make a policy to continually learn new things. In fact, this learning experience has also motivated me to start learning French again. (I'm also in the middle of a French immersion experience due to how many French collaborators I now have.)
In short, this biological immersion experience provides quite a nice reset. Understanding the biological world is helping me feel more empowered to work within Computer Science as well as outside of it. I look forward to seeing what the remainder of the year will bring!

* Fear not: this is only for the year! I am not planning to abandon security and privacy. I describe my future research agenda here.

Monday, October 19, 2015

The Spam Filter Apocalypse

Spam filters almost prevented these gorgeous photo ops.
A few weeks ago, a friend and I were planning to go apple-picking when I noticed she was curiously silent in the group planning email thread. I texted her to inquire. She immediately texted back, "What thread?"

I forwarded her the thread and, after checking that it had included her, asked if perhaps the message had gotten caught in her spam filter. She said no.

The next day in the car, she revealed that the message had gotten caught not in her university spam filter, but in her Gmail spam filter.

This was troubling. University spam filters were widely known the usual culprit for missing emails. In university-land, the best excuse for failing to respond to an email is to say the message "somehow" got "stuck." Who knows what decade the technology was from? Who knows what kinds of dark corners there are, waiting to eat important work emails and social invitations alike?

Gmail, on the other hand, is another story. It is generally acknowledged to be the state of the art when it comes to spam filters. Occasionally I will check my "spam" folder to see what has gotten caught, but in general it does a good job. If Gmail spam filters were categorizing important social emails as spam, then surely it was beginning of the end.

A few months ago, I would have filed this as another piece of evidence that the Robot Apocalypse is not coming anytime soon. When Reddit founder Alexis Ohanian interviewed a couple of computer scientist friends and me for the Upvoted podcast, I had been surprised that he asked how afraid we should be about the Robot Apocalyse. We had all laughed and said that the current state of artificial intelligence is not sufficiently sophisticated to produce robots who will take over the world.

What I have been coming to realize, however, is that unsophisticated robots have already taken over the world. Tethered to our emails, we are at the mercy of the less glamorous, but no less scary, spambots and spam filters. On the way to apple-picking, my friends and I wondered whether it is possible to prevent someone from ever having their emails received again if everyone collectively spam-filtered them. It turns out this depends on the sophistication spam filtering algorithms. It should be terrifying that this is possible--and that this can seriously compromise someone's standard of living.

Fortunately, there are measures that prevent the current robot situation from being more apocalyptic. We more or less trust Google to live up to their promise to "do no evil." We have some degree of trust that if technology creators abused their power, regulators would step in and protect us. And, importantly, we still live in a culture where we give people the benefit of the doubt when technology seems to fail. Behind most important decisions there remains a human to make the final call.

When things become too dangerous is when we begin to trust the algorithms too much. In The Fires, Joe Flood describes how a liberal city government caused New York City's poorest neighborhoods to burn down in the 1970s. The well-meaning government placed trusted the algorithms of RAND corporation to fairly allocate resources. What ended up happening was that, in the poorest neighborhoods, infrastructure was not well maintained and insufficient firefighting resources were allocated. Buildings became prone to fire and firefighters were slow to respond. These algorithms, like humans, were biased. Because the government trusted so much in the algorithms, however, there was too little oversight for too long.

The way to prevent the full Spam Filter Apocalypse is to avoid giving the robots too much power. As consumers, we have the responsibility to educate ourselves about what our technology is doing, think critically about how it could affect our lives, and push back when algorithms are doing too much without oversight. Protecting ourselves is as much a social engineering problem as it is a technical one. It involves educating ourselves enough that, as a society we can establish policies, both informal "best practices" kind and ones that are legally enforced. A first step is to stop regarding the Robot Apocalypse as a nebulous inevitability and to start seeing it as something that is already happening, but whose trajectory we can control.

As software comes to run our lives, the Robot Apocalypse we should fear is not the one that comes about because the technology become too advanced. We should instead worry about what happens when we place too much trust in technology that is not quite ready for the task at hand. The Spam Filter Apocalypse is perhaps less glamorous than what the futurists of times past may have hoped, but it certainly is no less scary.

Tuesday, October 13, 2015

Work is (Not) a Four Letter Word

I recently finished reading comedian Mindy Kaling’s second memoir, Why Not Me? What I found most empowering was her openness about hard work.

In the book, Mindy is refreshingly honest about being a “workaholic.” In the Glamour excerpt of the book, Mindy cites hard work as the path to “killer confidence.” She writes, “...the truth is, I have never, ever, ever met a highly confident and successful person who is not what a movie would call a ‘workaholic.’” Mindy describes herself as a “vampire” following a daily routine consisting of 5am wakeups and days so long in the studio she never sees the sun.

Amidst this discussion, Mindy acknowledges that her honesty about work is in opposition to how we are socialized. She describes how we are taught to work hard until we finish school and then, all of the sudden, people seem to regard work as something harmful. We live in a society that values achievement but not the work required to get there.

Yes, Mindy Kaling. YES. I have long felt caught between pressures for my achievements to appear effortless yet well-deserved. This tension is particularly fraught because of the connection between work and social identity. To some people, I work “all the time”--and to only a subset of these is this a good thing. Others have asked me, “Do you ever work?”--some with admiration and some with disdain. Why is it that my attitude towards work seems to matter more than the work I produce?

Increasingly, narratives around work have become a means for reinforcing current structures of power. In Privilege: The Making of an Adolescent Elite, Shamus Khan writes about how attitudes towards work serve as a gatekeeping function for socioeconomic status. The elites, Khan writes, value hard work and appearing busy as a way of justifying their superior status. It is, however, important to maintain an air of effortlessness. True elites need not work.

Race plays a role in narratives of work. In his New York Magazine piece “Paper Tigers,” Wesley Yang writes about the phenomenon of Asian-American families placing a higher value on academic work--and thus schools requiring Asian students to, on average, score 140 points higher on the SAT for college admissions. Throughout their careers, Asian-Americans continue to be penalized for the perception that they are predisposed to be hard-working, facing the “bamboo ceiling.” Asian-Americans must work harder while maintaining the facade of effortlessness, lest they be labeled as one of the one who knows little else than hard work.

Unsurprisingly, narratives on work also have a gendered element. People have told me, “But you’re a woman. Don’t you want to have a family?” While men have the freedom to be “obsessive” like Judd Apatow or “cocky” like Jerry Seinfeld (okay, I have been reading a lot of comic memoirs), there are fewer equivalent roles for women. The hard-working woman is often vilified, portrayed as cold and distanced from the ones she could love. There is no doubt that this perceived incompatibility between being female and hard-working contributes to the glass ceiling. I have all the more respect for Mindy Kaling for being among the few celebrity women who talks openly about hard work.

In “Is Food the New Sex?," Mary Eberstadt argues that food has replaced sex as the dominant mechanism for maintaining social hierarchy. It is fitting that Mindy Kaling is as open about loving McDonald’s as she is about working hard. If we are to promote inclusiveness and equal opportunity, we need to talk openly about work--and be critical of our fascination with the narratives around work, rather than the work that is done.

Sunday, January 11, 2015

My Week at Hacker School

I first heard about Hacker School last summer. I had run into my friend Lindsey Kuper at a conference in Edinburgh. She told me that she had been a resident and that I should do it too.

"You’ll like it," she said. "I can put you in touch with the people.”

I like being told I'll like things--makes it so much easier to decide. I needed to finish my thesis and get a job, but I also like to say "yes" and deal with the consequences later. One "yes" led to another and I found myself booking travel and accommodations for a week in New York in November.

Since I was busy working on my thesis and getting a job, I did not try too hard to figure out what to expect. Plus I was told I would like it. I had opened a tab with the Hacker School website and skimmed Phil Guo’s blog post on his residency. When people asked me about it, I would say words like "immersive," "free," and "retreat for programmers" and then change the subject.

When the time came, I made my way to my Soho room and then to the address they had emailed me. The second-floor open office space of Hacker School was abuzz with all the chaos and excitement of the first day of summer camp. The beginning of my residency, they told me, coincided with the first day of a new "batch." Every six weeks, a group of new students begin their twelve-week Hacker School experience, joining a group of more seasoned Hacker Schools finishing their experience. Residents are given the unique opportunity to insert ourselves for one or two weeks at a time and observe the unfolding of this social experiment.

A hidden advantage of starting with a batch was that I was initially anonymous. After I acquired my key I took my place by the breakfast spread of pastries and fruit. My PhD has trained me well for standing next to free food: smile politely; introduce yourself; do not take too much food at once. The first person I met was student who had quit a math PhD program (which he had begun at an impressively young age, I later learned) and spent the last year programming and traveling the world. The second person I met was a student who started teaching herself Lisp while working in a bar. She had just quit her dog-walking business to do Hacker School.

After the fifth person it was time for orientation. Here I finally learned the key facts. While Hacker School has hours of being "in session," students and residents all have a key to the space at all hours. Outside of check-ins at 10am and weekly presentations on Thursdays, students are responsible for their Hacker School experiences. The students decide what they want to learn and how they want to go about it--the faculty are there only for guidance and check-ins. Hacker School differs from many of these other 12-week programs in that it is not focused on teaching a specific skill (unlike, for instance, the Ruby on Rails boot camps). In addition, there is a focus on learning skills (functional programming; cryptography) rather than completing specific projects. Some students have a project or direction in mind when they arrive, but many seem to just show up and see where the experience takes them. (You can read more about why they started Hacker School here.)

Orientation kicked off a fun and perspective-changing week. On the first day, I introduced myself, stated my interests (programming languages and functional programming among them), opened “office hours” and waited to see what would happen. I advised some people on learning Haskell and Scala--and also “paired” with them for periods of time. I talked to one student who had gotten into programming through activism and organizing (I later read online that he had been quite involved with Occupy Wall Street) and introduced him to a friend working with city data. After I gave talks about the history about programming and about my work, some people asked me about programming languages and also programming languages research (verification; static analysis). One morning by chance I sat next to a student, Pedro, and we struck up a collaboration to create the Markov Tweet generator that now powers @MarkovRMS. Pedro was eighteen, from Sao Paolo, and had the coolest development environment of anyone I'd ever met.

Pedro, Libby, Fernando and I had dim sum for lunch one day.
And Pedro was only one of many fascinating people I met that week. There were students who were teenagers and students in their fifties and sixties, with grown children. Some had not gone to college; other had PhDs--one woman had studied Computational Geometry and coauthored a paper with MIT professor Erik Demaine, one of the most well-known people in our field. Some people hoped to transition into a programming job: some from non-programming backgrounds and some from having taken breaks from programming to do startups focused on other things. (From the placement of alums, it seems that students are quite successful in getting the jobs they want.) Perhaps because Hacker School gives a second chance to people who have not been programming since birth, the program is far more diverse than the typical tech company.

At Hacker School I was impressed not just with the individual students, but with the community that Hacker School has created. The students are respectful and supportive of each other while working on problems together and also while doing social activities--of which there are many. One reason this is impressive is because tech and programming culture are infamous for being "macho," "aggressive," and unwelcome to women and other minorities. In addition, it is quite an achievement to create a safe environment when the students do not have the built-in trust that comes from having superficial similarities. While many companies leverage “like me” bias to build trust in their teams, the only thing Hacker Schoolers often have in common is a baseline level of programming ability and the fact that they have left their jobs, families, and friends to focus on programming.

Photo from alum Laura Bledait's blog.
While careful student selection accounts for part of the healthy community dynamics, Hacker School’s social rules play an important role in maintaining the safe environment:
  • No feigning surprise. This is when someone will say something like "I've never had sushi before" and someone else responds with, “Really? I didn’t know there were people like that.” This exchange makes the second person feels superior and the first person self-conscious.
  • No well-actuallys. A "well-actually" is when one person states a fact and someone else jumps in to correct the person on a minor technicality. Especially when people feel vulnerable and/or struggle with Impostor Syndrome, well-actuallys are much more harmful than they are productive.
  • No backseat driving. Nobody likes backseat drivers.
  • No subtle "isms." Hacker Schoolers are discouraged from engaging in sexism, racism, classicism, homophobia, etc. To avoid flame wars, people are also encouraged to take someone's word for it--without discussion--if they say an "ism" has occurred.
There is something to be said honest and open discussion and feedback, but these often require a level of trust and respect--both of which take time to build. Given that Hacker School brings together such a diverse group of people for such a short period of time, these rules are surprisingly effective in establishing an environment where people feel safe and supported.

The other aspect of Hacker School's culture that impressed me was how much the students were able to learn and produce despite the lack of curriculum or explicit goal structure. The weekly presentations--and job placement of the candidates--suggest that emphasizing learning and collaboration over specific projects and deadlines can be effective. I was amazed by the diversity and quality of the projects students showed during the weekly presentations. One guy had built an app that tells you where to get a cab based on previous cab pick-ups. Two students had built a simple web framework and then built some websites on top of it.  In addition to having fun work to show, it seemed like people had fun doing the projects in the first place.

The no-pressure atmosphere of Hacker School gave me the opportunity to finally try pair programming, a practice where one person does the typing and the other person reviews each line of code. To help with motivation and to prevent students from getting stuck, Hacker School encourages all students to "pair" on projects. Due to deadline pressure and perceived effectiveness of splitting up tasks my partner(s) and I had always agreed on interfaces and worked separately. With Pedro I discovered how productive it was to have two people look at code at the same time: for catching syntax errors, for finding deeper bugs, and for discussing how to construct the program. Working on code with someone else also allows you to finally have inside jokes about your code with someone besides yourself.

In short, Hacker School is a magical place. For those in a position to get involved, I highly recommend it. For everyone else, it's worth keeping up with what Hacker School is doing--how they are questioning our assumptions about how we learn and work. Hacker School showed me the value in being intentional about culture. It also showed me the value of taking time from my deadline-driven, task-driven life to learn--and play. Also, when I have my own research group, I am definitely going to encourage people to pair on programming and other projects.

Perhaps it was for the best that I did not try to understand what Hacker School was before I experienced it. There is nothing else quite like it. And it might be just what we need to build a more inclusive tech culture.