PyCon Wrapup or “stop fidgeting”

April 7th, 2009 § 8 comments

3405504555_e4422b42f6.jpgAh, PyCon 2009 has come and gone. I’m a lit­tle late in doing a wrap up — but that’s pri­mar­ily due to the fact I wanted to spend time with the fam­ily, and not on the com­puter since I got back mid-day Thurs­day of last week. That — and other things in my life are a lit­tle worse-for-wear, so my brain’s been full of “other stuff” rather than bask­ing in the glow of:

The best pycon, ever

Yeah, I came out and said it. For me, it was my 4th(?) PyCon, and not to dis­par­age the past, but this one was the best planned, best exe­cuted and most fun for me. Sure, it had a few neg­a­tives (Chicago being one of them), but by far the pluses out­weighed any minuses.

Here’s a sum­mary of things I can remember.

The summits

I got in mid-day wednes­day and broke into the VM sum­mit. I was imme­di­ately slapped with the unladen-swallow announce­ment, which made me do a lit­tle dance and imme­di­ately start pulling down the code. For the most part, since I was past the intro­duc­tion piece, I sat in back and had inter­est­ing dis­cus­sions with Thomas Wouters, Brett Can­non and others.

Later that night, I sat down and spent some time with unladen swal­low — mainly get­ting LLVM all happy and pulling down the trunk (when I should have been using the released tag). I also spent a fair amount of time mas­sag­ing my slides for both of my talks. Noth­ing quite like last minute changes.

The next day was the lan­guage sum­mit. Here a bunch of peo­ple much smarter than me sat down and dis­cussed the future of the lan­guage. I can’t even begin to describe every­thing that hap­pened — some basic high­lights are:

  • Some dis­cus­sions around mak­ing python 2.7 be the last release of the 2.x line. I think the gen­eral con­sen­sus was to con­tinue to use 2.x as a ramp into 3.0, but in gen­eral if migra­tion to (and from) 3.0 was faster/easier, then the adop­tion bar­rier for 3.x would be greatly less­ened. Most of us finally agreed that the 2.x line should end with 2.7.
  • On 3.0 — port­ing issues and pains were dis­cussed, things like 2to3 being slow, lack of incen­tive (3k being “a bet­ter lan­guage” notwith­stand­ing) being one of the big issues. Some­one (Guido I think) floated the idea that big fea­tures only go into the 3.x branch, ergo pro­vid­ing greater upgrade incen­tive. I don’t think a lot of peo­ple dis­agreed with this and in fact, I took it to heart dur­ing the sprints when look­ing at fea­ture requests for multiprocessing.
  • Which brings us to 3to2 — sev­eral devel­op­ers expressed that if we had a tool which could trans­late python3 code to python2, then they could start writ­ing their frameworks/tools in pure python3 and then back port it. I don’t recall any­one dis­lik­ing this idea — but no one wanted to get the ball rolling. So I raised my hand. In essence, I vol­un­teered to get the ball rolling, which I have done. Ben­jamin Peter­son will be head­ing it up pri­mar­ily — but any­one is free to con­tribute (and some already have). It’s got poten­tial as a google sum­mer of code project.
  • After that we dis­cussed what CPython can do to make integration/testing eas­ier for alter­na­tive imple­men­ta­tions. We agreed that being able to mark tests as “cpython only” and break­ing things in the repos­i­tory up in such a way to make inte­gra­tion of the stan­dard library into alter­na­tive dis­tri­b­u­tions eas­ier. Brett has more on this, but the essen­tial idea is to com­part­men­tal­ize the stan­dard library out into a sep­a­rate project within source con­trol, and have other imple­men­ta­tion pull/ingrate that. Any­thing that’s Jython/CPython/etc spe­cific would be marked/stored appro­pri­ately. For exam­ple, mul­ti­pro­cess­ing as it exists today is a CPython arti­fact, and not needed for say, Jython.
  • And then there was the pack­ag­ing dis­cus­sion. Rather then rehash every­thing that was dis­cussed, I’ll sim­ply men­tion that I pro­posed a much sim­pler approach. Specif­i­cally, I noted that we should sim­plify the core of dis­tu­tils, pulling in setup­tools fea­ture where appro­pri­ate, offer plugin/hooks where appro­pri­ate, stan­dard­ize on a sim­ple, exten­si­ble meta­data for­mat and remove any of the “non core” bells and whis­tles from dis­tu­tils. In essence my argu­ment was that things like RPM build­ing, easy_install, vir­tualenv, and so on sim­ply do not belong in core python, rather they belong out­side of the core, where consumers/developers can tai­lor solu­tions to suit their needs. Ulti­mately disu­tils can help them, and make the APIs/Plugins/Metadata stan­dard but it should not be a fully fledged “pack­age man­ager” or build utility.

