This is the first of a series of posts about which libraries and tools we use for our Django development. Almost every Nomadblue project will have the following packages in their requirements.txt pip file.

Probably most of the readers won't find much news here; however, eventually someone can realize he was missing something that could be leveraging their productivity or making life easier.

Pillow

As stated by the library documentation, Pillow is the "friendly" PIL fork by Alex Clark and Contributors. With Pillow you can stay cool as it installs smoothly using pip, and also you can sleep at night because somebody is maintaining the library in a healthy state through continuous integration, regular releases, bug fixing and development on github, and active participation on the Imaging-SIG.

South

When we started with Django (more than 5 years so far) there were a bunch of migration libraries out there, with different approaches. Andrew Godwin became a frequent flyer on the Django community, eventually winning the pulse and gathering the Djangonauts until South became a "must" or "de-facto" library to manage your database schema and data transitions.

Worth mentioning that Andrew recently applied at kickstarter for a call to develop "a new, flexible and modern migrations system built into Django.". By the time we are posting this, he has already multiplied the money x5 times!

iPdb

Recently, Dr. Fernando Perez ‐ the creator of IPython ‐ won the Award for the Advancement of Free Software that the Free Software Foundation annually gives. Although the project is used maily in scientific Python areas, its a sort of hybrid of an interactive python console and a unix shell that every pythonista appreciates for saving time and greatly introspecting the code.

With iPdb, you bring the power of iPython to your daily debugging. By simply adding a line of code, you can start analyzing your traceback using tab completion, syntax highlight, and more:

  import ipdb;ipdb.set_trace()