Concepts

Plain-language explanations of the ideas behind software - compilers, garbage collection, objects, types.

628 entries, all primary-sourced
concept September 2008

The Intent (Android)

Android's messaging object for requesting actions from app components. Intents launch activities and services and enable inter-app communication, in either explicit (named target) or implicit (action-described) form.

concept November 26, 2008

Markup Language

A way of annotating text with tags that describe its structure or presentation, the family that runs from typesetting codes through SGML, HTML, XML, and Markdown.

concept 2009

DevOps

A culture and set of practices uniting software development and IT operations so that teams can build, ship, and run software reliably and quickly, crystallized around the first DevOpsDays in 2009.

concept 2009

In-App Purchase

Buying digital content or services from inside an app through the platform's own payment system; the platform provides APIs such as Apple StoreKit and Google Play Billing and takes a commission on each sale.

concept 2009

NoSQL

The umbrella term for non-relational databases that traded SQL and ACID guarantees for horizontal scalability, flexible schemas, and availability.

concept November 3, 2009

Mobile First

Luke Wroblewski's design principle of designing for the smallest screen first and progressively enhancing toward larger ones, treating mobile constraints as a discipline rather than a limitation.

concept 2010

Continuous Delivery

Keeping software always in a releasable state through automated build, test, and deploy pipelines, so that releasing becomes a low-risk decision that can be made on demand.

concept April 30, 2010

The Init System

The first userspace process a Unix-like system starts (PID 1), which boots the machine into a usable state and then supervises the other processes; embodied over the decades by SysV init, Upstart, systemd, and launchd.

concept October 14, 2010

Data Lake

A central store that holds raw data of any type in its natural state for later processing, contrasted with the schema-on-write data warehouse - 'schema on read.'

concept November 3, 2010

Automated Trading Risk

Automated and algorithmic trading lets software place and cancel orders at machine speed, which means a software bug, a stale code path, or a runaway feedback loop can translate into instant, large-scale financial damage; the standard defenses are pre-trade risk checks, hard position and credit limits, kill switches, and market-wide circuit breakers.

concept 2011

Chaos Engineering

The discipline of deliberately injecting failures into a running system, often in production, to build confidence that it can withstand turbulent real-world conditions; pioneered at Netflix with Chaos Monkey.

concept 2011

The Twelve-Factor App

A methodology, published by Adam Wiggins and Heroku in 2011, for building portable, scalable software-as-a-service apps - codified as twelve rules covering codebase, dependencies, config in the environment, stateless processes, and more.

concept 2011

Raster vs Vector Graphics

The two fundamental ways to represent 2D images on a computer: raster graphics as a grid of pixels, and vector graphics as resolution-independent geometric primitives like lines and curves.

concept September 2011

API Versioning

The practice of evolving an API so existing clients keep working, through strategies such as URI versions, version headers, date-based releases, and deprecation policies.

concept December 2011

Flame Graph

A flame graph is a stacked visualization of profiled stack traces, invented by Brendan Gregg in 2011, in which width encodes how often a code path appeared in the samples and height encodes stack depth, letting hot paths be spotted at a glance.

concept January 23, 2013

Code Formatter

A code formatter automatically rewrites source code to a fixed style, removing layout choices so teams stop debating them. gofmt's single standard format, then Black and Prettier, made automatic formatting a routine part of modern development.

concept December 2013

Metcalfe's Law

The rule of thumb that a communication network's value grows roughly with the square of the number of connected users.

concept 2014

Raft

A consensus algorithm designed to be more understandable than Paxos by decomposing consensus into leader election, log replication, and safety.

concept March 6, 2014

The Circuit Breaker Pattern

A resilience pattern that stops calling a failing dependency after errors cross a threshold, so a struggling service is given room to recover instead of being overwhelmed and dragging callers down with it.

concept March 25, 2014

Microservices

An architectural style that builds an application as a suite of small, independently deployable services communicating over the network, rather than as one large monolith.

concept July 2014

Infrastructure Drift

The gap that opens when real, running infrastructure diverges from the state declared in its configuration - through manual fixes, external tools, or failed changes - and the detection and reconciliation needed to bring the two back into agreement.

concept July 2014

Terraform State

The file Terraform maintains to map declared resources to the real infrastructure they manage - the source of truth behind planning, remote state, locking, and drift detection.

concept 2014

The WebView

An embeddable browser component, such as Apple's WKWebView or Android's WebView, that lets a native app render web content inside its own interface; the technical basis of hybrid apps.

concept October 28, 2014

Semantic Markup

Using markup elements for what they mean rather than how they look, so that software, search engines, and assistive technology can understand a document's structure.

concept 2015

Code Snippet

Parameterized boilerplate that an editor expands from a short trigger, inserting a template with tab stops, placeholders, and variables the programmer fills in by tabbing through them.

concept March 4, 2015

