Algorithm
A step-by-step procedure for solving a problem or performing a task.
API
Application Programming Interface; a set of rules and protocols for building and interacting with software applications.
Array
An ordered collection of elements identified by index or key.
Asynchronous
Programming that allows multiple operations to run concurrently without waiting for previous operations to complete.
Agile
A methodology for software development that emphasizes incremental delivery, collaboration, and flexibility.
Abstract Class
A class that cannot be instantiated and is designed to be subclassed, often containing abstract methods.
Bug
An error or flaw in software that produces an incorrect or unexpected result.
Boolean
A data type that has two possible values: true or false.
Backend
The server-side of an application that handles data storage and business logic.
Binary
A base-2 numeral system using only 0 and 1, commonly used in computing.
Bit
The smallest unit of data in a computer, representing a binary value of 0 or 1.
Blockchain
A decentralized, distributed ledger technology used for recording transactions.
Compiler
A program that translates source code from a high-level programming language to a lower-level language.
Class
A blueprint for creating objects in object-oriented programming.
Closure
A feature where a function has access to its own scope, the outer (enclosing) function's scope, and the global scope.
Constructor
A special method used to initialize objects when a class is instantiated.
Cloud Computing
The delivery of computing services over the internet, allowing for scalable resources and on-demand availability.
Container
A lightweight, standalone package of software that includes everything needed to run it, such as code, runtime, and system libraries.
Debugging
The process of finding and resolving defects or problems within a program.
Database
An organized collection of data, generally stored and accessed electronically from a computer system.
Docker
An open platform for developing, shipping, and running applications inside containers.
Dependency
A piece of software or a module that a project relies on to function correctly.
Data Structure
A particular way of organizing and storing data in a computer so that it can be accessed and modified efficiently.
Distributed System
A model in which components located on networked computers communicate and coordinate their actions by passing messages.
Exception
An event that occurs during the execution of a program that disrupts the normal flow of instructions.
Encryption
The process of encoding information to prevent unauthorized access.
Endpoint
A URL or address where services can be accessed by a client application.
Event Loop
A programming construct that waits for and dispatches events or messages in a program.
Entity
A single item or unit of data in a database or software structure, often representing a real-world object.
Emulator
Software or hardware that enables one computer system to behave like another.
Framework
A platform or foundation for developing software applications, providing pre-built components and tools.
Function
A block of organized, reusable code that performs a single action or task.
Frontend
The client-side of an application that interacts directly with the user, typically involving UI/UX design.
Firebase
A platform developed by Google for creating mobile and web applications, providing various tools like analytics and databases.
Float
A data type used in programming to define a variable with a fractional value.
Functional Programming
A programming paradigm where programs are constructed by applying and composing functions, emphasizing a declarative approach.
Git
A distributed version control system for tracking changes in source code during software development.
GUI
Graphical User Interface; allows users to interact with electronic devices through graphical icons and visual indicators.
GitHub
A web-based platform that uses Git for version control, providing collaboration features for software development.
Gradle
An open-source build automation tool used primarily for Java projects.
GCP
Google Cloud Platform; a set of cloud computing services offered by Google.
HTTP
Hypertext Transfer Protocol; an application protocol for distributed, collaborative, hypermedia information systems.
Hashing
Transforming a string of characters into a usually shorter fixed-length value or key, typically for security purposes.
Header
In networking, a part of a packet containing metadata such as source and destination addresses; in programming, a file containing definitions and declarations.
HTML
Hypertext Markup Language; the standard markup language used to create web pages.
Heuristic
A problem-solving method that uses a practical approach or various shortcuts to produce solutions that may not be optimal but are sufficient for the immediate goal.
Hadoop
An open-source framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models.
IDE
Integrated Development Environment; a software suite that consolidates basic tools required for software development, such as a code editor, a compiler, and a debugger.
Interface
A shared boundary across which two or more separate components exchange information, often in object-oriented programming as a means of specifying methods that must be implemented.
Inheritance
An object-oriented programming principle where new classes can inherit properties and methods from existing classes.
Index
A data structure that improves the speed of data retrieval operations on a database table at the cost of additional writes and storage space.
Immutable
An object whose state cannot be modified after it is created, promoting thread safety and reducing errors in concurrent programming.
IP Address
A unique string of numbers separated by periods that identifies each computer using the Internet Protocol to communicate over a network.
JSON
JavaScript Object Notation; a lightweight data-interchange format that's easy for humans to read and write and easy for machines to parse and generate.
JWT
JSON Web Token; a compact and self-contained way for securely transmitting information between parties as a JSON object.
Java
A high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible.
JavaScript
A high-level, interpreted programming language that is a core technology of the World Wide Web, alongside HTML and CSS.
JVM
Java Virtual Machine; an engine that provides a runtime environment to drive Java applications.
Jira
A proprietary issue tracking product developed by Atlassian that allows bug tracking and agile project management.
Kernel
The core component of an operating system, managing system resources and communication between hardware and software.
Kubernetes
An open-source platform designed to automate deploying, scaling, and operating application containers.
Key-Value Store
A type of data storage paradigm designed for storing, retrieving, and managing associative arrays, often used in databases.
Kotlin
A modern, statically typed programming language that is fully interoperable with Java and is used primarily for Android app development.
Kafka
An open-source stream-processing software platform developed by LinkedIn and donated to the Apache Software Foundation, used for building real-time data pipelines and streaming applications.
Kanban
A scheduling system for lean and just-in-time (JIT) production, often used for agile software development to manage work with an emphasis on continual delivery while not overloading the development team.
Library
A collection of precompiled routines or functions that a program can use to perform specific tasks.
Loop
A sequence of instructions that is repeatedly executed until a certain condition is reached.
Lambda
An anonymous function defined with no name, often used as a quick way to define simple functions in programming.
Latent
Referring to something that exists but is not yet developed or manifest; hidden or concealed, often used in machine learning contexts.
Load Balancer
A device or software that distributes network or application traffic across multiple servers to ensure no single server becomes overwhelmed.
Linting
The process of running a program that will analyze code for potential errors, bugs, style errors, and suspicious constructs.
Middleware
Software that provides common services and capabilities to applications beyond what's offered by the operating system.
Method
A function associated with an object or class in object-oriented programming.
Module
A self-contained unit of code that encapsulates a specific piece of functionality in a program.
Machine Learning
A field of computer science that gives computer systems the ability to learn from and make predictions based on data.
Microservices
An architectural style that structures an application as a collection of services that are highly maintainable and testable.
Mutex
Short for mutual exclusion, a synchronization primitive used to prevent concurrent access to shared resources.
Namespace
A container for identifiers, to ensure that all of them have unique names so that they can be accessed without conflict.
Node.js
An open-source, cross-platform JavaScript runtime environment that executes JavaScript code outside a web browser.
Null
A special marker used in programming to denote the absence of a value or a nonexistent object.
Normalization
The process of organizing data to reduce redundancy and improve data integrity in database design.
Neural Network
A series of algorithms designed to recognize patterns and interpret sensory data through a kind of machine perception.
NPM
Node Package Manager; a package manager for the JavaScript programming language, providing a way to install and manage dependencies.
Object
An instance of a class containing data and behavior specific to that instance in object-oriented programming.
Overloading
A feature that allows a function or operator to behave differently based on the types or number of arguments used.
Open Source
Software for which the original source code is made freely available and may be redistributed and modified.
OAuth
An open standard for access delegation commonly used to grant websites or applications limited access to user information without exposing passwords.
Optimization
The process of making a system, design, or decision as effective or functional as possible within given criteria or constraints.
ORM
Object-Relational Mapping; a programming technique for converting data between incompatible systems using an object-oriented programming language.
Protocol
A set of rules or procedures for transmitting data between electronic devices, ensuring proper communication and data exchange.
Polymorphism
An object-oriented programming concept that allows objects of different classes to be treated as objects of a common superclass.
Package
A bundle of software components or modules that adds specific capabilities to a larger software application.
PaaS
Platform as a Service; a category of cloud computing services that provides a platform allowing customers to develop, run, and manage applications.
Python
A high-level, interpreted programming language known for its readability and broad applicability in web development, data analysis, artificial intelligence, and more.
Promise
An object in JavaScript that represents the eventual completion (or failure) of an asynchronous operation and its resulting value.
Queue
A data structure where elements are added at the end and removed from the front, following the First In, First Out (FIFO) principle.
Query
A request for information or data from a database, often written in a specialized language like SQL.
QuickSort
An efficient sorting algorithm using a divide-and-conquer approach, which partitions arrays into smaller sub-arrays to sort.
Quorum
The minimum number of members of a deliberative assembly necessary to conduct the business of that group, often used in cluster management to ensure reliability.
Quantum Computing
A type of computing that takes advantage of quantum phenomena such as superposition and entanglement to perform operations on data.
QoS
Quality of Service; a measure of the overall performance of a service, such as a network or a cloud service, particularly the performance seen by the users of the service.
Recursion
When a function calls itself directly or indirectly to solve a problem, often used to solve problems that can be divided into similar sub-problems.
REST
Representational State Transfer; an architectural style for designing networked applications, relying on stateless communication protocols, typically HTTP.
Repository
A central location in which data is stored and managed, often used to manage code in version control systems like Git.
Refactoring
The process of restructuring existing computer code without changing its external behavior to improve its readability, structure, or complexity.
Runtime
The period during which a program is executing and the environment provided by the system to execute the program's code.
Regression Testing
A type of software testing that ensures that recent code or program changes have not adversely affected existing features.
Syntax
The set of rules that defines the combinations of symbols considered correctly structured in a programming language.
Stack
A data structure that follows the Last In, First Out (LIFO) principle, allowing elements to be added and removed from the same end.
Serialization
The process of converting an object into a format that can be easily stored or transmitted, and then reconstructing it back into the original object.
SQL
Structured Query Language; a standardized language for managing and manipulating databases.
Scalable
The ability of a system to handle a growing amount of work, or its potential to accommodate growth.
Serverless
A cloud computing execution model where the cloud provider dynamically manages the allocation and provisioning of servers.
Thread
A sequence of executable instructions that can be managed independently by a scheduler, often used to enable multitasking within a program.
Token
An object representing the right to perform some operation, often used in authentication and security contexts.
TypeScript
An open-source programming language developed by Microsoft that is a strict syntactical superset of JavaScript with optional static typing.
TDD
Test-Driven Development; a software development process that relies on the repetition of a very short development cycle: requirements are turned into specific test cases before the software is improved.
Tuple
An ordered list of elements that can contain a variety of data types, typically used to store related data in programming.
Transpiler
A type of compiler that takes source code written in one programming language and outputs the equivalent source code in another language.
UI
User Interface; the means by which the user and a computer system interact, particularly the use of input devices and software.
UML
Unified Modeling Language; a standardized modeling language consisting of an integrated set of diagrams, used to visualize the design of a system.
Unicode
A computing industry standard for the consistent encoding, representation, and handling of text expressed in most of the world's writing systems.
URL
Uniform Resource Locator; the address used to access a resource on the internet.
Unit Testing
A software testing method where individual units or components of the software are tested in isolation from the rest of the system.
UX
User Experience; the overall experience of a person using a product, particularly the ease of use and satisfaction provided by the product.
Variable
A storage location paired with an associated symbolic name that contains some known or unknown quantity of information, or a value.
Version Control
A system that records changes to a file or set of files over time so that specific versions can be recalled later.
Virtual Machine
An emulation of a computer system that provides the functionality of a physical computer.
VPN
Virtual Private Network; a service that encrypts your internet traffic and protects your online identity by hiding your IP address.
VCS
Version Control System; software that helps developers manage changes to source code over time.
Vue.js
A progressive JavaScript framework for building user interfaces, primarily used for creating single-page applications.
Webhook
A method of augmenting or altering the behavior of a web page or application with custom callbacks, which are triggered by specific events.
Wrapper
A design pattern that allows objects to be used in a manner that is different from its primary context of operation, often to make it compatible with a different interface.
WebSocket
A computer communications protocol providing full-duplex communication channels over a single TCP connection.
Webpack
A popular module bundler for JavaScript applications, which packages code into a complete set of assets ready for deployment.
WCF
Windows Communication Foundation; a framework for building connected, service-oriented applications.
Wi-Fi
A technology that allows devices to connect to the internet wirelessly using radio waves.
XML
Extensible Markup Language; a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable.
XPath
A language for selecting nodes from an XML document, used for navigating through elements and attributes in XML.
XSS
Cross-Site Scripting; a security vulnerability typically found in web applications, where attackers inject malicious scripts into content from otherwise trusted websites.
XAML
Extensible Application Markup Language; a declarative XML-based language used to initialize structured values and objects, commonly used for designing user interfaces in .NET applications.
Xcode
An integrated development environment (IDE) for macOS containing a suite of software development tools developed by Apple for developing software for macOS, iOS, iPadOS, watchOS and tvOS.
XMLHttpRequest
An API available in web browser scripting languages, such as JavaScript, used to send HTTP or HTTPS requests to a web server and load the server's response data back into the script.
YAML
YAML Ain't Markup Language; a human-readable data serialization standard that can be used in conjunction with all programming languages and is often used for configuration files.
YAGNI
You Aren't Gonna Need It; a principle of extreme programming that states a programmer should not add functionality until it is necessary.
Yarn
A package manager for JavaScript that replaces the default package manager for Node.js, offering speed, reliability, and security features.
Y-axis
In graphing, the vertical line which can represent the dependent variable in a two-dimensional coordinate system, often used to refer to vertical measurements in UI design.
YouTube API
A suite of tools provided by Google that allows developers to access various features of YouTube, such as video uploads, channel management, and analytics data.
Yoda Conditions
A programming style that avoids errors of assignment in conditional statements by reversing the order of operands in code comparisons.
Zero-Day
A vulnerability in software that is unknown to those who should be interested in mitigating it, including the vendor of the target software.
Zip
A file format and a data compression algorithm that supports lossless data compression, often used to archive or compress files.
Z-Index
In CSS, a property that sets the stacking order of positioned elements, with higher values in front of lower values.
Zsh
Z shell; an extended version of the Bourne Shell (sh), with many improvements and additional features, commonly used as a Unix shell.
Zone.js
A library for JavaScript that provides an execution context that persists across asynchronous tasks, often used in Angular applications.
Zig
A general-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.