After reading replies regarding starting a mapping business, I think I'd better read a Python book. Any intro-level Python books to recommend?
I would strongly recommend "Python Geospatial Development" by Erik Westra (published by Packt). It covers GDAL/OGR, Shapely, connecting to PostGIS and even an intro to GeoDjango among other things. Specifically, this book is aimed at using Python for GIS as the name suggests and will possibly be more immediately relevant than a generic Python book (at least to start with).
I would also highly recommend the free on-line tutorial series called Geoprocessing with Python Using Opensource GIS. It is a little old but nonetheless very good.
Python is an excellent language for scripting and making stuff work in the FOSS4G world and you will get quick results from your learning/coding effort. However, if you are wanting to get into programming and hope that your consultancy will pick up programming-related work, you may want to consider C# or some other .NET language, as there doesn't seem to be much call commercially for Python scripters (despite it being used so much in day-to-day geoprocessing).
There are tons of libraries out there for working with spatial data in Python, but a nice starting point is Chris Garrard's online Python programming class.
I started with "Learning Python the Hard Way", available in printe, pdf (very cheap) or online (free). It's example based so I thought it's was easier to go through it.
I went to Python Geospatial Development after.