I recently attended Strange Loop, which was the fourth (!) (and largest, by far) conference I attended this year. This is a quick blog post summarizing some thoughts I have about attending conferences.
I really like going to conferences.
Going to conferences has so much value for me. It’s a great way to
- become aware of what other people and organizations are working on
- understand challenges they’ve faced, mistakes they’ve made and what they’ve learnt from them
- meet people who share my interests and learn from them
- learn about something totally new! (those talks that make you think "wow, didn't even know that was a thing! and it is!" are the best)
It also gets me motivated to learn concepts/tools/etc mentioned in the talks. If a talk is delivered well, it gives you a small taste for a topic, and leaves you thinking “Wow, I totally want to learn more about this!” which is great, or it leaves you thinking “Hm, this is okay but not really my thing.” which is just as great and also important, because it helps you figure out what you want to learn. For example, at Strangeloop, I attended a talk on how time is tracked in distributed systems and when it ended, I felt like I simply had to know more. I attended another on persistent memory, which I found pretty interesting too, but I didn’t feel the need to learn more about it.
Which talks to go to (for multi-track conferences)?
StrangeLoop was the only multi-track conference I attended this year. There were so many good talks happening at the same time, it was just ridiculous. The fomo is real, and justified, so once you just accept you’ll miss some stuff, picking what you want to attend gets a little easier.
I like to attend two types of talks. The first (which is sort of “depth first”) is the kind that I feel are relevant to what I want to do with my life (career wise). I typically go into these talks with prior understanding of the topic. I treat those talks like classes--I take notes, I linger around after the talk to discuss it with the speaker and other attendees, and I look up the content mentioned in the talk later on. Examples of such talks at StrangeLoop were Keeping Time in Real Systems, Exactly Once Semantics in Kafka, Running a Distributed SQL Database, and The Promise and Pitfalls of Persistent memory.
The second (“breadth first”) is the kind that I’m tangentially interested in. So for me, these would be talks on AI, security, game development, software development processes, etc. I like these talks to be a little more high level (I probably wouldn’t find a statistics-heavy talk on AI to be very interesting, for example). I always look forward to these talks, because it makes me aware of so many other fields around me, and the latest work that people are doing in them. Talks like Explaining Black Box Predictions, Nadia Eghbal's keynote speech, Rebuilding The Cathedral, and Incident Insights from NASA, NTSB, and the CDC were very insightful and interesting and left me with a lot of food for thought on the future of machine learning, formalizing software development processes, and the future of open source. Having both types of talks means that I get to change up my level of focus (taking notes vs sitting back and just listening), and I get to learn new things in terms of both breadth and depth.
I have a total love/hate relationship with networking, as do all of us (I think). On one hand, conferences usually have sponsor booths where there’s a recruiter or two that you can talk to if you’re looking for a job. This is great, because it gets you an in with a company! Almost every interview I did last year was the result of such a 1:1 networking session. On the other hand, I feel like I can almost never be myself when I network with a recruiter. And behaving like who I think I want recruiters want me to be is exhausting. Looking at you, Grace Hopper 2015.
Here’s a rough outline of what I do now. This always changes depending on the recruiter and the company, but it’s nice to have a script.
- Get straight to the point. Why beat around the bush? You’re looking for a job, they’re looking for people who want jobs. I like to start with a hello, my name, and what I do. If I know something about the company’s engineering team (through a person that works there, a technical blog post they’ve written, etc), I usually bring that up because it gives us common ground.
- State your interests. This can be the type of employment you're looking for (remote vs non-remote), the city you want to work in, the type of engineering you want to do, etc. This has helped me get really efficient, because sometimes companies don’t take interns or aren’t hiring for infra roles and I can just move on :)
- Keep the ensuing conversation short. This benefits the recruiters (who want to meet as many people as possible), the people waiting in line behind you, and yourself, because it frees up time to do other things!
There is no “right” way to do a conference
The first time I attended a conference, I felt guilty if I sat out a workshop or talk, and anxious if I didn’t immediately find people to hang out with. Over time, I learnt to just sort of roll with the conference experience.
The first question to ask yourself is what you want out of a conference. It could be a job, opportunities to connect with other people in tech, or learning something new. It could be all of those things! I like to make a mental list of priorities. This helps when, say, I’m torn between skipping a talk and continuing a conversation with someone.
At Strange Loop, I kept to myself for my most part, preferring to focus my time on the talks, and limited socializing to conversation over lunch and breakfast. At BangBangCon and HelloCon, I skipped some of the talks to continue my conversations with some people and to explore Central Park. At RustConf, I tried to do it all: I attended every talk, took notes during some, and hung out with people during and after. At Grace Hopper last year, I didn’t go to any talks at all, and chose to focus on getting a summer job instead.
I like to watch conference talks online (sometimes)
So you can make the (very valid) argument that watching a talk online isn’t the same as actually attending it IRL. But after attending conferences, I’ve come to realize how much of a visual learner I am. I used to think that books and handwritten school notes are the way to go if I want to seriously learn something, but I’ve picked up some really good stuff—that I didn’t immediately forget—by simply listening to people talk. So if there’s a talk I couldn’t attend or didn’t fully understand the first time round, I like to take the time to watch recordings of the talks, if they exist.
I am lucky
I usually can’t afford to pay out of pocket to attend a conference, and I’ve been lucky to get funding from UW’s WiCS Committee and Math Endowment Fund, and external organizations such as Project Alloy and RustConf to attend them. It also helps that conferences like BangBangCon and HelloCon have very affordable tickets.
If you want to attend a conference, you can
- Apply for a scholarship, if you qualify!
- Do some research to see if there are some around where you live.
- Go to local meetups, which are a little more ubiquitous. I feel like a lot of the benefits that is gleaned from conferences can also be obtained by going to local meetups.
- Organize your own meetup/conference. Okay, so a little extreme, but what if there’s no conference around where you live and you feel like if there was, people would have stories to tell and experiences to share? It takes some effort, but I think it’s worth it :)