{
  "name": "CodersLingo — IT English Terms Open Dataset",
  "description": "An open dataset of IT / software-engineering English terms with plain-English definitions, extracted from the CodersLingo glossary.",
  "license": "CC BY 4.0",
  "source": "https://coderslingo.com/glossary/",
  "count": 540,
  "generatedAt": "2026-07-05",
  "terms": [
    {
      "term": "--dry-run, -n (Dry Run)",
      "definition": "Show what the command WOULD do without actually doing it. Critical safety flag for destructive operations.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "--no-X, --without-X (Negation flag)",
      "definition": "Disable a feature that is on by default.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "--version, -V (Version)",
      "definition": "Print the tool's version string and exit. Always useful when reproducing bugs.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "-f, --force (Force)",
      "definition": "Skip confirmation prompts and proceed even when the action would normally be blocked or warned about.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "-h, --help (Help)",
      "definition": "Print the command's usage information and exit.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "-i, --interactive (Interactive)",
      "definition": "Prompt for confirmation before each step instead of acting automatically.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "-o, --output (Output)",
      "definition": "Specify where the command should write its output — a file, a format, or a directory.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "-q, --quiet, --silent (Quiet / Silent)",
      "definition": "Suppress non-essential output. Useful in scripts where you only care about the exit code.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "-r, -R, --recursive (Recursive)",
      "definition": "Apply the operation to every file in a directory tree, going into all sub-directories.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "-v, --verbose (Verbose)",
      "definition": "Print extra detail about what the command is doing. Useful for debugging.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": "-y, --yes, --assume-yes (Auto-Yes)",
      "definition": "Automatically answer \"yes\" to all confirmation prompts. Used in scripts where you can't respond interactively.",
      "example": "",
      "category": "cli-flags"
    },
    {
      "term": ":wq (write & quit)",
      "definition": "Vim: save the file and close the editor. The legendary \"how do I exit Vim\" answer.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "/d (hasIndices)",
      "definition": "Include match start/end indices for the full match and each capture group in the result.",
      "example": "",
      "category": "regex-flags"
    },
    {
      "term": "/g (Global)",
      "definition": "Match all occurrences in the string, not just the first one.",
      "example": "",
      "category": "regex-flags"
    },
    {
      "term": "/i (Case-Insensitive)",
      "definition": "Match letters regardless of upper/lower case.",
      "example": "",
      "category": "regex-flags"
    },
    {
      "term": "/m (Multiline)",
      "definition": "Makes ^ and $ match the start and end of each line, not just the whole string.",
      "example": "",
      "category": "regex-flags"
    },
    {
      "term": "/s (DotAll (single line))",
      "definition": "Makes . match newline characters too, not just non-newline characters.",
      "example": "",
      "category": "regex-flags"
    },
    {
      "term": "/search",
      "definition": "Vim: search forward for a pattern. Press n for the next match, N for the previous.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "/u (Unicode)",
      "definition": "Treats the pattern as a sequence of Unicode code points, not bytes. Enables \\u{...} escapes and \\p{...} property matches.",
      "example": "",
      "category": "regex-flags"
    },
    {
      "term": "/x (Extended / Verbose)",
      "definition": "Allow whitespace and # comments inside the pattern for readability. Not available in JavaScript.",
      "example": "",
      "category": "regex-flags"
    },
    {
      "term": "/y (Sticky)",
      "definition": "Matches only at the lastIndex position of the regex; does not scan forward.",
      "example": "",
      "category": "regex-flags"
    },
    {
      "term": "> and >>",
      "definition": "Redirect output — > overwrites a file with output. >> appends to a file.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "| (pipe)",
      "definition": "Pipe — Send the output of one command as the input to the next.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "⏸️ Paused / On hold",
      "definition": "Work is intentionally paused — not abandoned, just not active right now.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "♻️ Refactor",
      "definition": "gitmoji: refactor code without changing behaviour.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "⚡ Performance",
      "definition": "A performance or speed improvement.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "✅ Done / Passing",
      "definition": "A task is complete, a check passed, or a box is ticked.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "✏️ Typo fix",
      "definition": "gitmoji: fix a typo.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "✨ New feature",
      "definition": "gitmoji: introduce a new feature.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "❌ Failed / Rejected",
      "definition": "Something failed, was rejected, or is not done.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "⬆️ Upgrade dependency",
      "definition": "Bump a dependency to a newer version.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "⬇️ Downgrade dependency",
      "definition": "Roll a dependency back to an older version.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🎨 Code style",
      "definition": "gitmoji: improve structure or format of the code.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🎯 Goal / Target",
      "definition": "A goal, objective, or the thing we are aiming at.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🐛 Bug",
      "definition": "A defect — something behaves incorrectly.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "👀 Reviewing / Eyes on",
      "definition": "Someone is looking at it — acknowledging or actively reviewing.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "💡 Idea / Suggestion",
      "definition": "A suggestion, idea, or non-blocking proposal.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "💥 Breaking change",
      "definition": "A change that breaks backward compatibility — consumers must update.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "📝 Docs",
      "definition": "Documentation — writing or updating it.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🔄 In review / Syncing",
      "definition": "In progress in a cyclical sense — under review, syncing, or being reprocessed.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🔒 Security fix",
      "definition": "A change that addresses a security vulnerability.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🔥 Hotfix / Urgent",
      "definition": "On fire — urgent, needs attention now.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🔴 Red status",
      "definition": "Down, blocked, or critical. The \"stop, this is broken\" light.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🧪 Tests",
      "definition": "gitmoji: add or update tests.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🚀 Deploy / Ship / Launch",
      "definition": "Shipping it — a deploy, release, or launch.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🚑 Critical hotfix",
      "definition": "An emergency fix for a critical production issue.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🚧 Work in progress",
      "definition": "Under construction — not finished, handle with care.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🟡 Yellow status",
      "definition": "Degraded or warning — working, but not fully healthy.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "🟢 Green status",
      "definition": "All healthy / operational. The \"everything is fine\" light.",
      "example": "",
      "category": "status-emoji"
    },
    {
      "term": "200 OK",
      "definition": "The request succeeded. The server returned the requested data.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "201 Created",
      "definition": "A new resource was successfully created.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "204 No Content",
      "definition": "The request succeeded, but there is no response body to return.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "206 Partial Content",
      "definition": "The server is delivering only part of the resource.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "301 Moved Permanently",
      "definition": "The resource has permanently moved to a new URL.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "302 Found",
      "definition": "The resource is temporarily at a different URL.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "304 Not Modified",
      "definition": "The resource has not changed since the client last fetched it — use your cached version.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "400 Bad Request",
      "definition": "The server could not understand the request because of invalid syntax.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "401 Unauthorized",
      "definition": "The request requires authentication. The client must identify itself.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "403 Forbidden",
      "definition": "The server understood the request but refuses to authorise it.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "404 Not Found",
      "definition": "The requested resource does not exist at this URL.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "405 Method Not Allowed",
      "definition": "The HTTP method used is not supported for this endpoint.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "409 Conflict",
      "definition": "The request conflicts with the current state of the resource.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "422 Unprocessable Entity",
      "definition": "The request is well-formed, but the server cannot process it because of semantic errors.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "429 Too Many Requests",
      "definition": "The client has sent too many requests in a given time window (rate limiting).",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "500 Internal Server Error",
      "definition": "Something went wrong on the server. The server encountered an unexpected condition.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "502 Bad Gateway",
      "definition": "The server was acting as a gateway and received an invalid response from upstream.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "503 Service Unavailable",
      "definition": "The server is temporarily unable to handle the request.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "504 Gateway Timeout",
      "definition": "The server was acting as a gateway and did not receive a timely response from upstream.",
      "example": "",
      "category": "http-status-codes"
    },
    {
      "term": "Abstract Factory",
      "definition": "Provide an interface for creating families of related objects without specifying their concrete classes.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "Abstraction",
      "definition": "Hiding complex implementation details and showing only the essential features. A TV remote abstracts all the electronics — you just press the button.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Abstraction Level",
      "definition": "Declarative code operates at a higher level of abstraction — you express intent, not mechanism. HTML says \"this is a heading\", not \"draw pixels at these coordinates\".",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Accept",
      "definition": "What response formats the client can handle. Server picks one in Content-Type.",
      "example": "Accept: application/json, text/html;q=0.9",
      "category": "http-headers"
    },
    {
      "term": "Accept-Encoding",
      "definition": "Which compression algorithms the client supports for the response body.",
      "example": "Accept-Encoding: gzip, br",
      "category": "http-headers"
    },
    {
      "term": "Accept-Language",
      "definition": "What human languages the client prefers, with weights. Used for content negotiation.",
      "example": "Accept-Language: en-US,en;q=0.9,uk;q=0.8",
      "category": "http-headers"
    },
    {
      "term": "Access-Control-Allow-Credentials",
      "definition": "Whether the response may be exposed to JS when the request was made with credentials (cookies, Authorization).",
      "example": "Access-Control-Allow-Credentials: true",
      "category": "http-headers"
    },
    {
      "term": "Access-Control-Allow-Headers",
      "definition": "Sent in preflight responses listing which request headers are allowed cross-origin.",
      "example": "Access-Control-Allow-Headers: Content-Type, Authorization",
      "category": "http-headers"
    },
    {
      "term": "Access-Control-Allow-Methods",
      "definition": "Sent in preflight responses (200 OPTIONS) listing which HTTP methods are allowed cross-origin.",
      "example": "Access-Control-Allow-Methods: GET, POST, PUT, DELETE",
      "category": "http-headers"
    },
    {
      "term": "Access-Control-Allow-Origin",
      "definition": "Server's answer to cross-origin requests: which origins may read this response. The most-asked-about HTTP header on Stack Overflow.",
      "example": "Access-Control-Allow-Origin: https://app.example.com",
      "category": "http-headers"
    },
    {
      "term": "Access-Control-Max-Age",
      "definition": "How long the browser may cache the preflight response. Avoids OPTIONS round trips.",
      "example": "Access-Control-Max-Age: 600",
      "category": "http-headers"
    },
    {
      "term": "ACID",
      "definition": "The four guarantees a transactional database gives: Atomicity, Consistency, Isolation, Durability.",
      "example": "-- Atomic: both or neither BEGIN; UPDATE accounts SET bal = bal - 100 WHERE id = 1; UPDATE accounts SET bal = bal + 100 WHERE id = 2; COMMIT;",
      "category": "sql"
    },
    {
      "term": "Adapter",
      "definition": "Convert the interface of a class into another interface that clients expect — making incompatible interfaces work together.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "ADD",
      "definition": "Like COPY but with extras: it can fetch remote URLs and auto-extract local tar archives.",
      "example": "ADD release.tar.gz /opt/app/",
      "category": "docker"
    },
    {
      "term": "Add Cursor Above / Below",
      "definition": "Stack extra cursors on the lines above or below to type the same thing on many lines.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Add Cursor at Click",
      "definition": "Drop an additional cursor anywhere you click while holding the modifier.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "ADR (Architecture Decision Record)",
      "definition": "A document that captures an important architectural decision, including the context, options considered, and the rationale for the chosen approach.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "annotation",
      "definition": "A key/value note attached to an object for tools and humans — not used for selection. Holds metadata like ingress config or change cause.",
      "example": "metadata: annotations: nginx.ingress.kubernetes.io/rewrite-target: / kubernetes.io/change-cause: \"bump to v1.27\"",
      "category": "kubernetes"
    },
    {
      "term": "anonymous volume",
      "definition": "A volume with a random name created automatically — by a VOLUME directive or a -v with no source name. Easy to leave dangling.",
      "example": "docker run -v /var/lib/data myapp:1.0",
      "category": "docker"
    },
    {
      "term": "API (Application Programming Interface)",
      "definition": "A set of rules that allows different software systems to communicate with each other. Think of it as a menu in a restaurant — it tells you what you can order, how to order it, and what you will get back.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "apply",
      "definition": "Create or update resources from a manifest, declaratively. Kubernetes diffs your file against the live state and reconciles.",
      "example": "kubectl apply -f deployment.yaml kubectl apply -k ./overlays/prod",
      "category": "kubernetes"
    },
    {
      "term": "apply",
      "definition": "Actually makes the changes to reach the desired state. Asks for confirmation unless you pass -auto-approve.",
      "example": "terraform apply tfplan",
      "category": "terraform"
    },
    {
      "term": "ARG",
      "definition": "A build-time variable, passed with --build-arg. Available only during the build, not in the running container.",
      "example": "ARG VERSION=1.0 RUN echo \"building $VERSION\"",
      "category": "docker"
    },
    {
      "term": "Asynchronous",
      "definition": "A pattern where operations happen independently of the main program flow. The caller does not wait for the operation to complete before moving on. Contrast with synchronous.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "attribute",
      "definition": "A name = value assignment inside a block. Also called an argument.",
      "example": "instance_type = \"t3.micro\"",
      "category": "terraform"
    },
    {
      "term": "Authorization",
      "definition": "How the client identifies itself — usually a Bearer token, Basic credentials, or an API key.",
      "example": "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9...",
      "category": "http-headers"
    },
    {
      "term": "Autocomplete",
      "definition": "Complete a file name, command, or path. Press twice to list all matches.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "B-tree index",
      "definition": "The default, general-purpose index. Balanced tree that supports equality and range queries and ORDER BY.",
      "example": "CREATE INDEX idx_orders_created ON orders (created_at);",
      "category": "sql"
    },
    {
      "term": "Backlog",
      "definition": "An ordered list of all work items (features, bugs, technical debt) that a development team intends to work on. Maintained and prioritised by the product owner.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Backpressure",
      "definition": "When a producer emits values faster than the consumer can process them, backpressure mechanisms (buffering, dropping, windowing) prevent overwhelming the consumer.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "base image",
      "definition": "The image your Dockerfile starts FROM. Everything else is layered on top of it — e.g. node:22-alpine or scratch.",
      "example": "FROM node:22-alpine",
      "category": "docker"
    },
    {
      "term": "BEGIN / COMMIT / ROLLBACK",
      "definition": "Start a transaction, then make all its changes permanent (COMMIT) or throw them all away (ROLLBACK).",
      "example": "BEGIN; DELETE FROM logs WHERE created_at < now() - interval '90 days'; ROLLBACK; -- changed my mind",
      "category": "sql"
    },
    {
      "term": "bind mount",
      "definition": "Mounts a specific host directory or file into the container. Changes flow both ways — great for live-reloading source in development.",
      "example": "docker run -v $(pwd)/src:/app/src myapp:1.0",
      "category": "docker"
    },
    {
      "term": "block",
      "definition": "The fundamental HCL container: a type, optional labels, and a body in braces. resource, variable, module are all blocks.",
      "example": "block_type \"label_one\" \"label_two\" { argument = value }",
      "category": "terraform"
    },
    {
      "term": "Blue-green deployment",
      "definition": "A release strategy using two identical environments (\"blue\" and \"green\"). Traffic is switched to the new version (green) while the old version (blue) remains on standby for instant rollback.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "bridge",
      "definition": "The default network driver. Containers get a private IP on a virtual bridge and reach the outside world via NAT.",
      "example": "docker network create --driver bridge appnet docker run --network appnet myapp:1.0",
      "category": "docker"
    },
    {
      "term": "build",
      "definition": "Tells Compose to build an image from a Dockerfile instead of pulling one. Can point at a context and a specific Dockerfile.",
      "example": "services: web: build: context: . dockerfile: Dockerfile args: VERSION: \"1.0\"",
      "category": "docker"
    },
    {
      "term": "Builder",
      "definition": "Separate the construction of a complex object from its representation, allowing the same process to create different types.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "burn rate",
      "definition": "How fast you’re consuming the error budget relative to \"on pace\". A burn rate of 1 spends it exactly over the window; higher means trouble.",
      "example": "burn_rate = (error_rate) / (1 - SLO) 14.4x over 1h → page now",
      "category": "observability"
    },
    {
      "term": "Cache",
      "definition": "A temporary storage layer that keeps copies of frequently accessed data so future requests can be served faster. Pronounced /kæʃ/ (\"cash\"), not \"catch\".",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Cache-Control",
      "definition": "The dominant caching directive. Controls how/whether responses are cached by browsers, CDNs, and proxies.",
      "example": "Cache-Control: public, max-age=31536000, immutable",
      "category": "http-headers"
    },
    {
      "term": "Call Stack",
      "definition": "When procedure A calls procedure B which calls procedure C, they stack up. When C returns, control goes back to B, then to A. The call stack tracks this return order.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Callback",
      "definition": "A function passed to another function to be called when an event completes. The classic pattern before promises and async/await.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Cancel / Interrupt (SIGINT)",
      "definition": "Stop the running command — send an interrupt signal to whatever is in the foreground.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "cardinality",
      "definition": "The number of unique label combinations a metric has. High cardinality (e.g. user_id as a label) blows up storage and cost.",
      "example": "http_requests{user_id=\"...\"} → millions of series = bad",
      "category": "observability"
    },
    {
      "term": "CASE",
      "definition": "SQL’s if/else expression — return different values per row based on conditions. Handy for bucketing and pivoting.",
      "example": "SELECT name, CASE WHEN age < 18 THEN 'minor' WHEN age < 65 THEN 'adult' ELSE 'senior' END AS bracket FROM people;",
      "category": "sql"
    },
    {
      "term": "cat",
      "definition": "Concatenate and print — Print the entire contents of a file to the terminal.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "cd",
      "definition": "Change Directory — Navigate to a different directory.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "CDN (Content Delivery Network)",
      "definition": "Serves your static files (images, CSS, JS) from an edge server near the user — dramatically reducing load times globally. (AWS: CloudFront; GCP: Cloud CDN; Azure: Azure CDN / Front Door)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Chain of Responsibility",
      "definition": "Pass a request along a chain of handlers, each deciding to process it or pass it to the next handler in the chain.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "chmod",
      "definition": "Change Mode — Change the read/write/execute permissions of a file.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "chown",
      "definition": "Change Owner — Change the owner (user and group) of a file or directory.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "CI/CD (Continuous Integration / Continuous Deployment)",
      "definition": "A practice where code changes are automatically tested (CI) and deployed to production (CD) after passing all checks, reducing manual effort and human error.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "ciw (change inner word)",
      "definition": "Vim: delete the word under the cursor and drop straight into insert mode to retype it.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Class",
      "definition": "A blueprint or template describing what an object looks like and what it can do. Like architectural plans — the plans are not a building, but you build from them.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Clear Screen",
      "definition": "Wipe the terminal screen, keeping the current command line intact.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "ClusterIP",
      "definition": "The default Service type. Gives the Service an internal-only virtual IP reachable from inside the cluster — not from the outside world.",
      "example": "spec: type: ClusterIP # default, can be omitted ports: - port: 80",
      "category": "kubernetes"
    },
    {
      "term": "CMD",
      "definition": "The default command run when a container starts. Easily overridden by arguments to docker run.",
      "example": "CMD [\"node\", \"server.js\"]",
      "category": "docker"
    },
    {
      "term": "COALESCE",
      "definition": "Returns the first non-NULL argument. The standard way to supply a default for NULL values.",
      "example": "SELECT COALESCE(nickname, name, 'Anonymous') AS display FROM users;",
      "category": "sql"
    },
    {
      "term": "Command",
      "definition": "Encapsulate a request as an object, letting you parameterise methods, queue requests, log them, and support undoable operations.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "Command Palette",
      "definition": "Search and run any command the editor can do, by name. If you forget a shortcut, this is how you find it.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Composite",
      "definition": "Compose objects into tree structures to represent part–whole hierarchies, letting clients treat individual objects and compositions uniformly.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "composite index",
      "definition": "An index on multiple columns. Order matters — it can serve queries that use a leftmost prefix of the columns.",
      "example": "CREATE INDEX idx_orders_user_date ON orders (user_id, created_at);",
      "category": "sql"
    },
    {
      "term": "ConfigMap",
      "definition": "Stores non-secret configuration as key/value pairs. Mount it as files or inject it as environment variables — keeps config out of the image.",
      "example": "apiVersion: v1 kind: ConfigMap metadata: name: app-config data: LOG_LEVEL: \"info\" feature.flags: \"beta=on\"",
      "category": "kubernetes"
    },
    {
      "term": "ConnectionRefused",
      "definition": "The attempt to connect to a server was explicitly rejected — no service is listening on the target port.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "container",
      "definition": "A running (or stopped) instance of an image — an isolated process with its own filesystem, network, and process tree.",
      "example": "docker run -d --name web myapp:1.0 docker ps",
      "category": "docker"
    },
    {
      "term": "container DNS",
      "definition": "Docker runs an embedded DNS server on user-defined networks so containers resolve each other by name or alias.",
      "example": "# from the \"web\" container, on a shared network: ping db curl http://db:5432",
      "category": "docker"
    },
    {
      "term": "Container Hosting (PaaS)",
      "definition": "Run a Docker container without managing infrastructure. Simpler than Kubernetes — you give it a container image and it handles scaling. (AWS: ECS / App Runner; GCP: Cloud Run; Azure: Azure Container Apps)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Container Registry",
      "definition": "Stores your Docker images privately. Your CI pipeline pushes images here after building; Kubernetes pulls from here when deploying. (AWS: ECR (Elastic Container Registry); GCP: Artifact Registry; Azure: Azure Container Registry)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Containerisation",
      "definition": "Packaging an application and its dependencies into a container (e.g. Docker) so it runs consistently across different environments.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Content-Length",
      "definition": "Size of the response body in bytes. Lets the client know how much to read.",
      "example": "Content-Length: 4823",
      "category": "http-headers"
    },
    {
      "term": "Content-Security-Policy",
      "definition": "CSP — controls what resources (scripts, styles, images) the browser is allowed to load. Strongest XSS defence in depth.",
      "example": "Content-Security-Policy: default-src 'self'; script-src 'self' 'nonce-abc123'",
      "category": "http-headers"
    },
    {
      "term": "Content-Type",
      "definition": "The media type of the request body. Required when sending a body.",
      "example": "Content-Type: application/json; charset=utf-8",
      "category": "http-headers"
    },
    {
      "term": "context propagation",
      "definition": "Passing trace identifiers (trace_id, span_id) across service boundaries — usually in HTTP headers — so spans link into one trace.",
      "example": "traceparent: 00-ab12...-cd34...-01",
      "category": "observability"
    },
    {
      "term": "Cookie",
      "definition": "Cookies the browser is sending back to the server for this domain.",
      "example": "Cookie: session=abc123; theme=dark",
      "category": "http-headers"
    },
    {
      "term": "COPY",
      "definition": "Copies files/directories from the build context into the image. The plain, predictable way to add your source code.",
      "example": "COPY package*.json ./ COPY src ./src",
      "category": "docker"
    },
    {
      "term": "Copy Line Up / Down",
      "definition": "Duplicate the current line above or below the original.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "count",
      "definition": "Creates N copies of a resource. Each instance is addressed by index — resource[0], resource[1].",
      "example": "resource \"aws_instance\" \"web\" { count = 3 instance_type = \"t3.micro\" }",
      "category": "terraform"
    },
    {
      "term": "COUNT / SUM / AVG / MIN / MAX",
      "definition": "The standard aggregate functions. COUNT(*) counts rows; COUNT(col) ignores NULLs; the rest reduce a column to one value.",
      "example": "SELECT COUNT(*), SUM(total), AVG(total), MIN(total), MAX(total) FROM orders;",
      "category": "sql"
    },
    {
      "term": "counter",
      "definition": "A metric that only ever increases (or resets to zero on restart). You take its rate() to get a per-second value.",
      "example": "rate(http_requests_total[5m])",
      "category": "observability"
    },
    {
      "term": "covering index",
      "definition": "An index that contains every column a query needs, so the database answers from the index alone — an index-only scan.",
      "example": "CREATE INDEX idx_cover ON orders (user_id) INCLUDE (total, status);",
      "category": "sql"
    },
    {
      "term": "cp",
      "definition": "Copy — Copy files or directories.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "CronJob",
      "definition": "Creates Jobs on a cron schedule. The Kubernetes equivalent of crontab — for backups, reports, and periodic cleanup.",
      "example": "apiVersion: batch/v1 kind: CronJob metadata: name: nightly-backup spec: schedule: \"0 2 * * *\" jobTemplate: spec: template: spec: restartPolicy: OnFailure containers: - name: backup image: backup-tool:2.0",
      "category": "kubernetes"
    },
    {
      "term": "CROSS JOIN",
      "definition": "The Cartesian product — every row of A paired with every row of B. No ON clause.",
      "example": "SELECT s.size, c.color FROM sizes s CROSS JOIN colors c;",
      "category": "sql"
    },
    {
      "term": "CTE (WITH)",
      "definition": "A named, inline result set defined with WITH that you can reference like a table. Improves readability and enables recursion.",
      "example": "WITH recent AS ( SELECT * FROM orders WHERE created_at > now() - interval '7 days' ) SELECT user_id, COUNT(*) FROM recent GROUP BY user_id;",
      "category": "sql"
    },
    {
      "term": "curl",
      "definition": "Client URL — Make HTTP requests from the command line.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Daemon",
      "definition": "A background process that runs continuously without direct user interaction. Pronounced /ˈdiːmən/ (\"DEE-mon\"). Common in Linux systems (e.g. sshd, nginx).",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "DaemonSet",
      "definition": "Runs exactly one copy of a Pod on every node (or a subset). Used for node-level agents — log collectors, metrics exporters, CNI plugins.",
      "example": "apiVersion: apps/v1 kind: DaemonSet metadata: name: log-agent spec: selector: matchLabels: { app: log-agent } template: metadata: labels: { app: log-agent } spec: containers: - name: agent image: fluent-bit:3.1",
      "category": "kubernetes"
    },
    {
      "term": "data source",
      "definition": "Reads existing information from a provider without creating anything — look up an AMI, an existing VPC, your account ID.",
      "example": "data \"aws_ami\" \"ubuntu\" { most_recent = true owners = [\"099720109477\"] }",
      "category": "terraform"
    },
    {
      "term": "Datadog",
      "definition": "A commercial all-in-one observability SaaS — metrics, logs, traces (APM), and dashboards behind one agent and UI.",
      "example": "DD_API_KEY=... datadog-agent run",
      "category": "observability"
    },
    {
      "term": "dd (delete line)",
      "definition": "Vim: delete the current line. Press twice — d then d.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Declarative",
      "definition": "You describe the desired outcome: \"give me all users where active = true\". The system (SQL engine, React runtime) decides how to execute it.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Declarative vs. Imperative",
      "definition": "These are two opposite styles of writing code. Imperative code describes every step of the algorithm. Declarative code describes the desired outcome and lets the runtime figure out the steps.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Decorator",
      "definition": "Attach additional responsibilities to an object dynamically — a flexible alternative to subclassing for extending behaviour.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "delete",
      "definition": "Remove resources by name, label, or file. Deleting a Deployment also removes its Pods.",
      "example": "kubectl delete pod web-7d9f8c-abc12 kubectl delete -f deployment.yaml",
      "category": "kubernetes"
    },
    {
      "term": "Delete Line",
      "definition": "Remove the entire current line in one keystroke.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Delete Previous Word",
      "definition": "Delete the word to the left of the cursor on the command line.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Dependency injection",
      "definition": "A design pattern where objects receive their dependencies from an external source rather than creating them internally. Improves testability and decoupling.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "depends_on",
      "definition": "Declares startup order between services. With a condition it can wait until a dependency is healthy.",
      "example": "services: web: depends_on: db: condition: service_healthy",
      "category": "docker"
    },
    {
      "term": "depends_on",
      "definition": "Forces an explicit ordering when Terraform can’t infer the dependency from references alone.",
      "example": "resource \"aws_instance\" \"web\" { depends_on = [aws_iam_role_policy.app] }",
      "category": "terraform"
    },
    {
      "term": "Deployment",
      "definition": "The standard way to run stateless apps. It manages a ReplicaSet and gives you rolling updates, rollbacks, and a declared replica count.",
      "example": "apiVersion: apps/v1 kind: Deployment metadata: name: web spec: replicas: 3 selector: matchLabels: { app: web } template: metadata: labels: { app: web } spec: containers: - name: web image: nginx:1.27",
      "category": "kubernetes"
    },
    {
      "term": "describe",
      "definition": "Show a detailed, human-readable dump of one resource — including recent Events, which is where you find why a Pod won't start.",
      "example": "kubectl describe pod web-7d9f8c-abc12",
      "category": "kubernetes"
    },
    {
      "term": "destroy",
      "definition": "Removes everything Terraform manages in this state. The same as a plan where every resource is being deleted.",
      "example": "terraform destroy -target=aws_s3_bucket.logs",
      "category": "terraform"
    },
    {
      "term": "digest",
      "definition": "A content-addressable SHA256 hash that identifies an exact image, immutably. Unlike a tag, a digest never moves.",
      "example": "docker pull myapp@sha256:9b2c...e1",
      "category": "docker"
    },
    {
      "term": "dirty read",
      "definition": "Reading data another transaction has written but NOT committed — it might be rolled back, so you read a value that never existed.",
      "example": "-- T1 updates row, T2 reads it, T1 rolls back -- T2 saw a phantom value",
      "category": "sql"
    },
    {
      "term": "DISTINCT",
      "definition": "Removes duplicate rows from the result, or counts unique values with COUNT(DISTINCT col).",
      "example": "SELECT COUNT(DISTINCT country) FROM users;",
      "category": "sql"
    },
    {
      "term": "DNS",
      "definition": "Translates domain names (api.example.com) into IP addresses, and routes traffic based on rules (geolocation, latency, failover). (AWS: Route 53; GCP: Cloud DNS; Azure: Azure DNS)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "DNS (Domain Name System)",
      "definition": "The \"phone book\" of the internet. It translates human-readable domain names (e.g. google.com) into machine-readable IP addresses.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Docker Hub",
      "definition": "Docker's default public registry. When you pull \"nginx\", you are really pulling docker.io/library/nginx.",
      "example": "docker pull nginx:1.27 # = docker.io/library/nginx:1.27",
      "category": "docker"
    },
    {
      "term": "Document / NoSQL Database",
      "definition": "Flexible document or key-value stores — schema-less JSON documents. No JOINs, but horizontal scale and fast lookups by key. (AWS: DynamoDB; GCP: Firestore; Azure: Cosmos DB)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "drift",
      "definition": "When real infrastructure no longer matches state — someone changed it in the console. A plan reveals drift as proposed changes.",
      "example": "terraform plan -refresh-only",
      "category": "terraform"
    },
    {
      "term": "echo",
      "definition": "Echo — Print text or variable values to the terminal.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Edge computing",
      "definition": "Processing data closer to its source (at the \"edge\" of the network) rather than in a central data centre, reducing latency for end users.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "edit",
      "definition": "Open a live resource in your editor and apply changes on save. Quick fixes, but changes are not tracked in your manifests.",
      "example": "kubectl edit deployment web",
      "category": "kubernetes"
    },
    {
      "term": "emptyDir",
      "definition": "A scratch volume created empty when a Pod starts and deleted when the Pod is removed. Good for caches and sharing files between containers in one Pod.",
      "example": "volumes: - name: tmp emptyDir: sizeLimit: 500Mi",
      "category": "kubernetes"
    },
    {
      "term": "Encapsulation",
      "definition": "Hiding internal data and only exposing a clean public interface. The engine of a car is hidden — you only interact with the steering wheel and pedals.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Endpoint",
      "definition": "A specific URL path in an API where a client can send requests. For example, /api/v1/users is an endpoint for user-related operations.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "ENTRYPOINT",
      "definition": "The fixed executable a container always runs. Arguments from docker run (and CMD) are appended to it.",
      "example": "ENTRYPOINT [\"python\", \"manage.py\"] CMD [\"runserver\"]",
      "category": "docker"
    },
    {
      "term": "ENV",
      "definition": "Sets an environment variable baked into the image and present at runtime in every container.",
      "example": "ENV NODE_ENV=production \\ PORT=8080",
      "category": "docker"
    },
    {
      "term": "env",
      "definition": "Environment — List all environment variables, or run a command with a specific environment.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "environment",
      "definition": "Sets environment variables for a service, as a list or a map. Often paired with an env_file.",
      "example": "services: web: environment: NODE_ENV: production DATABASE_URL: postgres://db:5432/app",
      "category": "docker"
    },
    {
      "term": "error budget",
      "definition": "The allowed amount of failure: 100% minus the SLO. A 99.9% SLO grants ~43 minutes of downtime per 30 days to spend on risk.",
      "example": "budget = (1 - 0.999) * 30d = 43.2 min/month",
      "category": "observability"
    },
    {
      "term": "ETag",
      "definition": "An opaque token identifying the resource version. Used with If-None-Match for conditional GETs.",
      "example": "ETag: \"abc123\"",
      "category": "http-headers"
    },
    {
      "term": "Event",
      "definition": "Something that happens that the program can respond to: a button click, an HTTP request, a file change, a timer firing, a message arriving in a queue.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Event Listener / Handler",
      "definition": "A function registered to run when a specific event occurs. element.addEventListener('click', handleClick) registers handleClick to run on every click.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Event Loop",
      "definition": "JavaScript's mechanism for handling async events on a single thread. It continuously checks the event queue and runs callbacks when the main thread is free.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Event-Driven Programming",
      "definition": "Instead of a linear flow, the program sits idle until an event occurs — a user click, an HTTP request arriving, a message appearing in a queue. Event handlers (callbacks/listeners) then respond to each event.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "exec",
      "definition": "Run a command inside a running container — usually an interactive shell for debugging.",
      "example": "kubectl exec -it web-7d9f8c-abc12 -- sh",
      "category": "kubernetes"
    },
    {
      "term": "EXISTS",
      "definition": "A boolean test — true if a subquery returns any row. Often faster than IN for large or correlated checks.",
      "example": "SELECT name FROM users u WHERE EXISTS ( SELECT 1 FROM orders o WHERE o.user_id = u.id );",
      "category": "sql"
    },
    {
      "term": "Expires",
      "definition": "Absolute date when the response becomes stale. Cache-Control max-age is preferred.",
      "example": "Expires: Thu, 16 May 2026 12:00:00 GMT",
      "category": "http-headers"
    },
    {
      "term": "EXPLAIN / EXPLAIN ANALYZE",
      "definition": "Shows the query plan (estimated). EXPLAIN ANALYZE actually runs the query and reports real timing and row counts.",
      "example": "EXPLAIN ANALYZE SELECT * FROM orders WHERE user_id = 42;",
      "category": "sql"
    },
    {
      "term": "export",
      "definition": "Export — Set an environment variable so child processes inherit it.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "EXPOSE",
      "definition": "Documents which port the container listens on. It is metadata only — it does not actually publish the port.",
      "example": "EXPOSE 8080",
      "category": "docker"
    },
    {
      "term": "expression",
      "definition": "Anything that produces a value — a literal, a reference, a function call, or arithmetic.",
      "example": "max(var.min_size, length(var.azs))",
      "category": "terraform"
    },
    {
      "term": "Extract Method / Variable",
      "definition": "Pull selected code out into its own method or variable. A JetBrains staple of clean refactoring.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Facade",
      "definition": "Provide a simplified interface to a complex subsystem — hide internal complexity behind a single, clean surface.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "Factory Method",
      "definition": "Define an interface for creating an object, but let subclasses decide which class to instantiate.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "Feature flag",
      "definition": "A configuration switch that enables or disables a feature at runtime without deploying new code. Also called a feature toggle.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "fmt",
      "definition": "Rewrites files to the canonical HCL style (indentation, alignment). Run it in CI with -check to enforce formatting.",
      "example": "terraform fmt -recursive -check",
      "category": "terraform"
    },
    {
      "term": "for expression",
      "definition": "Transforms one collection into another. Square brackets build a list (tuple); braces build a map (object).",
      "example": "upper_names = [for n in var.names : upper(n)] by_id = {for u in var.users : u.id => u.name}",
      "category": "terraform"
    },
    {
      "term": "for_each",
      "definition": "Creates one instance per element of a map or set. Instances are keyed by name, so adding/removing is stable.",
      "example": "resource \"aws_iam_user\" \"u\" { for_each = toset([\"alice\", \"bob\"]) name = each.value }",
      "category": "terraform"
    },
    {
      "term": "Fork",
      "definition": "A copy of a repository that is independent of the original. You can make changes in your fork without affecting the upstream project.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Format Document",
      "definition": "Re-indent and tidy the whole file using the configured formatter (Prettier, gofmt, etc.).",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Framework",
      "definition": "A pre-built structure or scaffold that provides common patterns and tools for building applications. Frameworks are opinionated — they constrain how you write your code in exchange for productivity.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "FROM",
      "definition": "Sets the base image for the build stage. Must be the first instruction (after optional ARGs). Can appear multiple times in a multi-stage build.",
      "example": "FROM python:3.12-slim AS base",
      "category": "docker"
    },
    {
      "term": "FULL OUTER JOIN",
      "definition": "Keeps unmatched rows from BOTH sides, filling missing columns with NULL.",
      "example": "SELECT u.name, o.total FROM users u FULL OUTER JOIN orders o ON o.user_id = u.id;",
      "category": "sql"
    },
    {
      "term": "Function",
      "definition": "A named block of reusable code that performs a specific task. In functional programming, a pure function produces the same output for the same input and has no side effects.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Functional Programming (FP)",
      "definition": "Functions are treated like values — you pass them around, compose them, and return them. The key rule: a function always returns the same output for the same input, and never modifies anything outside itself.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Garbage collection",
      "definition": "An automatic memory management process that identifies and frees memory that is no longer used by a program. Pronounced \"GC\". Java, Python, and Go all use garbage collection.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "gauge",
      "definition": "A metric that can go up and down — a snapshot of a value right now (temperature, queue length, memory in use).",
      "example": "queue_depth 47",
      "category": "observability"
    },
    {
      "term": "get",
      "definition": "List resources. The first command you reach for. Add -o wide, -o yaml, or -o json for more detail.",
      "example": "kubectl get pods -n prod -o wide kubectl get deploy,svc,ingress",
      "category": "kubernetes"
    },
    {
      "term": "gg / G (top / bottom)",
      "definition": "Vim: jump to the first line (gg) or the last line (G) of the file.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "GIN index",
      "definition": "Generalised Inverted iNdex (Postgres) — for columns holding many values per row: arrays, JSONB, full-text.",
      "example": "CREATE INDEX idx_docs_body ON docs USING gin (to_tsvector('english', body));",
      "category": "sql"
    },
    {
      "term": "GiST index",
      "definition": "Generalised Search Tree (Postgres) — for geometric, range, and nearest-neighbour queries (PostGIS, ranges).",
      "example": "CREATE INDEX idx_shapes_geom ON shapes USING gist (geom);",
      "category": "sql"
    },
    {
      "term": "Git",
      "definition": "A distributed version control system that tracks changes in source code. Git allows multiple developers to collaborate on a codebase without overwriting each other's work.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "git add",
      "definition": "Stage file changes — mark them as ready to be committed.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git bisect",
      "definition": "Use binary search to find which commit introduced a bug.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git branch",
      "definition": "List, create, or delete branches.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git checkout",
      "definition": "Switch branches or restore specific files from history (legacy command with multiple roles).",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git cherry-pick",
      "definition": "Apply the changes from a specific commit onto the current branch.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git clone",
      "definition": "Download a remote repository and its full history to your machine.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git commit",
      "definition": "Record staged changes as a new snapshot in history.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git config",
      "definition": "Set user-level or repo-level configuration options.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git diff",
      "definition": "Show what has changed between commits, branches, or in the working directory.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git fetch",
      "definition": "Download remote commits without applying them to your working branch.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git init",
      "definition": "Create a new, empty Git repository in the current folder.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git log",
      "definition": "Show the commit history.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git merge",
      "definition": "Combine the history of another branch into the current branch, creating a merge commit.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git pull",
      "definition": "Fetch remote commits and merge them into the current branch.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git push",
      "definition": "Upload local commits to the remote repository.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git rebase",
      "definition": "Rewrite your branch's commits as if they started from the tip of another branch — producing a linear history.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git remote",
      "definition": "Manage connections to remote repositories.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git reset",
      "definition": "Move the branch pointer backwards in history, optionally changing staged/working-directory state.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git restore",
      "definition": "Discard changes in the working directory or unstage files (modern replacement for part of git checkout).",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git revert",
      "definition": "Create a new commit that undoes the changes from a previous commit — safe for shared branches.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git stash",
      "definition": "Temporarily shelve uncommitted changes so you can switch context.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git status",
      "definition": "Show which files are modified, staged, or untracked.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git switch",
      "definition": "Switch to a different branch (modern replacement for git checkout).",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "git tag",
      "definition": "Mark a specific commit with a human-readable label, typically for releases.",
      "example": "",
      "category": "git-commands"
    },
    {
      "term": "Global State",
      "definition": "Variables accessible from any procedure. Procedural code often relies on shared global state, which is its biggest weakness — unexpected mutations are hard to trace.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Globally Distributed SQL",
      "definition": "SQL databases that scale globally with low-latency reads across multiple regions — without sacrificing ACID transactions. (AWS: Aurora (Global Database); GCP: Cloud Spanner / AlloyDB; Azure: Azure Cosmos DB (PostgreSQL API))",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Go to Definition",
      "definition": "Jump to where a symbol (function, class, variable) is defined. Core to reading unfamiliar code.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Go to Line",
      "definition": "Jump straight to a line number. Useful when a stack trace or a colleague points you at \"line 142\".",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "golden signals",
      "definition": "Google SRE’s four signals to watch on any user-facing service: latency, traffic, errors, and saturation.",
      "example": "latency (p99), traffic (req/s), errors (5xx %), saturation (% capacity)",
      "category": "observability"
    },
    {
      "term": "Grafana",
      "definition": "The dashboarding and visualisation layer. Plugs into Prometheus, Loki, and many other data sources; also handles alerting.",
      "example": "Panel query: rate(http_requests_total[5m])",
      "category": "observability"
    },
    {
      "term": "GraphQL",
      "definition": "A query language and runtime for APIs that allows clients to request exactly the data they need, avoiding over-fetching or under-fetching that is common with REST.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "grep",
      "definition": "Global Regular Expression Print — Search for a pattern inside files or command output.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "GROUP BY",
      "definition": "Collapses rows that share the same key into one row per group, so aggregate functions run per group.",
      "example": "SELECT user_id, COUNT(*) AS orders FROM orders GROUP BY user_id;",
      "category": "sql"
    },
    {
      "term": "hash index",
      "definition": "Maps a hashed key to a location — fast for exact equality only, no ranges or sorting.",
      "example": "CREATE INDEX idx_sessions_token ON sessions USING hash (token);",
      "category": "sql"
    },
    {
      "term": "HAVING",
      "definition": "Filters AFTER grouping, on aggregate results. WHERE filters rows before grouping; HAVING filters groups.",
      "example": "SELECT user_id, COUNT(*) AS n FROM orders GROUP BY user_id HAVING COUNT(*) > 5;",
      "category": "sql"
    },
    {
      "term": "head",
      "definition": "Head — Show the first N lines of a file (default 10).",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "HEALTHCHECK",
      "definition": "Tells Docker how to test that the container is actually healthy, not just running. Sets the container status to healthy/unhealthy.",
      "example": "HEALTHCHECK --interval=30s --timeout=3s \\ CMD curl -f http://localhost:8080/health || exit 1",
      "category": "docker"
    },
    {
      "term": "healthcheck (compose)",
      "definition": "Defines a health probe for a service directly in the Compose file, overriding any in the image.",
      "example": "services: db: image: postgres:16 healthcheck: test: [\"CMD-SHELL\", \"pg_isready -U postgres\"] interval: 10s retries: 5",
      "category": "docker"
    },
    {
      "term": "Heap",
      "definition": "A region of memory used for dynamic allocation. Objects allocated at runtime live on the heap; they persist until explicitly freed or garbage collected.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "heredoc",
      "definition": "A multi-line string literal. Use <<-EOT (with the dash) to strip leading indentation.",
      "example": "user_data = <<-EOT #!/bin/bash echo hello EOT",
      "category": "terraform"
    },
    {
      "term": "Higher-Order Function",
      "definition": "A function that takes another function as a parameter or returns one. map(), filter(), and reduce() are classic examples.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "histogram",
      "definition": "A metric that buckets observations (e.g. request durations) so you can compute percentiles and heatmaps server-side.",
      "example": "http_duration_bucket{le=\"0.3\"} 9821 http_duration_bucket{le=\"1.0\"} 9990",
      "category": "observability"
    },
    {
      "term": "Hook",
      "definition": "In React, a function that lets you manage state and side effects inside a functional component (e.g. `useState`, `useEffect`). More broadly, a hook is a callback invoked at a specific point in a lifecycle.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "host",
      "definition": "The container shares the host's network stack directly — no isolation, no port mapping needed. Linux only.",
      "example": "docker run --network host nginx",
      "category": "docker"
    },
    {
      "term": "HPA (HorizontalPodAutoscaler)",
      "definition": "Automatically scales the replica count of a workload up or down based on metrics like CPU utilisation or custom metrics.",
      "example": "apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: web spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: web minReplicas: 2 maxReplicas: 10 metrics: - type: Resource resource: name: cpu target: { type: Utilization, averageUtilization: 70 }",
      "category": "kubernetes"
    },
    {
      "term": "HTTP (Hypertext Transfer Protocol)",
      "definition": "The foundation of data communication on the web. Defines how messages are formatted and transmitted between clients and servers. HTTPS is the secure (encrypted) version.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "IaC (Infrastructure as Code)",
      "definition": "Managing and provisioning infrastructure (servers, networks, databases) through machine-readable configuration files rather than manual processes.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Idempotent",
      "definition": "An operation that produces the same result regardless of how many times it is executed. HTTP PUT and DELETE should be idempotent; POST is typically not.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Identity & Access Management",
      "definition": "Controls who (users, services, machines) can do what (read, write, delete) on which resources. The security foundation of every cloud account. (AWS: IAM (Identity and Access Management); GCP: IAM (Cloud IAM); Azure: Azure AD / Entra ID + RBAC)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "If-Match",
      "definition": "Send the request only if the current ETag MATCHES. Used for optimistic concurrency in PUT/PATCH.",
      "example": "If-Match: \"abc123\"",
      "category": "http-headers"
    },
    {
      "term": "If-Modified-Since",
      "definition": "Send the request only if the resource was modified after the given date. Older alternative to ETag.",
      "example": "If-Modified-Since: Wed, 15 May 2026 12:00:00 GMT",
      "category": "http-headers"
    },
    {
      "term": "If-None-Match",
      "definition": "Send the request only if the resource's ETag is NOT what the client already has. Triggers 304 Not Modified if unchanged.",
      "example": "If-None-Match: \"abc123\"",
      "category": "http-headers"
    },
    {
      "term": "image",
      "definition": "A read-only template containing your app, its dependencies, and a filesystem. You build an image once and run it as many containers.",
      "example": "docker build -t myapp:1.0 . docker images",
      "category": "docker"
    },
    {
      "term": "Immutability",
      "definition": "Data is never modified after creation. Instead of changing an existing array, you return a new one. This eliminates a whole class of bugs caused by unexpected mutation.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Imperative",
      "definition": "You write explicit instructions for the machine: \"do this, then do this, then check this condition, then loop\". The control flow is up to you.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "import",
      "definition": "Brings an existing real-world resource under Terraform management by writing it into state.",
      "example": "terraform import aws_s3_bucket.logs my-app-logs",
      "category": "terraform"
    },
    {
      "term": "IndexOutOfBoundsException",
      "definition": "The code tries to access an element in an array (or list) at an index that does not exist.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "Infrastructure as Code",
      "definition": "Define your cloud infrastructure in code files — then deploy, update, and destroy it reproducibly. Terraform (multi-cloud) is the most popular choice across all three clouds. (AWS: CloudFormation; GCP: Deployment Manager; Azure: Bicep / ARM Templates)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Ingress",
      "definition": "HTTP/HTTPS routing rules — host- and path-based — that send external traffic to Services. Needs an Ingress controller (nginx, Traefik) to do the actual work.",
      "example": "apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: web spec: rules: - host: example.com http: paths: - path: / pathType: Prefix backend: service: name: web port: { number: 80 }",
      "category": "kubernetes"
    },
    {
      "term": "Inheritance",
      "definition": "A child class extends a parent class and inherits its properties and methods. AdminUser extends User — it has everything User has, plus admin-specific permissions.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "init",
      "definition": "Initialises a working directory — downloads providers and modules, configures the backend. Run it first, and after changing providers.",
      "example": "terraform init -upgrade",
      "category": "terraform"
    },
    {
      "term": "INNER JOIN",
      "definition": "Returns only rows that match in BOTH tables. The default — JOIN with no qualifier means INNER JOIN.",
      "example": "SELECT u.name, o.total FROM users u JOIN orders o ON o.user_id = u.id;",
      "category": "sql"
    },
    {
      "term": "instrumentation",
      "definition": "The code that emits metrics, logs and traces. Can be manual (you add it) or automatic (an agent/library injects it).",
      "example": "span := tracer.Start(ctx, \"checkout\") defer span.End()",
      "category": "observability"
    },
    {
      "term": "interpolation",
      "definition": "Embedding an expression inside a string with ${...}. In HCL2 you rarely need it for whole values — bare references work.",
      "example": "name = \"web-${var.env}-${count.index}\"",
      "category": "terraform"
    },
    {
      "term": "Iterator",
      "definition": "Provide a way to access elements of a collection sequentially without exposing the underlying data structure.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "Jaeger",
      "definition": "An open-source distributed tracing backend — stores and visualises traces so you can see span timing across services.",
      "example": "OTEL_EXPORTER_OTLP_ENDPOINT=http://jaeger:4317",
      "category": "observability"
    },
    {
      "term": "Job",
      "definition": "Runs a Pod to completion — a batch task that should run once, succeed, and stop. Kubernetes retries it until the configured number of completions succeed.",
      "example": "apiVersion: batch/v1 kind: Job metadata: name: migrate spec: backoffLimit: 4 template: spec: restartPolicy: Never containers: - name: migrate image: myapp:1.0 command: [\"./migrate.sh\"]",
      "category": "kubernetes"
    },
    {
      "term": "JSON (JavaScript Object Notation)",
      "definition": "A lightweight data-interchange format that is easy for humans to read and for machines to parse. The most common format for REST API payloads.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "JWT (JSON Web Token)",
      "definition": "A compact, URL-safe token for securely transmitting information between parties. Commonly used for authentication and session management. Pronounced \"jot\".",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "kill",
      "definition": "Kill — Send a signal to a process, usually to terminate it.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Kubernetes",
      "definition": "An open-source container orchestration platform that automates deployment, scaling, and management of containerised applications. Often abbreviated as K8s (K + 8 letters + s).",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "label",
      "definition": "A key/value tag attached to objects. The glue of Kubernetes — Services, selectors, and tooling all match on labels.",
      "example": "metadata: labels: app: web tier: frontend env: prod",
      "category": "kubernetes"
    },
    {
      "term": "label / tag",
      "definition": "A key/value dimension attached to a metric (Prometheus calls it a \"label\"; Datadog/StatsD call it a \"tag\") so you can slice and filter.",
      "example": "http_requests_total{method=\"POST\", route=\"/checkout\"}",
      "category": "observability"
    },
    {
      "term": "LAG / LEAD",
      "definition": "Read a value from a previous (LAG) or following (LEAD) row in the window — perfect for diffs over time.",
      "example": "SELECT day, revenue, revenue - LAG(revenue) OVER (ORDER BY day) AS delta FROM daily_sales;",
      "category": "sql"
    },
    {
      "term": "Last-Modified",
      "definition": "When the resource last changed. Older alternative to ETag, paired with If-Modified-Since.",
      "example": "Last-Modified: Wed, 15 May 2026 12:00:00 GMT",
      "category": "http-headers"
    },
    {
      "term": "Latency",
      "definition": "The time delay between a request being sent and the response being received. Measured in milliseconds (ms). Low latency = fast response time.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "layer",
      "definition": "Each Dockerfile instruction creates a stacked, cached filesystem layer. Layers are shared between images, which is why pulls and builds are fast.",
      "example": "docker history myapp:1.0",
      "category": "docker"
    },
    {
      "term": "LEFT (OUTER) JOIN",
      "definition": "Keeps every row from the left table; right-table columns are NULL where there is no match.",
      "example": "SELECT u.name, o.total FROM users u LEFT JOIN orders o ON o.user_id = u.id;",
      "category": "sql"
    },
    {
      "term": "less",
      "definition": "Less — View a file page by page — press q to quit, / to search.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "lifecycle",
      "definition": "Tunes how Terraform creates, updates and deletes a resource — create_before_destroy, prevent_destroy, ignore_changes.",
      "example": "lifecycle { create_before_destroy = true prevent_destroy = true ignore_changes = [tags] }",
      "category": "terraform"
    },
    {
      "term": "limits",
      "definition": "The hard cap on CPU/memory a container may use. Exceeding the memory limit gets the container OOM-killed; CPU is throttled, not killed.",
      "example": "resources: limits: cpu: \"500m\" memory: \"512Mi\"",
      "category": "kubernetes"
    },
    {
      "term": "Load balancer",
      "definition": "A component that distributes incoming network traffic across multiple servers to prevent any single server from becoming a bottleneck.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Load Balancer",
      "definition": "Distributes incoming HTTP requests across multiple backend instances. Also terminates TLS, routes by path, and checks instance health. (AWS: ALB (Application Load Balancer) / NLB; GCP: Cloud Load Balancing; Azure: Azure Load Balancer / Application Gateway)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "LoadBalancer",
      "definition": "A Service that asks the cloud provider to provision an external load balancer with a public IP pointing at the Service.",
      "example": "spec: type: LoadBalancer ports: - port: 443 targetPort: 8443",
      "category": "kubernetes"
    },
    {
      "term": "locals",
      "definition": "Named local values to avoid repetition — like constants computed once and referenced as local..",
      "example": "locals { common_tags = { Project = \"lingo\" Env = var.env } }",
      "category": "terraform"
    },
    {
      "term": "Location",
      "definition": "Where the client should redirect (3xx) or find a newly-created resource (201).",
      "example": "Location: /api/users/42",
      "category": "http-headers"
    },
    {
      "term": "log",
      "definition": "A timestamped record of a discrete event. High detail, high volume — the thing you grep when an alert fires.",
      "example": "2026-05-29T10:02:11Z ERROR order_id=4821 payment_declined gateway=stripe",
      "category": "observability"
    },
    {
      "term": "LogicError",
      "definition": "The code runs without crashing, but produces the wrong result — the algorithm itself is incorrect.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "logs",
      "definition": "Print a container's stdout/stderr. Add -f to follow, --previous to see the crashed container's logs.",
      "example": "kubectl logs -f web-7d9f8c-abc12 kubectl logs web-7d9f8c-abc12 --previous",
      "category": "kubernetes"
    },
    {
      "term": "Loki",
      "definition": "Grafana’s log database — indexes only labels, not full text, making it cheap. Queried with LogQL.",
      "example": "{app=\"api\"} |= \"error\" | json | latency_ms > 500",
      "category": "observability"
    },
    {
      "term": "ls",
      "definition": "List — List files and directories in the current folder.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "man",
      "definition": "Manual — Show the manual page (documentation) for a command.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Managed Cache",
      "definition": "A managed in-memory key-value store for caching. Dramatically speeds up database queries and session storage. (AWS: ElastiCache (Redis / Memcached); GCP: Memorystore; Azure: Azure Cache for Redis)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Managed Database (SQL/Relational)",
      "definition": "A fully managed relational database (PostgreSQL, MySQL, SQL Server). The cloud patches, backs up, and monitors it. (AWS: RDS (Relational Database Service); GCP: Cloud SQL; Azure: Azure SQL Database)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Managed Kubernetes",
      "definition": "Kubernetes without managing the control plane. The cloud provider handles the master nodes — you just deploy workloads. (AWS: EKS (Elastic Kubernetes Service); GCP: GKE (Google Kubernetes Engine); Azure: AKS (Azure Kubernetes Service))",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "map / filter / reduce",
      "definition": "map transforms every element; filter keeps only matching elements; reduce folds a list into a single value. The three fundamental FP array operations.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Message Queue",
      "definition": "In backend event-driven systems (RabbitMQ, Kafka, SQS), events are persisted in a queue. Consumers process them when ready — enabling asynchronous, scalable processing.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Message Queue / Event Streaming",
      "definition": "Reliably pass messages between services. Queues deliver each message once (SQS). Event streams replay messages and fan out to many consumers (Kafka-like). (AWS: SQS (queue) + SNS (pub/sub) + Kinesis (streaming); GCP: Pub/Sub + Dataflow; Azure: Service Bus + Event Hub)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "metric",
      "definition": "A numeric measurement sampled over time — request rate, CPU, queue depth. Cheap to store and aggregate; great for dashboards and alerts.",
      "example": "http_requests_total{method=\"GET\",status=\"200\"} 48213",
      "category": "observability"
    },
    {
      "term": "Microservices",
      "definition": "An architectural style where an application is built as a collection of small, independent services that communicate over APIs. Contrast with a monolith.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Middleware",
      "definition": "Software that sits between two systems, intercepting and processing requests or responses. In web frameworks, middleware typically handles auth, logging, or request parsing.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "mkdir",
      "definition": "Make Directory — Create a new directory.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Modular Programming",
      "definition": "Splitting procedures into separate files/modules. An improvement over monolithic procedural code — functions are reusable across programs.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "module",
      "definition": "A reusable package of resources called from another configuration. The unit of composition and reuse in Terraform.",
      "example": "module \"vpc\" { source = \"terraform-aws-modules/vpc/aws\" version = \"5.0.0\" cidr = \"10.0.0.0/16\" }",
      "category": "terraform"
    },
    {
      "term": "Monitoring & Observability",
      "definition": "Collects metrics, logs, and traces from your services. Lets you set alerts and create dashboards for system health. (AWS: CloudWatch; GCP: Cloud Monitoring + Cloud Logging; Azure: Azure Monitor)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Move Line Up / Down",
      "definition": "Move the current line (or selected block) up or down without cut-and-paste.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Move to Line Start / End",
      "definition": "Jump the cursor to the beginning (Ctrl+A) or end (Ctrl+E) of the command line.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "MTBF",
      "definition": "Mean Time Between Failures — average healthy interval between incidents. Higher is better.",
      "example": "MTBF = total_uptime / number_of_failures",
      "category": "observability"
    },
    {
      "term": "MTTA",
      "definition": "Mean Time To Acknowledge — average time from an alert firing to an on-call engineer acknowledging it.",
      "example": "MTTA = sum(ack_time - alert_time) / alerts",
      "category": "observability"
    },
    {
      "term": "MTTD",
      "definition": "Mean Time To Detect — average time between a problem starting and someone (or an alert) noticing it.",
      "example": "MTTD = sum(detect_time - start_time) / incidents",
      "category": "observability"
    },
    {
      "term": "MTTR",
      "definition": "Mean Time To Recover/Repair — average time from an incident starting to service being restored. The headline DORA reliability metric.",
      "example": "MTTR = total_downtime / number_of_incidents",
      "category": "observability"
    },
    {
      "term": "multi-stage build",
      "definition": "Using several FROM stages in one Dockerfile — build in a fat stage, then copy only the artefacts into a tiny final stage.",
      "example": "FROM golang:1.23 AS build WORKDIR /src COPY . . RUN go build -o app FROM gcr.io/distroless/base COPY --from=build /src/app /app ENTRYPOINT [\"/app\"]",
      "category": "docker"
    },
    {
      "term": "Mutex (Mutual Exclusion)",
      "definition": "A synchronisation primitive that prevents multiple threads from accessing a shared resource simultaneously, avoiding race conditions.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "mv",
      "definition": "Move / Rename — Move a file or rename it.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Namespace",
      "definition": "A logical grouping that organises identifiers (classes, functions, variables) to avoid naming conflicts. In Kubernetes, namespaces isolate resources within a cluster.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Namespace",
      "definition": "A virtual cluster inside a cluster. Groups resources, scopes names, and is the boundary for quotas and RBAC.",
      "example": "kubectl create namespace staging kubectl get pods -n staging",
      "category": "kubernetes"
    },
    {
      "term": "NetworkPolicy",
      "definition": "A firewall for Pods. Declares which Pods may talk to which, by label and port. Without one, all Pods can reach all others.",
      "example": "apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: db-allow-api spec: podSelector: matchLabels: { app: db } ingress: - from: - podSelector: matchLabels: { app: api }",
      "category": "kubernetes"
    },
    {
      "term": "networks (compose)",
      "definition": "Defines custom networks and which services join them. Services on the same network reach each other by service name.",
      "example": "services: web: networks: [frontend] networks: frontend: {}",
      "category": "docker"
    },
    {
      "term": "Node",
      "definition": "In a distributed system, any device or instance that participates in the network. In Kubernetes, a node is a worker machine (VM or physical) that runs pods.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "node",
      "definition": "A worker machine (VM or physical) that runs Pods. Each node runs the kubelet and a container runtime.",
      "example": "kubectl get nodes -o wide kubectl describe node ip-10-0-1-23",
      "category": "kubernetes"
    },
    {
      "term": "NodePort",
      "definition": "A Service that opens the same high port (30000–32767) on every node. External traffic hitting any node IP on that port reaches the Service.",
      "example": "spec: type: NodePort ports: - port: 80 targetPort: 8080 nodePort: 30080",
      "category": "kubernetes"
    },
    {
      "term": "none",
      "definition": "Disables networking entirely. The container gets only a loopback interface — fully isolated.",
      "example": "docker run --network none myapp:1.0",
      "category": "docker"
    },
    {
      "term": "Null",
      "definition": "A value (or the absence of a value) representing \"nothing here\". Accessing a property of null when you expect an object is one of the most common runtime errors.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "NullPointerException",
      "definition": "The code tries to use an object reference that points to nothing (null). Mostly a Java / Kotlin / C# concept.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "OAuth (Open Authorisation)",
      "definition": "A standard protocol that lets users grant third-party applications limited access to their resources without sharing passwords. The scheme behind \"Sign in with Google\".",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Object (Instance)",
      "definition": "A single instance created from a class. If User is the class, the user Alice (with her specific email and name) is an object.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Object Storage",
      "definition": "A bucket to store any file — images, videos, backups, logs — at unlimited scale. Files are accessed via HTTP URL. (AWS: S3 (Simple Storage Service); GCP: Cloud Storage; Azure: Azure Blob Storage)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Object-Oriented Programming (OOP)",
      "definition": "Real-world entities are represented as objects — each object bundles its data (fields) and the actions it can perform (methods). You design systems by defining classes (blueprints) and creating objects from them.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Observable",
      "definition": "A data source that emits values over time — like an async iterator. You subscribe to it and receive values as they arrive: HTTP responses, mouse moves, WebSocket messages.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Observer",
      "definition": "Define a one-to-many dependency so that when one object changes state, all its dependents are notified and updated automatically.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "Open Keyboard Shortcuts",
      "definition": "Open the keyboard shortcuts editor so you can view and rebind any key combination.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "OpenTelemetry (OTEL)",
      "definition": "The vendor-neutral standard (and SDKs) for generating and exporting metrics, logs and traces. The Collector reshapes and ships them anywhere.",
      "example": "otel-collector → exporters: [otlp, prometheus, loki]",
      "category": "observability"
    },
    {
      "term": "Operator",
      "definition": "A function that transforms a stream: map, filter, debounceTime, switchMap, mergeMap. Chain operators to build declarative data transformation pipelines.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Origin",
      "definition": "The scheme + host + port of the page making the request. Sent on cross-origin requests for CORS checks.",
      "example": "Origin: https://app.example.com",
      "category": "http-headers"
    },
    {
      "term": "ORM (Object-Relational Mapper)",
      "definition": "A library that translates between your application's objects and database tables, so you can interact with a database using your programming language rather than raw SQL.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "OutOfMemoryError",
      "definition": "The application tried to allocate more memory (heap space) than the system has available.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "output",
      "definition": "A value a module exposes to its caller (or prints after apply) — an IP address, a bucket name, a connection string.",
      "example": "output \"bucket_arn\" { value = aws_s3_bucket.logs.arn }",
      "category": "terraform"
    },
    {
      "term": "OVER",
      "definition": "Turns an aggregate or window function into a window — it computes per row WITHOUT collapsing rows like GROUP BY does.",
      "example": "SELECT name, salary, AVG(salary) OVER () AS company_avg FROM employees;",
      "category": "sql"
    },
    {
      "term": "Overhead",
      "definition": "Any extra cost (time, memory, network calls) incurred beyond the minimum needed to accomplish a task. \"This adds too much overhead\" means it costs more than it's worth.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "p (paste)",
      "definition": "Vim: paste whatever is in the register after the cursor.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "PARTITION BY",
      "definition": "Splits rows into groups for a window function — like GROUP BY, but the rows are kept.",
      "example": "SELECT dept, name, salary, AVG(salary) OVER (PARTITION BY dept) AS dept_avg FROM employees;",
      "category": "sql"
    },
    {
      "term": "Payload",
      "definition": "The data being sent in a network request or response body — as opposed to the metadata in headers or the URL.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "percentile (p50/p95/p99)",
      "definition": "The value below which that share of measurements fall. p99 latency = 99% of requests were faster than this. Averages hide the tail.",
      "example": "p50=80ms p95=240ms p99=900ms",
      "category": "observability"
    },
    {
      "term": "PermissionDenied",
      "definition": "The process does not have the system-level permission to access a file, directory, or resource.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "Permissions-Policy",
      "definition": "Controls which browser APIs (camera, microphone, geolocation, etc.) your page can use, and on which origins.",
      "example": "Permissions-Policy: camera=(), microphone=(), geolocation=(self)",
      "category": "http-headers"
    },
    {
      "term": "PersistentVolume (PV)",
      "definition": "A piece of cluster storage provisioned by an admin or a StorageClass. It exists independently of any Pod that uses it.",
      "example": "apiVersion: v1 kind: PersistentVolume metadata: name: pv-data spec: capacity: { storage: 10Gi } accessModes: [\"ReadWriteOnce\"] hostPath: { path: /mnt/data }",
      "category": "kubernetes"
    },
    {
      "term": "PersistentVolumeClaim (PVC)",
      "definition": "A Pod's request for storage — \"I need 10Gi, ReadWriteOnce\". Kubernetes binds it to a matching PV or provisions one dynamically.",
      "example": "apiVersion: v1 kind: PersistentVolumeClaim metadata: name: data spec: accessModes: [\"ReadWriteOnce\"] resources: requests: { storage: 10Gi }",
      "category": "kubernetes"
    },
    {
      "term": "phantom read",
      "definition": "Re-running a range query returns new rows that another committed transaction inserted in between.",
      "example": "SELECT COUNT(*) FROM orders WHERE total > 100; -- run twice: count grows because a row was inserted",
      "category": "sql"
    },
    {
      "term": "Pipeline",
      "definition": "A sequence of automated steps that processes code or data. A CI pipeline runs tests; a data pipeline transforms raw data into a usable format.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "plan",
      "definition": "Shows what Terraform would change without doing it. The \"+\" is create, \"-\" is destroy, \"~\" is update in place.",
      "example": "terraform plan -out=tfplan",
      "category": "terraform"
    },
    {
      "term": "Pod",
      "definition": "The smallest deployable unit in Kubernetes — typically one or more containers that share a network namespace and storage.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Pod",
      "definition": "The smallest deployable unit in Kubernetes — one or more containers that share a network namespace and storage. You rarely create Pods directly; a controller makes them for you.",
      "example": "apiVersion: v1 kind: Pod metadata: name: web spec: containers: - name: web image: nginx:1.27 ports: - containerPort: 80",
      "category": "kubernetes"
    },
    {
      "term": "Polling",
      "definition": "repeatedly checking a resource at regular intervals to detect changes, as opposed to being notified (push). Polling is simpler to implement but less efficient.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Polymorphism",
      "definition": "Different objects respond to the same method call in their own way. Both Dog and Cat have a speak() method — Dog says \"Woof\", Cat says \"Meow\".",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "port mapping",
      "definition": "Publishing a container port to a host port so external clients can reach it. The -p HOST:CONTAINER flag.",
      "example": "docker run -p 8080:80 nginx",
      "category": "docker"
    },
    {
      "term": "port-forward",
      "definition": "Tunnel a local port to a Pod or Service port. Lets you hit an internal service from your laptop without exposing it.",
      "example": "kubectl port-forward svc/web 8080:80",
      "category": "kubernetes"
    },
    {
      "term": "ports",
      "definition": "Publishes container ports to the host, mapping HOST:CONTAINER. The Compose equivalent of docker run -p.",
      "example": "services: web: ports: - \"8080:80\"",
      "category": "docker"
    },
    {
      "term": "Procedural Programming",
      "definition": "Procedural programming is the simplest paradigm: write a series of instructions that execute top to bottom, and group reusable logic into named procedures or functions. Older than OOP, still dominant in C, shell scripts, and many algorithms.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Procedure / Routine",
      "definition": "A named, reusable block of code that performs a task. In modern terms: a function without a return value (void) — like printReport() or saveToFile(path).",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Prometheus",
      "definition": "The de-facto open-source metrics database. Pulls (scrapes) metrics from targets and stores time series; queried with PromQL.",
      "example": "scrape_configs: - job_name: api static_configs: - targets: [\"api:9090\"]",
      "category": "observability"
    },
    {
      "term": "PromQL",
      "definition": "Prometheus Query Language — selects and aggregates time series for dashboards and alerts.",
      "example": "sum(rate(http_requests_total{status=~\"5..\"}[5m])) by (route)",
      "category": "observability"
    },
    {
      "term": "Prototype",
      "definition": "Create new objects by copying (cloning) an existing object instead of constructing from scratch.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "provider",
      "definition": "A plugin that lets Terraform talk to a platform (AWS, GCP, Cloudflare, GitHub). It exposes the resources and data sources you can manage.",
      "example": "provider \"aws\" { region = \"eu-central-1\" }",
      "category": "terraform"
    },
    {
      "term": "provider alias",
      "definition": "Lets you configure the same provider more than once (e.g. two AWS regions) and pick which one a resource uses.",
      "example": "provider \"aws\" { alias = \"us\" region = \"us-east-1\" } resource \"aws_acm_certificate\" \"cdn\" { provider = aws.us }",
      "category": "terraform"
    },
    {
      "term": "Proxy",
      "definition": "Provide a surrogate that controls access to another object — add lazy initialisation, access control, logging, or caching transparently.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "ps",
      "definition": "Process Status — List running processes.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Publish / Subscribe (Pub/Sub)",
      "definition": "An event pattern where publishers emit events without knowing who's listening, and subscribers react without knowing who published. Decouples components.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "pull",
      "definition": "Download an image from a registry to your local machine. docker run pulls automatically if the image is missing.",
      "example": "docker pull postgres:16",
      "category": "docker"
    },
    {
      "term": "Pure Function",
      "definition": "A function with no side effects: given the same inputs, it always returns the same output and never modifies external state. add(2, 3) is always 5 — no matter when or how often you call it.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "push",
      "definition": "Upload a local image to a registry so others (or your cluster) can pull it.",
      "example": "docker push registry.example.com/team/app:1.0",
      "category": "docker"
    },
    {
      "term": "pwd",
      "definition": "Print Working Directory — Show the full path of the current directory.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "QoS classes",
      "definition": "Quality of Service tiers Kubernetes assigns from your requests/limits: Guaranteed (limits == requests on all containers), Burstable (some requests set), BestEffort (none set).",
      "example": "# Guaranteed: resources: requests: { cpu: \"500m\", memory: \"512Mi\" } limits: { cpu: \"500m\", memory: \"512Mi\" }",
      "category": "kubernetes"
    },
    {
      "term": "Query",
      "definition": "A request for data from a database or API. In SQL, a query is written in a SELECT statement; in GraphQL, a query is the operation that fetches data.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Queue",
      "definition": "A data structure (and messaging pattern) where items are processed in the order they arrive — first in, first out (FIFO). Message queues decouple producers from consumers.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Quick Fix / Show Actions",
      "definition": "Open the lightbulb menu of suggested fixes and refactorings for the code under the cursor.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Quick Open / Go to File",
      "definition": "Jump to any file in the project by typing part of its name — the fastest way to move around a codebase.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Race condition",
      "definition": "A bug that occurs when a program's behaviour depends on the timing or sequence of uncontrollable events (e.g. two threads modifying the same data simultaneously).",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Range",
      "definition": "Request only a byte range of the resource — used for video streaming, resumable downloads.",
      "example": "Range: bytes=0-1023",
      "category": "http-headers"
    },
    {
      "term": "RANK / DENSE_RANK",
      "definition": "Rank rows by an ORDER BY. RANK leaves gaps after ties (1,1,3); DENSE_RANK does not (1,1,2).",
      "example": "SELECT name, score, RANK() OVER (ORDER BY score DESC) AS r, DENSE_RANK() OVER (ORDER BY score DESC) AS dr FROM players;",
      "category": "sql"
    },
    {
      "term": "Reactive Programming",
      "definition": "Reactive programming models data sources as observable streams. You define transformations on those streams, and any time the source emits a new value, the transformation pipeline automatically re-runs. Popularised by RxJS in JavaScript.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "READ COMMITTED",
      "definition": "Each statement only sees data committed before it started. The default in PostgreSQL and Oracle.",
      "example": "SET TRANSACTION ISOLATION LEVEL READ COMMITTED;",
      "category": "sql"
    },
    {
      "term": "READ UNCOMMITTED",
      "definition": "Weakest isolation level — a transaction can read another’s uncommitted changes (dirty reads allowed).",
      "example": "SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;",
      "category": "sql"
    },
    {
      "term": "RED method",
      "definition": "For request-driven services, watch Rate, Errors, and Duration. A simpler, service-focused cousin of the golden signals.",
      "example": "Rate=req/s Errors=fail % Duration=p99 latency",
      "category": "observability"
    },
    {
      "term": "Refactoring",
      "definition": "Restructuring existing code to improve its internal structure without changing its external behaviour. Reduces technical debt and improves maintainability.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "ReferenceError",
      "definition": "The code refers to a variable or function that does not exist (has not been declared).",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "Referential Transparency",
      "definition": "An expression can be replaced with its value without changing the program's behaviour. If getUser(1) always returns the same User, you can cache or reason about it freely.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Referer",
      "definition": "The URL of the page that initiated the request. (Note the historic misspelling — it is \"Referer\", not \"Referrer\".)",
      "example": "Referer: https://example.com/products/",
      "category": "http-headers"
    },
    {
      "term": "Referrer-Policy",
      "definition": "Controls how much of the referrer URL is sent on outbound links and requests.",
      "example": "Referrer-Policy: strict-origin-when-cross-origin",
      "category": "http-headers"
    },
    {
      "term": "refresh",
      "definition": "Updates state to match real infrastructure without changing anything. Now folded into plan/apply by default.",
      "example": "terraform plan -refresh-only",
      "category": "terraform"
    },
    {
      "term": "registry",
      "definition": "A server that stores and distributes images. Docker Hub is the public default; you can run private registries (Harbor, ECR, GHCR).",
      "example": "docker login registry.example.com docker pull registry.example.com/team/app:1.0",
      "category": "docker"
    },
    {
      "term": "remote backend",
      "definition": "Stores state somewhere shared (S3, Terraform Cloud, GCS) so a team isn’t passing a local file around.",
      "example": "terraform { backend \"s3\" { bucket = \"tf-state\" key = \"prod/app.tfstate\" region = \"eu-central-1\" } }",
      "category": "terraform"
    },
    {
      "term": "Rename Symbol",
      "definition": "Rename a variable, function, or class everywhere it is used — safely, across the project.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "REPEATABLE READ",
      "definition": "Rows you read once stay the same for the whole transaction. MySQL InnoDB’s default.",
      "example": "SET TRANSACTION ISOLATION LEVEL REPEATABLE READ;",
      "category": "sql"
    },
    {
      "term": "ReplicaSet",
      "definition": "Keeps a fixed number of identical Pods running. Deployments create and manage ReplicaSets for you — you almost never touch one directly.",
      "example": "kubectl get rs # web-7d9f8c 3 3 3 2m",
      "category": "kubernetes"
    },
    {
      "term": "requests",
      "definition": "The amount of CPU/memory a container is guaranteed. The scheduler uses requests to decide which node a Pod fits on.",
      "example": "resources: requests: cpu: \"250m\" memory: \"256Mi\"",
      "category": "kubernetes"
    },
    {
      "term": "resource",
      "definition": "A single piece of infrastructure Terraform creates and manages — a VM, a bucket, a DNS record. The verb of Terraform.",
      "example": "resource \"aws_s3_bucket\" \"logs\" { bucket = \"my-app-logs\" }",
      "category": "terraform"
    },
    {
      "term": "REST (Representational State Transfer)",
      "definition": "An architectural style for APIs that uses standard HTTP methods (GET, POST, PUT, DELETE) and stateless communication. RESTful APIs are the most common web API type.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Retry-After",
      "definition": "How long to wait before retrying. Sent with 429 (rate limit) or 503 (service unavailable).",
      "example": "Retry-After: 120",
      "category": "http-headers"
    },
    {
      "term": "Reverse History Search",
      "definition": "Search backwards through your command history as you type. Saves retyping long commands.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "RIGHT (OUTER) JOIN",
      "definition": "Mirror of LEFT JOIN — keeps every row from the right table. Rare in practice; people just flip the tables.",
      "example": "SELECT u.name, o.total FROM users u RIGHT JOIN orders o ON o.user_id = u.id;",
      "category": "sql"
    },
    {
      "term": "rm",
      "definition": "Remove — Delete files or directories.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "rollout",
      "definition": "Manage and inspect rolling updates — check status, pause, resume, undo to a previous revision, or restart Pods.",
      "example": "kubectl rollout status deployment/web kubectl rollout undo deployment/web kubectl rollout restart deployment/web",
      "category": "kubernetes"
    },
    {
      "term": "ROW_NUMBER",
      "definition": "Assigns a unique sequential number per row within each partition, in the ORDER BY order.",
      "example": "SELECT name, dept, ROW_NUMBER() OVER (PARTITION BY dept ORDER BY salary DESC) AS rn FROM employees;",
      "category": "sql"
    },
    {
      "term": "RUN",
      "definition": "Executes a command during the build and commits the result as a new layer — installing packages, compiling, etc.",
      "example": "RUN apt-get update && apt-get install -y curl \\ && rm -rf /var/lib/apt/lists/*",
      "category": "docker"
    },
    {
      "term": "running total",
      "definition": "A cumulative sum computed with a window frame — SUM(...) OVER with rows from the start up to the current row.",
      "example": "SELECT day, amount, SUM(amount) OVER (ORDER BY day ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS running FROM ledger;",
      "category": "sql"
    },
    {
      "term": "RuntimeError",
      "definition": "A general catch-all error category raised when something goes wrong during execution that doesn't fit a more specific type.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "sampling",
      "definition": "Keeping only a fraction of traces/logs to control cost. Head sampling decides up front; tail sampling decides after seeing the whole trace.",
      "example": "sample 100% of errors, 1% of healthy traces",
      "category": "observability"
    },
    {
      "term": "Save All",
      "definition": "Write every modified file to disk at once.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "scale",
      "definition": "Change the replica count of a Deployment, ReplicaSet, or StatefulSet imperatively.",
      "example": "kubectl scale deployment web --replicas=5",
      "category": "kubernetes"
    },
    {
      "term": "scp",
      "definition": "Secure Copy Protocol — Copy files between local machine and a remote server over SSH.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Search Across Files",
      "definition": "Search the whole project for a string or pattern, with replace-in-files support.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Secret",
      "definition": "Like a ConfigMap but for sensitive data — passwords, tokens, TLS keys. Stored base64-encoded and handled with extra care by the API.",
      "example": "apiVersion: v1 kind: Secret metadata: name: db-creds type: Opaque stringData: password: s3cr3t",
      "category": "kubernetes"
    },
    {
      "term": "Secret Management",
      "definition": "Stores credentials, API keys, and certificates securely — with access control, automatic rotation, and audit logging. (AWS: Secrets Manager + Parameter Store; GCP: Secret Manager; Azure: Azure Key Vault)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Select Next Occurrence",
      "definition": "Add the next match of the current word to your selection so you can edit several at once.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "selector",
      "definition": "A query over labels. Services, Deployments, and NetworkPolicies use selectors to find the Pods they apply to.",
      "example": "selector: matchLabels: app: web",
      "category": "kubernetes"
    },
    {
      "term": "SELF JOIN",
      "definition": "A table joined to itself, using aliases, to relate rows within the same table (e.g. employee → manager).",
      "example": "SELECT e.name, m.name AS manager FROM employees e JOIN employees m ON e.manager_id = m.id;",
      "category": "sql"
    },
    {
      "term": "SERIALIZABLE",
      "definition": "Strongest level — transactions behave as if run one after another. Prevents phantoms at the cost of more aborts/locks.",
      "example": "SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;",
      "category": "sql"
    },
    {
      "term": "Serverless Functions",
      "definition": "Run code without managing servers. You upload a function, define a trigger, and pay only when it runs. (AWS: Lambda; GCP: Cloud Functions; Azure: Azure Functions)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "Service",
      "definition": "A stable network endpoint in front of a set of Pods. Pods come and go, but the Service gives them one steady virtual IP and DNS name.",
      "example": "apiVersion: v1 kind: Service metadata: name: web spec: selector: { app: web } ports: - port: 80 targetPort: 8080",
      "category": "kubernetes"
    },
    {
      "term": "services",
      "definition": "The top-level map in a Compose file. Each entry is one container definition — image or build, ports, env, volumes.",
      "example": "services: web: image: myapp:1.0 ports: [\"8080:8080\"] db: image: postgres:16",
      "category": "docker"
    },
    {
      "term": "Set-Cookie",
      "definition": "Server tells the browser to store a cookie. Can include flags like HttpOnly, Secure, SameSite.",
      "example": "Set-Cookie: session=abc; HttpOnly; Secure; SameSite=Lax; Path=/",
      "category": "http-headers"
    },
    {
      "term": "Side Effects",
      "definition": "Anything a function does beyond returning a value: writing to a database, logging, modifying a variable. FP minimises side effects — they are isolated and explicit.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Singleton",
      "definition": "Ensure only one instance of a class exists, and provide a global access point to it.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "SLA",
      "definition": "Service Level Agreement — a contractual promise to customers, with penalties. Usually looser than your internal SLO.",
      "example": "SLA: 99.5% uptime or we credit your account",
      "category": "observability"
    },
    {
      "term": "SLA (Service Level Agreement)",
      "definition": "A formal contract between a service provider and a customer defining the expected level of service, including uptime guarantees and response times.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "SLI",
      "definition": "Service Level Indicator — the actual measured number you care about, e.g. the proportion of requests served under 300ms.",
      "example": "SLI = good_requests / valid_requests = 0.9987",
      "category": "observability"
    },
    {
      "term": "SLI (Service Level Indicator)",
      "definition": "A measurable metric that indicates how well a service is performing (e.g. request latency, error rate, availability percentage).",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "SLO",
      "definition": "Service Level Objective — the internal target for an SLI over a window, e.g. 99.9% of requests under 300ms over 30 days.",
      "example": "SLO: 99.9% availability over 30 days",
      "category": "observability"
    },
    {
      "term": "SLO (Service Level Objective)",
      "definition": "A target value for an SLI. For example, \"99.9% of requests should complete in under 200ms.\" An SLO is an internal goal; an SLA is an external commitment.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Slug",
      "definition": "A URL-friendly string derived from a page title or name, using only lowercase letters, numbers, and hyphens. For example, the slug for \"Getting Started\" might be getting-started.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "source",
      "definition": "Source — Run a script in the current shell — useful for loading .env files or updating PATH.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "span",
      "definition": "A single timed unit of work within a trace — one operation, with a start, duration, parent, and attributes.",
      "example": "span: \"SELECT orders\" parent=api duration=80ms db.system=postgres",
      "category": "observability"
    },
    {
      "term": "Sprint",
      "definition": "A fixed-length iteration in Agile/Scrum (typically 1–2 weeks) during which the team completes a defined set of tasks. At the end of a sprint, working software should be delivered.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "SQL (Structured Query Language)",
      "definition": "The standard language for managing relational databases. Used to create, read, update, and delete data. Pronounced \"sequel\" (S-Q-L). Dialects include PostgreSQL, MySQL, and SQLite.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "ssh",
      "definition": "Secure Shell — Log in to a remote server securely over the network.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Stack",
      "definition": "A set of technologies used together to build an application (e.g. MEAN stack: MongoDB, Express, Angular, Node.js). Also a data structure where items are added and removed from the top (last in, first out).",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "StackOverflowError",
      "definition": "The call stack ran out of space — usually caused by infinite recursion (a function that keeps calling itself forever).",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "Start / Continue Debugging",
      "definition": "Launch the debugger, or resume execution until the next breakpoint.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "State",
      "definition": "The data or condition of a system at a given point in time. In frontend development, UI state drives what is displayed. In distributed systems, stateful services store session data between requests; stateless services do not.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "state file",
      "definition": "Terraform’s record of the real resources it manages and how they map to your config. Source of truth for what exists.",
      "example": "terraform state list",
      "category": "terraform"
    },
    {
      "term": "state lock",
      "definition": "A mutex that stops two people running apply at once and corrupting state. The S3 backend uses DynamoDB (or native locking) for this.",
      "example": "terraform force-unlock",
      "category": "terraform"
    },
    {
      "term": "state mv / rm",
      "definition": "Surgically move a resource’s address (after a refactor) or remove it from state without destroying the real resource.",
      "example": "terraform state mv aws_s3_bucket.old aws_s3_bucket.new terraform state rm aws_s3_bucket.logs",
      "category": "terraform"
    },
    {
      "term": "StatefulSet",
      "definition": "Like a Deployment but for stateful apps that need stable network identities and stable per-Pod storage — databases, queues, clustered services.",
      "example": "apiVersion: apps/v1 kind: StatefulSet metadata: name: db spec: serviceName: db replicas: 3 selector: matchLabels: { app: db } template: metadata: labels: { app: db } spec: containers: - name: db image: postgres:16",
      "category": "kubernetes"
    },
    {
      "term": "Stateless",
      "definition": "A system that does not retain information about previous interactions. Each request is treated independently. REST APIs are stateless by design.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Static",
      "definition": "Not changing at runtime. A static site is pre-generated HTML/CSS/JS served without a backend. A static variable belongs to the class rather than an instance.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Step Into",
      "definition": "Descend into the function call on the current line to debug it line by line.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Step Out",
      "definition": "Finish the current function and return to the caller.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Step Over",
      "definition": "Run the current line and stop on the next one, without descending into function calls.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "StorageClass",
      "definition": "A template for dynamically provisioning PVs. Defines the provisioner (e.g. an EBS or GCE PD driver) and parameters like disk type.",
      "example": "apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: fast-ssd provisioner: ebs.csi.aws.com parameters: type: gp3",
      "category": "kubernetes"
    },
    {
      "term": "Strategy",
      "definition": "Define a family of algorithms, encapsulate each one, and make them interchangeable — the algorithm varies independently from clients that use it.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "Stream",
      "definition": "A sequence of values emitted over time. A stream of click events, a stream of price updates, a stream of HTTP responses — all can be processed with the same operators.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "Strict-Transport-Security",
      "definition": "HSTS — tells the browser to use HTTPS for this domain for the given number of seconds, even if the user typed http://.",
      "example": "Strict-Transport-Security: max-age=63072000; includeSubDomains; preload",
      "category": "http-headers"
    },
    {
      "term": "structured logging",
      "definition": "Logging machine-parseable key/value records (usually JSON) instead of free-form text, so logs can be queried and filtered.",
      "example": "{\"level\":\"error\",\"msg\":\"payment failed\",\"order_id\":4821,\"latency_ms\":250}",
      "category": "observability"
    },
    {
      "term": "Stub",
      "definition": "A simplified replacement for a dependency in testing — it returns hardcoded responses without executing real logic. Similar to a mock, but stubs typically focus on providing canned answers rather than verifying calls.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Subject",
      "definition": "Both an observable and an observer — it can receive values (next()) and emit them to all subscribers. Used as a bridge between non-reactive and reactive code.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "subquery",
      "definition": "A query nested inside another — in SELECT, FROM, or WHERE. A correlated subquery references the outer row.",
      "example": "SELECT name FROM users u WHERE (SELECT COUNT(*) FROM orders o WHERE o.user_id = u.id) > 0;",
      "category": "sql"
    },
    {
      "term": "Subscription",
      "definition": "The act of \"listening to\" an observable. When you subscribe, you provide handlers for: next value, error, and completion. Don't forget to unsubscribe to avoid memory leaks.",
      "example": "",
      "category": "paradigms"
    },
    {
      "term": "sudo",
      "definition": "SuperUser Do — Run a command as the root (administrator) user.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "SyntaxError",
      "definition": "The code is not written according to the language rules — the parser cannot understand it at all.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "tag",
      "definition": "A human-readable label on an image, usually a version. The part after the colon in name:tag. Defaults to \"latest\" if omitted.",
      "example": "docker tag myapp:1.0 myapp:stable",
      "category": "docker"
    },
    {
      "term": "tag-and-push",
      "definition": "The standard publish flow: tag a local image with the target registry path, then push it there.",
      "example": "docker tag myapp:1.0 ghcr.io/acme/myapp:1.0 docker push ghcr.io/acme/myapp:1.0",
      "category": "docker"
    },
    {
      "term": "tail",
      "definition": "Tail — Show the last N lines of a file. -f follows new output in real time.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "taint",
      "definition": "A mark on a node that repels Pods. Only Pods with a matching toleration may schedule there. Used to reserve nodes (e.g. GPU nodes).",
      "example": "kubectl taint nodes gpu-1 \\ dedicated=gpu:NoSchedule",
      "category": "kubernetes"
    },
    {
      "term": "taint",
      "definition": "Marks a resource for recreation on the next apply. Largely replaced by terraform apply -replace.",
      "example": "terraform apply -replace=\"aws_instance.web\"",
      "category": "terraform"
    },
    {
      "term": "tar",
      "definition": "Tape Archive — Create or extract .tar (and .tar.gz) archives.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "Technical debt",
      "definition": "The future cost of rework caused by choosing a quick solution now instead of a better, more time-consuming approach. Like financial debt, it accumulates interest over time.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Template Method",
      "definition": "Define the skeleton of an algorithm in a base class, deferring some steps to subclasses — subclasses override specific steps without changing the algorithm's structure.",
      "example": "",
      "category": "design-patterns"
    },
    {
      "term": "ternary",
      "definition": "The conditional expression: condition ? true_value : false_value. The closest HCL has to an if statement.",
      "example": "instance_type = var.env == \"prod\" ? \"m5.large\" : \"t3.micro\"",
      "category": "terraform"
    },
    {
      "term": "terraform block",
      "definition": "Settings for Terraform itself — required version, required providers, and the backend configuration.",
      "example": "terraform { required_version = \">= 1.6\" required_providers { aws = { source = \"hashicorp/aws\", version = \"~> 5.0\" } } }",
      "category": "terraform"
    },
    {
      "term": "terraform.tfstate",
      "definition": "The default local state file. A JSON document; never edit it by hand — use the state subcommands.",
      "example": "cat terraform.tfstate | jq .resources",
      "category": "terraform"
    },
    {
      "term": "Throughput",
      "definition": "The amount of work a system can handle per unit of time (e.g. requests per second, transactions per minute). Distinct from latency.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "TimeoutError",
      "definition": "A requested operation did not complete within the allowed time — the waiting period expired.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "tmpfs",
      "definition": "An in-memory mount that never touches disk and vanishes when the container stops. For secrets and scratch data.",
      "example": "docker run --tmpfs /run:size=64m myapp:1.0",
      "category": "docker"
    },
    {
      "term": "Toggle Breakpoint",
      "definition": "Set or clear a breakpoint on the current line so execution pauses there.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Toggle Integrated Terminal",
      "definition": "Show or hide the terminal panel inside the editor.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Toggle Line Comment",
      "definition": "Comment or uncomment the current line (or selection). Works in any language.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Toggle Sidebar",
      "definition": "Show or hide the file explorer panel to free up screen space.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "Token",
      "definition": "A string that represents a credential or identity. Access tokens (short-lived) and refresh tokens (long-lived) are used in OAuth flows. In AI/NLP, a token is a unit of text (roughly a word or subword) that a language model processes.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "toleration",
      "definition": "A Pod's permission to schedule onto a node with a matching taint. Tolerations do not force placement — they only allow it.",
      "example": "spec: tolerations: - key: \"dedicated\" operator: \"Equal\" value: \"gpu\" effect: \"NoSchedule\"",
      "category": "kubernetes"
    },
    {
      "term": "top / htop",
      "definition": "Table of Processes / Interactive Process Viewer — Live view of CPU and memory usage by process. htop is the friendly version.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "trace",
      "definition": "The end-to-end story of one request as it crosses services, made of nested spans. Answers \"where did the time go?\".",
      "example": "trace_id=ab12 → [api 120ms] → [db 80ms] → [cache 5ms]",
      "category": "observability"
    },
    {
      "term": "Transaction",
      "definition": "A sequence of database operations treated as an atomic unit — either all succeed or all are rolled back. Transactions follow ACID properties (Atomicity, Consistency, Isolation, Durability).",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Type checking",
      "definition": "Verifying that values in a program are used consistently with their declared types. Static type checking happens at compile time (TypeScript, Java); dynamic type checking happens at runtime (Python, JavaScript).",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "TypeError",
      "definition": "An operation is performed on a value of the wrong type — like calling a number as if it were a function.",
      "example": "",
      "category": "error-types"
    },
    {
      "term": "UNION vs UNION ALL",
      "definition": "Both stack result sets. UNION removes duplicates (and pays for a sort/hash); UNION ALL keeps everything and is faster.",
      "example": "SELECT id FROM active UNION ALL SELECT id FROM archived;",
      "category": "sql"
    },
    {
      "term": "Unit test",
      "definition": "A test that verifies a single, isolated piece of functionality (a function, a method) in isolation from the rest of the system. The fastest and most granular type of test.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "uptime / availability (nines)",
      "definition": "The fraction of time a service is up, quoted in \"nines\". Each extra nine cuts allowed downtime by 10x.",
      "example": "99.9% = 43.2 min/month 99.99% = 4.3 min/month 99.999% = 26 s/month",
      "category": "observability"
    },
    {
      "term": "URL (Uniform Resource Locator)",
      "definition": "The address of a resource on the web. Consists of a scheme (https://), domain (example.com), optional path (/users/42), and optional query string (?filter=active). Pronounced as individual letters: U-R-L.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "USE method",
      "definition": "For resources (CPU, disk, network), watch Utilisation, Saturation, and Errors. Brendan Gregg’s checklist for finding bottlenecks.",
      "example": "CPU: Utilisation 80%, Saturation (run-queue) 4, Errors 0",
      "category": "observability"
    },
    {
      "term": "USER",
      "definition": "Sets the user (and optionally group) that RUN, CMD, and ENTRYPOINT run as. Use it to avoid running as root.",
      "example": "RUN adduser -D app USER app",
      "category": "docker"
    },
    {
      "term": "User-Agent",
      "definition": "String identifying the client software. Browsers, libraries, bots all send one.",
      "example": "User-Agent: Mozilla/5.0 (...) Chrome/120 Safari/537.36",
      "category": "http-headers"
    },
    {
      "term": "UUID (Universally Unique Identifier)",
      "definition": "A 128-bit identifier that is statistically guaranteed to be unique. Used for IDs in distributed systems where a central authority cannot assign sequential IDs.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "validate",
      "definition": "Checks that the configuration is syntactically valid and internally consistent — no API calls, no state needed.",
      "example": "terraform validate",
      "category": "terraform"
    },
    {
      "term": "variable",
      "definition": "A typed input to a configuration or module. Set via -var, *.tfvars files, env vars (TF_VAR_*), or defaults.",
      "example": "variable \"instance_count\" { type = number default = 2 }",
      "category": "terraform"
    },
    {
      "term": "Vary",
      "definition": "Tells caches which request headers affect the response. Without it, a cache might serve the wrong variant.",
      "example": "Vary: Accept-Encoding, Accept-Language",
      "category": "http-headers"
    },
    {
      "term": "Version control",
      "definition": "A system that records changes to files over time so you can recall specific versions later. Git is the dominant version control system in modern software development.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Versioning",
      "definition": "The practice of assigning unique version identifiers to releases (e.g. Semantic Versioning: MAJOR.MINOR.PATCH). API versioning allows clients to use a stable interface while the API evolves.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Virtual machine",
      "definition": "Software that emulates a complete computer, allowing multiple operating systems to run on a single physical host. Abbreviated as VM.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Virtual Machines",
      "definition": "A computer you rent in the cloud. You choose the OS, CPU, RAM and pay per hour. (AWS: EC2; GCP: Compute Engine; Azure: Azure VMs)",
      "example": "",
      "category": "cloud-services"
    },
    {
      "term": "VOLUME",
      "definition": "Declares a mount point whose data should live in a volume, outside the container's writable layer.",
      "example": "VOLUME [\"/var/lib/data\"]",
      "category": "docker"
    },
    {
      "term": "Volume",
      "definition": "A directory accessible to containers in a Pod. Many types exist — configMap, secret, emptyDir, persistentVolumeClaim, hostPath.",
      "example": "spec: volumes: - name: cache emptyDir: {} containers: - name: app volumeMounts: - name: cache mountPath: /cache",
      "category": "kubernetes"
    },
    {
      "term": "volumes (compose)",
      "definition": "Declares named volumes and mounts them into services for persistent data that outlives container restarts.",
      "example": "services: db: volumes: - db-data:/var/lib/postgresql/data volumes: db-data: {}",
      "category": "docker"
    },
    {
      "term": "Vulnerability",
      "definition": "A weakness in a system that could be exploited by an attacker. CVE (Common Vulnerabilities and Exposures) is the industry standard for identifying and tracking vulnerabilities.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "Webhook",
      "definition": "A mechanism where one system sends an HTTP POST notification to another when a specific event occurs — an \"HTTP callback\". GitHub uses webhooks to notify CI systems when code is pushed.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "WebSocket",
      "definition": "A protocol providing a persistent two-way communication channel between client and server over a single TCP connection. Used for real-time features like chat, live updates, and collaborative editing.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "wget",
      "definition": "Web Get — Download files from a URL.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "which",
      "definition": "Which — Show the full path of a command executable.",
      "example": "",
      "category": "cli-commands"
    },
    {
      "term": "WORKDIR",
      "definition": "Sets the working directory for subsequent RUN, CMD, COPY, and ENTRYPOINT instructions. Creates it if missing.",
      "example": "WORKDIR /usr/src/app",
      "category": "docker"
    },
    {
      "term": "workspace",
      "definition": "Named state instances within one backend, letting you reuse a config for dev/staging/prod with separate state.",
      "example": "terraform workspace new staging terraform workspace select staging",
      "category": "terraform"
    },
    {
      "term": "WWW-Authenticate",
      "definition": "Sent with 401 Unauthorized — tells the client what auth scheme is required.",
      "example": "WWW-Authenticate: Bearer realm=\"api\", error=\"invalid_token\"",
      "category": "http-headers"
    },
    {
      "term": "X-Content-Type-Options",
      "definition": "Set to \"nosniff\" to prevent the browser from guessing a different content type than the server declared.",
      "example": "X-Content-Type-Options: nosniff",
      "category": "http-headers"
    },
    {
      "term": "X-Frame-Options",
      "definition": "Whether your page can be embedded in an iframe. Defends against clickjacking. Use DENY or SAMEORIGIN.",
      "example": "X-Frame-Options: DENY",
      "category": "http-headers"
    },
    {
      "term": "X-Rate-Limit-*",
      "definition": "Custom headers reporting rate-limit state. Conventional but not standardised — X-Rate-Limit-Limit, X-Rate-Limit-Remaining, X-Rate-Limit-Reset.",
      "example": "X-Rate-Limit-Remaining: 47 X-Rate-Limit-Reset: 1735689600",
      "category": "http-headers"
    },
    {
      "term": "XSS (Cross-Site Scripting)",
      "definition": "A security vulnerability where an attacker injects malicious scripts into web pages viewed by other users. Prevented by escaping user-supplied output and using a Content Security Policy (CSP). Ranked in the OWASP Top 10.",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "YAML (YAML Ain't Markup Language)",
      "definition": "A human-readable data serialisation format widely used for configuration files (Docker Compose, Kubernetes, GitHub Actions, Ansible). Whitespace-significant — indentation defines structure. Pronounced \"YAM-ul\".",
      "example": "",
      "category": "core-glossary"
    },
    {
      "term": "yy (yank line)",
      "definition": "Vim: copy (\"yank\") the current line into the register.",
      "example": "",
      "category": "keyboard-shortcuts"
    },
    {
      "term": "zip / unzip",
      "definition": "Zip / Unzip — Create or extract .zip archives.",
      "example": "",
      "category": "cli-commands"
    }
  ]
}