Monday, February 22, 2010

My top 10 PyCon takeaways

PyCon 2010 in Atlanta was a blast as always. While I still have things fresh on my mind, here are my top 10 takeaways from the conference, in no particular order.

1) Alternative Python implementations are getting increased attention

It seemed to me that PyPy, Unladen Swallow, IronPython and Jython got much more buzz this year. Maybe this is also due to the announcement that Unladen Swallow will be merged into Python 3.x. I recommend you watch Holger Krekel's talk on the topic of the diverse and healthy Python ecosystem, 'The Ring of Python'.

I was also glad to see that 2 core Jython developers, Frank Wierzbicki and Jim Baker, were hired by Sauce Labs.

2) Testing has gone mainstream

When Mark Shuttleworth mentions automated testing in his keynote as one of the most important ingredients of a sound software engineering process, you know that automated testing has arrived.

There were also no less than 6 testing-related talks, all very good, given by the usual suspects in the testing world, people like Ned Batchelder, Titus Brown, Holger Krekel and Michael Foord.

3) Packaging and packaging

I liked Antonio Rodriguez's distinction between packaging with small 'p' (distutils, setuptools, distribute) and Packaging with big 'P' (the web site). Both are very important. There was a lot of attention to packaging, and a great show of support for Tarek Ziade's efforts in leading the way to improving the way of distributing Python packages. And I think Antonio was right in pointing out that the site needs some redesign in terms of getting a more modern and streamlined look and feel.

4) I tweet, thus I exist

I came late to the Twitter party, barely a month ago. I was resistant at first because I considered tweeting a waste of time. I still think it has a strong tendency to shorten your attention span and break your focus, so I personally need to discipline myself in how I use it.

But Twitter is a great way to keep your finger on the pulse of topics that interest you -- and at PyCon, if you didn't tweet or at least read other people's tweets, you were out of touch, out of the picture. Alex Gaynor and company did a great job with their PyCon Live Stream site, which was pretty much the dashboard of the conference.

5) The testing goat

Terry Peppers started a new meme during the TiP BoF: the testing goat. Read Terry's post and also Titus's post for more details on it, but suffice it to say it was a huge success. And speaking of the TiP Bof, it ballooned from last year to this one. I estimate around 120 attendees, so more than 10% of the people at the conference. Pizza provided by Disney (thanks to Paul Hildebrandt and Roy Turner), beer provided by Dr. Brown and friends, great lightning talks and unceasing heckling made this into one of the highlights of the conference.

6) Healthy ecosystem of Python web frameworks

Two or three years ago, all the buzz was about Django and maybe TurboGears. This year, a lot of presenters talked about other frameworks -- Pylons in particular, but also tornado, CherryPy, restish. It does feel like Django is the granddaddy of them all, but it also feels to me like Pylons is being preferred by big name/big traffic web sites such as reddit. Tornado of course is a newcomer, and we're using it very successfully at Evite. The presenter from Lolapps said they were also experimenting with it and were going to put it in production for some portions of their site.

7) Inspirational keynotes

I thought the keynotes were of much higher quality than in previous years. Mark Shuttleworth talked about 'Cadence, quality and design' (see the bitsource interview), while Antonio Rodriguez gave a very inspirational presentation on topics such as involving everybody in your company in coding (he knows, it sounds crazy...), about the strategic advantages of using Python, about putting more stable libraries into the stdlib (he mentioned httplib2, and I couldn't agree more -- we need that library in the stdlib!), and other stuff that you can see on his pycon 2010 page. You need to watch the video of his keynote though in order to appreciate the impact that it had (videos from PyCon are being made available as we speak on

One thing though -- I am a big Ubuntu fan, I have it on both my laptop(s) and desktop, and yet I was pained to see that Mark Shuttleworth couldn't use his slide deck because his laptop couldn't properly display a dual screen when using the conference projector. I struggled to make it work myself before delivering my presentation. Ubuntu really needs to get better dual-screen configuration management software.

8) It's all about the hallway discussions

