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.'
Plain-language explanations of the ideas behind software - compilers, garbage collection, objects, types.
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.'
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.
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.
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.
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.
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.
The engineering structure of a machine-learning workflow (ingest, feature engineering, train, evaluate, serve) and the tooling, from scikit-learn's Pipeline object to feature stores, that standardizes it as composable software.
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.
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.
The rule of thumb that a communication network's value grows roughly with the square of the number of connected users.
A consensus algorithm designed to be more understandable than Paxos by decomposing consensus into leader election, log replication, and safety.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
An integrated circuit that combines a CPU with memory, radios, peripherals, and often graphics onto a single chip, forming a near-complete computer; the basis of smartphones, the Raspberry Pi, and the ESP32.
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.
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.
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.
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.
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.
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.
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.
Specialized matrix-multiply-accumulate hardware units introduced by NVIDIA in the Volta architecture in 2017. Tensor Cores perform mixed-precision matrix math at high throughput, dramatically accelerating the dense linear algebra at the heart of deep learning.
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.
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.
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.
The recurring critique that Jupyter notebooks invite hidden state, out-of-order execution, weak version control, and irreproducible results, documented at scale by a 2019 study of 1.4 million GitHub notebooks.
A set of interoperable open-source libraries (NumPy, SciPy, pandas, Matplotlib, scikit-learn, Jupyter) that share a common array type and together displaced MATLAB as the default environment for data science and machine learning.
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.
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.
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.
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.
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.
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.
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.
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.
The proprietary-software contract presented to a user before or during installation, often as a shrink-wrap or click-wrap agreement requiring an 'I agree' to proceed; it typically restricts copying, modification, and reverse engineering, standing in deliberate contrast to free software licenses that grant freedoms rather than withhold them.
The question of whether code under two different licenses can be legally combined into one work; copyleft licenses such as the GPL are largely one-way compatible, and conflicting terms (such as the original BSD advertising clause) can make otherwise-free licenses incompatible.
The legal instrument that grants rights to use, copy, modify, or distribute software on top of the exclusive rights copyright reserves to the author, spanning a spectrum from restrictive proprietary EULAs to free and open source licenses that grant broad freedoms.