I'll start with the programming aspect of your questions as thats where I got started. I'd recommend that you try to find a small project that you want to complete, I've found that nothing can be harder than trying to learn programming for the sake of programming. If you've got a project it will give you something to work towards, keep you focused and ultimately give you a sense of achievement as you complete various aspects of the project. From experience though, when starting out don't be afraid to through a project away if you realise you should have done it differently. Start again and use what you've learnt to build a better solution and learn more along the way (assuming you haven't got a boss looking over your shoulder.)
Whilst I'd agree with shawal that C (and derivatives) is a good language for systems and network programming, it can be a scary place to start. I've known several programmers and lecturers who advocate the use of web based coding for learning as it is easy to get interaction with the program without a lot of 'black magic'. Personally I think that the intergration between presentation and application logic can be confusing and the lack of structure can allow you to form bad programming habits.
For a starting point I'd recommend trying Visual Basic, although you'll probably want to graduate to a more 'advanced' language after you known the basics, VB can be a great starting point to learn to code and common programming structures. After all, BASIC was originally designed as an educational tool.
As you can probably guess from my response, there is no 'right' language for any programmer, or any situation. From reading your post I'm assuming that you are just starting out, if possible enrol an an introductory programming course. The guidance and assistance from an experienced programmer can make a large difference in your rate of learning and overall proficiency, possible making the difference between you being a 'code hacker' or a programmer.
If you know other programmers, try using the same language and toolsets as them, hopefully they should be able to offer assistance and recommendations whilst you are setting out. It can also be a nice sense of achievement and indication as to your progress when mentors who taught you the ropes starting asking for assitance and thoughts from you for their projects.
For the hacking aspect of your question, I'll mostly leave that to more experience members of this forum. Most of the recent books published should give you a good start, for a complete new entrant into the field Hacking for Dummies and Hacking Exposed seem to be the most accessable and are often recommended. Don't forget about Google aswell, should be every hackers best friend