@IamMe, I want to do a lot with programming, as a white/grey hat "hacker". I want to build my way up from knowing absolutely little to no hacking and programming skills to being an advanced programmer. I want to build OS's from dirt (scratch), be a security expert, specialize in penetration testing. I cant lie about me wanting to crack a password or two. I want to start off with the easiest language and go from there (or whatever suits me best in specifically what I want to do.) After all I do have Kali Linux 2.0 which is loaded with hacking tools, but don't know how to use any of them yet.
I've never heard of it until now.
The Quieter You Become, The More You Are Able To Hear. -Kali Linux
Staff note: Stop double posting, use the modify button.
Do NOT look for 'easy', look for 'versatile'. If you're wanting to do all of those things, particularly that which requires lower-level experience(systems level development, for operating systems), then you should start with C. You should start with C anyway, but really..you're basically asking directly to learn C.
C is used for basically everything.
- Your OS is coded in it(as most are).
- System libraries are coded in it.
- In searching for major vulnerabilities, you'll need to know C.
- Most programming languages that are popular today are related to C.
- Most of the technology that's used on the Internet is designed around BSD sockets, which are implemented in C.
- You WILL need to learn it to achieve your goals.
Python is 'okay' and all, and it may give you a bit of a jump into 'immediate satisfaction', knowing that you can accomplish something relatively quickly. But, ultimately, your best bet is to learn C first and branch out from there. With a solid understanding of C, every other programming language is easier to learn, because you've learned the root. It's kinda like learning Latin and then being able to more easily understand languages that evolved from Latin. There are some differences between languages, obviously, but the similarities that exist make the differing syntax easier to learn.