Retry With Backoff

Safely retrying a failed remote call by waiting progressively longer between attempts and adding randomness, so transient failures recover without a synchronized stampede of retries that overwhelms the service.

concept April 2015

Secrets Management

The practice of securely storing, distributing, rotating, and auditing credentials, keys, and certificates so that automation and applications can use them without those secrets ever being committed to source code or scattered across machines.

concept June 2015

Deep Linking

A URL that opens a specific place inside an app rather than just launching it, including verified web-to-app links such as Apple's Universal Links and Android App Links that open a website's URL directly in its companion app.

concept June 15, 2015

Progressive Web App

A class of web application, named by Alex Russell and Frances Berriman in 2015, that can be installed to the home screen, work offline through service workers, and feel like a native app while staying on the open web.

concept July 2015

Declarative vs Imperative Configuration

Two ways to automate systems - describe the desired end state and let a tool converge toward it (declarative), or script the explicit sequence of steps to perform (imperative). The declarative model relies on convergence and idempotency.

concept March 2016

Infrastructure as Code

Managing servers, networks, and cloud resources through machine-readable definition files - versioned, reviewed, and automated - instead of manual configuration, so infrastructure becomes reproducible and auditable like software.

concept April 2016

The Runbook

A documented procedure for operating, troubleshooting, and recovering a system - originally a binder of manual steps for on-call staff, increasingly turned into automated, executable procedures that reduce stress, mean time to repair, and human error.

concept 2016

Code Navigation

The editor features that turn a folder of source files into a navigable program: go-to-definition, find-references, call hierarchy, and symbol search, standardized across editors by the Language Server Protocol.

concept September 2016

Internet Exchange Point

An Internet Exchange Point is a neutral facility where many networks interconnect and exchange traffic directly, avoiding the cost and latency of routing through third-party transit providers.

concept 2017

GitOps

An operating model, named by Weaveworks in 2017, that uses Git as the single source of truth for declarative infrastructure, with software agents continuously reconciling the running system to match the repository.

concept 2017

SRAM (Static RAM)

SRAM (Static Random-Access Memory) stores each bit in a latch of cross-coupled transistors, making it fast and refresh-free but large and expensive per bit, which is why it is used for CPU caches and registers rather than main memory.

concept 2017

The XY Problem

The XY problem is asking for help with your attempted solution (Y) instead of your actual problem (X), which wastes the time of both the asker and the helper because Y is often the wrong approach entirely.

concept 2018

Source-Available Software

A licensing category in which source code is published for reading and modification but withheld from the freedoms required by the Open Source Definition, typically by restricting commercial or competing use. The Commons Clause, SSPL, and BSL are the best-known examples.

concept July 12, 2018

Benevolent Dictator for Life (BDFL)

A governance pattern in open-source projects where a founder retains final say over disputes; Guido van Rossum held the title for Python until he stepped down in July 2018.

concept July 12, 2018

Open-Source Governance

The structures and processes by which open-source projects make decisions and grant authority, ranging from founder-led BDFL models to merit-based committees and independent foundations.

concept June 2022

Content Negotiation

The HTTP mechanism by which a client and server agree on the format, language, or encoding of a resource's representation, driven mainly by Accept request headers and Content-Type response headers.

concept 2023

The App Economy

The developer ecosystem and revenue created by mobile app stores, built on a model where the platform takes a cut of paid sales and developers keep the rest; Apple reported developers earned more than $320 billion from the App Store between 2008 and 2022.

concept August 3, 2023

Modal editing

Modal editing is the text-editing model, popularized by vi and Vim, in which the keyboard means different things in different modes, with Normal mode commands composing operators and motions.

concept August 3, 2023

Vimscript

Vimscript (also called VimL) is Vim's built-in configuration and scripting language, used for settings, mappings, functions, and plugins, and documented in Vim's :help eval.

concept 2024

Game Engine

A reusable software framework that supplies the rendering, physics, audio, scripting, and asset systems underneath a game, so developers build content on top of the engine rather than rewriting the foundation for each title.

concept 2026

Code Completion

Editor assistance that suggests identifiers, members, parameters, and snippets as you type, evolving from simple prefix matching to semantic, type-aware completion like IntelliSense and LSP completion.

concept 2026

Contributor License Agreement

A legal mechanism by which a project secures clear rights to use the code that outside contributors submit; the explicit Contributor License Agreement (such as the Apache Individual CLA) grants a copyright and patent license to the project, while the lighter-weight Developer Certificate of Origin lets contributors certify their right to submit a patch via a Signed-off-by line.

concept 2026

Dual Licensing

A business model in which a copyright holder offers the same code under both a copyleft license (such as the GPL) and a separate paid proprietary license, letting open source users take the free terms while commercial customers who cannot accept copyleft buy an exception; pioneered commercially by MySQL and Qt.