February 09, 2010, 1:42 PM — Long ago, Python passed the point of being so big and dynamic no single person can keep up with it. (See my point last week in regard to PDF). A few recent events are important enough, though, that you deserve to know about them and their background. Even if you don't work with Python yourself, I suspect you're curious how the competition does things:
One peculiarity of Python now is that both 2.x and 3.x are in active development. Python2 and Python3 are distinct dialects, between which a modestly-skilled human reader can readily translate. There are also automated tools for migration. Python 3 "cleans up" what were eventually agreed as blemishes in the original Python language. How does one decide whether to use Python 2 or Python 3? It's a surprisingly difficult question, beyond the scope of today's report: to a large extent, it hinges on your dependency on third-party libraries. The main point is to understand that Python 2 and Python 3 people are friendly with each other, and everyone is plenty busy.
Last week's 2.7 release, for example, brings to 2.x many of the features first created for 3.x, including a new format specifier, improved rounding, and a faster IO library. 2.7 has also picked up Tile compatibility in its built-in graphical user interface. On the 3.2 side, excitement centers on improved multi-core performance in crucial tasks. To keep up with these releases, monitor the "What's New" write-ups.
As interesting as "official" work on Python are all sorts of peripheral projects:
- nullege is a "Search Engine for Python source code";
- PyMT makes "multi-touch" easily programmable;
- a rich network of Python meetings is available, including PyCon Atlanta at the end of the month;
- Google hired well-known Python specialist Wesley Chun as a "Developer Advocate";
- PyPy and other experiments are bringing to Python some of the remarkable performance gains generations of graduate students previously achieved for Lisp and Java;
- and this doesn't even begin to explain what Python does for mobile-computing or .NET development.
While I've already claimed it's impossible to keep up with all of Python, the highlights above should hint at the span of accomplishment of the language. For more details on what's happening on a weekly basis, read the references in "Python-URL!".