Here’s an anonymized question sent to me by a blog reader:

I’m a rising junior at [university], majoring in computer science and math.

I have recently made up my mind about going to grad school for PL and am trying to get as much experience as possible right now. I will be attending [PL-related summer school] in two weeks. I will also be TA’ing [university]’s Programming Languages course and working with a professor on a PL-related research project next term.

My question is, is there any reason why I might want not to apply for PLMW at ICFP 2018 this September, and instead, apply next year? I am guessing I can only attend once, but I am not sure about that either. What are some criteria that I should consider when choosing a specific PLMW? Can you help me make a decision?

“PLMW” refers to the Programming Languages Mentoring Workshop, a one-day workshop targeted at people who are in the beginning stages of a programming languages Ph.D. program, and at those who, like my correspondent, are looking into doing a Ph.D. in PL. The workshop is held several times a year in conjunction with POPL, PLDI, SPLASH, and ICFP, four of the biggest venues for programming languages research. PLMW has been running since 2012 (I attended the first two PLMWs when I was in grad school!), and it’s now become an established part of the PL grad school (or pre-grad-school) experience. There’s usually an all-star lineup of speakers, covering current topics in PL research as well as advice on how to navigate life as a Ph.D. student. There’s usually also a panel of “young”1 researchers talking about their Ph.D. experience; I got to be on one of these panels at POPL 2016.

Because the workshop is always held at a major PL conference on the day before the main conference program begins, it’s a great way for those who are new to the PL conference scene to ease into things – both in the sense that it introduces some technical material that will be useful for understanding the rest of the conference, and in the sense that it can help first-time attendees feel more connected socially. Plus, PLMW is more than a workshop – it’s also a scholarship program that will pay your way to attend the rest of the conference, including funds toward travel, lodging, and registration.

So, should you apply to attend PLMW? Yes, you should. But that brings us to my correspondent’s question: which PLMW should you go to?

First of all, you can go to more than one PLMW, but you can probably only get funding to go to one. Notice, for instance, that one of the criteria for scholarship eligibility for PLMW at ICFP ‘18 is “have not been funded by a prior PLMW”. (I got funded to go to PLMW twice when I was a grad student, but in those days, PLMW was still new, and the funding policy might have been tightened up since then.)

When should you go? If, like my correspondent, it’s your junior year of undergrad, you’ll probably be one of the youngest people at the conference, but that’s not necessarily a problem. It’ll still be an excellent learning opportunity. If you plan to apply to grad school during your senior year, consider going to PLMW that fall (or before), so you can have your PLMW experience to draw on when you’re applying.

Another criterion to consider is the conference at which the PLMW is held: POPL, PLDI, SPLASH, or ICFP. The content of PLMW itself might not be drastically different from one to the next, but the content of the main program of the conference will be somewhat different. At ICFP, things will be more geared toward functional programming; POPL will have more theory people; PLDI will have more hard-core language implementation people; and SPLASH will have a mix of systems, PL, and applications. But don’t make too much of these differences, and please liberally fill in air quotes around words like “functional programming”, “theory”, and “systems” that appear in the previous sentence. There’s actually a lot of overlap among all of these conferences, and all of them are good. It’s normal for a PL researcher to be a regular at more than one of them.

Consider location, too. For instance, ICFP is in St. Louis this fall and co-located with Strange Loop, so if you want to go to Strange Loop (or already have plans to go), then ICFP would be a good pick for your first PLMW. (If so, then hurry – scholarship applications are due tomorrow!) On the other hand, SPLASH is being held in Boston this fall, and Boston happens to be home to a lot of great places to study PL, so if you want to (for example) visit Northeastern or MIT while you’re in town for the conference, then PLMW at SPLASH 2018 might be a good pick. If you want to wait a little longer, there will certainly be a PLMW at POPL 2019, which is being held in Portugal – although if you’re coming from the US and you have a visa/citizenship situation that would complicate re-entry into the US, be mindful of that before you make your plans.

Good luck, and I look forward to seeing you at a SIGPLAN conference soon!

  1. I don’t like using the word “young” for these things; “junior” or “emerging” are a bit better.