Saturday, February 20, 2016

On Wearing Clothes

The author, wearing some clothes.
A few years ago, we organized a professional wardrobe event (video here) as part of one of our Graduate Women at MIT fall conference events. We received a fair amount of criticism from people who felt that fashion was "frivolous" and such an event would tarnish the reputation of the group.

I see where this criticism is coming from, but fashion is far from frivolous--especially for women. Many people have told me that people should not care so much about clothes and only care about what's inside. Most of these people also believe that "not caring about clothes" is communicated by wearing a fairly specific uniform, for instance free t-shirts, non-form-fitting jeans, and very functional shoes. Such uniforms are often not available to women (see "fake geek girl"). In Why So Slow?, on why  psychologist Virginia Valian writes that while men often have a professional uniform available to help them blend in, women tend to be "marked" and stand out no matter what they wear. Especially since clothing serves as a powerful social signal, it's important for women to take charge of what they wear and communicate how they want to be seen. (Many others have written about this. Here's a nice piece.)

In short, it requires a lot of thought to be a woman wearing clothes. Especially since my post on dressing for academic interviews got a lot of interest and discussion, I thought it would be interesting to talk about the positions I've developed about wearing clothes, as a woman in a male-dominated field and in general.

Been building a uniform a button-down shirts and dark pants.
Embrace the uniform at work. Virginia Valian says there is no "uniform" for women, but this does not mean there cannot be a uniform. Adopting a uniform is a bit of a prisoner's dilemma for women: for any individual woman, putting in the effort to dress well and stand out provides benefits but keeps women as a whole in the clothing rat race. But if this fashion editor can wear the same outfit every day, then we should be able to embrace at least the personal uniform. (Friends have pointed out that there is a de facto "uniform" for PhD women in science: ballet flats, jeans, t-shirt, cardigan.) Life has become much easier for me once I picked five outfits to wear to work each week. Life will become even easier once I figure out the Ultimate Outfit to wear every day forever.

From my "boy" phase.
It's fine to look feminine. I see many women in STEM go through the "man" (or, more generously, "androgynous") phase. I've gone through it myself. You cut your hair. You start wearing baggy pants and t-shirts and dressing like a boy. While there's nothing wrong with this, it's also important to realize it is not necessary to do this. I started thinking about why I did this after a friend pointed out my "boy" phase coincided with a period of time in college when I was struggling with not being listened to and hypothesized my gender had something to do with it. With time, I learned that changing my communication patterns, refusing to be ignored, and establishing myself in other ways went a lot further than dressing like a man. (I wrote this fairly controversial piece on changing one's communication patterns for a male-dominated work environment.) Though I still like to dress somewhat androgynously to avoid standing out too much (and was advised to do this especially for first impressions), I'm much more comfortable looking not-like-a-man these days.


A surprisingly functional feminine not-for-work outfit.
Embrace functionality. Much of women's clothing is optimized for being looked at, rather than moving in. While it is certainly possible to wear this kind of clothing as a woman on the go, having shoes you are worried about falling off of and clothes you are worried will become not-clothes without sufficient supervision places a certain amount of cognitive load. Since I'm all about men and women having comparable amounts of cognitive load, here are the ways I've come up with for achieving more parity:
  • Take flats seriously. Many women are taught that heels are the norm and flats are just in-between shoes. I've spent a fair amount of time finding flats that are unapologetically the only shoes I will be wearing. I really like oxfords (I have this pair, this pair, and this pair) and John Fluevog's designs. (I'm wearing a pair of Fluevogs in the photo above. Women have stopped me in the street to ask about them, making references to their quests for functional shoes that look good.)  That said, I also have several pairs of heels I can run in. (I really like the brand Born for this purpose.)
  • Embrace pockets. Years ago, a close friend was dating a French billionaire male chauvinist who told her “All ladies must carry a purse.” Easily impressed by money and power, neither of us left the house without a purse for at least a year. One day I woke up and realized it was a lot of work to always have to think about what purse went with my outfit and also to then carry the purse, so I started carrying things in my pockets whenever I could. After carrying my ID, a credit card, and a couple of bills in my front pants pocket for a while, I got a thin wallet insert (by Steward/Stand) for holding my essentials. (For pants, Outlier is really good about pockets. Many standard designer brands, such as 7 for All Mankind, are as well. Also, my dress above has pockets! Check out my friend Elizabeth's Pocketist blog for more pockets.) Sometimes if I don't have pockets I will put my things in my boot or, less reliably, in this garter pocket I acquired for the purpose of holding my things. I highly recommend not being a lady and not carrying a purse.
  • Find outwear that actually serve its function. I spent years ogling the raincoats and winter coats of my male friends for how they looked good and actually worked before I found my own versions of coats that don't make me choose between form and function. I've mostly been finding functional items by non-technical brands, but I also have friends who have had success finding fashionable pieces by technical brands. I've spent a lot of time drooling over coats by Nau, designed for this niche, but I haven't yet talked myself into spending money on one.

Look ma, no purse!
Pay attention to range of motion. One time I was at a friend's for dinner when I noticed my friend Caroline behaving differently than normal. She seemed more relaxed--perhaps more confident. Towards the end of the dinner, Caroline explained that she had been trying to adopt more dominant body language. Studies have shown that dominant displays such as spreading one's legs communicate--and help establish--power. Caroline said that she had success with this new body language: at an interview, she had taken care to sit with her legs open and the interviewers kept commenting on how "confident" and "competent" she seemed. Since then, I have also become more conscious of my body language. In doing so, I have noticed how traditionally feminine clothing such as dresses and heels require women to sit and move in certain way. While the movements these clothing items encourage is often associated with femininity and feminine attractiveness, they are not associated with non-sexual forms of power. (It's a whole other long conversation why it's important to have forms of power outside of sexual power.) For these reasons it is important when choosing clothes to consider whether they will permit corporeal assertions of power.

In conclusion, solving the clothing problem is an important step towards gender equality. I once heard that gender equality is when women are allowed to be mediocre--that is, women don't have to be clear standouts to justify why they deserve to be doing something. For clothing, gender equality comes when women aren't "marked," when they can blend in whether they've spent time thinking about their clothes or not. Though we're further from this point than some might think, community thoughtfulness and good discussion can go a long way. Until then, it's important not to dismiss conversations about clothing, as they serve an important function in moving things forward.

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

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.

Saturday, January 03, 2015

Hello 2015!

When I was younger, I had no clue what it would be like to be in my 20s in the mid-2010s. I’d like to report that I never thought life would be so fun.

For me, 2014 was a year of growth. I did some things I’m proud of: supervised a Masters of Engineering thesis, published my first articles outside of my blog (for instance this Wired opinion piece), and started giving public talks about both computer science and technical privilege. I also started journaling again and have a better framework for reflecting on how I feel about my life. Here are some things I’ve been working on in the last year.
  • Building my personal community. Surrounding myself with like-minded people interested in similar things is important not only to my happiness, but also my personal growth. In the last couple of years, many of my friends have graduated and moved away. I’ve also moved on from actively contributing to building other communities, for instance Graduate Women at MIT. This has all left a bit of a lonely void, but it’s also given me a chance to think about how I want to focus my time—and social energy. I’ve been thinking about how my interests in computer science and technology fit in with my desire to more directly engage with and contribute to society. To explore this, I’ve been adding more people with writing, journalism, and civic participation interests to my personal community. I’ve also been exploring this through running NeuWrite Boston, a workshop for scientists and science writers. I feel incredibly grateful to learn from and grow with the brilliant fascinating people who are part of my world!
  • Taking breaks. After spending years trying to find work/life balance on a daily or weekly level, I’ve realized that I’m better at sprinting and resting than moving along at a consistent pace. (Also, in many cases, work/work balance is good enough for me.) Rather than limiting myself to 8-10 hour workdays I’ve given myself permission to go harder when I’m in the middle of something good. Afterward, rather than just pretending I haven’t overworked, I’ve also been more conscious about giving myself the appropriate amount of time to recover. As part of this, I experimented with taking longer—and different—breaks. I spent more time on beaches this year than I did in previous years. I also traveled for my longest consecutive block of time yet: following a conference in Edinburgh in the beginning of June, I traveled around until a friend’s June 28th wedding in Croatia. (Part of this was work/work balance, with research visits I had arranged.) When I came back I was shocked at how relaxed I felt--and about the new ideas I had formed about my life and work. (Sara Watson also wrote this fun article about what I learned about my Android phone.) Even though I'm taking longer "breaks," it doesn't seem like I've been getting less done--and I've been appreciating how changes of scene and pace has left me feeling more rested.
2015 is supposed to be a year of change: I’ve applied for Assistant Professor positions and I’m supposed to finish my PhD. Depending on how many interviews I get, this spring could get quite busy. By the end of the spring I will have made some decisions that constrain my life’s possibility space for the next few years—but it will still be a large space with many exciting things. I’m a bit nervous because I’ve seen other people I respect and admire struggle with this time in their lives, but I also have some great examples of people who managed to really enjoy their final years. Given all that’s about to happen, here are my resolutions for 2015:
  • Know my priorities and keep them in perspective. While it’s important to play the game to be able to keep working on the problems that I find most interesting and challenging, it seems all too easy to get consumed by the game. There are real pressures involved in obtaining and doing the job of an Assistant Professor: you may be familiar with the reported long hours and poor mental health of young academics. It will be important to remember why I want to be in academia in the first place: for the problems, for the people, and for the platform for improving access to computing—not necessarily for the prestige or for things that other people might want. It’s also important to remember what’s important to me about being a human as opposed to a disembodied virtual research-generating entity: my health (physical and mental) and my relationships with other people. Regular reflection is important for keeping all these priorities in perspective. Towards this I would like to meditate and journal at least once a week. Continuing to take the appropriate breaks will also help with this.
  • Embrace uncertainty—rather than fearing it. It feels comfortable and it feels safe to know that good things are going to happen. I spend a good amount of time wishing I could know what would happen. (Knowing where I’m going to be geographically is a big one.) On the flip side, it’s incredibly exciting not to know what is going to happen. In addition, I am lucky enough that nothing really bad is going to happen. In the words of my friend Alison, I know I’m going to have “a roof over my head and food to eat.” Even if I don’t end up getting something I want at the time, any outcome will provide opportunities for growth. Whenever I’m thinking about how I wish I knew what was going to happen, I would like to remember how exciting the possibilities are—and how they are all good. Keeping things in perspective will help. :)
Because people are more likely to achieve things if they publicly announce their intentions, I’ll also say some of the things I’d like to work on this next year. After finishing my thesis I’m excited to work on some of my future research ideas. I’d also like to keep reducing the gap between my professional and personal interests. I’d like to keep thinking about how my interest in programming languages can be combined with my interests in civic participation and social justice. (In this theme, Ari Rabkin and I are writing a piece for the first 2015 issue of Model View Culture about how social biases manifest as biases against programming languages.) Part of this involves thinking about how to make computing accessible to more people. I remain deeply interested in thinking about empowering people through the design and dissemination of programming languages as well as through promoting equal opportunity in computing.

Something I didn’t always realize was that rather than becoming your Final Self at some point, you keep growing—and if this is something important to you, you can get exponentially better at it every year. I’m liking my Current Self better and better every year. I can’t wait to see how we grow in 2015!

Sunday, October 05, 2014

Technical Privilege Reading List

People have been asking about the books I mentioned during last Friday's Challenging Technical Privilege Symposium at MIT. (The symposium was fantastic. So many people came and asked great questions. The video should be up soon!) Below I list the books I mentioned, along with some other books for people interested in the topic. Enjoy. (These are heavy topics, but these books are well-written, engaging, and provide actionable solutions.)

Essential Reading
  • The Curse of the Good Girl (Rachel Simmons, 2010). About how we socialize girls to self-censor. An important read for parents and educators of girls, and also for everyone else to understand why women behave more conservatively than men. (The question of whether this is a "curse" is up for discussion, but it certainly holds women back in a man's world.)
  • Talking from 9 to 5: Women and Men at Work (Deborah Tannen, 2001). Georgetown sociolinguist talks about the "cultural" differences between the way men and women speak and how this affects workplace dynamics--and evaluations. She observes, for instance, that men aim to achieve dominance in conversations, while women aim to prevent their conversation partner from being subordinate. Men assert facts; women give compliments. Because of these dynamics, observers will agree that men "win" workplace conversations.
  • Unlocking the Clubhouse (Jane Margolis and Alan Fisher, 2003). Talks about the authors' research about why women tended to shy away from studying computer science and why women leave. They give concrete explanations for how women are socialized to have less interest: for instance, in families the computer will much more likely be in a son's room than a daughter's room. They also talk about phenomena such as how women cite poor performance as the reason they leave computer science, but in fact they are doing better than men who stay. (Curse of the Good Girl!)
  • Why So Slow? The Advancement of Women (Virginia Valian, 1999). I learned so much from this book! It is full of useful facts and explanations. Psychology professor Valian talks about studies that show there is bias against women: for instance, when people are shown resumes with women's names, the resumes need 1.5x the achievements to be assigned the same title. She talks about everything from work to clothing (how men have a uniform whereas all women are "marked") to physical traits (hypermasculinity is associated with competence, whereas hyperfemininity is associated with incompetence) to misconceptions about gender and emotional stability (people talk about women's monthly cycles, but men have both a daily and a yearly cycle). Understanding these gender biases and difference is an important first step towards improvement.

Other Reading

A related thing I also mentioned is the Representation Project's movie The Mask You Live In, coming out in 2015, about American constructions of masculinity and how it's limiting to men. I highly recommend watching the trailer!

Sunday, September 21, 2014

Some Cooking Updates from the Kitchen-Field

I've been making some slow and steady progress in expanding my cooking repertoire. I even got some plants to aid in cooking! Here are some reports from the kitchen-field (because there are plants now, see) covering the main advances. With thanks to Aliza Aufrichtig and Loris D'Antoni for their expertise and consultation.

Here are some things I've started keeping around my kitchen:
  • Ginger root. I use this with onion or garlic as a base flavoring in stir-fries. I also use it to make ginger lemon tea, which pretty much cures all ailments. (Lazy person's amendment to the recipe: just cut the ginger coarsely and cook it for a really long time instead of grating it.)
  • Dried shrimp. Great for various easy-ish Chinese gourd dishes, for instance bitter gourd and winter melon.
  • Sichuan peppercorns. These little numbing things are great for putting in stir-fries (at the beginning is when I do it), broths, and probably other things. You can use them whole or grind up them up to distribute the flavor.
  • Parsley. Okay, I was late to the party with this universal garnish. I've started getting it more and I even tried to have a parsley plant for a while. The plant didn't go well; Loris made me feel better about it by saying that parsley plants don't regenerate that much anyway. Loris told me about the trick of freezing parsley into ice trays so you have exactly the right amount to use later. (I am not that fancy; I freeze my parsley all together loosely in a container and then shake out a handful at a time.)
  • Basil. Late to the party on this one too obviously. I didn't start using it a lot until I tried having a basil plant, since I had trouble keeping fresh basil around. (This plant didn't go well either.) In preparation in harvesting all those leaves from my basil plant (that actually wilted before anticipated harvest), I bought a lot of basil from the store and practiced using it. I learned how to freeze it--a real innovation! I also invented a great snack: Greek yogurt, blueberries, honey, and BASIL.
  • Thyme. I only recently learned how to cook with thyme, but it seems to go great with tomato pasta sauces and meats. Loris tells me thyme is a good herb to have fresh in my kitchen, so I recently acquired a thyme plant. Fingers crossed that this plant lasts longer.
  • Turmeric, coriander, cumin, and various other Indian-related spices. (I got a masala dabba to hold them!) They're useful for Indian recipes, obviously. I've also started playing around with putting these spices into stir-fries in small amounts.
  • Thai fish sauce. This one is pretty pungent, but I've started using it to put on noodles (along with sesame oil) and also to flavor stir-fries. It look me a couple of days maybe to get used to the taste and smell, but I really like it now.
I've also started keeping around Sauvignon blanc or Gruner Veltiner (white wines) for the purpose of cooking pasta sauce. I've tried using it with vegetables as well (as well as capers with vegetables), but I haven't entirely gotten the hang of that yet.

Here are some favorite recipes that have proven to be easier than I anticipated:
Here are some snacks and other things I've recently invented:
  • Well, that snack with Greek yogurt, blueberries, honey, and basil.
  • This other snack that involves dicing up a pear or nectarine, heating it with maple syrup, and then adding a couple spoonfuls of Greek yogurt. Optional oatmeal makes it more cobbler-like.
  • This sauce for baked salmon with chopped up capers, parsley, basil, vinegar, and olive oil. Salt and pepper the salmon to your liking, bake at 350 degrees for 15ish minutes, and then put the sauce on.
Also food-related: coconut oil is great for maintaining bamboo cutting boards and sesame oil is a great hair and body moisturizer. Who knew? Jump on; it's trendy to use oils for everything now.

Thursday, September 18, 2014

Experiment: Daily GitHub Checkins

I've been doing a lot of relatively mindless but decently labor-intensive code-related work (colloquially known, especially in the brogrammer community, as "coding bitch work"). I've been building up some web-based case studies in my Jeeves programming language. I've also had to take over some student code. Taking over this code was particularly painful because of all the managerial regret I felt: regret about not having made them document better, about not having made them do more work. The takeover process has involved a lot of commenting, test-writing, and the occasional small extension to test that I really know What's Going On.

Anyway, to try to mitigate the pain of these various tasks, or to spread it out and prolong it, I've decided to break from my usual model of nothing-nothing-nothing-OMGdeadline and do a small task every day that I work (which, note, does not include all days), big enough to warrant a GitHub checkin. (For those on the outside, being a computer science PhD student, at least if you're me, involves a lot of paper-reading, talk-preparing, writing, thinking, and "thinking" in addition to coding.) I hypothesized that this would be good for me to make incremental progress on some things that just aren't fun to do, as well as improve the general documentation state and cleanliness of my code and tools. I get pretty obsessed with arbitrary routine, so it's worked out decently well so far. (Check me out.) This policy has definitely made me write some documentation and tests I otherwise would not have written. (Although my pseudo-officemate Joe would argue that this is not "real work.") I'll report on things after we hit "OMGdeadline" and let you know how well it worked.

In the spirit of doing things in smaller increments, I'm also making it a goal to do smaller blog posts instead of the Blog Essays (also see my profile on Medium) I've gotten into a habit of doing. I've dramatically curbed my email habit (I wrote a thing here), so maybe these more frequent blog checkins will give my pent-up words somewhere to go.

Thursday, May 15, 2014

Dual Booting Windows 8.1 and Ubuntu 14.04

It appears that Windows remains ahead in this operating systems arm race: dual booting with Linux has become even more difficult. Here are some updated instructions from the last time I dual booted, in an "idealized order" I have inferred through my various failures*.
  1. Shrink the size of your Windows partition and create a new simple partition for your Linux installation to go in. (More.)
  2. Get an Ubuntu image onto a DVD or a USB drive.
  3. Turn off Fast Boot in Windows. (More.) If you don't do this, your system is going to boot straight into Windows every time.
  4. Disable Secure Boot in your BIOS. (More.)
  5. Enable UEFI and disable Legacy Boot in your BIOS. (More.) I'm not sure why this has to happen, but my Ubuntu Boot-Repair kept failing until I did this.
  6. Boot from your image. (If you haven't turned off Fast Boot, you might discover that there are new ways of doing this in Windows 8.1. But you should have turned off Fast Boot.)
  7. Follow the instructions and install Linux onto the partition you've set aside for it.
  8. Run Boot-Repair to reinstall your GRUB.
After these many steps, you should be able to enjoy the pleasures of dual boot. Enjoy.

* I found this post to be quite a helpful resource during the process. Because I somehow still kept failing, I felt that my shorter summary may be helpful for people who, like me, thought they didn't need such a detailed step-by-step.