Where to begin programming?
rg123: I agree with those recommending Python as a great first language to learn.  You can download it for free at the Python web site, which is www.python.org.  Get version 2.6.2 for now.  Experimenting with the interactive interpreter and with running programs you save as .py files is easy with Idle, which is included.  (You can write Python programs in other editors, but Idle should be fine to start with.  In particular : VIM, mentioned by sunkencity, is an extremely powerful editor, but not at all intuitive, with a steep learning curve requiring a lot of practice to get productive with it - so save that for later.)  See the tutorial and other documentation on the Python site, as well as its links to other information.