Fundamental Glossary

Browse 21 fundamental terms defined in plain English, from the cultural dictionary of computing.

21 Fundamental Terms

Abstraction
Abstraction is the practice of hiding complex implementation details behind a simpler interface, letting developers work with higher-level concepts without...
API
API stands for Application Programming Interface. It is a defined contract that allows two pieces of software to communicate with each other by specifying what...
Caching
Caching is the practice of storing frequently accessed data in a faster storage layer so subsequent requests skip expensive computations, database queries, or...
Commit
Commit in version control is a snapshot of all tracked files in a repository at a specific point in time, along with a message describing what changed and why....
CRUD
Create, Read, Update, Delete — the four basic operations of persistent storage. Nearly every web application is fundamentally a CRUD app with varying amounts...
Dependency
Dependency in software development is any external package, library, framework, or service that a project requires to function. When your application uses a...
Encryption
Encryption is the process of converting readable data (plaintext) into an unreadable format (ciphertext) using a mathematical algorithm and a cryptographic...
Function
A named, reusable block of code that accepts inputs (parameters), performs a computation, and optionally returns a result. The fundamental unit of abstraction...
Hash
A fixed-size output produced by a hash function from arbitrary input data. Cryptographic hashes are one-way (irreversible), deterministic, and...
Kernel
The core component of an operating system that manages hardware resources and provides services to user-space programs. The Linux kernel, Windows NT kernel,...
Markup
Markup refers to a system of annotations or tags added to text to define its structure, formatting, and semantics, separate from the content itself. The...
Polymorphism
The ability of different types to respond to the same interface — a function or method behaves differently depending on the type of object it's called on,...
Recursion
Recursion is a programming technique in which a function calls itself to solve smaller instances of the same problem. Every recursive function needs a base...
Regex
Regular Expression — a sequence of characters defining a search pattern, used for string matching and manipulation. Incredibly powerful and notoriously...
REPL
Read-Eval-Print Loop — an interactive programming environment that takes single expressions, evaluates them, and returns the result immediately. Originated...
Scope
The region of code where a variable is visible and accessible. Block scope, function scope, global scope — understanding scope is the difference between code...
Stdin/Stdout/Stderr
The three standard I/O streams in Unix: stdin (fd 0, input), stdout (fd 1, normal output), and stderr (fd 2, error output). The Unix philosophy of composing...
String
A data type representing an ordered sequence of characters, used to store and manipulate text, with encoding details (UTF-8, UTF-16) varying by language and...
Subroutine
A named, reusable block of instructions that performs a specific task, callable from multiple points in a program, known variously as a function, procedure, or...
Token
The basic unit of text that a language model processes — roughly 3/4 of an English word on average. Text is split into tokens by a tokenizer before being fed...
Unit Test
Unit Test is an automated test that verifies the behavior of a small, isolated piece of code, typically a single function, method, or class, in isolation from...

Related Topics