Skip to main content

How To Learn Programming For A Cybersecurity Career

This is the first step I took in learning. I had to learn coding and my amazing Googling skills thought me this. Programming is not necessary for InfoSec, but knowing how to program definitely helps and makes your job easier.


Let me make this simple:

From what I have learned, you only need to know these:
  • C/C++/Java
  • Python
  • JavaScript and PHP  
  • Bash Scripting 
Now let me explain.

You need to learn any one of  C/C++/Java. Why?


These languages teach you the "basics" of programming.

C is pretty much used to build every OS.  It is an early language that will teach you the fundamentals of programming.

C++ is big brother of C. It will teach you what you didn't learn in C.

Java is a more modern version and is the most used fundamental programming language. It is easier to learn than the other two.
If you learn learn C/C++ first and then move to Java it will be quite easy. But, if you learn Java first and then want to move to C/C++ it will be very hard.

I personally learnt C++ and I had a lot of fun doing it. It made learning other programming languages very easy.
 
Also see: Differences between C, C++ and Java

Books:
The C Programming Language
C++, The Complete Reference
C, The complete guide
Object Oriented Programming with C++
Java, The Compete Reference(10)
Java, The Complete Reference(9)

 



PYTHON


Now this is the language that I love.

This is the easiest language to learn.

But that does not mean it isn't powerful. It is one of the most powerful languages. You can basically use it to go anything. A lot of tools have been written in Python. Python is also widely used when performing crypto-analysis and malware-analysis.

Learning Python was awesome. It is so simple and easy. I took no more than a month. But, this is also because I knew how to program in C++.

Books:
Learn Python The Hard Way
Python for Beginners
Automate The Boring Stuff with Python
Python Crash Course


See: Python Website



JavaScript and PHP

Simple, JavaScript is the most used implementation language and PHP is the most used Server-side scripting language. It will be extremely helpful to you.

These languages are very useful if you want to learn about web-apps and the web in general.

Books:
Learning PHP, MySQL & JavaScript with jQuery, CSS & HTML5
JavaScript, The Complete Reference
JavaScript, The Good Parts
PHP, The Complete Reference

See: JavaScript Website and PHP Website


BASH

It is a great scripting language. To become a CyberSecurity expert, you need to be able to Linux comfortably and BASH helps you in doing that.

I’d suggest people who are unfamiliar with Linux to learn some of the language as it would not only help with automating menial tasks, but also most likely will introduce you to new commands.

Books:
Bash Pocket Reference: Help for Power Users and Sys Admins
Mastering Linux Shell Scripting,: A practical guide to Linux command-line, Bash scripting, and Shell programming
Shell Scripting: How to Automate Command Line Tasks Using Bash Scripting and Shell Programming

See: What is a Bash Script?

 



CONCLUSION:

These languages are not necessary but will help you a lot

It is better to know these languages because you never know if it will help you. 

Also it does increase your knowledge in the subject. 


Thanks for reading!

AZID 

Comments

Most Viewed Content:

OverTheWire Bandit: Level 0-14

Bandit Levels Levels 0-14 Levels 14-25 Levels 25-33 Please use Ctrl+F to find your desired Level. Level 0 Bandit Level 0 Level Goal The goal of this level is for you to log into the game using SSH. The host to which you need to connect is bandit.labs.overthewire.org, on port 2220. The username is bandit0 and the password is bandit0. Once logged in, go to the Level 1 page to find out how to beat Level 1. Commands you may need to solve this level 2/31 ssh kali@kali:~$ ssh bandit0@172.9.9.176 -p 2220 password: bandit0 Level 0 -> Level 1 Level Goal The password for the next level is stored in a file called readme located in the home directory. Use this password to log into bandit1 using SSH. Whenever you find a password for a level, use SSH (on port 2220) to log into that level and continue the game. Commands you may need to solve this level ls, cd, cat, file, du, find Password for next level: boJ9jbbUNNfktd78OOpsqOltutMc3MY1 Level 1 -> Level 2 Level Goal The password for the next le...

Best YouTube Channels To Learn Hacking!

1. Hak5 This is one of the best channels out there which will teach you overall skill of how to hack! There are hundreds of videos of various topics which covers almost all skills including Linux , Webapps , Languages etc. Very active channel. 2. DEFCONConference , Christiaan008 , Black Hat You might know these as they are official channels of DEFCON and BlackHat Conferences. They have some great talks and you should definitely check out their popular uploads. These channels post only during a certain time. 3. LiveOverflow  This is a great channel if you want to dive into CTF's and penetration testing . This channel also has videos that will motivate you to pursue InfoSec. Very active channel. 4. John Hammond , IppSec , GynvaelEN These are CTF channels that post walk-throughs from well known websites. Very important if you're into CTF's. 5. JackkTutorials ,  DemmSec Jack has some brilliant tutorials on penetration testing.  DemmSec also has s...

Best Reddit Subreddits for Cybersecurity and Hacking!

Reddit is a very useful website for discussions about everything. For cybersecurity and hacking too, it has useful subreddits, in which, you will learn a lot of things you previously had no knowledge of. So, I have compiled a list of security related subreddits. 1. Active and Most helpful subreddits: /r/netsec /r/AskNetsec /r/netsecstudents These three are pretty much it. They have very active communities and are very helpful. I, personally use  /r/netsecstudents a lot because I'm still in the process of learning and that subreddit(if you look properly) will tell you how to make a career in every security field. 2. Security Certification Subreddits: r/CompTIA (for Security+) r/ccna (for CCNA and CCNA Security, also r/ccnp for CCNP) r/CEH (for CEH) r/cissp (Certified Information Systems Security Professional) r/oscp (Offensive Security Certified Professional) Really helpful if you're doing any of these Certs. 3. Other...