Software Glossary

Browse 126 software terms defined in plain English, from the cultural dictionary of computing.

126 Software Terms

Accessor
Accessor is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Action Cable
Action Cable is the Rails framework for WebSocket connections and real-time channel messaging. It is commonly used for chat, notifications, and live UI updates...
Active Model
Active Model is a Rails abstraction layer that gives non-database objects model-like behavior. It is commonly used for forms, validation, and service objects...
Active Support
Active Support is the Rails utility library that extends Ruby with framework helpers and conventions. It is commonly used for dates, inflections, concerns, and...
Ahead-of-Time Compilation
Ahead-of-Time Compilation is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and...
Ajax
Ajax is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Algorithm Complexity
Algorithm Complexity is a core computing concept that describes how data is processed, represented, or verified. It is commonly used for implementing efficient...
Alias
Alias is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
AMD
AMD is Asynchronous Module Definition, a JavaScript module format built around asynchronous loading. It is commonly used for browser-based dependency...
Amortized Complexity
Amortized Complexity is a core computing concept that describes how data is processed, represented, or verified. It is commonly used for implementing efficient...
Animation Frame
Animation Frame is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
AOP
AOP is a shorthand for aspect-oriented programming. It is commonly used for capturing cross-cutting concerns such as logging, tracing, and authorization, where...
APK
APK is the Android application package format used to distribute installable apps. It is commonly used for shipping mobile software to Android devices and...
AppImage
AppImage is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Application Layer
Application Layer is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Apt
Apt is the Debian and Ubuntu package management toolchain. It is commonly used for installing, upgrading, and resolving system packages on Linux, where teams...
Arc
Arc is Rust's atomically reference-counted smart pointer for shared ownership across threads. It is commonly used for safe concurrent data structures and...
Argument
Argument is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Artisan Command
Artisan Command is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Aspect-Oriented Programming
Aspect-Oriented Programming is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and...
Assembly
Assembly is a runtime or systems-level concept that affects execution behavior close to the machine. It is commonly used for performance-sensitive software,...
Associative Array
Associative Array is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Astro Islands
Astro Islands is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Async Generator
Async Generator is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Async Iterator
Async Iterator is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Atomic Design
Atomic Design is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Atomic Operation
Atomic Operation is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Attribute
Attribute is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Autoconf
Autoconf is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Auto Layout
Auto Layout is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Automake
Automake is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Autorelease Pool
Autorelease Pool is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Backend
Backend is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Backend Developer
A developer who focuses primarily on server-side systems, APIs, databases, infrastructure-adjacent logic, and application behavior behind the user interface....
Background Job
Background Job is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Background Worker
Background Worker is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Backward Compatibility
Backward Compatibility is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and...
Baremetal
Baremetal is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Bash Script
Bash Script is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Batcher
Batcher is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Behavior-Driven Development
Behavior-Driven Development is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and...
Binary Search
Binary Search is a core computing concept that describes how data is processed, represented, or verified. It is commonly used for implementing efficient and...
Binary Semaphore
Binary Semaphore is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Binding
Binding is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Bitwise Operation
Bitwise Operation is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Blade Template
Blade Template is Laravel's templating engine for composing server-rendered HTML with directives and layouts. It is commonly used for web views, components,...
Blob Storage
Blob Storage is an infrastructure or backend concept used to run, host, or observe applications. It is commonly used for production services and operational...
Block Cipher Mode
Block Cipher Mode is a core computing concept that describes how data is processed, represented, or verified. It is commonly used for implementing efficient...
Bloom Index
Bloom Index is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Blueprint
Blueprint is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Boolean Logic
Boolean Logic is a core computing concept that describes how data is processed, represented, or verified. It is commonly used for implementing efficient and...
Boost Library
Boost Library is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Bottom Type
Bottom Type is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Box Model
Box Model is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Branch
Branch is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Branching Strategy
Branching Strategy is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Branch Protection
Branch Protection is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Breadth-First Search
Breadth-First Search is a core computing concept that describes how data is processed, represented, or verified. It is commonly used for implementing efficient...
Bridge Pattern
Bridge Pattern is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Broadcast Channel
Broadcast Channel is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
BSP
BSP is a board support package that contains low-level code and configuration for specific hardware. It is commonly used for booting embedded systems and...
Built-in Function
Built-in Function is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Business Logic
The rules and decisions in software that reflect how the business actually operates, such as pricing, eligibility, workflows, and policy constraints. Business...
Caller
Caller is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Call Site
Call Site is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Cargo Workspace
Cargo Workspace is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Cascade
Cascade is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Cascading Style Sheets
Cascading Style Sheets is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and...
Case Statement
Case Statement is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Cast
Cast is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Catch Block
Catch Block is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
CDK
CDK is a cloud development kit style framework for defining infrastructure in code. It is commonly used for provisioning repeatable cloud resources with...
Centralized Logging
Centralized Logging is an infrastructure or backend concept used to run, host, or observe applications. It is commonly used for production services and...
CGI
CGI is Common Gateway Interface, an early standard for invoking server-side programs from web servers. It is commonly used for generating dynamic web responses...
Chain of Responsibility
Chain of Responsibility is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and...
Character Encoding
Character Encoding is a core computing concept that describes how data is processed, represented, or verified. It is commonly used for implementing efficient...
Chart Library
Chart Library is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Checksum
Checksum is a core computing concept that describes how data is processed, represented, or verified. It is commonly used for implementing efficient and correct...
Chunk Loading
Chunk Loading is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Circuit
Circuit is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Clean Code
Clean Code is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
CLI
CLI is a command-line interface used to control software from a terminal. It is commonly used for automation, scripting, and operational workflows, where teams...
CLI Framework
CLI Framework is a build or developer-tooling concept used to compile, package, transform, or automate code. It is commonly used for repeatable engineering...
Clipboard API
Clipboard API is a build or developer-tooling concept used to compile, package, transform, or automate code. It is commonly used for repeatable engineering...
CLI Tool
CLI Tool is a build or developer-tooling concept used to compile, package, transform, or automate code. It is commonly used for repeatable engineering...
Clock Skew
Clock Skew is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Clone
Clone is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
COBOL Detail
COBOL Detail is a long-lived business programming language still used heavily in banking, government, and batch processing. It is commonly used for maintaining...
Cocoa
Cocoa is Apple's object-oriented application framework for macOS development. It is commonly used for desktop app development on Apple platforms, where teams...
Cocoa Touch
Cocoa Touch is the iOS application framework layer built on Cocoa concepts. It is commonly used for mobile app UIs, lifecycle events, and device integration,...
Code Base
The complete collection of source code and related files that make up a software project or system. In everyday developer culture the code base is the thing...
Codec
Codec is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Code Climate
Code Climate is a build or developer-tooling concept used to compile, package, transform, or automate code. It is commonly used for repeatable engineering...
Code Completion
Code Completion is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Code Culture
The shared norms, values, habits, and expectations a team has around writing, reviewing, maintaining, and talking about code. Code culture shapes quality...
Code Deployment
The act of releasing code into a live or testing environment where it becomes active. In team culture, code deployment is as much about process confidence and...
Code Ethics
The ethical questions and responsibilities involved in writing, shipping, and maintaining software, including privacy, fairness, harm, and social impact. In...
Code Evolution
The way a codebase changes over time as features, fixes, refactors, and workarounds accumulate. In engineering culture, understanding code evolution helps...
Code Generation
Code Generation is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Code Hot Path
Code Hot Path is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Code Injection
Code Injection is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Code Literacy
The ability to read, understand, and reason about code at a useful level, even if someone is not a professional developer. In modern workplaces, code literacy...
Code Maintenance
The ongoing work of updating, cleaning, fixing, and adapting code after initial release. In engineering culture code maintenance is often undervalued compared...
Code Metrics
Code Metrics is a quality, testing, or engineering-practice concept used to validate software behavior. It is commonly used for maintaining reliability as...
Codepoint
Codepoint is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating production...
Code Problem
A problem or issue that arises in software code, or more informally, a coding challenge that needs to be solved. The phrase is broad, which is why experienced...
Code Refactoring
Code Refactoring is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Code Search
Code Search is a core computing concept that describes how data is processed, represented, or verified. It is commonly used for implementing efficient and...
Code Ship
An informal phrase meaning to ship or release code into a real environment. It reflects the everyday delivery mindset of teams that think in terms of moving...
Code Simplicity
The quality of code being straightforward, readable, and low in unnecessary complexity. In engineering culture simplicity is often treated as hard-won rather...
Code Style
Code Style is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Code Transformation
Code Transformation is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Collection Framework
Collection Framework is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Colocated Test
Colocated Test is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Column-Oriented Database
Column-Oriented Database is an infrastructure or backend concept used to run, host, or observe applications. It is commonly used for production services and...
COM
COM is Microsoft's Component Object Model for binary software components and interface-based interop. It is commonly used for desktop application extensibility...
Combine
Combine is Apple's reactive programming framework for composing asynchronous event streams. It is commonly used for iOS and macOS state propagation and...
Commercial Software
Software sold or licensed commercially rather than offered only as a hobby project, internal tool, or purely free public artifact. In culture discussions the...
C Standard Library
C Standard Library is a software engineering concept used in application design, tooling, or runtime behavior. It is commonly used for building and operating...
Desktop App
An application designed to run primarily on desktop operating systems such as macOS, Windows, or Linux rather than only in a browser or mobile environment. In...
Easter Egg Software
A hidden joke, message, or nonessential feature embedded in software for surprise or delight.
Emergent Design
A style of design in which structure and solutions evolve through iterative work and learning rather than being fully specified upfront. In software culture...
Enterprise
Referring to large organizations, their buying processes, and the products or sales motions designed to serve them. Enterprise software usually involves...
Green Software
Software designed and operated with attention to environmental impact, such as energy use, efficiency, hardware load, and carbon intensity. In engineering...
JUXT
A software consultancy and engineering brand known in some developer circles for functional programming and open-source adjacent work.
Supply Chain Attack
An attack that targets an organization indirectly by compromising a trusted third-party vendor, library, or update mechanism — hijacking the trust chain rather...

Related Topics