Glossary

The coding words our lessons lean on, in plain language. Inside a lesson, dotted-underlined words show these same definitions on mouseover.

A

API
The set of operations a program or service exposes for other programs to call, the way buttons and menus are what it exposes to humans. A web API is one a server offers over the network, usually exchanging structured data like JSON.
argument
The concrete value you hand to a function when you call it. The parameter is the name in the function's definition; the argument is the real value that fills it at the call site.
autocompletion
An editor feature that suggests and fills in names as you type, so you don't have to remember or retype every identifier exactly.

B

blast radius
Everything an attacker could reach if one particular thing — a server, a credential, a laptop — were compromised. Good security design keeps every blast radius small.
boilerplate
Standard code that has to be there for things to work but isn't the interesting part — like the export line at the bottom of JavaScript lessons. You mostly leave it alone.
bug
A mistake in a program that makes it behave wrongly. Finding and fixing bugs (debugging) is a normal, everyday part of programming — not a sign you're bad at it.
byte
The basic unit computers store data in. One plain English letter or digit fits in one byte, but many characters (accents, other scripts, emoji) take several.

C

callback
A function you hand to other code so it can be called back later: when an event fires, a timer elapses, or a result becomes ready. Passing a function to map or filter is the same idea.
case-sensitive
Treating uppercase and lowercase letters as different. In a case-sensitive language, name, Name, and NAME are three unrelated things — typing the wrong capitalization is an error.
certificate
A signed digital document binding a domain name to an encryption key, vouched for by a certificate authority. It's how your browser knows a site is really that site.
CIDR
A way of writing a whole range of IP addresses at once, like 10.0.0.0/16. The number after the slash says how many leading bits are fixed — bigger slash, smaller range.
cmdlet
A built-in PowerShell command, always named Verb-Noun like Get-Content or Sort-Object. Pronounced "command-let". Knowing the pattern lets you guess the command you need.
console
The text window where a program's printed output appears. On this platform, what your code prints shows up in the results panel under the editor.
container registry
A service that stores container images and hands them out — machines push images to it after building and pull them to run. Docker Hub is the big public one; ECR is AWS's.

D

daemon
A program that runs in the background with no window or terminal, usually started at boot — web servers and databases run as daemons. Pronounced "demon".
DNS record
One entry in the internet's name system, answering one kind of question about a domain — an A record maps a name to an IPv4 address, a CNAME points a name at another name.

E

editor
The program you type code into. In a lesson it's the dark panel below the text — like a word processor, but for code, with coloring that helps you read it.
environment variable
A named value the operating system hands a program when it starts. Tools read them for configuration, so you can change behavior without editing any files.
evaluate
To work an expression down to its value. When Python evaluates 7 * 3, the result is 21 — evaluating is just the computer doing that working-out.
event log
Windows' diary of what happened on a machine: startups, errors, logins, crashes. Each entry records who reported it, how serious it was, and when. Reading event logs is how admins reconstruct a problem.
execution policy
A Windows PowerShell safety setting that decides whether script files are allowed to run on a machine. It is a guardrail against accidentally running scripts, not a security boundary against a determined attacker.
expression
A piece of code that produces a value, like 7 * 3 or level + 1. Wherever a value can go, an expression can go instead.

F

function
A named, reusable block of code. You define it once, then call it by name whenever you want it to run — optionally handing it inputs and getting a value back.

G

gateway
The router a machine hands packets to when the destination isn't on the local network — the door out. The 'default gateway' is where everything unmatched gets sent.

H

hash
A technique that turns data (like a name) into a number pointing straight at a storage slot, making lookups near-instant. The trade-off is that items end up stored in an unpredictable order.
hashtable
A collection that stores values under names, like a tiny phone book: you look up 'hp' and get 30. PowerShell writes them as @{ hp = 30 }. Other languages call the same idea a dictionary or map.

I

IAM role
An AWS identity with no password or keys of its own that trusted parties can temporarily assume, receiving short-lived credentials. The safer alternative to long-lived access keys.
IDE
An editor with programming tools built in: autocompletion, inline error checking, and debugging. Short for integrated development environment.
indentation
The spaces at the start of a line. In Python, indentation is meaning, not decoration — it's how the language knows which lines belong inside a function, loop, or if.

J

journald
The logging service on modern Linux systems. It collects what every service prints into one queryable journal, read with the journalctl command.
JSON
A plain-text format for structured data: key/value pairs, lists, and values, readable by both people and programs. It is how most web services send data back and forth.

K

