Well I guess it will all depend on what kind of "hacking" you'd like to do. Programming and Hacking are completely different, but they work together. Python is a good starting language to learn and I would also suggest Java and then C++ A lot of people don't like Java but I figure since most devices (such as computers, smartphones, consoles, etc) are Java its a good language to learn and will also give you incite into learning C++ The reason why I suggest C++ because it is one of the strongest languages you can learn.
Now as far as hacking, you know that you want to be a "White Hat" hacker... but there are several different fields to hacking... There's the programming aspect which will probably take the longest to learn but then you need information for say hacking websites which would be doing stuff like rfi/lfi, etc (information you can find in the tutorials board) so need to know more specifically what you want to accomplish otherwise I can't really help