It really depends on what you are interested in. My first language was bash (wouldn't suggest that as a first) because I was really interested in how linux worked. I bought a book about shell scripting and used it to guide myself while I just experimented with it on my own exploring what I could do. I didn't really start to grasp it until I wrote my first program. If you are looking at a language to start with, both ruby and python are fairly beginner friendly with a lot of learning resources available. I use both in my job currently (systems engineer). These are two pretty popular resources:
Ruby: http://learnrubythehardway.org/book/
Python: http://learnpythonthehardway.org/book/ I would figure out what you want to program first (AI, systems, webapps, etc). That will help you decide what to learn a lot.