I am a PHP programmer with basic knowledge of c/c++ and electronics. But i have keen interest in robotics and AI. 

1. What are the basic things that i
need to learn before switching to
the robotics ?
2. What languages are
used to write the code and how is
that code transferred to the chips ?
3. What are the basic components that i
need to know ?

I would like to learn about the both hardware components and the programming part. (Are these different streams?)