Developers Dictionary

Developers, regardless of organization, often use a variety of terms to describe different concepts. Below is a list of definitions to help stakeholders better understand the language that Developers use.



OAuth (Open Authorization) is an open standard for access delegation, commonly used to grant websites or applications limited access to user information without exposing passwords. It enables third-party services to exchange data on behalf of the user. OAuth is widely used for single sign-on (SSO) and delegated access to APIs.


In programming, an object is an instance of a class that encapsulates data and behavior related to that data. Objects are the basic building blocks of Object-Oriented Programming (OOP) and can represent real-world entities or abstract concepts, containing properties (attributes) and methods (functions). 

Object-Oriented Programming (OOP)

OOP is a programming paradigm based on the concept of “objects,” which can contain data in the form of fields (attributes) and code in the form of procedures (methods). OOP principles include encapsulation, inheritance, polymorphism, and abstraction, which promote modularity, code reuse, and flexibility in software design. Languages that support OOP include Java, C++, Python, and Ruby. 

Open Source

Open source refers to software whose source code is made available to the public for use, modification, and distribution. Open source software is typically developed collaboratively and encourages transparency, community involvement, and innovation. Examples include the Linux operating system, Apache web server, and the Git version control system. 

Operating System (OS)

An operating system is system software that manages computer hardware and software resources and provides common services for computer programs. The OS acts as an intermediary between users and the computer hardware. Examples include Microsoft Windows, macOS, Linux, and Android.


ORM (Object-Relational Mapping)

ORM is a programming technique used to convert data between incompatible type systems in object-oriented programming languages. It allows developers to interact with a relational database using an object-oriented paradigm, abstracting the database interactions into objects. ORMs simplify database access and manipulation, providing tools for querying and managing data. Examples of ORMs include Hibernate for Java, Entity Framework for .NET, and SQLAlchemy for Python.