For first comers to PyCon, or for people who intend to go next year, a word of advice: skip some of the presentations and instead join random people in hallway discussions, or for a beer at the bar. Trust me, you'll learn more than in almost any presentation. And you'll potentially make friends that you'll recognize the next time you go to PyCon. I've done this for 6 years now, and it never fails to amaze me how easy it is to get into deep technical discussions over a mind-bending range of topics. Non-technical discussions are usually mind-bending at PyCon too ;-)

9) More talks of the advanced type please

I heard from many people (and Titus has been saying it for years) that they wished the talks were a bit more advanced. I realize PyCon needs to cater to all types of Python users, from beginning to intermediate to expert, but still the conference track could use a larger number of advanced, mind-exploding, challenging presentations (such as Raymond Hettinger's talk). I understand though that next year there will be exactly such a track, dubbed 'Extreme Python', so I'm very much looking forward to it.

10) Top-notch organization

Finally, kudos to Van Lindberg, this year's PyCon chair, and the rest of the organizers, for delivering an almost perfect experience to the more than 1,000 attendees. I though the food was great, the WiFi was better than usual, the sessions went almost always smoothly (minus projector issues), and there was a great fun and camaraderie in the air. That's why PyCon is my (and many other people's) favorite conference. Keep it up guys!


Max Ischenko said...

Nice summary.

I'd definitely agree that skipping some talks to for casual chatting is the way to go. Being a speaker is also helps. ;)

See you some next PyCon.

Grig Gheorghiu said...

Thanks, Max! It was very nice to meet you in person and to finally put a face to the name. Hopefully you'll be at PyCon again soon!


wescpy said...

grig, i'll echo max's comment... *great* summary. you pretty much summed up what i would've written myself.

on a more downside, i was one of the volunteers that helped make PyCon happen, incl. the conference bookstore, the door/raffle prizes, and other minor things. with this responsibility (amongst other things), i think i missed more talks than i wanted to (but the good news was that in many cases, it was due to hallway conversations that sucked up an entire session's worth of time), and similarly, while *giving* a tutorial, it took away my ability to *attend* one and learn more. :P regardless, it's still the best conference that i've ever attended... period. every successive year of attending reaffirms that.


Grig Gheorghiu said...

Yes, the volunteers are the unsung heroes of PyCon -- so thanks for being one of them, Wesley!


Doug Napoleone said...

Van has an idea to address the advanced topic issue next year. I will let him announce it, bit it will be.. .cool.

Anonymous said...

A party aint a party till Spolsky steps in.

Anonymous said...

So right about Ubuntu's multiple monitor support. Maybe after that episode we'll start to see better support. ;)

matt harrison said...

Hey Grig, it was good to see you again. Great writeup. Those volunteers definitely put many professionals to shame.

I've haven't messed with ubuntu's monitor tool much (run gentoo on my machine, but ubuntu on others). But I've never had an issue with external monitors on my thinkpads by using the underlying xrandr commands. I've got 3 scripts, (enables two monitors), (turns off external/projector), (clones to projector size). I've also only use intel chipsets, so I don't know if that has something to do with it.

Obviously this isn't a solution for the audience Shuttleworth wants to hit, but running my script is a lot quicker than futzing around with the gui. (Needless to say, the gui should work, since the underlying utilities have always worked for me).

Grig Gheorghiu said...

Matt -- thanks for the tips. A friend of mine mentioned xrandr too yesterday, so I'll definitely take a look. Any chance you can send me your scripts? ;-) grig dot gheorghiu at gmail dot com

wam said...

One thing to note about the projector issues related to Shuttleworth's keynote is that I saw Macs *as well as* Windows systems have issues with that projector through the conference. It wouldn't surprise me at all if it ended up having a flaky cable. I saw plenty of Ubuntu laptops do the right thing through the conference

Modifying EC2 security groups via AWS Lambda functions

One task that comes up again and again is adding, removing or updating source CIDR blocks in various security groups in an EC2 infrastructur...