keyword
A word the language reserves for itself, like def, return, or const. Keywords have fixed meanings and can't be used as names for your own variables.
KMS
AWS's Key Management Service. Encryption keys live inside it and never leave; apps ask it to encrypt or decrypt, and every use is permission-checked and logged.

L

layer
One step's worth of a container image — each build instruction adds a layer recording only what changed. Identical layers are stored and downloaded once, which keeps builds and pushes fast.
least privilege
The security principle that every identity should get exactly the permissions its job needs and nothing more, so a compromised account can only reach what it truly had to.

M

module
A packaged bundle of related commands you can add to a shell or program. PowerShell ships many modules built in, and installing more is how it learns new tricks.

N

null
A special "no value here" marker many languages let sit where a real value was expected. Using it as if it were a real value is a classic source of crashes, which is why some languages replace it with safer alternatives.

O

orchestrator
A system that runs containers across a fleet of machines for you — deciding where each runs, restarting failures, and scaling counts up and down. Kubernetes is the famous one.

P

parameter
A named input a function accepts, listed between its parentheses. When the function is called, each parameter holds the value passed in for it.
pipeline
A chain of commands connected with |, where each command's output flows into the next as input. In PowerShell the things flowing through are whole objects, not just text.
placeholder
Something that holds a spot until the real thing arrives — like pass in Python, or a blank you're meant to fill in. It does nothing by itself.
pod
Kubernetes's smallest deployable unit: one or more containers that live and die together, sharing a network address. Almost everything in Kubernetes is defined in terms of pods.
provider
A plugin that teaches Terraform how to talk to one platform — the AWS provider knows AWS's API, the local provider manages files on disk. Downloaded by terraform init.

R

registry
Windows' central settings database, organized like a tree of folders (keys) holding named values. Programs and Windows itself read and write their configuration there.
runtime
The program that runs your program. Your code is just text until a runtime — like Node for JavaScript or the Python interpreter — reads it and carries out the instructions.

S

sandbox
A sealed-off environment where code runs safely. Your submissions run in a sandbox on our servers, so nothing you write can affect your machine or anyone else's.
scope
The region of code where a given variable is visible and usable. Code can generally see the variables of the scope that surrounds it, but not those inside functions it merely calls.
service
A program Windows runs in the background with no window, usually starting at boot: things like printing, updates, or a database. Admins spend a lot of time checking which services are running and why one stopped.
signature
The first line of a function's definition: its name and the parameters it takes (plus, in typed code, their types). Reading the signature tells you how to call a function without reading its body.
standard library
The set of ready-made modules that ship with a language itself, no installing required. You pull them in with an import (or use) line and get well-tested tools for free.
state file
Terraform's ledger of everything it manages and what each thing looked like at the last apply. It's how Terraform knows what already exists — lose it and Terraform forgets.
statement
One complete instruction in a program, like assigning a variable or returning a value. Programs are lists of statements, carried out top to bottom.
string
A piece of text in a program, written in quotes: "Embergotchi". The quotes aren't part of the value — they just mark where the text starts and ends.
subnet
A smaller address range carved out of a bigger network, used as a compartment — machines are grouped into subnets so traffic between groups can be controlled.
syntax
The grammar rules of a programming language — which symbols go where. A syntax error means the computer couldn't even read your code, usually due to a typo like a missing colon or bracket.

T

terminal
A window where you control a computer by typing commands instead of clicking. Some later lessons are completed in your own terminal using the gotchi CLI.
test
A small hidden program that checks your code did the right thing — it calls your code and compares what comes back against the expected answer. Passing the tests passes the lesson.
TLS
The encryption layer that turns HTTP into HTTPS. It keeps traffic private, detects tampering, and uses certificates to prove you're talking to the real server.

U

Unicode
The universal standard that assigns a number to every character in every writing system, plus emoji, so the same text means the same thing on any machine.
unit file
The small text file that tells systemd how to run a service: what command to start, which user to run as, and what to do if it crashes.
UTF-8
The standard way of storing text as bytes: common English letters take one byte each, while accented letters, other scripts, and emoji take several.

V

variable
A name that holds a value, created with =. Once a variable exists, writing its name anywhere stands in for the value it holds.

W

WIP
Short for "work in progress": changes that aren't finished or ready to be finalized yet. Git uses it in the labels it auto-generates for stashed work.

Y

YAML
A human-friendly text format for structured data, common in configuration files. Indentation expresses nesting, so what lines up matters.

Z

zero trust
A security model where being on the 'inside' network earns no trust — every request is authenticated and authorized individually, wherever it comes from.