All Things Pythonic

Python Status Update

by Guido van van Rossum

January 10, 2006



Summary

A rambling discourse touching on my new job, the prospects for PyCon, and what's hot in python-dev.


Google So, the new job at Google is a blast! It's like being back in college. There are tons of smart people here, and that doesn't just refer to programmers; it appears that everyone they hire is above average in their domain. There's always more to learn; I expect to be overwhelmed for the first three months and it may take me a year before I feel truly comfortable. (And did I mention the free food? :-) Python is big at Google. Since I don't want to bother with getting this blog reviewed by Google, I can't go into much detail, but it's at a secure 3rd place after C++ and Java, and it's being used for everything from build tools to managing ads. Name your third-party Python module and someone at Google is probably using it. So this is an exciting environment -- I get to see first-hand what truly large-scale Python development is like, and where the pain points are. And did I mention that I get to spend 50% of my time on Python? No strings attached. Of course I get to spend the other 50% on Python too, but that's in a corporate setting. Fortunately it's easy to separate the two. If it uses two-space indents, it's corporate code; if it uses four-space indents, it's open source. (If it uses tabs, I didn't write it! :-)

PyCon The next US Python Conference is soon! We've got a new location, Addison TX (near Dallas). I've heard some rumblings from the organizers that attendance is lower than expected, but I'd like to point out that we've had worries about attendance at every PyCon, and in the end the results were always above all predictions. And, like most years, we're keeping early-bird registration open an extra two weeks (until January 15); the special rate at the hotel is valid until February 1st. The program looks spectacular. We've got the Plone team keynoting, and on day three instead of a keynote we have an interview with BitTorrent creator and nouveau-enterpreneur Bram Cohen (submit your questions now!). Oh, and I believe some BDFL guy is doing a state-of-the-Python talk. BTW, at least 7 Googlers are coming (with at least three of us presenting this or that). After the conference there will be four days of sprints. Like every year, this is an outstanding opportunity for teams that normally communicate via email and IRC to have a few days of coding in the same space -- despite the wonderful invention of the internet, there's still nothing that quite beats face-to-face contact. Several groups will be sprinting on core Python things (possibly even Python 3000!); I expect we'll also see sprints for projects like Twisted, Zope and Plone. You can sign up your own project via the wiki!

python-dev Despite my 50% Python time at Google I haven't managed to keep up-to-date with everything that's going on in python-dev. (And that's an understatement!) It seems clear however that development is picking up. Lots of bugs are being fixed (I'd especially like to mention my fellow Googler Neal Norwitz here, who seems to have no life :-). We've successfully switched to self-hosted subversion. (I'm still waiting for the switch to self-hosted Roundup as the issue tracker, but apparently nobody's volunteering.) After I made a few disparaging remarks the AST-branch group got its act together with the result that this new, abstract-syntax-tree-based approach to producing Python bytecode is now mainline for Python 2.5. The new infrastructure immediately proved itself by enabling a relative newbie to implement PEP 341 (merging try/except and try/finally). Martin von Loewis is working on getting rid of a nasty 32-bit dependency in Python's implementation: using C ints for indexing Python sequences. On many 64-bit platforms, an int holds only 32 bits which makes it a bit of a problem to make effective use of the architecture's ability to handle strings longer than 2 GB. This is not a theoretical problem any more; servers with 6-8 GB of RAM are now commonplace. Another cool new development tool is the Python buildbot. This is a set of cron jobs that continuously check out the latest version of Python, build it, and run the unit test suite, on a variety of machines. The results can be viewed live at http://www.python.org/dev/buildbot/. Of course, there's plenty of heat as well -- a discussion about making 'self' implicit in Python 3000 that won't go away, flame wars about the missing 'quit' command and about replacing LaTeX (really!), and the old standby, the GIL. But all in all it's an enjoyable place, and I plan to spend more time there as soon as I've handled my backlog of other Python tasks (like writing the definitive article about Python's history for the ACM HOPL-III conference, to be held in 2007)! Once that's done, expect to hear more about Python 3000 on python-dev (unless the population there bans that subject to a separate list; I'm not sure yet whether that would be a good or a bad thing).

Talk Back!

Have an opinion? Readers have already posted 14 comments about this weblog entry. Why not add yours?

RSS Feed

If you'd like to be notified whenever Guido van van Rossum adds a new entry to his weblog, subscribe to his RSS feed.

About the Blogger

Guido van Rossum is the creator of Python, one of the major programming languages on and off the web. The Python community refers to him as the BDFL (Benevolent Dictator For Life), a title straight from a Monty Python skit. He moved from the Netherlands to the USA in 1995, where he met his wife. Until July 2003 they lived in the northern Virginia suburbs of Washington, DC with their son Orlijn, who was born in 2001. They then moved to Silicon Valley where Guido now works for Google (spending 50% of his time on Python!).

This weblog entry is Copyright © 2006 Guido van van Rossum. All rights reserved.