I would agree with several comments. Learn Linux (from the command line, gui's don't count ;) ) and while your at it since you are keen to learn programming, start learning something you can use immediately, as in how to write shell scripts. Highly useful, and you can use the concepts you learn (loops, variables, functions, etc) to apply to higher level languages. And while your at it, learn some vi, always handy for whipping out quick stuff without digging through some menu for a gui text editor. Infosec and hacking is a discipline that crosses networking, os, application, system, physical, etc so you pretty much have to have good knowledge across the whole gamut.
There are no shortcuts, just lots of keystrokes and experiences between you and your goal.
Cheers!
bkrb0i