Programming Terminology — Grouped by Topic

Same terms as the main glossary, but organized by topic instead of alphabetically. Useful when you want to learn a whole area.

Variables & Data

Variable

A named container that stores a value you can read or change.

Constant

A variable whose value cannot be reassigned after it's set.

Identifier

The name you give to a variable, function, or class.

Literal

A value written directly in code, like 42, "hello", or true.

Data type

The category of a value — number, string, boolean, etc.

Integer

A whole number with no decimal part.

Float

A number with a decimal part (technically a floating-point number).

Boolean

A value that is either true or false.

String

Text — a sequence of characters wrapped in quotes.

Null

An explicit "no value" marker. Different from "undefined."

Undefined

In JavaScript: a variable declared but not assigned a value.

NaN

"Not a Number" — what some math operations produce when they can't return a real number.

Type coercion

Automatic conversion between types — common in JS, rare in Python.

Type casting

Explicitly converting a value from one type to another.

Immutable

A value that cannot be changed after it's created.

Mutable

A value that can be modified in place.

Control Flow

Conditional

Code that branches based on a true/false test.

If statement

The basic conditional construct.

Else

The branch taken when the if-condition is false.

Loop

Code that repeats until a condition is met.

For loop

A loop with an initializer, condition, and increment.

While loop

A loop that runs while a condition is true.

Iteration

One pass through the body of a loop.

Break

Exits the innermost loop immediately.

Continue

Skips to the next iteration of the loop.

Switch

A multi-way branch based on a single value.

Recursion

A function that calls itself.

Infinite loop

A loop whose condition never becomes false. Usually a bug.

Short-circuit evaluation

Logical operators stop early when the result is determined.

Truthy

A value that evaluates to true in a boolean context.

Falsy

A value that evaluates to false in a boolean context.

Functions

Function

A named, reusable block of code.

Method

A function that belongs to an object or class.

Parameter

A name listed in a function's definition for an input.

Argument

The actual value passed to a function when called.

Return value

The value a function gives back to the caller.

Side effect

A change a function makes outside its return value.

Pure function

A function with no side effects, returning the same output for the same input.

Callback

A function passed as an argument to be called later.

Higher-order function

A function that takes or returns another function.

Anonymous function

A function without a name, often used as a callback.

Arrow function

JavaScript's shorthand function syntax.

Closure

A function that "remembers" variables from its enclosing scope.

Recursion

A function that calls itself to solve a smaller version of a problem.

Scope

The region where a variable is visible.

Data Structures

Array

An ordered list of values, indexed by position.

List

Python's name for an array.

Object

A collection of named fields (key-value pairs).

Dictionary

Python's name for an object/map.

Map

A general data structure of key-value pairs.

Set

A collection with no duplicates.

Index

The position of an item in an array, starting at 0.

Key

The name used to look up a value in an object.

Value

The data associated with a key.

Tuple

An immutable, ordered group of values (mostly Python).

Stack

A last-in-first-out collection.

Queue

A first-in-first-out collection.

Tree

A hierarchical data structure with a root and branches.

Node

A single element in a tree or linked list.

Errors & Debugging

Bug

A defect — code that runs but produces the wrong result.

Error

An explicit failure thrown by the runtime.

Exception

An error that can be caught and handled.

Stack trace

The call path leading to an error, useful for debugging.

Syntax error

Code that doesn't parse (missing parenthesis, etc.).

Runtime error

An error that happens while the program runs, not when it's parsed.

Logic error

Code that runs without errors but produces wrong results.

Debugger

A tool that pauses code execution so you can inspect state.

Breakpoint

A place where the debugger pauses.

Console

The text-output area of a development environment.

Stack overflow

When recursion goes too deep and exhausts the call stack.

OOP

Class

A blueprint for creating objects.

Instance

A specific object created from a class.

Constructor

The function called when an instance is created.

Inheritance

One class extending another, gaining its members.

Encapsulation

Bundling data and behavior, hiding internal details.

Polymorphism

Using one interface for different types.

Abstraction

Hiding complexity behind a simple interface.

General

API

A set of routines or endpoints another program can call.

Compiler

A program that translates source code into another form (often machine code).

Interpreter

A program that runs source code line-by-line.

IDE

Integrated Development Environment — an editor with debugging, autocomplete, etc.

Library

Reusable code others wrote that you import.

Framework

A larger code base that imposes structure on your app.

Repository

A version-controlled folder of code, usually on git.

Commit

A saved snapshot of changes in version control.

Branch

A parallel line of development in version control.

Pull request

A proposal to merge one branch into another, with review.

Build

The process of turning source code into something runnable.

Deploy

Pushing code to a server where users can use it.

Refactor

Changing code's structure without changing what it does.

Technical debt

Shortcuts that make today easier but make future work harder.

Algorithm

A defined sequence of steps that solves a problem.

Pseudocode

English-like sketches of code, used for planning.

REPL

Read-Eval-Print Loop — an interactive prompt for running code.

Sandbox

An isolated environment to run untrusted or experimental code.