Integrated Development Environment
An all-in-one app for writing, running and debugging code, such as IntelliJ or Visual Studio. Lighter-weight code editors like VS Code now do much the same job, and most have AI coding assistants built in.
Read the full definition →
Command Line Interface
Controlling software by typing text commands rather than clicking, very common in development.
Read the full definition →
Software Development Kit
A ready-made toolkit of code and documentation for building on a particular platform or service.
Read the full definition →
Application Programming Interface
A defined way for two pieces of software to talk to each other and exchange data.
Read the full definition →
Reusable code you plug in
A collection of pre-written code you drop into your project so you do not have to build everything from scratch. React is a well-known example.
Read the full definition →
A foundation to build on
A structured base of pre-built code that shapes how an app is built, such as Next.js, Angular or Django. Unlike a library, a framework sets the overall structure your code fits into.
Read the full definition →
Code your project relies on
An external library or package that your software needs in order to work.
Read the full definition →
Installs and tracks dependencies
A tool that installs and keeps track of the libraries a project depends on: npm, pnpm or bun for JavaScript, pip or uv for Python.
Read the full definition →
Publicly licensed code
Software published under a licence that lets anyone use, change and share the code. Licences vary and some carry obligations, so terms still need checking before commercial use.
Read the full definition →
Fault, and fixing it
A bug is a fault in the code; debugging is the work of finding and fixing it.
Read the full definition →
Tidy without changing behaviour
Improving the internal structure of code without changing what it actually does.
Read the full definition →
The two halves of an app
Frontend is the part users see and interact with; backend is the behind-the-scenes logic, servers and databases. Doing both is called 'full-stack'.
Read the full definition →
HyperText Markup Language / Cascading Style Sheets
The two core web languages: HTML gives a page its structure, CSS gives it styling and layout.
Read the full definition →
Technology stack
The combined languages, frameworks, databases, cloud services and tools used to build and operate a product.
Read the full definition →
Execution environment
The software environment in which a program actually runs, providing the services it needs while executing.
Read the full definition →
Application architecture styles
A monolith ships as one tightly connected application; microservices split business capabilities into smaller services that can be deployed independently.
Read the full definition →
EDA
A system design where producers publish events and independent consumers react to them, often asynchronously and close to real time.
Read the full definition →
Asynchronous messaging patterns
Ways for software components to exchange work or events without waiting for each other, reducing direct coupling between systems.
Read the full definition →
User Experience / User Interface
UI is what a person sees and operates; UX is the wider quality of their interaction and experience across the whole product or service.
Read the full definition →
PHP: Hypertext Preprocessor
An open-source scripting language commonly executed on a server to generate web pages, APIs and command-line programs.
Read the full definition →