Why Attend Programming Conferences?
I'm sitting on a barely delayed1 train on my way back from PyCon '24 in Berlin. This was the second time I attended an industry/programming conference, after attending JupyterCon last year. This year I had to convince my manager to get the greenlight to go, so I thought I would write down my thoughts about why it's worth going to conferences and how I can convince my manager next year.
The most obvious argument some kind of impact that can be traced back to attending the conference. Maybe it led to some good recruitments, or maybe you met the maintainer of a core dependency that solved a recurring issue or you just discovered some package that solved an issue.
The above rarely2 happens it gives you a compelling argument to convince your manager it is not necessarily a reason for you to go. The main reason for me to go is to get inspired and to remember why you got into this in the first place. This year I heard about music composing in Python, live-coding of music at c-base, causal machine learning, how create beautiful printed media from Jupyter notebooks, using LLMs to analyse parliamentery debates, I heard about the Frisch-Waugh-Lovell theorem several times and the list goes on. It is also fun to talk to other people about everything that is going on. Whining together about issues we all face in our work is also fun. The price of all this is just three days of work, but I believe that the energy boost and inspiration more than makes up for it.
The second reason is that learn things that you most likely never would otherwise. Sure, I could watch similar (or the same) talks on youtube, but I probably wouldn't. When you attend a conference the default is to choose a talk. When you are at home or at work it is hard to find that time. I only sat out of one session this time, but only because it was full. This year I learnt about race conditions in Python. Sure, I've heard about before and learnt about it in university, but it is completely different to see race conditions and attacks that take advantage of them in a live demo. Now there is a small chance that I might detect this when reviewing code and it is less likely that I'll introduce them myself.
So far quite fuzzy, but I think it translates into two good arguments that you can use to convince your manager. The first argument frames it as a perk. If it is hard find and keep people then such a small perk might make people stay longer. For example, if you are anyway planning a change you might wait until after the conference. Another scenario is that you have other options and the other options to give you such a budget to go to conferences. This might be one of several smaller factors that pushes you to leave or to stay. If such a policy reduces churn by just a little bit it probably pays for itself as less churn means less time spent on hiring, interviewing and onboarding3.
The second argument is to focus on things you learnt and discovered in previous conferences4. Take the race condition tutorial. If I learnt this this might lower the chance that race conditions get introduced in my projects. If my newfound knowledge lowers the probability that this will happen, then the conference probably already paid for itself5. There is also a meta-argument here. If you argue in these terms you also show your manager that you care about business and think a bit further than using the latest framework or other kinds of resume-driven programming.
Are there any reasons not to go to conferences like this? At PyCon most talks focus on Python and the programming aspects of whatever topic is presented. This can often be the least challenging part of a project. In the end, most of my time is not spent coding, but on everything at the edges. The typical talk might be very handwavy about all the assumptions made about the stuff surrounding the system. This year, there were a lot of talks about LLMs, but none of the talks really adressed the problem of evaluating the systems. There are also softer talks, but none of them really stood out to me this year. In other words, don't expect to come back with clear solutions to existing problems, but rather inspired and with new knowledge, a bigger network and a long list of ideas.
Footnotes:
Just half an hour on a 4 hour journey. This is Deutsche Bahn. Not the Shinkansen.
Although I did learn the term "change point detection" this time, which would have been very helpful to know 5 years ago.
Although, if I'm honest I could see this reducing retention since there will be companies there that are hiring in addition to normal networking. If your manager has this fear you cannot do much. I would argue that taking away the perk due to fear of poaching… Someone suggested that your manager should send multiple employees since that can then report on each others activities.
So there is a bit of a cold start problem here if you don't haven't been to any conferences before.
Assume this knowledge means that any project I'm on has 1% less chance of introducing race condition vulnerabilities. If the probable cost of such a vulnerability is more than EUR 1,000,000 (reputational damage, ransomware etc.) then a one percent point reduction in the probability of such an event is worth EUR 10,000. In other words, my trip and salary is paid for.