Scripting & Automation
Build a working mental model of how programs think — data, logic, functions, files — and use it to automate repetitive work reliably. A core-technology foundation for Cloud, DevOps, Data, Programming, AI and Security roles alike. Concepts are language-agnostic, shown mainly in Python. Recommended prior knowledge: Cyber Foundations.
What you will be able to do
- Read a script and predict what it does — tracing data through variables, collections, conditionals and loops — instead of guessing.
- Break a repetitive task into functions, process text and files, and handle errors and edge cases so automation is reliable and safe to re-run.
- Design an end-to-end automation workflow — read input, transform it, decide, and produce output — and reason about correctness from the data.
Units
- 01
Why Automate & How a Program Runs
What a script actually is and why automation matters: the difference between doing a task by hand and describing it once so a computer repeats it exactly; how an interpreter runs a script top to bottom; and the input → process → output shape underneath almost every program.
BeginnerAvailableWhy you are learning this
Every later unit — and every role that ever automates work — assumes you can picture what a script is and how it runs. This unit builds that picture and the reason automation is worth learning: reliability and scale that manual work can't reach.
- 02
Data & Variables
The raw material of every program: values and their types (text, numbers, true/false), variables that name and hold values, and expressions that compute new values — plus why a value's type decides what you can do with it.
BeginnerAvailableWhy you are learning this
Data is what automation moves and transforms. Understanding values, types and variables is the vocabulary every script is written in, and the source of a huge share of bugs when a type is misjudged.
Unit contents3
- 03
Collections & Structured Data
Real data comes in groups: ordered lists of items, and key-value maps that look values up by name. How to store many values, read and update them, and iterate over a collection — the structures automation spends most of its time working with.
BeginnerAvailableWhy you are learning this
Almost every automation task is 'do something to each item in a collection', or 'look this up by key'. Lists and maps are the workhorses of data processing, config, and results — you can't automate real work without them.
Unit contents3
- 04
Control Flow: Decisions & Repetition
How a program chooses and repeats: conditionals (if/else) that branch on a true/false test, comparison and boolean logic that build those tests, and loops that repeat an action over data — the logic that turns data into behaviour.
BeginnerAvailableWhy you are learning this
Decisions and repetition are the heart of automation: 'for each record, if it matches, do this'. Getting the condition and the loop right — and their edge cases — is what separates a script that works from one that quietly does the wrong thing.
Unit contents4
- 05
Functions & Reuse
How to name and reuse a piece of logic: defining a function, passing it inputs (parameters) and getting back a result (return value), and why factoring repeated work into functions makes a script readable, testable and DRY (don't repeat yourself).
BeginnerAvailableWhy you are learning this
Functions are how programs are built out of reusable, nameable pieces instead of one long tangle. They are the unit of reuse, testing and collaboration — essential the moment a script grows beyond a few lines.
Unit contents3
- 06
Working with Text & Files
The bread and butter of automation: reading data from files and writing results back, processing text line by line, and the common operations — splitting, searching, formatting — that turn raw text (logs, CSVs, reports) into structured data you can act on.
BeginnerAvailableWhy you are learning this
Most automation is ultimately reading text in, transforming it, and writing text out — parsing a log, processing a data file, generating a report. These file and text skills are where scripting meets real, everyday work.
Unit contents4
- 07
Robustness: Errors, Edge Cases & Idempotency
What separates a demo from real automation: anticipating and handling errors instead of crashing, validating input and edge cases (empty data, missing files, bad values), and making a script idempotent — safe to run more than once without doing harm.
BeginnerAvailableWhy you are learning this
Automation runs unattended, so it must handle the messy reality of real data and failures gracefully. Error handling, edge-case validation and idempotency are exactly what make a script trustworthy enough to schedule and rely on.
Unit contents3
- 08
Putting It Together: An Automation Workflow
Designing a real end-to-end script from the pieces you've learned: read input, transform and filter it, make decisions, and produce a clear output or report — plus a repeatable method for turning a manual task into reliable automation.
BeginnerAvailableWhy you are learning this
The payoff of the whole path: composing data, logic, functions, files and robustness into a working automation, and reasoning about whether it's correct. This end-to-end design is exactly what Cloud, DevOps, Data and Security automation roles do every day.
Recommended next
SOC Analyst L1
Learn how modern SOC analysts monitor, investigate, triage and respond to security events — by doing the work, not by memorising definitions.
Detection Engineering
Turning attacker behavior and telemetry into high-quality, maintainable detections — from requirements and data quality through detection logic, testing, false-positive tuning, coverage and production readiness. Tool-neutral (Sigma-style logic). Recommended prior knowledge: SOC, Threat Hunting or Malware Analysis.