← img.ventures
Software, AI and delivery terms
Glossary
Software projects run on jargon, and most of it is never explained to the people paying for the work. This glossary defines the terms that actually come up in a project — in briefs, in status calls, in the estimates we send — in plain English, without pretending the underlying ideas are simpler than they are.
It is written for the person deciding whether to fund a piece of software, not for the person who will write it. Where a term matters to a budget, a deadline or a risk, the entry says so.
A
- ACIDACID names the four guarantees a transactional database provides: atomicity — the whole transaction happens or none of it does; consistency — the rules of the schema always hold; isolation — concurrent transactions do not see each other half-finished; durability — once confirmed, it survives a crash.
- AgileAgile is an approach to building software in short cycles, delivering working software frequently, and changing direction on the basis of what the work reveals — rather than specifying everything up front and executing the specification.
- AI agentAn AI agent is a system in which a language model is given tools — searching, reading a file, calling an API, writing to a database — and allowed to decide which to use, in what order, until a task is done.
- APIAn API is the interface one piece of software offers to another: a defined set of operations, with defined inputs and outputs, that a program can call without knowing anything about how the other side works internally.
- Artificial intelligenceArtificial intelligence is the general name for software that performs tasks which normally require human judgement — reading a document, answering a question, recognising what is in a photograph, deciding which of a thousand records deserves attention.
- Authentication and authorisationAuthentication establishes who someone is.
B
C
- CacheA cache stores the result of expensive work so the next request can be answered from the stored copy instead of doing the work again.
- Canary releaseA canary release sends a new version to a small share of traffic first — a few per cent of users — and watches the error rate and performance before rolling it out to everyone.
- CDNA CDN is a network of servers distributed around the world that hold copies of your static files — images, stylesheets, scripts, video — and serve each visitor from a location near them.
- CI/CDCI/CD is the automated pipeline between a developer finishing a change and that change being live.
- Code reviewCode review is another developer reading a change before it is merged, checking that it does what it claims, handles the awkward cases, and fits the conventions of the codebase.
- ContainerA container packages an application together with everything it needs to run — libraries, runtime, configuration — so that it behaves identically wherever it is started.
- Context windowThe context window is the maximum amount of text — measured in tokens — that a language model can take into account in a single request.
- Core Web VitalsCore Web Vitals are Google's measurements of how a page feels to use: how quickly the main content appears, how quickly the page responds to the first interaction, and how much the layout shifts around while it loads.
- Cross-platform developmentCross-platform development builds one codebase that runs as an app on both iOS and Android.
D
- Data warehouseA data warehouse is a database built for analysis rather than for running an application.
- Database indexA database index is a secondary structure that lets the database find rows matching a condition without examining every row — the same service a book's index performs for its pages.
- Database migrationA database migration is a versioned, scripted change to the structure of a database — adding a table, adding a column, changing a type, backfilling values.
- Definition of doneA definition of done is the team's written agreement about what must be true before any item counts as finished: reviewed, tested, documented where it matters, deployed to staging, accepted by whoever asked for it.
- Design systemA design system is the shared set of components, patterns and rules a product is built from: the button in its variants, the form field with its error state, the spacing scale, the type scale, the colours and what each is for.
- DiscoveryDiscovery is the phase before building, spent establishing what should be built and why: understanding the users and the process being replaced, agreeing what success means, examining the systems to integrate with, and finding the constraints that will shape the solution.
- DockerDocker is the tooling that made containers ordinary: a format for describing an image, a way to build one, and a runtime to start it.
E
- EmbeddingAn embedding is a list of numbers that represents the meaning of a piece of text, an image or another item, positioned so that similar things end up numerically close together.
- Encryption at restEncryption at rest protects stored data — database files, backups, uploads — so that obtaining the storage does not yield the contents.
- ETLETL describes moving data from the systems that produce it into a system that analyses it: extract from the sources, transform into a consistent shape, load into the destination.
- Event-driven architectureEvent-driven architecture organises a system around facts that have happened — order placed, payment received, user deleted — which are published once and consumed by whichever components care.
F
G
- GDPRThe GDPR is the European Union regulation governing personal data.
- GPUA GPU is a processor designed to perform many simple calculations simultaneously.
- GraphQLGraphQL is an API style in which the client specifies exactly which fields it wants, across as many related objects as it needs, and receives precisely that in a single response.
- gRPCgRPC is a high-performance protocol for calls between services.
- GuardrailsGuardrails are the checks placed around a model to constrain what reaches the user or the rest of the system: filtering unacceptable content, validating that output matches a required format, refusing requests outside the intended scope, capping how much a process may spend or how many times it may retry.
H
- HallucinationA hallucination is output from a language model that is fluent, plausible and wrong — an invented citation, a function that does not exist, a confidently stated figure with no basis.
- Headless CMSA headless CMS stores and edits content but does not render it.
- Horizontal and vertical scalingVertical scaling means giving a server more resources — more processor, more memory.
- HydrationHydration is the step where a page that arrived as ready-made HTML has its interactivity attached: the JavaScript loads, matches itself to the existing markup, and takes over the buttons, forms and menus.
I
- IdempotencyAn operation is idempotent if performing it twice has the same effect as performing it once.
- InferenceInference is running a trained model to get an answer, as opposed to training, which is producing the model in the first place.
- Infrastructure as codeInfrastructure as code means describing servers, networks, databases and their configuration in files that are version-controlled and applied by a tool, rather than assembling them by clicking through a provider's console.
J
K
L
- Large language modelA large language model is a machine learning model trained on very large amounts of text to predict what comes next in a sequence.
- Load balancerA load balancer sits in front of several servers and distributes incoming requests between them, checking which are healthy and sending traffic only to those.
M
- Machine learningMachine learning is the practice of building software whose behaviour is derived from examples rather than written as rules.
- Message queueA message queue sits between two parts of a system: one side puts a message in, the other takes it out and processes it, and neither has to be available at the same moment.
- MicroservicesMicroservices is an architecture in which an application is split into small independent services, each owning one capability and its own data, communicating over the network.
- MiddlewareMiddleware is code that sits in the path of every request, doing the work common to all of them: checking authentication, logging, adding security headers, applying rate limiting, measuring how long the request took.
- Model Context ProtocolThe Model Context Protocol is an open standard for connecting language models to external tools and data sources.
- MonolithA monolith is an application built and deployed as a single unit.
- Multi-factor authenticationMulti-factor authentication requires more than one kind of proof to sign in: something you know (a password) plus something you have (a phone, an app, a hardware key) or something you are (a fingerprint).
- MultimodalMultimodal describes a model that handles more than one kind of input or output — typically text plus images, and increasingly audio and video.
- MVPAn MVP is the smallest version of a product that can be put in front of real users to test whether the idea works.
N
- Native appA native app is built specifically for one mobile platform using that platform's own tools — Swift for iOS, Kotlin for Android.
- NoSQL databaseNoSQL covers the databases that deliberately abandon the relational model: document stores holding JSON-like records, key-value stores, wide-column stores, graph databases.
O
- OAuthOAuth is the standard that lets one application act on your behalf in another without ever seeing your password.
- ObservabilityObservability is being able to work out what a running system is doing from the outside, without attaching a debugger.
- OWASP Top TenThe OWASP Top Ten is a periodically updated list of the most critical categories of web application security risk, published by a non-profit foundation.
P
- Penetration testA penetration test is an authorised attempt to break into a system, carried out by specialists, in order to find weaknesses before someone hostile does.
- Progressive web appA progressive web app is a website built to behave like an installed application: it can be added to the home screen, launched without browser chrome, work offline or on a poor connection, and on most platforms receive push notifications.
- Prompt engineeringPrompt engineering is the work of writing and refining the instructions given to a language model so that it produces the output you need reliably, not just once in a demo.
Q
R
- Rate limitingRate limiting caps how many requests a caller may make in a period: a hundred a minute per API key, five login attempts per account, one password reset per address per hour.
- RefactoringRefactoring is restructuring existing code without changing what it does — making it clearer, removing duplication, separating things that had become entangled.
- Regression testingRegression testing verifies that things which used to work still work.
- ReplicationReplication keeps copies of a database on more than one machine, with changes to the primary copied continuously to the replicas.
- Responsive designResponsive design is building one site that adapts its layout to the size of the screen it is on, rather than maintaining a separate mobile version.
- RESTREST is the dominant convention for building web APIs.
- Retrieval-augmented generationRetrieval-augmented generation is the standard way to make a language model answer from your data rather than from its training.
- Reverse proxyA reverse proxy receives requests from the internet and forwards them to applications running behind it, then returns their responses.
- Role-based access controlRole-based access control grants permissions to roles rather than to individuals, and assigns people to roles.
- RollbackA rollback is returning to the previous working version after a release goes wrong.
S
- Scope creepScope creep is the gradual expansion of what a project must deliver, without a corresponding change to budget or deadline.
- ScrumScrum is the most widely used agile framework.
- SDKAn SDK is a library that wraps an API in the idioms of a particular programming language, so a developer calls a function instead of assembling an HTTP request by hand.
- Secret managementSecret management is how an application receives the credentials it needs — database passwords, API keys, signing keys — without those values being written into the code.
- Server-side renderingServer-side rendering builds the HTML for a page on the server, per request, and sends a complete document to the browser.
- ServerlessServerless is a model in which you deploy individual functions and the provider runs them on demand, allocating capacity per request and billing only for execution time.
- ShardingSharding splits one logical database across several machines, with each holding a distinct portion of the data — customers A to M here, N to Z there.
- Single sign-onSingle sign-on lets a person authenticate once with a central identity provider and reach every connected application without signing in again.
- Single-page applicationA single-page application loads once and then rewrites its own content as the user navigates, fetching data in the background instead of asking the server for a whole new page each time.
- SLAAn SLA is a contractual commitment about the service a supplier will provide: how much of the time it will be available, how quickly they will respond to a fault of a given severity, and what the customer is entitled to when the commitment is missed.
- SprintA sprint is a fixed period — usually two weeks — in which an agreed set of work is completed to a finished state.
- SQL databaseA SQL database stores data in tables of rows and columns with a defined structure, and relationships between those tables that the database itself enforces.
- Staging environmentA staging environment is a copy of production used to verify a release before it reaches users.
- Static site generationStatic site generation produces finished HTML files at build time, before anybody visits.
T
- Technical debtTechnical debt is the accumulated cost of implementation choices that were quicker at the time and make future changes slower.
- TLSTLS is the encryption that protects data travelling between a browser and a server; HTTPS is HTTP running over it.
- TokenA token is the unit a language model actually reads and writes — roughly a short word or a fragment of a longer one.
- Training dataTraining data is the collection of examples a model learns from.
V
- Vector databaseA vector database stores embeddings and answers the question "which stored items are closest in meaning to this one" quickly, across millions of entries.
- Version controlVersion control records every change to a codebase — what changed, when, by whom, and why.
- VPSA VPS is a virtual machine rented from a provider, with its own allocated processor, memory and storage, and full administrative access.
W
- Web accessibilityWeb accessibility is the practice of building so that people with disabilities can use what you built — operating the site by keyboard alone, reading it with a screen reader, understanding it at high zoom or with low colour vision.
- WebhookA webhook inverts the direction of an integration.