COREProgram
Plain definition. A program is a precise set of instructions and data that a computer can load and execute under a runtime or operating system.
Use it when. Name the program’s inputs, state changes, outputs, and failure outcomes. Those observable behaviors form its contract.
Do not confuse. Source code is a representation used to create or run a program; a running program is a process with memory, resources, and a lifecycle.
COREAlgorithm
Plain definition. An algorithm is a finite method for transforming valid input into a result through ordered, unambiguous steps.
Use it when. State its preconditions, correctness idea, termination rule, and cost as input grows. A search method and a sorting method are algorithms.
Do not confuse. An algorithm is the method; a program is one implementation embedded in a real language, machine, and error environment.
CORESyntax and semantics
Plain definition. Syntax is the legal written form of code. Semantics is the meaning and behavior assigned to that form.
Use it when. A missing delimiter is usually a syntax problem. A legal expression that computes the wrong value is a semantic problem.
Do not confuse. Code can be syntactically valid and still be incorrect, insecure, slow, or inconsistent with the product requirement.
COREValue and type
Plain definition. A value is a piece of information available to a program. A type describes which values belong to a category and which operations are defined for them.
Use it when. The value 3 may be an integer; "3" is text. Their appearance is similar, but addition, ordering, storage, and validation can differ.
Do not confuse. A type annotation is a claim in source code. External data still requires runtime validation before the program can trust that claim.
COREVariable
Plain definition. A variable is a named binding through which code refers to a value. Some languages let the binding or referenced value change; others restrict mutation.
Use it when. Give a variable a name that explains its role and unit, such as timeoutSeconds, not merely its current content.
Do not confuse. The variable is not necessarily a physical box. It may name a value, an object reference, a register location, or an optimized expression.
COREControl flow
Plain definition. Control flow is the order in which operations are selected and executed.
Use it when. Conditions choose a path, loops repeat work, function calls transfer control, and errors, returns, events, or suspension can end or delay a path.
Do not confuse. Visual source order is not always execution order. Callbacks, asynchronous tasks, exceptions, and concurrent work create additional paths.
PROGRAM DESIGNFunction
Plain definition. A function is a named or anonymous operation with inputs, a result, and possibly other effects.
Use it when. A strong function has one coherent responsibility, explicit boundary rules, and a result its caller can verify.
Do not confuse. Returning a value is not the same as printing it. A return gives data to the caller; printing sends text to an output stream.
PROGRAM DESIGNParameter and argument
Plain definition. A parameter is the input name declared by a function. An argument is the actual value supplied at a call site.
Use it when. In area(width), width is a parameter; in area(12), 12 is the argument.
Do not confuse. Passing an object may pass a reference or shared handle rather than copying the complete object. Mutation behavior depends on the language contract.
PROGRAM DESIGNScope
Plain definition. Scope is the region of code where a name can be resolved to its declaration.
Use it when. Block, function, module, class, and global scopes determine which declaration a name refers to and whether two equal spellings collide.
Do not confuse. Scope concerns name visibility. Lifetime concerns how long a value or resource continues to exist; the two often differ.
PROGRAM DESIGNState and side effect
Plain definition. State is information retained across operations. A side effect changes observable state or interacts with the outside world.
Use it when. Updating an object, writing a file, sending a request, changing a database, and logging are effects that need ordering and failure rules.
Do not confuse. A calculation can return a new value without mutating its input. Immutability narrows possible state changes; it does not eliminate all effects.
PROGRAM DESIGNAbstraction and interface
Plain definition. An abstraction presents the essential model while hiding irrelevant detail. An interface is the boundary through which another part uses that abstraction.
Use it when. A queue interface can expose enqueue and dequeue while hiding the array, linked nodes, storage service, or synchronization behind it.
Do not confuse. Hiding code is not automatically a good abstraction. The boundary must preserve meaningful operations, constraints, and failure behavior.
PROGRAM DESIGNInvariant
Plain definition. An invariant is a condition that must remain true at a defined boundary or throughout a defined operation.
Use it when. “Balance equals the sum of posted entries” and “every child points to an existing parent” are invariants that guide validation and tests.
Do not confuse. An invariant is stronger than a typical example. One successful case does not prove the condition holds for every reachable state.
PROGRAM DESIGNModule and dependency
Plain definition. A module groups related code behind an importable boundary. A dependency is another component, service, package, or resource it requires.
Use it when. Declare dependencies explicitly, constrain versions, and keep the direction of dependency consistent with ownership and policy boundaries.
Do not confuse. A package is a distribution unit; a module is a code boundary. One package can contain many modules, and module systems differ by language.
RUNTIME & DATAData structure
Plain definition. A data structure organizes values to support a chosen set of operations and costs.
Use it when. Arrays favor indexed access, maps favor lookup by key, sets enforce uniqueness, queues preserve processing order, and graphs represent relationships.
Do not confuse. Big-O cost is not the whole choice. Memory layout, ordering, duplication, concurrency, cardinality, and real access patterns matter.
RUNTIME & DATAEncoding and serialization
Plain definition. Encoding maps information to a representation such as UTF-8 bytes. Serialization turns structured values into a format for storage or transfer.
Use it when. JSON serialization may contain strings whose characters are encoded as UTF-8 for an HTTP message.
Do not confuse. Encoding is not encryption. A reversible public representation does not provide secrecy, identity, or integrity.
RUNTIME & DATAStack and heap
Plain definition. A call stack tracks active function calls and their execution context. Heap is a common name for dynamically managed memory whose lifetime is not tied to one call frame.
Use it when. Deep recursion can exhaust stack space; retained object graphs can keep heap memory alive.
Do not confuse. “Value type lives on the stack, reference type lives on the heap” is an unreliable universal rule. Language and optimizer implementations decide placement.
RUNTIME & DATAProcess and thread
Plain definition. A process is an operating-system execution and resource boundary. A thread is one execution path within a process, commonly sharing its memory.
Use it when. Processes provide stronger isolation but require explicit communication. Threads can share data cheaply but need synchronization.
Do not confuse. A task, coroutine, or promise is a language or runtime scheduling abstraction and does not necessarily own a thread.
RUNTIME & DATAConcurrency and parallelism
Plain definition. Concurrency means multiple tasks can make progress across overlapping time. Parallelism means operations execute at the same physical time.
Use it when. One thread can interleave many asynchronous network tasks concurrently; several CPU cores can calculate independent chunks in parallel.
Do not confuse. Adding concurrency can reduce responsiveness failures but also creates ordering, cancellation, race, and resource-bound problems.
RUNTIME & DATAAsynchronous operation
Plain definition. An asynchronous operation can begin now and complete later without requiring the current execution path to wait in place.
Use it when. Network, file, timer, and user-interface work often suspends until an event supplies a result or error.
Do not confuse. Asynchronous does not mean parallel or faster. It changes waiting and control flow; the underlying work may still be serial.
RUNTIME & DATAError and exception
Plain definition. An error is any failure outcome. An exception is one language mechanism for transferring control and failure information.
Use it when. Classify failures by what the caller can do: correct input, retry under a deadline, choose another resource, or surface an operator fault.
Do not confuse. Catching an exception does not repair the cause. State may already be partially changed, so operations need atomicity or cleanup rules.
WEB & SECURITYHTTP
Plain definition. HTTP is an application protocol in which a client sends a request and a server returns a response with a method, target, headers, status, and optional body.
Use it when. Methods and status codes communicate semantics such as safe reading, creation, absence, conflict, authentication need, or rate limiting.
Do not confuse. HTTP is not automatically secure. HTTPS adds TLS protection for data in transit; application authorization and input validation remain necessary.
WEB & SECURITYAPI
Plain definition. An application programming interface is a documented boundary through which software requests operations or data.
Use it when. Define accepted inputs, returned values, failure categories, ordering, compatibility, idempotency, limits, and authority.
Do not confuse. An API is not only an HTTP endpoint. Functions, classes, command-line tools, files, libraries, and device protocols also expose APIs.
WEB & SECURITYDatabase and transaction
Plain definition. A database stores and retrieves structured state under defined consistency and durability rules. A transaction groups operations into one committed or rejected unit.
Use it when. Create invariants with schema constraints and make related writes atomic so observers do not see an invalid intermediate state.
Do not confuse. A successful write call does not prove durable commitment across every system. Replication, queues, caches, and external services have separate boundaries.
WEB & SECURITYCache
Plain definition. A cache stores a reusable result closer to future consumers to reduce repeated work or waiting.
Use it when. A cache key must contain every input that changes the result, including version, identity, permissions, query, and policy where relevant.
Do not confuse. A cache is derived state, not the source of truth. Expiry alone does not solve invalidation, privacy, or stale-write problems.
WEB & SECURITYValidation
Plain definition. Validation checks whether external or changing data satisfies the rules required by the next boundary.
Use it when. Check shape, type, size, range, encoding, identity, relationships, and domain rules before the data can affect trusted state.
Do not confuse. Client-side validation improves feedback but cannot protect a server. Every authority boundary validates independently.
WEB & SECURITYAuthentication and authorization
Plain definition. Authentication establishes which identity or workload is acting. Authorization decides whether that actor may perform this operation on this resource now.
Use it when. Check authorization on the server for every protected action using current subject, resource, action, tenant, and policy context.
Do not confuse. Being signed in does not grant universal access. Hiding a button is interface behavior, not an authorization control.
WEB & SECURITYHashing and encryption
Plain definition. Hashing maps input to a fixed-size digest designed to be one-way. Encryption transforms data so an authorized holder of a key can recover it.
Use it when. Use approved password-hashing algorithms for passwords, cryptographic hashes for integrity constructions, and authenticated encryption for confidential data.
Do not confuse. Base64 is encoding, not protection. A plain hash does not hide low-entropy passwords, and encryption without authentication can permit undetected tampering.
DELIVERYTest
Plain definition. A test supplies controlled state and input, observes behavior, and fails when a stated expectation is violated.
Use it when. Test ordinary cases, exact boundaries, failures, state left after rejection, and interactions between components at the narrowest useful level.
Do not confuse. A passing suite shows only that its assertions passed under that environment. It does not prove the absence of defects.
DELIVERYDebugging
Plain definition. Debugging is the evidence-driven process of locating the earliest difference between intended and actual state, then explaining its cause.
Use it when. Reproduce, preserve the first useful diagnostic, reduce the case, inspect a boundary, and test one falsifiable hypothesis.
Do not confuse. Changing code until the symptom disappears is not a diagnosis. Without a causal explanation and regression test, the defect may remain.
DELIVERYVersion control
Plain definition. Version control records related changes to files as a history that can be compared, reviewed, combined, and restored.
Use it when. Commit one coherent change with a message explaining intent. Review the diff and exclude secrets, generated noise, and unrelated edits.
Do not confuse. A remote repository is not the same as version control itself, and version control is not a complete backup for databases or ignored files.
DELIVERYBuild and deployment
Plain definition. A build transforms reviewed source and declared inputs into an artifact. Deployment places a chosen artifact into an environment where it can serve its purpose.
Use it when. Record source revision, locked dependencies, tool versions, commands, artifact hashes, configuration, tests, rollout evidence, and rollback.
Do not confuse. Rebuilding during deployment creates a new artifact. Test and promote the same immutable bytes whenever the platform permits it.
DELIVERYLatency and throughput
Plain definition. Latency measures how long one operation takes. Throughput measures how many operations complete per unit of time.
Use it when. Inspect latency percentiles and throughput together under a realistic arrival pattern, concurrency level, payload, and error rate.
Do not confuse. High throughput can coexist with terrible tail latency. A fast average can hide a small group of users waiting much longer.
DELIVERYReliability
Plain definition. Reliability is the ability of a system to provide its intended behavior over time under expected change and failure.
Use it when. Define user-visible service indicators, objectives, failure budgets, redundancy, bounded retries, observability, rollback, backup, and restore evidence.
Do not confuse. Availability only asks whether a service responds. A response can be available but wrong, stale, insecure, or too slow to be useful.
AIModel, training, and inference
Plain definition. A model maps input to an output according to learned or chosen parameters. Training adjusts parameters from data and an objective. Inference uses fixed parameters to produce a result.
Use it when. Separate training data and compute from the production path that validates requests, invokes the model, and applies decision policy.
Do not confuse. A model score is not automatically a probability, fact, or decision. Calibration, thresholds, context, and error costs belong to the surrounding system.
AIFeature and label
Plain definition. A feature is an input representation supplied to a model. A label is a target or observed outcome used for training or evaluation.
Use it when. Define provenance, time of availability, units, missing-value policy, and whether the value would truly exist at prediction time.
Do not confuse. Correlated information is not necessarily causal, stable, ethical, or safe. Leakage can make evaluation look excellent while production fails.
AIToken and embedding
Plain definition. A token is a model-specific unit produced by tokenization. An embedding is a numeric vector learned or constructed to represent useful relationships.
Use it when. Token counts affect context and cost. Embedding similarity supports retrieval, clustering, or comparison under a chosen model and metric.
Do not confuse. A token is not necessarily a word. A nearby embedding is not proof of factual equivalence, authority, causation, or user intent.
AIEvaluation
Plain definition. Evaluation measures behavior on defined cases using metrics and acceptance rules connected to the intended use.
Use it when. Preserve a versioned dataset, rubric, evaluator, baseline, slices, uncertainty, failure examples, cost, latency, and decision threshold.
Do not confuse. One aggregate score can hide rare but severe failures, leakage, subgroup differences, unstable judges, or changes in the production distribution.
AIRAG and hallucination
Plain definition. Retrieval-augmented generation supplies selected external evidence to a generative model. Hallucination describes fluent output that is unsupported, fabricated, or inconsistent with required evidence.
Use it when. Evaluate retrieval recall, ranking, source authority, citation entailment, answer completeness, refusal, prompt injection defenses, and permission filtering.
Do not confuse. Retrieval does not guarantee truth. The system can retrieve the wrong source, omit decisive evidence, or generate a claim the cited passage does not support.
DATA SYSTEMSData contract
Plain definition. A data contract is a versioned agreement about a dataset’s grain, identities, fields, types, units, time meaning, ownership, quality, change, and failure behavior.
Use it when. Define what a producer promises and what consumers may rely on before connecting a file, table, event stream, metric, or model feature.
Do not confuse. A schema describes structure. A complete contract also describes semantic meaning, compatibility, service expectations, authority, privacy, and operational response.
DATA SYSTEMSGrain and cardinality
Plain definition. Grain states what one record represents. Cardinality describes how many distinct values or related records can exist at a boundary.
Use it when. Declare one row per order line, enrollment, daily account snapshot, or event, then verify whether joins are one-to-one, one-to-many, or many-to-many.
Do not confuse. Row count is not grain. Duplicate-looking rows may be valid events, while a join can preserve plausible values and still multiply the intended fact.
DATA SYSTEMSIdempotency
Plain definition. An operation is idempotent when repeating the same intended operation has the same business effect as performing it once.
Use it when. Retries, task restarts, message redelivery, API timeouts, batch replay, and publication all need stable operation identities or naturally repeatable state replacement.
Do not confuse. Deduplicating identical bytes is not sufficient. Two different payloads can claim one operation ID, and one logical operation can be delivered in different representations.
DATA SYSTEMSBatch and backfill
Plain definition. A batch processes a bounded input interval or snapshot. A backfill deliberately recomputes historical intervals, often after missing data or changed logic.
Use it when. Record input, code, parameters, reference data, output, validation, capacity, downstream fan-out, and publication for every bounded run.
Do not confuse. A backfill is not an unrestricted retry. It can restate history, consume large capacity, rewrite dependents, and require explicit comparison and communication.
DATA SYSTEMSEvent time and processing time
Plain definition. Event time is when a business event occurred. Processing time is when a system handled it; record and arrival times may add further clocks.
Use it when. Offline clients, delayed delivery, replay, windowed metrics, freshness, and corrections require the clocks to be stored and reasoned about separately.
Do not confuse. A partition arrival date or scheduler run time does not recover business time, and a cutoff does not prove that earlier events can no longer arrive.
DATA SYSTEMSChange data capture and tombstone
Plain definition. Change data capture transports committed inserts, updates, and deletes from a source log. A tombstone is an explicit record that a keyed value was deleted.
Use it when. Build incremental current state or history from ordered source positions while preserving retries, transaction boundaries, schema versions, and deletion propagation.
Do not confuse. CDC delivery is not automatically exactly once, globally ordered, or a complete historical backup. Consumers still own checkpoints, identity, and state semantics.
DATA SYSTEMSPartition and columnar format
Plain definition. A partition groups data under a coarse value or transform. A columnar format stores values by field so analytical readers can project, compress, and skip work.
Use it when. Choose partitions from query, retention, and repair boundaries, then measure files opened, metadata work, bytes scanned, concurrency, and compaction.
Do not confuse. A partition is not a general index. High-cardinality partitions and tiny columnar files can make planning slower even while compressed storage looks efficient.
DATA SYSTEMSData lineage
Plain definition. Data lineage records which source versions, transformations, parameters, owners, and decisions produced and consume a data product.
Use it when. Trace a disputed metric, assess a schema change, scope a backfill, propagate deletion, compare releases, or identify downstream incident impact.
Do not confuse. A table dependency graph is only technical ancestry. Useful lineage also covers meaning, manual paths, exports, notebooks, authority, lifecycle, and accountable ownership.
DATA SYSTEMSWindow and watermark
Plain definition. A window bounds an unending event stream into intervals or sessions. A watermark estimates how complete event time is for closing or revising those results.
Use it when. Define keys, half-open time bounds, triggers, accumulation, lateness, correction, and state retention for streaming aggregates or joins.
Do not confuse. A watermark is not proof that no late event will arrive. The product still needs a drop, side-output, revision, or restatement policy.
DATA SYSTEMSTable snapshot
Plain definition. A table snapshot is one atomic metadata version that names the files, schema, partitions, deletes, and statistics belonging to a consistent analytical table state.
Use it when. Coordinate concurrent writes, time travel, correction, compaction, schema evolution, rollback, retention, and reproducible reads over object storage.
Do not confuse. Listing a storage directory does not create a snapshot. It can mix committed files, abandoned candidates, and files retained for older readers.
AIContext window
Plain definition. A context window is the bounded sequence of model-specific tokens available to one model invocation, including instructions, inputs, evidence, and generated output.
Use it when. Reserve explicit budgets, preserve important conditions and citations, test truncation, and distinguish current request context from application memory.
Do not confuse. A larger window is not permanent memory, source authority, or proof that the model uses every supplied detail correctly.
AIVector search
Plain definition. Vector search ranks stored embeddings by a distance or similarity measure relative to a query embedding.
Use it when. Retrieve paraphrases or conceptually related candidates under one embedding model, preprocessing contract, metric, index version, and evaluated recall target.
Do not confuse. Nearest means close in the learned vector space, not necessarily relevant, true, current, authoritative, authorized, or sufficient for an answer.
AIChunking
Plain definition. Chunking divides parsed documents into retrievable passages while preserving enough local structure and provenance to support later use.
Use it when. Keep headings, definitions, exceptions, code, tables, stable source identity, version, section path, access class, and neighboring relationships.
Do not confuse. Smaller is not always more precise. Tiny chunks lose context, large chunks dilute relevance, and overlap can create repeated evidence.
AIHybrid retrieval and reranking
Plain definition. Hybrid retrieval combines lexical and semantic candidate lists. Reranking applies a deeper query-passage comparison to a bounded candidate set.
Use it when. Preserve exact identifiers and paraphrases, fuse incomparable scores through ranks, enforce filters, then measure recall, ordering, latency, and cost by stage.
Do not confuse. Reranking cannot recover a relevant document excluded by corpus, parsing, permission filtering, or first-stage candidate retrieval.
AICitation and abstention
Plain definition. A citation points a claim to identifiable evidence. Abstention is an explicit decision not to answer when support, authority, freshness, safety, or scope is insufficient.
Use it when. Validate source identity and access, test claim-level support, expose conflicts, and give users a safe next step instead of invented certainty.
Do not confuse. A citation-shaped link does not prove entailment, and abstention is not a generic error when it truthfully expresses an evidence boundary.
AI SECURITYPrompt injection
Plain definition. Prompt injection is untrusted content that attempts to alter model instructions, reveal protected context, misuse tools, or bypass application policy.
Use it when. Threat-model direct user text and indirect retrieved documents, then enforce authorization, tool allowlists, argument validation, confirmation, output policy, and data minimization outside the model.
Do not confuse. Stronger warning text is not a security boundary. The application must remain safe even when the model follows the malicious instruction.
INFRASTRUCTUREFile descriptor
Plain definition. A file descriptor is a process-local integer handle for an open kernel object such as a file, pipe, socket, terminal, or device.
Use it when. Trace inherited streams, open paths, listeners, connection capacity, leaks, close behavior, and per-process or system limits.
Do not confuse. A descriptor is not a pathname. Renaming or deleting a name can leave an already opened descriptor connected to the object.
INFRASTRUCTUREIP address and route
Plain definition. An IP address identifies an interface within a routing context. A route maps a destination prefix to an output interface and optional next hop.
Use it when. Apply longest-prefix selection, source choice, neighbor resolution, gateways, policy, translation, and return-path checks to trace packets.
Do not confuse. A private address, subnet, route, or NAT mapping provides reachability behavior, not application authentication or authorization.
INFRASTRUCTUREDNS
Plain definition. The Domain Name System is a hierarchical distributed database that publishes cached typed records under delegated authority.
Use it when. Resolve names, discover endpoints, plan TTL-based migration, compare authoritative and recursive answers, and preserve old targets while caches drain.
Do not confuse. Successful resolution does not prove routing, listener, TLS, HTTP, health, or permission, and a lower TTL cannot rewrite records already cached.
INFRASTRUCTURETCP and socket
Plain definition. A socket is an application handle to network transport. TCP creates an ordered reliable byte stream between endpoint tuples through connection state.
Use it when. Design listeners, framing, buffers, backlogs, timeouts, keepalive, retry, half-close, cleanup, and connection capacity.
Do not confuse. TCP does not preserve application message boundaries or guarantee that a timed-out business operation did not complete.
INFRASTRUCTURETLS and certificate
Plain definition. TLS authenticates a network endpoint and protects transport. A certificate binds names or identities to a public key through a trust and validity chain.
Use it when. Configure names, trust roots, keys, protocols, renewal, revocation, termination, client identity where used, and observable handshake failure.
Do not confuse. A valid server certificate does not authenticate an application user or authorize access to a tenant, record, file, or operation.
INFRASTRUCTURESLI, SLO, and error budget
Plain definition. An SLI measures a user-relevant service outcome. An SLO sets its target over a window. The gap from perfection becomes an error budget.
Use it when. Define success, latency, availability, freshness, or correctness populations, guide release risk, and alert on actionable multi-window budget burn.
Do not confuse. A budget is not permission to ignore security, privacy, or integrity incidents, and green host metrics do not prove a user-facing SLI.
No concepts match that search and category. Try a shorter term or choose All.