Posted on October 3, 2018

Papers We Love Conf/Strange Loop 2018

This is my personal (loose) ranking of the talks I saw at PWLConf/Strange Loop this year.

My Favorite Talks

These are all the talks that I will recommend without any hesitation.

A rehabilitation of message-passing concurrency by Frank Pfenning. Ensuring your message-passing concurrency is safe by encoding the protocol in the type system…wow! This talk was extremely exciting and mindblowing to me–the Concurrent C0 language he wrote, that linear logic + session types correspond, etc….I loved it all. Professor Pfenning is a entertaining speaker with deep knowledge of his field, and it shows. I have a bunch of papers to try to wade through now…

Type-Driven Program Synthesis by Nadia Polikarpova. I was blown away by this talk. Perhaps someone in this research field wouldn’t find it all that surprising, but the examples generating sophisticated, useful programs using only specifications (a.k.a. type signatures incorporating refinement types) amazed me. This seems like such a promising and smart approach. I’ll add that Professor Polikarpova did a wonderful job of organizing her talk, and used some very smart visual explanations to make her points; I loved how she first illustrated the search space of all possible programs which could be generated using an image of a field of stars, then showed how reducing the set of programs simplifies the search–and illustrated this by “chopping out” sections of this star field image. I walked out of this talk feeling inspired and excited and like I really learned something. And it also made me want to dig into Liquid Haskell!

Shaping our children’s education in computing by Simon Peyton Jones. I didn’t think I cared that much, relatively speaking, about computer science education, and was lamenting the fact that SPJ wasn’t going to talk about some nerdy Haskell compiler details or something, but then by the end I was practically cheering and trying to figure out how I could contribute to organizations that do the kind of work he was promoting. He is an incredibly engaging and persuasive speaker, and his energy, curiosity, compassion, and dedication just leap out at you when he speaks. I’d go and see him give the same talk again just to see him present. Highly recommended.

Categories for the Working Hacker by Philip Wadler - this is a talk he’s given before, and I’d watched about half of it before seeing this one. But I wasn’t prepared for how well Professor Wadler can play a crowd, how silly and funny he is, and how simply he was able to illuminate a number of pretty deep concepts that I was roughly aware of, but through this talk developed a greater appreciation for. And the “surprise” at the end was both absurd and hilarious.

Towards Language Support for Distributed Systems by Heather Miller. Professor Miller has a breathless, fast-paced style which makes it feel like she’s trying to cram a tremendous amount of knowledge in the limited time she’s given…which is probably exactly what was going on. This was a dense talk that was kind of like a meta-survey of the field, including her own distributed systems research. It was quite fun and educational, although I’m going to have to go back and watch it again once the video is up because I’ve already forgotten most of the specific papers and authors she mentioned. She answered one of my questions too, which was cool (unfortunately, the answer was “I don’t know”).

Standards We Love by Heidi Khlaaf. I wasn’t sure what I was going to get in this talk, but it ended up being a whirlwhind guided tour through everything from the differences between academic and industry work in her field, an introduction to the specific standards that she has to contend with day-to-day, how she and her colleagues work around the fact that specifications often can take a decade or more to change while the industry moves along at a much faster clip…and more. Heidi is an engaging speaker with a fun presentation style, and the talk itself was a look into a world that I have never really considered before and may never get the chance to engage with again. Definitely worth checking out if this sounds at all interesting (read the description by the way…the talk title may be misleading).

A Little Taste of Dependent Types by David Christiansen. A fun talk, although I had to go to the bathroom about 2/3rds of the way through so unfortunately didn’t see the whole thing–I’ll be checking out the parts I missed when it shows up on YouTube, and I look forward to getting a copy of The Little Typer ASAP.

Other Talks I Attended

…where I list a collection of talks I either didn’t understand, didn’t agree with, didn’t pay attention to, or simply didn’t like. I can’t recommend them, but this doesn’t mean someone else wouldn’t.

Stable Fluids by Dan Piponi. This was the most disappointing talk for me, because Dan Piponi is a personal hero of mine–I’ve spent a lot of time on his blog absorbing Haskell and category theory knowledge, and he was a big reason I signed up for PWLConf in the first place–but I didn’t understand his talk! Leaving aside the fact that it was the end of the day and I was kind of exhausted, I simply don’t have the math background. It was inspiring though, in that it made me want to learn more and get better at math. And I also discovered Dan Piponi is from the U.K., which I found surprising (I thought he was from the U.S. for some reason). He is still my hero though, maybe even more so now that I know he is a super genius who has also worked for ILM, and has a bunch of blockbuster film CGI Special FX credits (I already knew he was a super genius to be clear).

