Python Magazine for January 2009

The January 2009 issue of Python Magazine is available for download
now.

This month’s cover feature is Creating a Collection Manager with
Elixir
, by Gaëtan de Menten. You have heard about SQLAlchemy, but never
found the time to actually try it? Or maybe you have heard about the
add-on to SQLAlchemy called Elixir, but don’t really know what it is
useful for. Here is your chance to see them in action.

JC Cruz continues his series of articles on using Python to create
applications for Mac OS X. In the last article, you learned how to edit
data with the NSTableView. This month, in Table Drag and Drop with
PyObjC
, you will learn the mechanics behind drag-and-drop and how to
support it in a table.

If you’ve ever done extensive development in Django, you’ll know the
issues involved with changing schemas. In Django Migrations with
South
, Andrew Godwin introduces South, a migrations library for Django,
and shows how it helps to solve many of the problems you face as your
Django project matures.

This month we are co-publishing a special-guest column by Ivo Jansch,
a regular contributor to our sister publication php|architect.
Requirements Gathering in the Enterprise is a look at the processes
used in large enterprise software development.

Jesse Noller reflects on the new challenges of test engineering in the
software world in his column, And Now For Something Completely
Different: The Changing Face of Test Engineering
.

Interacting with the file system can often be a frustrating test for
new programmers. This month Mark Mruss introduces the os module and some
of the more helpful functions it contains to help ease some of that
frustration in Welcome to Python: Working with Files and Directories.

Beginning this month, we are proud to present the column, Ask the
Pragmatic Testers
, written by Titus Brown and Grig Gheorghiu. Both
Titus and Grig have a wealth of development experience, and we’re
excited to add them as regular contributors to the magazine. Many people
think that automated testing is about making sure your software works
right. They’re not wrong, but in Why test? It’s about complexity.
Titus and Grig remind us that there are deeper benefits – in
particular, managing the complexity of the build and development
environments.

This month Steve Holden ponders on the Zen of Python, sometimes with
less relevance that might be expected.

And in What does Python 3.0 mean for you?, I talk about the
reactions to the long-awaited release of Python 3.0, that came on
December 3, 2008. This is a big step forward in the evolution of Python,
as it provides an opportunity for the core developers to introduce
backwards-incompatible changes to the language and libraries and break
free of some past design decisions that have been deemed misguided or
short-sighted.