This project was created with the intention of making developers, both experts and beginners get a basic understanding of some terms used in the programming world.
Feel free to submit a PR adding a new term with a definition. If you want to translate the repo into your native language, please feel free to do so.
All the translations for this repo will be listed below:
- abstraction: a technique for arranging complexity of computer systems.
- agile: the ability to create and respond to change.
- agile software development: software development methodologies that focus on iterative development
- algorithm: the basic technique used to get the job done.
- application (software):a program or group of programs designed for end users.
- API (application programming interface): an intermediary software that allows two or more applications to talk to each other.
- Application Security: Application security is the process of making apps more secure by finding, fixing, and enhancing the security of apps. Application security encompasses measures taken to improve the security of an application often by finding, fixing and preventing security vulnerabilities. Much of this happens during the development phase, but it includes tools and methods to protect apps once they are deployed.
- argument: a value that is passed to the function (as input) when it is called.
- array: a data structure consisting of a collection of elements, values or variables each identified by at least one array index or key. see list
- attribute: Information about elements of a component in your website design/build.
- Authentication: Authentication is the process of verifying identity e.g. a userโs identity. It might involve validating personal identity documents, verifying the authenticity of a website with a digital certificate, determining the age of an artifact by carbon dating, or ensuring that a product or document is not counterfeit. It is the mechanism of associating an incoming request with a set of identifying credentials.
- Authorization: Authorization is the function of specifying access rights/privileges to resources, which is related to information security and computer security in general and to access control in particular. More formally, "to authorize" is to define an access policy.
- Back end: All of the behind-the-scenes digital operations that it takes to keep the front end of a website running, such as the coding, style, and plugins.
- binary operator: an operator that takes two arguments.
- boolean: a data type that has one of two possible values (usually denoted true and false).
- branch: a parallel world where you can create commit without introducing bugs into production code.
- Browser: The program you use to access the Web โ such as Chrome, Firefox, or Safari.
- bug: an error in the source code that causes a program to produce unexpected results. buffer: a sequential section of memory allocated to contain anything from a character string to an array of integers.
- buffer overflow: a condition exists when a program attempts to put more data in a buffer than it can hold.
- Cache: The storage of certain elements to help with faster load times from repeat website visitors. Stores data that needs to be readily accessed by programs and applications.
- callback: a function that is passed as an argument to another and is expected to execute at a given time.
- class: a defined structure to create an object in an object-oriented programming language.
- CLI (Command Line Interface): the terminal version of an application.
- client: a piece of computer hardware or software that accesses a service made available by a server.
- closure: a persistent scope which holds on to local variables even after the code execution has moved out of that block.
- Cloud computing: Cloud computing is the on-demand availability of computer system resources, especially data storage and computing power, without direct active management by the user. The term is generally used to describe data centers available to many users over the Internet.
- CMS: โContent Management System.โ The program that you use to create and maintain your websiteโs content.
- cohesion: a measure of how well the lines of source code within a module work together.
- Comments: In computer programming, a comment is a programmer-readable explanation or annotation in the source code of a computer program. They are added with the purpose of making the source code easier for humans to understand, and are generally ignored by compilers and interpreters.
- commit (VCS): an operation which groups a set of changes behind a name and a number, making these changes part of the head revision of the repository. See VCS
- compiler: a program that translates computer code written in one programming language into another language.
- components: independent and reusable bits of code that work in isolation and returns HTML via a render function. see web components
- container: a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.
- control flow: the order in which individual statements, instructions or function calls of an imperative program are executed.
- Cookies: This is the data sent by an Internet server to a browser. Each time the browser accesses the same server, it sends the data back as a means of tracking how (and how often) it accesses the server.
- coupling: the degree of interdependence between software modules.
- CRM: โCustomer Relationship Management.โ In website development this refers to the software and applications used to gather, analyze, and maintain information on customers, donors, and prospects.
- CSS: Cascading Style Sheet (CSS) is the code that tells the browser how to display the content of a web page for the end user by formatting fonts, colors, background and other visual elements.
- CSV: plain-text files used to better organize large amounts of data.
- Cyber Security: Cyber security is the practice of defending computers, servers, mobile devices, electronic systems, networks, and data from malicious attacks. It's also known as information technology security or electronic information security.
- database: a central location in which data is stored and managed.
- Data-driven Programming: a programming paradigm in which the program statements describe the data to be matched and the processing required rather than defining a sequence of steps to be taken.
- Data Lake: A data lake is a system or storage repository that holds a vast amount of raw data in its native format usually object blobs or files until it is needed. While a hierarchical data warehouse stores data in files or folders, a data lake uses a flat architecture to store data.
- data structure: a data structure is a data organization, management, and storage format that enables efficient access and modification.
- debugging: the process of finding and resolving bugs (defects or problems that prevent correct operation) within computer programs, software, or systems.
- Data Warehouse: A data warehouse is a large collection of business data used to help an organization make decisions. Data Warehouses are central repositories of integrated data from one or more disparate sources. It is a system used for reporting and data analysis, and is considered a core component of business intelligence. The concept of the data warehouse has existed since the 1980s, when it was developed to help transition data from merely powering operations to fueling decision support systems that reveal business intelligence.
- Design Patterns: In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine code.
- destructuring: a convenient way of extracting multiple values from data stored in objects and Arrays.
- DevOps: โDevelopment Operations.โ System of working that helps to keep development, IT operations, and quality assurance departments on the same page to make for better end-products and collaborations.
- DHCP: Dynamic Host Configuration Protocol, a protocol which provides new devices on a network the information they need to communicate with other devices
- documentation (docs): a written text or illustration that accompanies a software which either explains how the software operates or how to use it.
- Domain: The address for a website as entered into the browser.
- DRY: acronym for "Don't Repeat Yourself." Used to describe concise code that is not long and/or repetitive. Example use: "This code is not DRY."
- EAI (Enterprise application integration): Enterprise application integration is an integration framework composed of a collection of technologies and services which form a middleware or "middleware framework" to enable integration of systems and applications across an enterprise. Enterprise application integration is the process of linking multiple applications within a single organization together in order to simplify and automate business processes to the greatest extent possible, while at the same time avoiding having to make sweeping changes to the existing applications or data structures. Applications can be linked either at the back-end via APIs or (seldomly) the front-end (GUI). In the words of research firm Gartner: EAI is the unrestricted sharing of data and business processes among any connected application or data sources in the enterprise.
- ecosystem: a collection of software projects, which are developed and co-evolve in the same environment.
- encapsulation: the bundling of data with the methods that operate on that data.
- enum: a special data type that enables for a variable to be a set of predefined constants.
- ES6 (ES2015): version 6 of the ECMA Script programming language and adds many more features intended to make large-scale software development easier.
- environment variables: a variable whose value is set outside the program, typically through functionality built into the operating system and can be accessed inside the program.
- ERP (Enterprise Resource Planning): ERP stands for Enterprise Resource Planning and refers to software and systems used to plan and manage all the core supply chain, manufacturing, services, financial and other processes of an organization.
- event: an action or occurrence detected by a program.
- event handler: a function containing program statements that are executed in response to an event.
- expression: a combination of letters, numbers, or symbols used to represent a value of a variable.
- extension: a piece of software extends the capabilities of an appliation and adds extra features to an already working standalone application.
- extension (file): a three or four-letter abbreviation that signifies the file type. Eg:
.js .tsx
- Favicon: Short for โfavorite icon,โ itโs the icon that appears in your websiteโs browser tab.
- Firewall: System to protect a secure network from an unsecure network (i.e., the rest of the Internet).
- framework: a concrete platform where common code with generic functionality can be selectively specialized or overridden by developers or users.
- float: a data type composed of a number that is not an integer, because it includes a fraction represented in decimal format.
- Front End: The part of the website or app that the user sees. If the back end of your website is everything behind-the-scenes, this is what happens onstage.
- FTP: โFile Transfer Protocol.โ Method of exchanging files from one computer to another. This is also how websites are uploaded to the Internet.
- function: a block of organized, reusable code that is used to perform a single, related action.
- Functional Programming: a programming paradigm that builds software by composing pure functions, avoiding shared state, mutable data, and side-effects.
- generator: a function that can be used to control the iteration behaviour of a loop.
- getter: a method that gets the value of a property.
- GUI (Graphical User Interface): type of user interface where users can interact with electronic devices via visual indicator representations such as buttons, scroll bars, cursors, etc.
- Git : a version control system that automatic update our file/or project when we commit it.
- high-order function: a function that takes a function as an argument and returns a function.
- HTML (Hyper Text Markup Language): standard markup language used to create Web pages.
- HTTP (Hypertext Transfer Protocol): an application-layer protocol for transmitting hypermedia documents, such as HTML.
- HTTP request methods: Some methods which indicate desired action on a resource. They include GET, PUT, POST etc.
- IaaS (Infrastructure as a Service): Infrastructure as a service (IaaS) is a form of cloud computing that provides virtualized computing resources like compute, network, and storage to consumers on-demand, over the internet, and on a pay-as-you-go basis.
- IDE (Integrated Development Environment): a software application that combines all of the features and tools needed by a software developer.
- immutable object: an object which cannot change after creation.
- inheritance: the tendency of one class to derive properties and characteristics from other classes.
- integer (int): a data type that represents some range of mathematical integers.
- iteration: a general term for taking each item of something, one after another.
- interpreter: is a computer program that directly executes instructions written in a programming or scripting language, without requiring them previously to have been compiled into a machine language program.
- iterator: an object that enables a programmer to traverse a container, particularly lists.
- IP: Internet Protocol, the protocol by which data is sent from one computer to another on the Internet
- JAVA: Java is a class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible. It is a general-purpose programming language intended to let application developers write once, run anywhere (WORA), meaning that compiled Java code can run on all platforms that support Java without the need for recompilation. Java applications are typically compiled to bytecode that can run on any Java virtual machine (JVM) regardless of the underlying computer architecture.
- Java EE: Java EE stands for Java Enterprise Edition, which was earlier known as J2EE and is currently known as Jakarta EE. It is a set of specifications wrapping around Java SE (Standard Edition). The Java EE provides a platform for developers with enterprise features such as distributed computing and web services. Java EE applications are usually run on reference run times such as microservers or application servers. Examples of some contexts where Java EE is used are e-commerce, accounting, banking information systems.
- jQuery: a fast, small, and feature-rich JavaScript library whose purpose is to make it much easier to use JavaScript on your website.
- JSON(JavaScript Object Notation): a syntax for storing and exchanging data compactible with most programming languages.
- JSX: a HTML-like syntax that is intended to be used by preprocessors to transform HTML-like text found in JavaScript files into standard JavaScript objects that a JavaScript engine can parse.
- kernel: a computer program within the operating system with complete control over everything in the system
- library: a single or collection of files, programs, routines, scripts, or functions that can be referenced in another code.
- Linked List: In computer science, a linked list is a linear collection of data elements whose order is not given by their physical placement in memory. Instead, each element points to the next. It is a data structure consisting of a collection of nodes which together represent a sequence.
- List: a collection type that stores ordered, non-unique elements which allow duplicates.
- Load Testing: Load testing is a type of non-functional testing. A load test is type of software testing which is conducted to understand the behavior of the application under a specific expected load. Load testing is performed to determine a system's behavior under both normal and at peak conditions.
- Log file: In computing, a log file is a file that records either events that occur in an operating system or other software runs, or messages between different users of a communication software. Logging is the act of keeping a log. In the simplest case, messages are written to a single log file.
- loop: a programming structure that repeats a sequence of instructions until a specific condition is met.
- Machine Language: is the language understood by a computer.
- Markup Language: a computer language that uses tags to define elements within a document.
- Meta Tag: Additional information on web pages or elements, such as the way a piece of content should display in Google search results, the photo credit for an image, or the main keywords associated with a plugin.
- method: a function associated with a class or an object.
- memoization: optimization technique that involves storing the result so you can use it next time instead of calculating the same thing again and again.
- Middleware: Middleware is software that provides common services and capabilities to applications outside of what's offered by the operating system. Data management, application services, messaging, authentication, and API management are all commonly handled by middleware.
- mutable object: an object which can change after creation.
- Navigation: Links on a homepage that break down the other pages of a website. This can be both in the menu at the top of a site or in a footer (preferably both).
- NAT: Network Address Translation, a method of remapping an IP address space into another
- node: a basic unit of a data structure, such as a linked list or tree data structure.
- NoSQL or NoSQL Databases: NoSQL databases (aka "not only SQL") are non tabular, and store data differently than relational tables. A NoSQL database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases. NoSQL databases come in a variety of types based on their data model. The main types are document, key-value, wide-column, and graph.
- null: a special data type which can have only one value: NULL.
- Object-Oriented Programming: A programming paradigm that organizes software design around data, or objects, rather than functions and logic.
- On-Premises: On-premises is the software and technology that is located within the physical confines of an enterprise โ often in the company's data center (installing and running software on hardware located within the premises of the company) โ as opposed to running remotely on hosted servers or in the cloud.
- Operator: a symbol that tells the compiler or interpreter to perform specific mathematical, relational or logical operation and produce final result.
- OOTB: โOut of the Box.โ Also known as โOff the Shelf.โ These are the ready-made, plug-and-play options for features and functions that you can download and install without the need to customize or configure.
- PaaS (Platform as a Service): Platform-as-a-service (PaaS) is a type of cloud computing offering in which a service provider delivers a platform to clients, enabling them to develop, run, and manage business applications without the need to build and maintain the infrastructure such software development processes typically require.
- package: a namespace that organizes a set of related classes and interfaces.
- Page Template: The layout for a webpage โ pages that have similar structures share the same template (such as event detail pages for a variety of events on the same website). Pages that are radically different use separate templates.
- package manager: a programming language's tool to create project environments and easily import external dependencies.
- parameter: variables that are used in the function declaration to represent those arguments that were sent to the function during the function call.
- Performance Testing: Performance testing is the process of determining the speed, responsiveness and stability of a computer, network, software program or device under a workload. Performance testing can involve quantitative tests done in a lab, or occur in the production environment in limited scenarios.
- pipeline: a set of data processing elements connected in series, where the output of one element is the input of the next one.
- plugin: see extension
- PNG (Portable Network Graphics): is an image type that's commonly used in web design to provide a transparent background and/or a semi-transparent image.
- pointer: variable that stores the memory address of another variable.
- polymorphism: an object-oriented programming concept that refers to the ability of a variable, function or object to take on multiple forms.
- Procedural Programming: a programming paradigm based upon the concept of procedure calls, in which statements are structured into procedures (also known as subroutines or functions).
- Process Control Block: aka PCB, a data structure used by computer operating systems to store all the information about a process
- Programming: the process of creating a set of instructions that tell a computer how to perform a task.
- Programming Language: a vocabulary and set of grammatical rules for instructing a computer or computing device to perform specific tasks. Eg. JavaScript, Python.
- Programming Paradigm: a style or "way" of programming.
- promise: an object that may produce a single value some time in the future.
- properties: special values that are included within a class or an object.
- prototype (JavaScript): an internal property in a JavaScript object.
- pseudocode: detailed description of steps in a computer program or algorithm, intended for human reading rather than machine reading. It often uses structural conventions of programming languages.
- Python: Python is an interpreted, high-level and general-purpose programming language.
- Query: a request that send to retrieve information from database and information system
- Query Language: a computer programming language that requests and retrieves data from database and information systems by sending queries.
- Queue: Queue is an abstract data structure, somewhat similar to Stacks. Unlike stacks, a queue is open at both its ends. One end is always used to insert data (enqueue) and the other is used to remove data (dequeue). Queue follows First-In-First-Out methodology, i.e., the data item stored first will be accessed first. A real-world example of queue can be a single-lane one-way road, where the vehicle enters first, exits first. More real-world examples can be seen as queues at the ticket windows and bus-stops.
- RAML (RESTful API Modeling Language): RESTful API Modeling Language is a YAML-based language for describing RESTful APIs. It provides all the information necessary to describe RESTful or practically RESTful APIs. RAML lets you see what your API looks like as you design it, using easy to read plain text. RESTful API Modeling Language (RAML) makes it easy to manage the whole API lifecycle from design to sharing. It's concise - you only write what you need to define - and reusable. It is machine readable API design that is actually human friendly.
- Redirects: Automatic forwards from one URL to another โ usually from an old website URL to the same page on a new website (these are called 301 Redirects).
- recursion: a process in which a function calls itself as a subroutine. See recursion
- Regression Testing: Regression testing is re-running functional and non-functional tests to ensure that previously developed and tested software still performs after a change.
- Regular Expression: a sequence of symbols and characters expressing a string or pattern to be searched for within a longer piece of text.
- repository: a central location in which code is stored and managed.
- REPL (Read-Eval-Print Loop): an interactive interpreter to a programming language.
- REST (Representational State Transfer): Representational state transfer (REST) is a software architectural style that defines a set of constraints to be used for creating Web services. Web services that conform to the REST architectural style, called RESTful Web services, provide interoperability between computer systems on the internet. RESTful Web services allow the requesting systems to access and manipulate textual representations of Web resources by using a uniform and predefined set of stateless operations, in the form of an HTTP method, or verb (GET, POST, PUT, DELETE etc.). By using a stateless protocol and standard operations, RESTful systems aim for fast performance, reliability, and the ability to grow by reusing components.
- RESTful Web Services: web services that conform to the REST architectural style.
- Resolution: Essentially how large an image or graphic can be rendered on a display. Oftentimes developers talk about the resolution of photos as photos at a low resolution wonโt display as well if they need to be sized for the full width of a desktop screen. Resolutions are measured in pixels (e.g., the resolution of a MacBook Air screen is 1440 x 900 pixels).
- SaaS (Software as a Service): Software as a service (SaaS) is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted. It is sometimes referred to as "on-demand software".
- SAML (Security Assertion Markup Language): Security Assertion Markup Language is an open standard for exchanging authentication and authorization data between parties, in particular, between an identity provider and a service provider. What that jargon means is that you can use one set of credentials to log into many different websites. SAML is an XML-based markup language for security assertions.
- sandbox: a testing environment that isolates untested code changes and outright experimentation from the production environment or repository, in the context of software development including Web development and revision control.
- SDLC (Software Development Life Cycle): Software Development Life Cycle (SDLC) is a process used by the software industry to design, develop and test high quality softwares. The SDLC aims to produce a high-quality software that meets or exceeds customer expectations, reaches completion within times and cost estimates. It is also referred to as the application development life-cycle.
- server: a computer that provides data to other computers.
- setter: a method that sets the value of a property.
- Sitemap: Outline of all pages on a website, organized in hierarchical order โ much like the outlines you used to use for your college term papers.
- SOA (Service Oriented Architecture): Service-oriented architecture (SOA) is a style of software design where services are provided to the other components by application components, through a communication protocol over a network.
- SOAP (Simple Object Access Protocol): SOAP (abbreviation for Simple Object Access Protocol) is a messaging protocol specification for exchanging structured information in the implementation of web services in computer networks. Its purpose is to provide extensibility, neutrality, verbosity and independence. It uses XML Information Set for its message format, and relies on application layer protocols, most often Hypertext Transfer Protocol (HTTP), although some legacy systems communicate over Simple Mail Transfer Protocol (SMTP), for message negotiation and transmission.
- socket: one endpoint of a two-way communication link between two programs running on the network
- Software architecture:Software architecture refers to the fundamental structures of a software system and the discipline of creating such structures and systems. Each structure comprises software elements, relations among them, and properties of both elements and relations.
- Software Engineering: is the process of analyzing user needs and designing, constructing, and testing end-user applications that will satisfy these needs through the use of software programming languages.
- Software integration: Software integration is the process of bringing together various types of software sub-systems so that they create a unified single system. Software integration can be required for a number of reasons, such as: Migrating from a legacy system to a new database system, including cloud-based data storage.
- Source Code: is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text.
- SQL (Structured Query Language): SQL is a domain-specific language used in programming and designed for managing data held in a relational database management system, or for stream processing in a relational data stream management system. According to ANSI (American National Standards Institute), it is the standard language for relational database management systems.
- Stack: In computer science, a stack is an abstract data type (ADT) that serves as a collection of elements, with two main principal operations: push, which adds an element to the collection, and pop, which removes the most recently added element that was not yet removed. Stack is commonly used in most programming languages. It is named stack as it behaves like a real-world stack, for example โ a deck of cards or a pile of plates, etc. A real-world stack allows operations at one end only. For example, we can place or remove a card or plate from the top of the stack only. Likewise, Stack ADT allows all data operations at one end only. At any given time, we can only access the top element of a stack. This feature makes it LIFO data structure. LIFO stands for Last-in-first-out. Here, the element which is placed (inserted or added) last, is accessed first.
- statement: a single line of code that is used to perform a specific task.
- Stress Testing: Stress Testing is a type of software testing that verifies stability & reliability of software application. Stress testing is a software testing activity that determines the robustness of software by testing beyond the limits of normal operation. Stress testing is particularly important for "mission critical" software, but is used for all types of software. The goal of Stress testing is measuring software on its robustness and error handling capabilities under extremely heavy load conditions and ensuring that software doesn't crash under crunch situations.
- string: a sequence of characters.
- String Concatenation: is the operation of joining character strings end-to-end.
- subexpression: a part of an expression that is by itself a correct expression.
- subnet mask: a 32-bit number that separates the IP address into the network and host addresses
- SVG (Scalable Vector Graphics): a vector graphics file format that enables two-dimensional images to be displayed in XML pages on the Web.
- syntax: the grammar of a programming language.
- System Testing: System testing is testing conducted on a complete integrated system to evaluate the system's compliance with its specified requirements. System testing takes, as its input, all of the integrated components that have passed integration testing. The purpose of a system test is to evaluate the end-to-end system specifications. Usually, the software is only one element of a larger computer-based system.
- TCP: Transmission Control Protocol, a communication protocol used most often on networks that use Internet Protocol (IP)
- template: a preformatted file that serve as the starting point for another file.
- tenary operator: an operator that takes three arguments.
- testing: a process to evaluate the functionality of a software application with an intent to find whether the developed software met the specified requirements or not and to identify the bugs to ensure that the product is bug-free.
- testing framework: a set of guidelines or rules used for creating and designing test cases.
- thread: a way for a program to divide itself into two or more simultaneously running tasks
- thread pool: a defined number of pre-initialized threads which stand by, ready to be given work
- token: a single element of a programming language. Eg keyword, operator
- tree: a data structure in which each element is attached to one or more elements directly beneath it.
- type (data type): an attribute of data which tells the compiler or interpreter how the programmer intends to use the data.
- UAT (User Acceptance Testing): User Acceptance Testing (UAT) is one of the last stages of the software development life cycle. It is performed after the software has been thoroughly tested. It is sometimes known as End User Testing. UAT is a type of testing performed by the end user or the client to verify/accept the software system before moving the software application to the production environment. UAT is done in the final phase of testing after functional, integration and system testing is done.
- UI (User Interface): the point of human-computer interaction and communication in a device.
- Unit Testing: In computer programming, unit testing is a software testing method by which individual units of source codeโsets of one or more computer program modules together with associated control data, usage procedures, and operating proceduresโare tested to determine whether they are fit for use. Unit tests are typically automated tests written and run by software developers to ensure that a section of an application (known as the "unit") meets its design and behaves as intended. In procedural programming, a unit could be an entire module, but it is more commonly an individual function or procedure.
- UX (User Experience): is what a user of a particular product experiences when using that product.
- unary operator: an operator that takes a single operand and performs an operation.
- URI (Uniform Resource Identifier): A Uniform Resource Identifier is a string of characters that unambiguously identifies a particular resource. To guarantee uniformity, all URIs follow a predefined set of syntax rules, but also maintain extensibility through a separately defined hierarchical naming scheme.
- URL (Uniform Resource Locator): the address of a given unique resource on the Web.
- variable: are used to store information to be referenced and manipulated in a computer program. Their purpose is to label and store data in memory so that the user may use it throughout the program if needed.
- Version Control System (VCS): a system that records changes to a file or set of files over time so that you can recall specific versions later.
- VM (Virtual Machine): A virtual machine (VM) is a virtual environment that functions as a virtual computer system with its own CPU, memory, network interface, and storage, created on a physical hardware system (located off- or on-premises). Software called a hypervisor separates the machineโs resources from the hardware and provisions them appropriately so they can be used by the VM.
- Web Components: a set of web platform APIs that allow you to create new custom, reusable, encapsulated HTML tags to use in web pages and web apps.
- webhooks: automated messages sent from apps when something happens.
- WebRTC: A browser-based programming interface (API) from the W3C for voice and video calling that bypasses the traditional telephone networks.
- WebService: A web service is a piece of software that makes itself available over the internet.Web services are self-contained, modular, distributed, dynamic applications that can be described, published, located, or invoked over the network. These applications can be local, distributed, or web-based. Web services are built on top of open standards such as TCP/IP, HTTP, Java, HTML, and XML.
- XML: a markup language with rules to be readable by machines and humans.
- YAML (YAML Ain't Markup Language): a markup language similar to XML using minimal syntax, natively using lists, scalars and associative arrays. YAML is a human-readable data-serialization language. It is commonly used for configuration files and in applications where data is being stored or transmitted. YAML targets many of the same communications applications as Extensible Markup Language but has a minimal syntax which intentionally differs from SGML.