“It’s Just Matrix Multiplication”: Notation for Weaving by Lea Albaugh. Okay I totally deserve all the blame for not being able to say more about this talk–I ended up getting caught up in something on my laptop early on, and so I was only half-paying attention throughout this talk. Even still the parts I did catch were super cool. Going to be one of the first I re-watch once the video is posted.

All the Languages Together by Amal Ahmed. I thought Professor Ahmed had a lot of cool, thought-provoking ideas to present, and I generally enjoyed the talk, but even though she stated that she was trying to avoid solving the language interoperability problem in a n^2 fashion, I don’t see how she’s going to avoid that with the approach she’s proposing…don’t you need a specific set of linking types (or implementation at least) for every language pair? Furthermore it seemed to me that the industry barriers are profound, and what she’s proposing is an all-or-nothing thing. That said, I’d be happy to be wrong, and the “linking types” idea is really pretty cool. Probably worth watching if it sounds at all interesting to you–you can decide for yourself if it’s quixotic or not.

Generating Music From Emotion (and other experiments) by Hannah Davis. This is another one that just didn’t work for me. I actually think Hannah was a good presenter, I just…don’t buy generative music as a thing, and every talk or installation I’ve seen has not convinced me otherwise (note: I used to work for the design and technology department at a design school, and I also just happened to study music, so I’ve seen a lot and I have rather complicated feelings about this topic).

Proof Theory Impressionism: Blurring the Curry-Howard Line by Dan Pittman. I actually forgot I saw this talk until I was looking over the sessions again. Whoops. I may try to check it out again, but I ended up feeling somewhat confused about what it was about and what he was doing. Some of that may be that I am simply ignorant of some concepts he was discussing, and without those prerequisites his talk was not as compelling.

The Future of the Grid: Policy, Technology, and Market Changes by Casey Canfield. I had to step away and missed the beginning of the talk, and then the part I did catch was Professor Canfield talking about blockchain and electricity utilities, and it was interesting but I think I have a blockchain…um, block. That aside, Prof. Canfield obviously knows her stuff and insofar as I was paying attention, seems like an engaging speaker.

Including Equity in Tech Work: A Quick, Paper-Based Guide by Ari Schlesinger. I really wanted to like this talk, but I found the central metaphor (which I couldn’t actually determine if Ari meant as a metaphor or not, to be honest), of UNIX-style modularity and how it is tied to disenfranchisement of people of color and others, to be hard to follow and dubious. I also wanted to hear more about her specific HCI research. And, quite frankly, Ari seemed very nervous, and that was distracting…but it happens to the best of us. All of that aside she introduced me to a lot of papers and books I want to check out now, so that was great. I hope she refines and practices the talk some more as I think there’s a core of something solid there, and more generally it’s a really important topic that doesn’t get nearly enough time at these sorts of conferences. I very much appreciate that the organizers invited her to talk.

Data Driven UIs, Incrementally by Yaron Minsky. For some reason I have not yet watched a talk by Yaron Minsky where I haven’t felt like he was talking down to me. That aside, while parts of this were interesting, and getting some more exposure to OCaml is always appreciated, I ended up feeling like this was long on ad-hoc, complicated type signatures and short on useful examples or theoretical backing. Also we more or less did this at Kira like five years ago but using Clojure data structures and React so maybe I’m just feeling a bit resentful that I never got to present on that work…

Contracts For Getting More Programs Less Wrong by Rob Simmons. He made a bunch of jokes early on about dependent types which suggested to me that he thought they were probably a better approach if you have access to them, and then proceeded to dig into Java-specific stuff which I was simply not that interested in, so I left early…I think my expectations for this talk were very different than the reality, and I don’t really think that’s Rob’s fault. Let’s chalk this one up to me not really reading the description all that carefully. Maybe still worth checking out for anyone interested in contract systems in Java.

You are a Program Synthesizer by James Koppel. This is the only talk I think I can say I actively disliked. I wrote up a bunch of reasons why before deciding that I don’t need to rain on anyone’s parade here…and maybe someone else will watch this later on and get something positive out of it. So let me just end by noting that I did really like how he thanked his dad (who was in the audience) at the end for supporting him and believing in him. That was really sweet.

Talks I heard were good but didn’t get to

I heard these were good from friends or people I met while I was there:

Talks I wanted to attend but I had to make some hard choices

Talks I only now noticed and I’m mad about it

Everything Else

In the end there were simply too many talks. I don’t know much about neural networks/machine learning/stats so I skipped talks around those subjects, and there were a bunch that I’m sure were interesting but just simply fell lower on the priority list. Which is to say, Strange Loop 2018 (+ PWLConf) was an amazing bounty of knowledge with a mindboggingly intense concentration of creativity and intelligence collected in one place. I am very glad I went, and I expect I’ll go again.