What do you need to program for R-pi?
What OS would be best to use for this (I assume linux)
What programming language and what books is best for this ? (prefer e-books)
what Compilers ect to use?
Just a Raspberry Pi
Linux, yes. (The FAQs list the candidate distros)
It depends on what you have done before, but Python has a lot of support.
It depends, some languages are interpreted, some are compiled. Linux should have access to the interpreter/compiler required. Raspberry Pi will be set up so the most usefil are instantly available.
If you're wanting to prepare by running things on an ordinary PC, there's threads on ARM/Rasp Pi environments, suggested programming languages, etc. Try the forum search facilities.
Hope thats helpful!
I'm just a bouncer, splatterers do it with more force.....