Languages

Languages#

Programming is the operator’s craft for building the services, systems, tools, and infrastructure CYBINT tradecraft runs on.

Languages, algorithms, markup, data formats, DSLs, databases, version control, the SDLC, and AI tooling all feed the same craft. Whether shipping a one-shot script for a range, a long-lived sensor for the SOC, or a parser to triage captured traffic, the disciplines below carry the work from intent to artifact.

Pick the language that fits the host and the job. Python for glue and data work. JavaScript and TypeScript when the target is the browser or Node. Go for static binaries the operator can drop and run. C and Rust for systems work, parsers, and anything that touches the kernel. Lua where another tool embeds it. Assembly when the operator has to read what the compiler produced.

Language

Mode

Typing

Memory

Operator’s use case

Python

Interpreted

Dynamic

GC

Glue, data science, prototypes, OSINT, exploit prototyping.

Lua

Interpreted

Dynamic

GC

Embedded in tools (Neovim, Redis, OpenResty, Wireshark).

JavaScript

Interpreted

Dynamic

GC

Browser, web scrapers, frontend development.

TypeScript

Transpiled

Static (gradual)

GC

Typed Node services, larger JavaScript codebases.

Node

Runtime (V8 + libuv)

Dynamic

GC

Server-side JavaScript, APIs, scrapers, agents, glue services.

Go

Compiled

Static

GC

Static binaries for drop-and-run tools and services.

C

Compiled

Static (weak)

Manual

Systems, parsers, kernel-adjacent code.

Rust

Compiled

Static (strong)

Borrow checker

Systems with memory safety, parsers, exploit chains.

Assembly

Assembled

Manual

Reading what the compiler produced, shellcode.

Each language page below follows the same outline, setup, tools, language, patterns, structures, algorithms, libraries, frameworks, networking, projects, so concepts compare directly across them. The structure stays constant; only the syntax changes.

Bash lives under Scripting (a shell, not a programming language). Domain-specific languages like awk, sed, and jq live under DSLs. AI tooling, agents, and prompt patterns under Agentic. Markup and data formats under Data Formats and Data Formats.

Python

Glue, data, prototypes, OSINT, exploit prototyping. Interpreted, dynamic, GC.

Python
Lua

The language embedded in other tools. Neovim, Redis, OpenResty, Wireshark.

Lua
JavaScript

Browser, Node, web scrapers, frontend tradecraft.

JavaScript
TypeScript

Typed JS. Larger Node services and big browser codebases.

TypeScript
Go

Static binaries for drop-and-run tools and services.

Go
C

Systems, parsers, kernel-adjacent code.

C
Rust

Systems with memory safety. Parsers, exploit chains, and anywhere you want no GC.

Rust
Assembly

Reading what the compiler produced. Shellcode.

Assembly