Probably the most asked question by aspiring hackers is the obvious one: how do I learn how to hack?
Learning hacking isn't really a traditional skill. Hacking requires a specific mindset. Once someone understands how to look at computer security, they can build upon that to become a better hacker. There are a quite a few different areas of computer security, and people tend to focus most of their time in just a couple of these areas at first. Some of these areas are web-related security, lower level hackery (think buffer overflows, reverse engineering), cryptography, etc etc etc. Obviously, within these areas there are countless subcategories.
There are a few things that most seasoned guys agree will set up a newbie for success. I'll try to hit some of the big points below.
The saying holds true: knowledge is power. You can never have too much knowledge. When I first started getting into hacking, I spent countless hours just reading about different things. If you come across an unfamiliar phrase or acronym in an article somewhere, do a little research on it. Building a foundation of information to grow on is key to learning how to hack. You'll naturally start to read up on things that interest you more, and in return, you'll start to create an identity for yourself.
I always recommend learning a programming language to newer guys. Although this seems daunting at first, it is certainly well worth it. If you're interested in hacking, then you should be well-rehearsed with the mechanics behind your computer. And a programming language will offer you a completely new look into how everything works. In addition to that, being able to code your own scripts or programs is an incredibly precious skill.
A lot of people ask which programming language is best to learn first. There's really no right answer to this. People most often recommend Python to start as it is very easy to understand. The syntax is very relaxed, and it is well-supported and documented. Some of the lower guys will recommend you start with C as it'll teach you a lot more about how computers work. C is certainly very valuable, but it also has a much harder learning curve, especially for a newer guy. Some other notable programming languages are PHP, Perl, Ruby, Java, C++, etc etc. There's no right answer for which someone should learn first. The most important thing is for newbies to get their feet wet, things will fall into place on their own.
Another question that gets asked a lot: "Do I have to install Linux?" The short answer to that is no. However, someone who is interested in hacking should never ask things that start with "Do I have to...". Instead, aspiring hackers should go out of their way to use new things as it will open their mind and broaden their knowledge base.
That said, I certainly recommend getting your feet wet with some form of Linux. I know guys who use Windows to code on, and I know guys who use a Mac to code on, but Linux is oriented more toward hackers. Coding on Windows is a nightmare comparatively. Getting used to a terminal is a crucial skill as a lot of hackers live out of the terminal. The only downside to installing Linux is that you could potentially screw up some of your hard drive partitions if you are unfamiliar with it. So before doing anything permanent, I'd recommend reading up on how partitions work and find a good tutorial on how to install another operating system. Alternatively, you can use software such as VMware or Virtualbox to install another operating system within a virtual environment on your main OS. This gets rid of any pain that might come with partitioning, but it comes at a performance price.
Another valuable tool for any hacker is a good community. Having people to bounce ideas and questions off of is important. More seasoned guys will almost always be open to helping newer guys out. That said, no one wants to hold anyone's hand. So it's probably not in anyone's favor to ask for a "mentor".
Keep challenging yourself and pursuing more information for your toolbox. Keep doing that and you'll be on the right road.