First, you want to know some sort of programming or scripting language, since hacking is just understanding how things work so you can make computers do what you want. Anyway, I would recommend python. You can find python under the download section at
www.python.org
I use 2.6, but you can use earlier/later versions if you want. Note that there are subtle syntax changes that could throw off a beginner. Now I can't say that I am great with it, but it can be a dandy little thing once you start to get the hang of it.
Once you have gotten really good with 1 programming language, then the others are generally a snap since they do the same things, just with different syntax or methods etc.
Remember, don't take what isn't yours when you start learning about network programming!
Read, know, do. Discuss topics of ANY kind, including unconventional or taboo topics. Free speech, open minds, alternative thinking.
http://www.totse2.com