get the book by Chris Pine, Learn to Program. It's cheap and small and interesting. Mr. Pine uses it to teach beginning programming to kids. He chooses to teach them Ruby rather than other languages. Ruby gets out of the way most of the time. It lets you focus on the skill of creating a program. Designing it and testing and running it. In C this is a much more complicated task. If you starting out, C will throw a lot of things at you at once. If you need to learn some programming concepts, Ruby is a great place to start. But learning C is a good goal too. It really is the Latin of computer languages. Many ideas and traditions come out of decades of C culture. That said, either way you'll be fine, but get yourself a good text editor which does colors and (if possible) auto completion. Learn to use the command line too. Buy a good reference book for Unix.