I wanted to write this article to distill any preconceived notion that you have to be an "expert" or "non-newbie" in order to get a lot of value from going to PyCon, the largest of the annual Python conferences. Along the way I want to use my personal experience to highlight some tips for success.
When I attended PyCon this past May, I had only been through about 20 pages of Matt Harrison's book Illustrated Guide to Python 3, three sections of Talk Python's JumpStart course, probably some PluralSight videos, and been scared off by the Collections' section of the #100DaysOfCode course on Talk Python. The phrase "bits and pieces" has never been a more appropriate descriptor.
I knew what a function was and about f-strings, but for all intents and purposes had a very basic level of knowledge with Python. I had yet to pip install anything or write my own class. Things like Github and virtual environments were like secret handshakes to a secret society that I knew nothing about.
And – you know what? I had an unbelievable, transformative experience. Part of it was luck – but not all of it.
My first Pycon
I arrived the night before the start of PyCon, which is buffered by two days of classes known as "tutorials". It was around 10:30, I had some work to do. Instead of toiling away in my hotel room, I went down to the lobby bar. When I arrived, there was someone with a Talk Python t-shirt. Turns out there is a high degree of correlation between people wearing Python-related garb in a hotel in downtown Cleveland at the beginning of May and conference PyCon attendees 😊.
We struck up a conversation over some drinks. He was a network engineer from Arkansas. I was a SQL developer from Texas. We both liked Python and a good drink. It was comradery at first sip. The next day, during a class break during the first day of Tutorials, I saw the same chap in a circle of people. Sam, the person who I met at the hotel bar the night before, could easily be spotted from a distance. He was about 6-foot-tall and with a clean-shaven noggin of a head, which served as my homing beacon in an otherwise crowded sea of people.
A fateful meeting
After I bumbled myself into the group of people, I recognized two of the individuals whom Sam was talking with. They were none other than the PyBites co-founders Julian and Bob themselves!!!! Even though I had barely used the PyBites website, I recognized their faces from their twitter profiles and knew of them from their podcast appearance on Talk Python earlier that year. To say I had a mini "Internet" celebrity freak-out was an understatement. Here I was meeting people whom I had heard on one of my favorite podcasts and who co-authored the #100DaysOfCode course on the Talk Python website. Certainly, that is not enough notoriety to get them on the cover of People magazine, but their story was very meaningful to me.
Later that same evening, a coworker who came with me to PyCon and myself joined Sam, Bob, Julian and Sam's boss for drinks later. That was just the start, I kept running into this same group of people over and over again. I even ended up helping Bob and Julian with their poster session for PyBites on Sunday. Poster sessions are a more informal, "show-and-tell" version of a talk at PyCon where you get to interact one-on-one with the "speaker".
Along the way, I volunteered at the conference registration desks, helped out both as a session chair and a session runner, for some of the PyCon talks, participated in the "hallway track" (more on that later), attended a live taping of the Python Bytes podcast, and, occasionally, sat in on some actual talks. None of these required that I knew what pip install, package management or magic methods meant. Most important of all, I had a freaking blast.
What's the Secret Sauce?
In looking back, what are the actions or habits that I took that are repeatable and less dumb luck? The main takeaway from my experience is that the best part of the conference and the part that:
- requires the least amount of technical knowledge, and
- is most unique to the live experience of PyCon are the interactions that take place and the connections that are made with other conference attendees.
Engage with other people
With about 3500 conference attendees, if you don't form a passable connection with the first 50 people that you meet, there are 3450 other cracks at the bat. The important thing is to give yourself chances to meet and engage with other people. This involves the following:
- Engaging in the "Hallway Track"
- Attending "Open Spaces"
- Spending time in the event space outside of where the talks are being held
The Hallway Track
The Hallway Track is the name given to everything outside of what's on the papered schedule. It is the conversations and chatter that occur "in the hallways". It is everything but the talks, open spaces, job fair, poster sessions, tutorials and keynotes. And it is critical to avail yourself to the Hallway Track as much as possible. Sit at a table with an open seat, walk up to a circle of people where there's an opening, say hi and strike up a conversation with as many strangers as possible.
Tip – Leaving a gap in a circle of people is called the "Pac-Man". The Pac-Man circle is highly encouraged by the Python community. Be sure to do the same thing if you find yourself in a circle of people. Closed circles give off the vibe of "members-only club" whereas a Pac-Man circle gives off the message of "come and join us if you like".
Most of those people will not turn into your best friends, but there's a better than not chance that you will find some common ground with a lot of them. Everyone at PyCon has at least some ground in that they have a personal or commercial interest in Python. You know what that means? There are some boilerplate, token questions than you can ask anyone:
- Where are you traveling from?
- How do you use Python in your studies or work?
- What sparked interested in learning Python?
In Python speak, think of it as an infinite loop where if you run into a conversation that feels flat or is not up your alley, just hit continue to start the loop again. The volume of people can be intimidating in certain respects but it also brings with it plenty of "freedom to fail". If a conversation falls flat or you say something embarrassing, chances are that person won't remember it anyway and you have plenty of other tokens to play at this game.
There is a plethora of opportunities to volunteer at PyCon, which is another natural way to rub shoulders and get an overall sense of being involved as part this big heaping event. Volunteer opportunities include helping out with registration, swag-bag stuffing, being a runner or session chair (introducing the speaker for a talk). There are also plenty of opportunities to volunteer. Almost every second of the conference schedule is littered with multiple time slots.
Attending Open Spaces
Open Spaces are small group breakout sessions that touch upon whatever the speaker or group of speakers want to discuss. These ranged from an open session on mental health to one on job interview prep to Microsoft demoing VS Code. It really has a feeling of being more book clubbish than something more structured. These are not recorded and provide another low-key way to rub shoulders and interact with others.
Tip – Often open invitations for late night social gatherings (e.g., bar hopping, card games) are listed on the same whiteboard that "purely" Python Open Spaces are. So don't think they are just for technical topics. Spending time in the event hall outside of where the talks are being held
The Event Hall
At PyCon there is an event hall where companies (e.g., Microsoft, Google, IBM) or content creators (e.g., Michael Kennedy from Talk Python, O'Reilly Media) will have booths set up. People at these booths are there for one of three main reasons: 1) to sell you a product, 2) convince you to use their software, or 3) to hire you.
Think of the event hall as retail shopping. You are not obligated to buy or commit to anything. But if something catches your attention, stop by, look around, and chat up the people staffing the booth. They are there to sell or advocate something to you, so most of the time the booth people are doing most of the talking.
My recommendation is to not overindulge on one specific outlet. Mixing and matching work best in my opinion. You may also prefer one option heavily over the other – but give the others a chance too. There is plenty of opportunity over the two days of tutorial session, and over the three days and four nights of the main conference to explore all of these above actions in a non-trivial manner.
You do not need to do 100% of what I have laid out in this post. But if you pony up the registration fee, hotel and travel costs only to avail yourself to a one-day early preview of content that will be on YouTube in the blink of an eye, you are wasting your time and money.
Go to PyCon for the people and the enjoy the moments that cannot be put on a flash drive and uploaded to the cloud. You do not need to be expert at Python to be a pro at attending PyCon. You just need a smidgen of courage and the belief that more times than not – people aren't half bad. Challenge yourself to talk to at least 5 new people each day. I think you will find that the Python community is a special brew of people. There is no better advocate of this notion than Brett Cannon in his opening remarks of PyCon 2014. In reflecting back on his early days with the Python language and community:
The community was smaller but it honestly felt the same it was an extremely welcoming, friendly, constructive group of people who were always willing to let people come in, help them out, and let them enjoy programming…Now, I don't know about the rest of you, but I like to think of it as I came for the language but I stayed for the community. So I want to personally thank all of you for making this such a wonderful place to be and such a wonderful group of people to be around.
I couldn't agree more, Brett.
Keep Calm and Code in Python!
See an error in this post? Please submit a pull request on Github.