Software Development Glossary
Clear, practical definitions of software development terms. From APIs to WebSockets, understand the technology that powers modern software.
API
An Application Programming Interface (API) is a set of rules and protocols that allows different software applications to communicate with each other, enabling data exchange and functionality sharing.
Learn moreREST API
A REST API (Representational State Transfer) is an architectural style for building web APIs that uses standard HTTP methods (GET, POST, PUT, DELETE) to perform operations on resources identified by URLs.
Learn moreGraphQL
GraphQL is a query language for APIs developed by Facebook that allows clients to request exactly the data they need, reducing over-fetching and under-fetching of data.
Learn moreFastAPI
FastAPI is a modern, high-performance Python web framework for building APIs, known for its speed, automatic documentation, and type-hint-based validation using Pydantic.
Learn moreDjango
Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design, featuring an ORM, admin panel, authentication, and batteries-included philosophy.
Learn moreReact
React is a JavaScript library created by Facebook for building user interfaces, using a component-based architecture and virtual DOM for efficient rendering.
Learn moreVue.js
Vue.js is a progressive JavaScript framework for building user interfaces, known for its gentle learning curve, excellent documentation, and reactive data binding.
Learn moreTypeScript
TypeScript is a strongly-typed superset of JavaScript developed by Microsoft that adds optional static typing, interfaces, and advanced tooling to JavaScript development.
Learn morePython
Python is a high-level, interpreted programming language known for its readability, versatility, and extensive ecosystem, widely used in web development, data science, AI, and automation.
Learn morePostgreSQL
PostgreSQL is a powerful, open-source object-relational database system with over 35 years of development, known for reliability, data integrity, and advanced features.
Learn moreRedis
Redis is an open-source, in-memory data store used as a database, cache, message broker, and streaming engine, known for sub-millisecond response times.
Learn moreDocker
Docker is a platform for building, shipping, and running applications in lightweight, isolated containers that package code with all dependencies for consistent deployment.
Learn moreKubernetes
Kubernetes (K8s) is an open-source container orchestration platform that automates deployment, scaling, and management of containerized applications across clusters of machines.
Learn moreJWT
JSON Web Token (JWT) is a compact, URL-safe token format used for securely transmitting information between parties, commonly used for API authentication and authorization.
Learn moreOAuth 2.0
OAuth 2.0 is an authorization framework that enables applications to obtain limited access to user accounts on third-party services, used for 'Login with Google/GitHub' features.
Learn moreWebSocket
WebSocket is a communication protocol providing full-duplex, bidirectional communication channels over a single TCP connection, enabling real-time data exchange between client and server.
Learn moreWebhook
A webhook is an HTTP callback that automatically sends data to a specified URL when a specific event occurs, enabling real-time event-driven communication between systems.
Learn moreStripe API
The Stripe API is a comprehensive payment processing interface that enables businesses to accept payments, manage subscriptions, handle payouts, and build complex financial workflows.
Learn moreOpenAI API
The OpenAI API provides access to powerful AI models including GPT-4, DALL-E, and Whisper for text generation, image creation, speech recognition, and embedding-based search.
Learn moreSaaS
Software as a Service (SaaS) is a software distribution model where applications are hosted in the cloud and accessed via subscription, eliminating the need for local installation.
Learn moreMVP
A Minimum Viable Product (MVP) is the simplest version of a product that includes just enough features to satisfy early adopters and validate the core business hypothesis.
Learn moreMicroservices
Microservices is an architectural pattern where an application is built as a collection of small, independent services that communicate over APIs, each responsible for a specific business function.
Learn moreCI/CD
CI/CD (Continuous Integration/Continuous Delivery) is a set of practices that automate code testing, building, and deployment, enabling teams to ship reliable software faster.
Learn moreCORS
Cross-Origin Resource Sharing (CORS) is a browser security mechanism that controls which domains can make requests to your API, preventing unauthorized cross-origin access.
Learn moreORM
An Object-Relational Mapper (ORM) translates between database tables and programming language objects, allowing developers to interact with databases using familiar code instead of SQL.
Learn morePydantic
Pydantic is a Python data validation library that uses type annotations to validate data, serialize/deserialize objects, and generate JSON schemas with excellent performance.
Learn moreSQLAlchemy
SQLAlchemy is the most popular Python SQL toolkit and ORM, providing a comprehensive set of tools for database access, from low-level SQL expression language to high-level ORM.
Learn moreCelery
Celery is a distributed task queue for Python that enables asynchronous processing of time-consuming tasks like sending emails, processing images, or generating reports.
Learn moreCRUD
CRUD stands for Create, Read, Update, Delete—the four basic operations for persistent data storage that form the foundation of most web applications and APIs.
Learn moreSSL/TLS
SSL/TLS (Secure Sockets Layer/Transport Layer Security) is the cryptographic protocol that encrypts data transmitted between web browsers and servers, indicated by HTTPS and the padlock icon.
Learn moreDNS
The Domain Name System (DNS) translates human-readable domain names (like google.com) into IP addresses that computers use to identify each other on the network.
Learn moreCDN
A Content Delivery Network (CDN) is a distributed network of servers that delivers web content to users from the nearest geographic location, improving speed and reliability.
Learn moreRate Limiting
Rate limiting is a technique that controls the number of requests a client can make to an API within a time window, protecting against abuse, DDoS attacks, and ensuring fair usage.
Learn moreLoad Balancing
Load balancing distributes incoming network traffic across multiple servers to ensure no single server is overwhelmed, improving application availability and performance.
Learn moreServerless
Serverless computing is a cloud model where the provider manages server infrastructure, automatically scaling and billing only for actual compute time used.
Learn moreTailwind CSS
Tailwind CSS is a utility-first CSS framework that provides low-level utility classes for building custom designs directly in HTML, without writing custom CSS.
Learn moreNode.js
Node.js is a JavaScript runtime built on Chrome's V8 engine that allows developers to run JavaScript on the server-side, enabling full-stack JavaScript development.
Learn moreVite
Vite is a next-generation frontend build tool that provides instant dev server startup and lightning-fast hot module replacement (HMR) using native ES modules.
Learn moreAWS
Amazon Web Services (AWS) is the world's leading cloud computing platform, offering 200+ services including computing, storage, databases, AI, and deployment infrastructure.
Learn moreMongoDB
MongoDB is a NoSQL document database that stores data in flexible, JSON-like documents instead of rigid table rows, ideal for applications with evolving data structures.
Learn moreJavaScript
JavaScript is the programming language of the web, running in every browser and on servers via Node.js, enabling interactive websites, web applications, and full-stack development.
Learn moreGit
Git is a distributed version control system that tracks changes in source code, enabling collaboration, branching, and merging for software development teams.
Learn more