The importance of coding for cyber security depends on two things: your work role and desired expertise. Early on, coding is less important since there are other learnable skills that are quicker to pick up. Some examples include: computer networking, operating system architecture, and system administration. Mastering these skills can better serve beginners earlier on in cyber security.
But as you grow in expertise over time, a lack of programming will limit your effectiveness. Here’s why.
Our ability to shape and control the physical or digital world depends on TOOLS. Almost every tool in cyber security consists of code. Even hardware like switches, network taps, and storage media have firmware and drivers.
By way of the UNIX philosophy, tools are specialized and purpose-specific. This is because loosely coupled software is easier to compose and debug. It’s generally a better design pattern. Hence, you’ll often face problems that don’t have the right tool to solve a cyber security problem. Knowing how to program lets you develop tailored solutions to overcome this. Otherwise, you’ll be stuck relying on a teammate or vendor who knows how to code.
There is a distinction between scripting and software development to keep in mind. Many people often use “coding” or “programming” to describe both. Software development is a broad term covering scripting, but also includes other topics. Scripting involves automating tasks with an interpreted language like Python or Bash. It’s a skill learnable within 2-3 months of dedicated practice. Better yet, it’s more often used in day-to-day cyber security work for operators. People who can script are often many times more effective than those who can’t in the cyber security field.
So for those without a computer science background, it’s worth it to learn scripting. It lets you understand tools at a deeper level, altering or composing them together. At the end of the day, cyber security is a team effort. The magic in the interplay between them. If you can’t code, it’s never too late to learn. If you can, be the hero for others who can’t.
Automate the Boring Stuff with Python (2nd ed):
Learn Powershell in a Month of Lunches:
UNIX and Linux System Administration Handbook
00:00 How important is coding?
00:35 Relationship between tooling and skills
01:49 3 Types of cyber security professionals
04:07 My experience in cyber with no coding
05:59 Scripting vs. software development
07:23 Should you learn scripting?
07:59 Resources to learn scripting
08:26 Final verdict
We released our very own Discord server! Join the cybersecurity conversation at https://discord.gg/ZKwR9CV
FOLLOW and SUBSCRIBE!
#CyberSecurity #Programming #Cyberspatial