PyCon 2010: Sunday Plenaries

Posted by Mike on February 22nd, 2010 filed in PyCon

The last plenary session for PyCon 2010 was on Sunday. In it, Van Lindberg told us that if we included all the vendors, our conference had hit over 1100 people. What that meant is that for PyCon 2011, they would probably have to put an attendance cap of 1500 so that we wouldn’t run out of room at the current venue. Is this good? I don’t really know. Sometimes it felt like it was already too big. Time will tell.

The first Plenary of the morning was given by Frank Wierzbicki of Sauce Labs and he talked about the “State of Jython”, the Java implementation of Python. It turns out that version 2.5.1 has really good compatibility with the normal Python implementation such that Jython passes almost all of CPython’s test suite. Jython also work with most Java libraries and applications, so you can get the best of both worlds.

Wierzbicki went on to say that any pure Python code should work in Jython. He gave examples of SqlAlchemy, Django, Pylons, pip, web2py and distribute as working in Jython. The current plan for Jython is to shoot for a 2.6 release this summer to get Jython to Python’s 2.6 status and then, depending on how far along Python developers are in porting their applications to Python 3, he would like to have Jython start porting to 3.x as well.

He put a call out for assistance on the Jython project as they no longer have sponsors. He then wrapped it up with a demo using the Sikuli script by Joseph Chang from MIT that used Jython to play Bejeweled. Weird, but cool!

The second plenary was on the “State of Unladen Swallow” and given by Collin Winter who works for Google. He didn’t use slides since he said that we could refer to a talk he’d given on Saturday if we needed visuals. Winter told us how their interpreter was faster than Jython and PyPy, but that it could be optimized up the wazoo. He announced that Guido had approved the merging of Unladen Swallow into the Python 3.x code base, hopefully in time for 3.3. Winter said that he hoped that by merging the code, they would gain many more developers who could get the optimizing process up to warp speed and make a really fast interpreter. Finally, Winter noted that Unladen Swallow has 100% compatibility with all current Python code and gave the example that Unladen Swallow made Django run 20% faster.

The final plenary was given by the entrepreneur Antonio Rodriguez, founder of tabblo (which he subsequently sold to HP). Here are a few of my notes from the talk:

  • success = [e.hack() for e in employees]
  • Every machine can run the full stack. Anyone can check out the full tree and build the full product. Anyone can make a change to any part of the source tree. Everyone has commit bits. Anyone can push to production.
  • 98% of companies start with around 10 people
  • Business vs. tech is a false dichotomy
  • The lean startup should be the emaciated startup

The challenges that he saw for Python were getting people to commit to porting to 3.x so the split wouldn’t continue, need more batteries in the standard library and the packaging problem. I highly recommend waiting for the video and watching it as I am not explaining his talk very well and I thought he gave the best talk that I attended.

Print Friendly

  • http://lateral.netmanagers.com.ar Roberto Alsina

    There is legal pure python code that doesn’t work on Jython and probably never will without changing it because the JVM has some limitations.

    The example I remember is reportlab, which hit a limit in root module object sizes I think (like, if a module has a data structure defined that’s not part of a class and is over 64KB it braks Jython)

  • http://code.google.com/p/unladen-swallow/ Collin Winter

    Hey Mike, just wanted to note that the example I gave in the Sunday talk was of one particular optimization that yielded 20% performance in Django. We now run the Django benchmark 60% than CPython.

    The code changes, if you’re curious, are here: http://codereview.appspot.com/217052/show

    Thanks,
    Collin Winter

  • http://code.google.com/p/unladen-swallow/ Collin Winter

    Hey Mike, just wanted to note that the example I gave in the Sunday talk was of one particular optimization that yielded 20% performance in Django. We now run the Django benchmark 60% than CPython.

    The code changes, if you’re curious, are here: http://codereview.appspot.com/217052/show

    Thanks,
    Collin Winter

  • http://www.pythonlibrary.org/ Mike

    Hi Collin,

    Thanks for the update. That’s good to know. Thanks also for taking the time to comment!

    – Mike

  • http://www.pythonlibrary.org Mike

    Hi Collin,

    Thanks for the update. That’s good to know. Thanks also for taking the time to comment!

    – Mike

  • http://www.akretion.com/ Raphaël Valyi

    @Roberto,

    you are right about the JVM method size limitation. But that’s really a corner case bug. In general, good programming should make methods smaller than that limit…

    As for the Reportlab case, I had my patch fixing this applied in the trunk version some 2 weeks ago (at least they told they did it). So I expect the next Reportlab version will finally be Jython compatible.

    BTW, I very sad to see more investment into Unladen Swallow than Jython. Considering the effort, I find the the Unladen Swallow perf boost is not that huge (very far from the 5x that targeted in fanfare). On the contrary when you see how much faster JRuby is over the CRuby (using flags to run the same Ruby version) implementations, you think that with a bit more investment, Jython could take the lead and really help running Python faster…

  • http://wwwyou.topregistrycleanerreview.net/ Diane

    They would probably have to put an attendance cap of 1500 so that we wouldn’t run out of room at the current venue.And the Java implementation of Python. It turns out that version 2.5.1 has really good compatibility with the normal Python implementation such that Jython passes almost all of CPython’s test suite.Thanks for the informative article ! G-d bless 😉