Python is a great language for scientific programming. I use it for a variety of purposes, including imaging, catalog management and sorting, and spectral analysis, as well as a general purpose programming environment with SciPy and iPython. The Python package Sphinx is useful for generating documentation about a package or small code snippets.

The Python Tutorial

PEP 8 checker

Link to Software Development Workshop links

A nice Python blog