Definitions:

  • Object-Oriented Programming (OOP): A programming paradigm based on the concept of "objects," which can contain data and code: data in the form of fields, and code in the form of procedures. OOP promotes the creation of modular, reusable, and extendable code by encapsulating data and behaviour within objects. This approach is widely used in software development to build scalable and maintainable applications.
  • Object Storage: A data storage architecture that manages data as objects, rather than files or blocks. Object storage is designed to handle large amounts of unstructured data, such as images, videos, and documents. It is widely used in cloud computing for scalable and cost-effective data storage, offering features such as versioning, metadata management, and high durability.
  • Observability: The ability to measure a system's internal states based on the knowledge of its external outputs. Observability involves monitoring, logging, and tracing the performance and health of a system to identify and diagnose issues, optimise performance, and ensure reliability. It is crucial for maintaining the operational integrity of complex systems, especially in cloud and microservices environments.
  • On-Premises: A term referring to the deployment and management of software and hardware within an organisation's own facilities, rather than relying on cloud-based services. On-premises solutions offer greater control over data and infrastructure but may require significant investments in hardware, maintenance, and support. This approach is commonly used for sensitive or regulated data.
  • Open Source Software (OSS): Software whose source code is publicly available and can be freely used, modified, and distributed. Open source software encourages collaboration, innovation, and transparency, enabling developers to contribute to and benefit from shared codebases. It is widely used in various domains, including cloud computing, AI, and data science.
  • Operating System (OS): The software that manages computer hardware and software resources, and provides common services for computer programs. The operating system acts as an intermediary between the user and the computer hardware, handling tasks such as process management, memory management, and device drivers. Examples include Windows, macOS, and Linux.
  • Optimization: The process of making a system, design, or decision as effective or functional as possible. In the context of digital and data science, optimization involves techniques such as algorithm optimization, data optimization, and performance optimization. These methods aim to improve efficiency, reduce costs, and enhance the overall performance of systems and applications.
  • Orchestration: The automated management and coordination of complex IT systems and services. Orchestration involves automating the configuration, deployment, and management of applications and services, ensuring they work together seamlessly. In cloud computing, orchestration platforms like Kubernetes manage the lifecycle of containerised applications, providing scalability, resilience, and efficiency.
  • Overfitting: A phenomenon in machine learning where a model learns the noise and details in the training data to the extent that it negatively impacts the performance of the model on new, unseen data. Overfitting occurs when a model is too complex and fits the training data too closely, leading to poor generalisation. Techniques such as regularisation, cross-validation, and pruning are used to mitigate overfitting.