Glossary
This is the complete list of abbreviations and short technical terms that appear across the SEBook, tutorials, and blog posts. The same definitions are surfaced inline as <abbr> tooltips when an abbreviation is used in body text — hover over (or focus) any abbreviation on the site to see its expansion.
Showing all 100 terms.
-
ABC
Abstract Base Class
A class that defines a shared interface or contract but is not meant to be instantiated directly. In Python, ABCs are commonly created with the abc module and abstractmethod decorators.
-
ACID
Atomicity, Consistency, Isolation, Durability
A set of properties that database transactions are expected to satisfy. Atomicity means a transaction either completes fully or has no effect; Consistency means the database moves between valid states; Isolation means concurrent transactions don't interfere; Durability means committed changes survive crashes.
-
AI
Artificial Intelligence
Software techniques that make systems perform tasks associated with human intelligence, such as classification, planning, natural-language processing, or code generation.
-
API
Application Programming Interface
A contract that lets one piece of software call another. APIs hide implementation details and expose a stable surface — function names, parameter types, and return values — that callers can depend on.
-
AST
Abstract Syntax Tree
A tree representation of source code structure used by compilers, interpreters, linters, refactoring tools, and code-analysis systems.
-
CAP
Consistency, Availability, Partition tolerance
A theorem about distributed systems that says when a network partition occurs, a system must choose between returning only consistent, up-to-date data and remaining available for every request.
-
CD
Continuous Delivery (or Continuous Deployment)
The practice of keeping software in a state where it can be released at any time. Continuous Deployment goes one step further and actually releases every change automatically once it passes the pipeline.
-
CI
Continuous Integration
The practice of merging every developer's work into a shared mainline frequently — usually several times a day — and running automated tests on each merge to catch integration problems early.
-
CLI
Command-Line Interface
A text-based interface where users type commands instead of clicking graphical controls. Shells, Git, package managers, and many developer tools expose CLIs.
-
CPU
Central Processing Unit
The processor that executes machine instructions. CPU speed and workload shape performance for compute-heavy programs.
-
CRUD
Create, Read, Update, Delete
The four basic operations on persistent storage. Most data-driven applications expose some form of CRUD interface for the entities they manage.
-
CSRF
Cross-Site Request Forgery
A web security vulnerability in which an attacker tricks a logged-in user's browser into sending an unwanted request to a site they're authenticated with. CSRF tokens and SameSite cookies are common defenses.
-
CSS
Cascading Style Sheets
The language used to describe the presentation (colors, layout, typography) of HTML documents.
-
CSV
Comma-Separated Values
A plain-text tabular data format where each record is a line and fields are separated by commas. CSV is common for imports, exports, spreadsheets, and simple data pipelines.
-
DBMS
Database Management System
Software that stores, queries, indexes, and protects persistent data. A DBMS handles concerns such as transactions, concurrency, durability, and query planning.
-
DI
Dependency Injection
A design technique where collaborators are provided to an object from the outside instead of being constructed internally. DI makes code easier to test and swap because dependencies are explicit.
-
DIP
Dependency Inversion Principle
The SOLID principle that high-level policy should depend on abstractions, not concrete low-level details. The abstractions should be shaped by the high-level module's needs.
-
DNS
Domain Name System
The distributed naming system that translates human-readable domain names, such as example.com, into IP addresses that network devices can route to.
-
DOM
Document Object Model
The in-memory tree representation of an HTML or XML document that scripts manipulate. Browser DOM APIs let JavaScript add, remove, and modify nodes.
-
FIFO
First In, First Out
An ordering policy where the item that has waited the longest is processed first, as in a queue.
-
FTP
File Transfer Protocol
An application-layer protocol for transferring files between hosts. Modern systems often prefer SSH-based or HTTPS-based transfer mechanisms for encrypted workflows.
-
GC
Garbage Collection
Automatic memory management that reclaims objects no longer reachable by a program, reducing manual allocation errors at the cost of runtime overhead.
-
GUI
Graphical User Interface
A visual interface made of windows, buttons, menus, icons, and other graphical controls. GUIs contrast with command-line interfaces.
-
GoF
Gang of Four
The four authors of the 1994 book "Design Patterns" — Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides — and, by extension, the catalog of 23 object-oriented design patterns the book described.
-
gRPC
gRPC Remote Procedure Calls
A high-performance remote procedure call framework commonly used for service-to-service communication. gRPC typically uses Protocol Buffers and HTTP/2.
-
HTML
HyperText Markup Language
The markup language used to structure web pages. HTML elements describe meaning (heading, paragraph, list, link); CSS describes presentation; JavaScript describes behaviour.
-
HTTP
HyperText Transfer Protocol
The application-layer protocol the web is built on. Clients send request messages (with a method like GET or POST and a URL); servers respond with status codes and bodies.
-
HTTPS
HyperText Transfer Protocol Secure
HTTP protected by TLS encryption. HTTPS is the default for public web pages and is essential when credentials, personal data, or private messages cross a network.
-
I/O
Input/Output
Communication between a program and the outside world, such as reading files, writing terminal output, sending network requests, or receiving user input.
-
ID
Identifier
A value used to distinguish one object, record, user, process, or resource from another.
-
IDE
Integrated Development Environment
A programming environment that combines editing, running, debugging, navigation, and project tooling into one application.
-
INVEST
Independent, Negotiable, Valuable, Estimable, Small, Testable
A checklist for evaluating whether a user story is small enough, clear enough, and useful enough for an Agile team to discuss, estimate, implement, and test.
-
IP
Internet Protocol
The network-layer protocol responsible for addressing and routing packets between machines across interconnected networks.
-
IPv4
Internet Protocol version 4
The older 32-bit version of IP, commonly written as four decimal octets such as 192.168.1.42.
-
IPv6
Internet Protocol version 6
The newer 128-bit version of IP, designed to provide vastly more address space than IPv4.
-
ISP
Interface Segregation Principle or Internet Service Provider
In design-principle content, ISP usually means Interface Segregation Principle, where clients should not depend on methods they do not use. In networking content, ISP can mean Internet Service Provider.
-
JIT
Just-In-Time
A compilation strategy that turns code into machine code while a program is running, often using runtime information to optimize hot paths.
-
JS
JavaScript
The programming language used by browsers and Node.js to add behavior to web pages, build applications, and run server-side JavaScript programs.
-
JSON
JavaScript Object Notation
A lightweight, text-based data interchange format with a JavaScript-derived syntax. JSON is used widely for configuration files and HTTP payloads.
-
JSX
JavaScript XML
A JavaScript syntax extension used by React to write HTML-like markup inside JavaScript. JSX is compiled into ordinary JavaScript calls.
-
JVM
Java Virtual Machine
The runtime that loads Java bytecode, manages memory, and executes Java programs across different operating systems.
-
JWT
JSON Web Token
A compact, signed token format used for authentication and information exchange. A JWT is three Base64url-encoded segments — header, payload, and signature — separated by dots.
-
LIFO
Last In, First Out
An ordering policy where the most recently added item is processed first, as in a stack.
-
LLM
Large Language Model
A machine-learning model trained on large text and code corpora to predict and generate language, answer questions, summarize, translate, and assist with programming tasks.
-
LSP
Liskov Substitution Principle
The SOLID principle that objects of a subtype should be usable anywhere the supertype is expected without breaking the program's promised behavior.
-
MVC
Model-View-Controller
A user-interface architecture that separates the data and business rules (the Model), the presentation (the View), and the input handling and orchestration (the Controller).
-
NAT
Network Address Translation
A networking technique that rewrites IP address or port information as packets pass through a router or firewall, often allowing many private devices to share one public address.
-
NFC
Near Field Communication
A short-range wireless communication technology often used for tap-to-pay, access badges, device pairing, and physical tags that trigger digital actions.
-
NoSQL
Not Only SQL
A family of non-relational database systems, such as document, key-value, wide-column, and graph stores, often chosen for flexible schemas or horizontal scale.
-
OAuth
Open Authorization
An authorization framework that lets a user grant a third-party application limited access to their resources on another service, without sharing their password.
-
OCP
Open/Closed Principle
The SOLID principle that software entities should be open for extension but closed for modification, so new variants can be added without editing stable existing code.
-
OOP
Object-Oriented Programming
A programming paradigm built around objects — bundles of state and behaviour — interacting through method calls. Inheritance, encapsulation, and polymorphism are its three classical pillars.
-
ORM
Object-Relational Mapping
A technique that translates between objects in code and rows in a relational database. ORMs let developers manipulate persistent data using language-native types instead of writing SQL by hand.
-
OS
Operating System
System software that manages hardware, files, memory, processes, networking, and device access for applications.
-
PDF
Portable Document Format
A file format for preserving document layout across devices, printers, and operating systems.
-
PID
Process Identifier
A numeric identifier assigned by an operating system to a running process.
-
POP
Post Office Protocol
An application-layer protocol used by email clients to retrieve messages from a mail server.
-
POSIX
Portable Operating System Interface
A family of standards for Unix-like operating system interfaces, including shell behavior, filesystem conventions, and system APIs.
-
PR
Pull Request
A request to merge a branch of code into another branch — usually a long-lived integration branch like main or master. Pull requests are the unit of code review on GitHub, GitLab, and similar platforms.
-
PVM
Python Virtual Machine
The runtime model that executes Python bytecode after source code has been compiled by the Python interpreter.
-
QR
Quick Response
A two-dimensional barcode format that can encode text such as a URL, identifier, or short instruction for scanning by a camera.
-
RAII
Resource Acquisition Is Initialization
A resource-management idiom, common in C++, where acquiring a resource is tied to object lifetime and cleanup happens automatically when the object is destroyed.
-
RAM
Random Access Memory
Fast, temporary memory used by running programs to store data and instructions while the computer is powered on.
-
RDBMS
Relational Database Management System
A DBMS based on relational tables, schemas, keys, and SQL queries.
-
REST
Representational State Transfer
An architectural style for distributed hypermedia systems. REST APIs expose resources at predictable URLs and use HTTP methods (GET, POST, PUT, DELETE) for the standard operations on them.
-
RGB
Red, Green, Blue
A color model that represents colors as combinations of red, green, and blue light, commonly used for screens and CSS colors.
-
RPC
Remote Procedure Call
A communication style where code invokes a procedure on another process or machine as if it were a local function call.
-
RegEx
Regular Expression
A pattern language for matching, validating, searching, or transforming text.
-
SDK
Software Development Kit
A collection of tools, libraries, documentation, and sample code that helps developers build applications for a specific platform or against a specific service.
-
SEO
Search Engine Optimization
The practice of making web content easier for search engines to discover, understand, and rank.
-
SHA
Secure Hash Algorithm
A family of cryptographic hash algorithms. Git commonly refers to object identifiers as SHAs because commit and object names are derived from secure hashes.
-
SMS
Short Message Service
The text-message protocol used by mobile networks for short messages, often integrated into software through notification APIs.
-
SMTP
Simple Mail Transfer Protocol
An application-layer protocol used to send and relay email between mail servers.
-
SOLID
Single-responsibility, Open-closed, Liskov substitution, Interface segregation, Dependency inversion
An acronym for five object-oriented design principles popularised by Robert C. Martin. The principles guide how to keep classes small, loosely coupled, and easy to change.
-
SPA
Single Page Application
A web application that loads one HTML shell and updates the interface client-side as users navigate, instead of requesting a full new page for every view.
-
SQL
Structured Query Language
The standard language for querying and modifying data in relational databases. SQL statements include SELECT (read), INSERT (create), UPDATE (modify), and DELETE (remove).
-
SRP
Single Responsibility Principle
The SOLID principle that a class or module should have one reason to change, usually framed as serving one cohesive actor or concern.
-
SSH
Secure Shell
A cryptographic protocol for securely operating network services over an unsecured network. Most commonly used for remote command-line login and file transfer.
-
SSL
Secure Sockets Layer
The older cryptographic protocol family that preceded TLS. The term still appears colloquially in phrases such as SSL certificates, though modern HTTPS uses TLS.
-
SSR
Server-Side Rendering
A web rendering approach where the server sends already-rendered HTML for a page, improving initial load and search indexing for many content-heavy sites.
-
SUT
System Under Test
The component or system whose behavior a test is exercising. Test doubles often replace collaborators around the SUT.
-
SoC
Separation of Concerns
A design principle that separates a system into distinct parts, each responsible for a different concern, so changes and reasoning stay localized.
-
TCP
Transmission Control Protocol
A transport-layer protocol that provides reliable, ordered, byte-stream communication between two hosts. HTTP, SSH, and most other application protocols run on top of TCP.
-
TDD
Test-Driven Development
A development workflow in which the developer writes a failing test first, then writes the smallest amount of code that makes the test pass, then refactors. The cycle repeats one tiny step at a time.
-
TLS
Transport Layer Security
A cryptographic protocol that provides authenticated, encrypted communication between two parties over a network. HTTPS is HTTP carried over TLS.
-
TTL
Time To Live
A limit on how long data should be considered valid or how far a network packet may travel. In DNS, TTL controls how long resolvers can cache an answer.
-
UDP
User Datagram Protocol
A transport-layer protocol that provides connectionless, unreliable, message-oriented communication. Used where low latency matters more than guaranteed delivery — for example, real-time video, games, and DNS lookups.
-
UI
User Interface
The part of a system a user sees and operates — buttons, text fields, layouts, the keyboard and pointer behaviour. Distinct from User Experience (UX), which covers the full journey including non-visual flow and content.
-
UID
Unique Identifier
An identifier intended to be unique within a particular system, table, dataset, or namespace.
-
UML
Unified Modeling Language
A standardised graphical notation for modelling object-oriented software. UML defines a family of diagram types — class, sequence, state, activity, use case — that depict different views of a system.
-
URL
Uniform Resource Locator
The address of a resource on the web. A URL identifies the protocol (https), the host (example.com), an optional path (/page), and optional query parameters and fragment.
-
UX
User Experience
The full experience a user has with a product — discovery, learning, regular use, recovery from errors. UI is one part of UX.
-
V8
V8 JavaScript engine
Google's JavaScript engine used by Chrome and Node.js. It compiles and runs JavaScript, including just-in-time optimization.
-
VM
Virtual Machine
A software execution environment that abstracts an underlying machine or runtime, such as the JVM for Java bytecode or the Python virtual machine for Python bytecode.
-
WIP
Work In Progress
A label for unfinished work, often used for temporary commits, draft branches, or pull requests that are not ready for review.
-
XML
Extensible Markup Language
A text-based markup format with explicit tags. XML is more verbose than JSON but supports schemas, namespaces, and mixed content; it is still common in configuration files and document formats.
-
XP
Extreme Programming
A lightweight Agile methodology emphasising short iterations, pair programming, test-driven development, and continuous integration.
-
XSS
Cross-Site Scripting
A web security vulnerability in which an attacker injects JavaScript into a page that other users will load. XSS lets the attacker run code in the victim's browser session.
-
YAML
YAML Ain't Markup Language
A human-readable data serialisation format using indentation for structure. YAML is widely used for configuration files; this very file is YAML.
-
ZIP
ZIP archive format
A compressed archive file format commonly used to bundle one or more files into a single downloadable file.
No terms match your filter.