Ulti­mately, the sum­mits were a ton of fun, and being lucky enough to be invited was really great for me. At the end I was wor­ried about peo­ple being tired of my chirp­ing up, but it was resound­ingly a success.

The conference

This is where things begin to blur — hop­ping in between hotels, light­ning talks, hall­way dis­cus­sions — it was insane. Add to that my fear/stress about both of my talks, and I sim­ply can’t fit every­thing that hap­pened in my brain.

I think I started the day in “How to Give a Python Talk” by AMK — which was great, if dis­heart­en­ing sim­ply due to the fact that I had made some of the mis­takes he pointed out in my talks. Ergo more slide hack­ing. After that it was hall­way dis­cus­sions and hit­ting up “How Python is devel­oped” by Brett — I was going to heckle him, but I played nice.

Then there was the Python VMs panel, which I swapped out of and into the “Build­ing an Auto­mated QA Infra­struc­ture using Open-Source Python Tools” — which can be summed up as “Yay build­bot” (I’m hard to impress, I’ve built a few of these by now). I then hit up the Twisted/AMPQ talk but ducked out early to go prep for my talk.

Then, it was my mul­ti­pro­cess­ing talk time. You can see the full video here, I think it went well, and feed­back has been pos­i­tive. Given I’ve done vari­a­tions on this talk else­where, I was a lit­tle more con­fi­dent in myself. I think I could have slowed down in some parts, and stopped fid­get­ing as well as a few other nits. I had some great con­ver­sa­tions with users of the pack­age as well as peo­ple new to it which pretty much absorbed all my time until din­ner. I think I hit up the light­ning talks — but I can’t remember.

The next day, was the now infa­mous LINDBERG’D light­ning talk (video here) — for those who don’t know — Yes, Van knew — he even wrote the legal dis­claimer I have in my slides. Basi­cally, Brett and I had stayed up until what — 1am one night laugh­ing about this idea of send­ing Van (who isn’t very threat­en­ing) after com­menters on the inter­net. The day after we stayed up laugh­ing at this (much to the dis­may of our neigh­bors) I hit Van up for some text and let him in on it. No, it wasn’t seri­ous (peo­ple asked). Yes, I was also voted in with a pile of other peo­ple into the PSF. Good times.

After­ward, the guidonote and then know I saw the state of django talk, as well as Jack’s “Class Dec­o­ra­tors: Rad­i­cally Sim­ple” — which was fan­tas­tic (although I saw a vari­a­tion at the boston python meetup the week before). I dropped in on the ORM panel, and the GAE talk (which was dis­ap­point­ing). Then I hit Bob’s “Drop ACID and think about data” which was awe­some. I again ducked out to dou­ble check my stuff for my dis­trib­uted sys­tems talk. Also on sat­ur­day was the “Writ­ing About Python” BoF, which was cool, but in which I may have over-expressed sev­eral cough strong opinions.

The video of my sec­ond talk is here. This one, my lack of con­fi­dence is appar­ent, and I’m still fid­get­ing. I think part of my prob­lem is I like to express with my hands, almost like a spas­tic air traf­fic con­trol man and hold­ing the mic/trying not to fid­get made my body just sort of spaz. This time though, I rushed from my talk into Alex Martelli’s excel­lent “Abstrac­tions as Lever­age” talk. After that, more peo­ple found me and picked my brain.

I can’t stress how awe­some Alex’s talk was — much of my hall­way dis­cus­sion time was spent dis­cussing abstrac­tions (espe­cially around dis­trib­uted sys­tems) with him.

