The default programming language for the Raspberry Pi is Python. But it also comes with a Perl interpreter, so that's what I've been using. the AirPi software, is written in Python, so when I needed to modify it, I struggled a bit, being totally unfamiliar with the language.
So I did what one does in such a situation - I ordered two books from Amazon from the O'Reilly series, on the grounds that every O'Reilly book I've ever bought has been excellent. They arrived today. "Learning Python" and "Programming Python".
They are 3,000 pages between them; so heavy that I can barely lift either of them with one hand. Just the preface to "Learning Python" is 50 pages.