Running iPython cleanly inside a virtualenv

If you run ipython directly on the commandline without having it installed inside the virtualenv you are working on you may get some awkward behaviour since iPython will be running a mix of environments (system wide + virtualenv) … normally you would see an warning as follows

To avoid this I use an alias that makes sure iPython is loaded from inside the venv … here it is:

Edit: as of ipython 1.0 this is the new alias

now running ipy I will know for sure that I am running within the venv.

Parse JSON into ordered data-structure (in python)

In many cases it is essential (or at the least nicer) to preserve key order from a parsed JSON document, here is how to do it in python (using the std lib json module and OrderedDict available in python 2.7+)