We’ll see how my call for some cohe­sion and a real “django for dis­trib­uted sys­tems” call in my sec­ond talk goes. Every­one I have spo­ken to likes the idea and had a lot of great feed­back, but lord knows I don’t have the time to lead it up right now, maybe soon.

Late sat­ur­day, was the teach me web test­ing BoF which I ducked into, and then past that the Test­ing In Python BoF which pro­vided me much in the way of fun, ideas, dis­cus­sions and uh. Beer. Yeah. I can’t exactly remem­ber what I said when Titus put me on the spot to dis­cuss “what sucks about test­ing in python”. But I do remem­ber hav­ing some great laughs. I think the heck­ling got recur­sive at one point, not sure though.

Sun­day came, and with it, my sorry attempt to sit in the “Func­tional Test­ing Tools in Python” panel — which was thwarted by a 45 minute bloody nose. Appar­ently Titus talked a lot, so I don’t think I missed any­thing. End of main con.

Before I move into the sprints — I want to point out that I had fan­tas­tic hall­way dis­cus­sions with tons of peo­ple — peo­ple I look up to, and peo­ple I’ve never met before. I had excel­lent lunches with groups of peo­ple rang­ing from the highly expe­ri­enced to some­one who has learned python a week before. I can’t say enough about the sim­ple fact that you get to relax, hang out and just talk with all of these peo­ple. Python is defined by it’s com­mu­nity — and ours is pretty awesome.

The sprints

Mon­day morn­ing, I was off to the python core sprint. I imme­di­ately started hack­ing on mul­ti­pro­cess­ing bugs — I think all told, I man­aged to close around 12 or so bugs by the time thurs­day morn­ing came around. The sprint was awe­some sim­ply due to the fact I could look across the room/table and ask any num­ber of core devel­op­ers ques­tions. Mar­tin Van Loewis came to my rescue/aid a few times, and being able to bounce ideas off of every­one is pure unbri­dled awesome.

Hav­ing ded­i­cated face to face time to beat on these bugs and share information/debate things is immea­sur­able. I also got access to snakebite thanks to Trent, who is still work­ing out the kinks. Alas, even hav­ing access did not make cross-platform sup­port (mainly the BSDs) any eas­ier for mul­ti­pro­cess­ing. I spent a good chunk of my time futz­ing with vir­tual machines so I could do fur­ther work — I ended up cut­ting that short because I wanted to fix things at the sprints: not fart around with tool chains.

Other than hack­ing until late at night through the sprints, there’s was quite a fun night where bour­bon flowed, and many par­took — much fun was had by all. There’s noth­ing quite like hav­ing drinks and mak­ing awful threading/process/compiler jokes.

Bug fixes/patch work for multiprocessing:

In Sum­mary

PyCon is sim­ply get­ting bet­ter — I’m look­ing for­ward to Atlanta next year, if noth­ing more than for bet­ter weather. I got to talk to a lot of great peo­ple — Collin Win­ter, Thomas Wouters, Brett Can­non (be care­ful, he’s an odd one), Guido, Alex Martelli and many oth­ers. Hav­ing many hall­way dis­cus­sions with lan­guage users and encour­ag­ing them to get involved — PyCon is Awe­some­Con — no where else do you get to hear so much great infor­ma­tion, dis­cus­sions and points of view.

All of the videos for this pycon are going up on pycon.blip.tv.

It was a great time, and I can’t thank every­one involved enough.

  • peterbe

    Rumor has it that next year it’ll be ear­lier in the year so late March Chicago weather might be equiv­a­lent of mid-Feb Atlanta weather :(

  • http://jessenoller.com jnoller

    No, any­thing south is bet­ter than chicago-hell :(

  • jack­died

    Chicago-hell” weather? You live in Mass­a­chu­setts, toughen up!

  • Titus Brown

    I gave you a bloody nose just by talk­ing? Wow!

  • http://jessenoller.com jnoller

    I think it was Terry, you just made me sleepy

  • Titus Brown

    I gave you a bloody nose just by talk­ing? Wow!

  • http://jessenoller.com jnoller

    I grew up in Alaska, and I’m still a whiner

  • http://jessenoller.com jnoller

    I think it was Terry, you just made me sleepy

What's this?

You are currently reading PyCon Wrapup or “stop fidgeting” at jessenoller.com.

meta