Van Lindberg recently tweeted a link to some tips on how to attend a conference. The advice in that article is pretty sound for a business person looking to build up their network to find sales opportunities, but it doesn't cover any PyCon-specifics.
After a little thinking I've come up with my own list of tips for new PyCon attendees:
Attend some open space sessions
Open spaces are now happening at a lot of conferences but the PyCon ones have been the best I've seen. These are ad hoc discussions on a common topic with participants joining and leaving whenever they want. These sessions are a lot of fun and you'll make a lot of friends in the process. Even if you aren't the most talkative person, or know little about a subject, you are free to just hang out and listen.
Whilst there is a page on the PyCon website for these sessions, it is normally best to check the boards outside the rooms assigned to open space use. You should also monitor the Convore backchannel and #pycon on Twitter.
If you don't see any open space sessions related to your favourite topic just post a session in one of the available time slots. In almost all cases some likeminded individuals will turn up.
Scheduled talks are normally recorded for viewing later so I'd recommend that you try to decide ahead of time which talks are must see, and which ones could be skipped. That way you can make the most of the open space sessions as some of these will overlap with scheduled talks, especially on Saturday and Sunday.
Help the PyCon staff
Putting on a conference PyCon is an enormous effort. They are often looking for runners and other helpers. Spending a little time helping out introduces you to many interesting people and you'll probably learn a bit too about how conferences run.
Follow @pyconvolunteers, talk to the organisers, and lurk on the pycon-organizers mailing list.
Check out the lightning talks
These are very short talks on a variety of Python-related subjects scheduled at the beginning and end of conference days. If you have something to say to the community they are a good way to let people know about your project or passion. For everyone else they are a good way to find out about lesser known projects, and they are often quite humorous.
Go off track
PyCon like many other conferences has tracks with related content and there are 10 virtual tracks for 2011. These are really helpful for finding things that you are likely to be interested in, but sometimes it is good to check out something a little bit different.
In particular, veteran PyCon speakers like Alex Martelli, David Beazley, and Raymond Hettinger fill rooms each year and are always worth watching.
Chat with presenters
On the topic of presenters there are a lot of opportunities to talk to presenters at PyCon, either right after a talk, or later at the conference. If you have questions on their area of expertise or feedback on their talk it is worth taking some time to talk to them.
Spend time on things that are valuable to you
Sometimes you'll end up in a talk or open space session that isn't exactly what you expected. It is best if you go to something more to your taste than waste your time on a talk that is too basic or not as described. Sometimes this can be a little difficult if a session is packed with people, but you can do things to make your exit a little bit more comfortable.
First of all if you have an inkling that you are going to want to leave a talk don't pick a seat in the middle of a row. Instead sit somewhere that that has easier access to the exit at the back of the room. If there are video cameras in the talk you might not want to be "the dude that left in the middle of a talk". In reality you will likely not be noticed as the cameras are directed at the speaker.
Second, make sure to pack up your laptop and other things in your bag before exiting. It's kind of annoying to get clobbered with a laptop as someone exits past you. The same thing goes for anyone sitting in the row. Don't make unnecessary obstacles for anyone that gets out. Move your power cord and move closer to power strips rather than pulling them out of place.
Find a group for dinner in Atlanta
Watch the Convore and Twitter for information on groups who are going out for the evening in Atlanta. In many cases an open space session will continue over dinner!
Don't have too good a time at night
It is way too easy to have a good time on Friday and Saturday nights, but don't stay out too late or get too hammered. This seems like a bit silly but you need quite a bit of energy to make it all the way through a conference like PyCon.
I'm sure there are many things that I've missed here. Please post other tips on Twitter under the #pycon hash tag, on your blog, or post a comment below for others to read.
IronPython was one of the factors that impacted my decision to attend PyCon. Microsoft are approaching the release of version 2.0 which will have parity with CPython 2.5. The production versions already are close to full Python 2.4 support making it a viable platform for use in a lot of places where I would typically use C#.
Going into the conference I was looking forward to the Sunday session with Jim Hugunin but there turned out to be some more treats for the IronPython developer. Feihong Hsu ran a session on Python.NET and how you can bridge from CPython to the .NET platform, taking advantage of rich Windows APIs. Michael Foord spoke on Silverlight as well as his company's spreadsheet which embeds IronPython.
Feihong organised an open space session for Saturday evening after the PyWin32 gathering to talk about Python.NET and we were joined by the IronPython developers and management (Dino Viehland, Harry Pierson, Jim Hugunin and others). We discussed a number of aspects of IronPython and progress towards the 2.0 release. It looks like this may be complete in October given that they released the first beta last week. Again Michael Foord had something interesting to say on what Resolver Systems are doing.
Michael presented an open source project called IronClad. This is quite an insane assortment of code from C# to Python to assembler all in the name of accessing Python modules written in C. To date they have the bzip2 module running but are working on support for modules like NumPy which are important to their customers.
After the open space session we headed into Chicago for dinner at India House. This gave us a chance to find out some more stuff about the IronPython implementation, and other factoids. Dino hinted that he was working on getting Django up and running. Little did we know he was going to be demoing this to the crowd on Sunday.
Sunday saw Jim's big talk and I managed to get a few photos. It wasn't easy, but I think these turned out a bit better than earlier shots at the conference. Dino showed off the fairly minimal changes needed to get Django running on IronPython and Jim demoed the IronPython interpreter running under Dynamic Silverlight.
After the keynote, Dino gave a me a quick run through of the IronPython and DLR source code. This was very interesting and it gave me a real step up in understanding what goes on under the covers. Thanks Dino!
Today was the Python tutorial day. Given that I haven't spent a lot of time reading or writing Python code I thought it would be a good idea to attend some of these tutorials. Since they kicked off at 9am it was a bit of a challenge making it on time. My Southwest flight from Philly last night arrived late, and then I had a big trip around to the other side of Chicago. If you need to attend a conference near O'Hare, try to fly into that airport. All I wanted to do was to lie in bed for a few more hours :)
When I made my tutorial selections I was hoping to attend a Python for Java Developers session. This would have been useful given my experience with C# but it seems that I was in the minority and it was cancelled. I switched to the Django session but I think I may have been better attending the session on performance optimisation.
Registration wasn't too busy today since the main conference crew won't arrive till Friday. I got a PyCon bag and some flyers but the T-Shirts weren't ready. Apparently they'll be available tomorrow, I'd hate to miss out on one!
Python 101 Tutorial (Steve Holden)
It turns out that Steve was another British ex-pat living here in the US. It gets weirder in that he lectured at Manchester University for a number of years. Given Steve's position in the community I expected a sharp introduction to Python. It didn't disappoint and I picked up a fair bit. The 'slice' mechanism looks really useful, I wonder if it can be implemented with any of the new C# features?
Getting Started with Django (Jacob Kaplan-Moss)
I was expecting this session to be a little more exciting. Jacob has some fine ideas about how Python frameworks should be built but his presentation style is not as striking as DHH. Since this was an introductory session I can't complain too much but I really want to hear some more about Django deployment and debugging over the next few days.
Internet Programming with Python (Wesley Chun)
At this point I was pretty exhausted. This tutorial seemed to be geared toward newbies to network programming, rather than a best practice session on leveraging Python for internet programming.