Required Technical Skills to be a Hacker
Hacking without any technical skill and knowledge is a dream that can't come true, but what kind of technical knowledge is required to become a hacker is the real question. The intangible skills alone can't give you success in the field of information security, you need to have the in depth understanding of how technology is actually working; you need to understand the systems and processes, from electrical pulses to radio frequency, from bits to bytes and from Windows OS to Linux OS. There are many computer languages are required your attention but to follow the right direction is the real deal that will lead you to your destination.
Computer Networking
There are so many things to discuss under the single heading of computer networking, but as you can't be an expert on everything so the recommendation is to know everything a little, at least.
You should understand the OSI layer model and it protocols (HTTP, FTP, IP, TCP, BGP, NAT, DHCP etc etc) – protocols depend on the layer of the OSI model. Learn the art of routing, how router and switches work, understands the wireless protocols for WiFI hacking (oh come on, learn something with the intention of learning).
There are many books are available on the aforementioned topics but it is always recommended to get a mentor who guide you throughout your journey. You have done or if you are doing any degree in computer science (or related field) then you are most likely to learn all these topics, however if you want self study then start your study now because each topic may cover an entire book.
Operating System Skills
To understand the operating system is very crucial to be succeed in infosec world. Understanding the OS does not mean to install/configure and use the OS efficiently; it means to understand the concept, the flow and the architecture of an operating system. You should not limit yourself to any specific OS, learn as much possible as you can including mobile OS (Android, iOS etc.).
Programming & Scripting Languages
There is a saying that, “Programming is not necessarily required to become a hacker/infosec professional”. Let's break it and try to understand this saying, it is true that most of the successful penetration testers don’t write code but it does not mean that they can't write or they don't understand the coding. So understanding is the KEY, you should understand the tool you are using for your test and don't forget the importance of manual penetration testing and code review.
Learn the programming languages for example: C, C++, Java etc. The scripting languages are also important, including but not limited to: Perl, Ruby, bash etc.
Conclusion
At the end of this article,we can conclude that learning is the key and learning is the most important aspect to survive in the field of information security, keep in mind that technology is changing everyday and you need to change your mind at the same speed else you will be kept behind. Learn the existing, previous and upcoming technology infrastructure and languages; as you are more likely to break the code you understand fully.