IT - General Culture

IT - General Culture

An Introduction to Information Technology

Yahya Abulhaj's photo
Yahya Abulhaj
ยทJun 18, 2022ยท

23 min read

Subscribe to my newsletter and never miss my upcoming articles

Play this article

Table of contents

๐Ÿ‘‹ About

I've done this project as part of my Bootcamp, and because I had so much fun creating it, I decided to publish it.
This article will include some key terms commonly used in the IT industry.

๐ŸงฑStructure

  • State the term
  • Provide an easy-to-understand explanation.
  • Mention a few of use-case applications.
  • Redirect you to resources that you can use term-related.

NOTE: If you prefer Notion, follow this link.


General concepts

Artificial Intelligence (AI)

Definition The simulation of human intelligence processes by machines, particularly computer systems, which is known as artificial intelligence.

Use case: AI is now being applied in a variety of industries, ranging from your smartphone to disease diagnosis, to provide a high-performance and accurate systems that work efficiently.

  • Virtual Assistant or Chatbots
  • Agriculture and Farming
  • Autonomous Flying
  • Retail, Shopping, and Fashion

Get started: Learn with Google AI

Machine Learning

Definition: Machine learning is a branch of artificial intelligence that is defined as a machine's ability to recognize intelligent human behavior.

Use case: Machine learning is applied in many apps on our phones, including search engines, spam filters, websites that generate personalized recommendations, banking software that detects suspicious transactions, and speech recognition.

Get started: Stanford University โ€“ Machine Learning

Natural Language Processing

Definition: Natural language processing (NLP) is a branch of artificial intelligence (AI) concerning the ability of computers to understand the text and spoken words in the same manner that humans can.

Use case: NPL is used in a variety of applications, including grammar correction software, voice assistants, and social media monitoring tools.

Get started: Stanford CS224N

Reinforcement AI

Definition: Reinforcement learning is a subset of AI algorithms that consists of three major components: an environment, agents, and rewards.

Use case: Trading and finance, industry automation, in NLP, healthcare, engineering.

Get started: Reinforcement Learning in 3 Hours | Full Course using Python

Virtual Reality and Augmented Reality

Definition:

  • Augmented reality (AR) enhances your surroundings by adding digital elements to a live view, often using a smartphone's camera.
  • Virtual reality (VR) is a completely immersive experience that simulates a real-life environment.

Use case:

  • Augmented reality (AR): Medical training is now using augmented reality. Its applications range from MRI to performing extremely delicate surgery.

  • Virtual reality (VR): entertainment (particularly video games), education (such as medical or military training) and business (such as virtual meetings).

Get started:

Cybersecurity

Definition: Cybersecurity is the practice of safeguarding critical systems and sensitive data against digital attacks.

Use case: EVERYWHERE

Get started: Bootcamp

Blockchain

Definition: Blockchain is a method of storing data that makes it difficult or impossible to change, hack, or cheat the system.

Use case: Blockchain-based contracts are becoming increasingly popular as sectors such as government, healthcare, and real estate realize the benefits.

Get started: Blockchain Full Course

Internet of Things (IoT)

Definition: The Internet of Things (IoT) is a network of physical objectsโ€”"things" embedded with sensors, software, and other technologies for connecting and exchanging data with other devices and systems via the internet.

Use case: IoT is most prevalent in manufacturing, transportation, and utility organizations.

Get started: IBM Blog

Big Data

Definition: Big data is defined as data with greater variety, arriving in greater volumes and with greater velocity.

Use case: It is now used in a variety of fields, including medicine, agriculture, gambling, and environmental protection.

Get started: Big Data Full Course 2022

Cloud Computing

Definition: It refers to a global network of servers, each with a distinct function. The cloud is not a physical entity, but rather a vast network of remote servers located all over the world that are linked together and intended to function as a single ecosystem.

Use case: The internet as we know it today.

Get started: My primary source will be my preferred cloud provider.

- Microsoft Azure AWS and GCP are also viable options.

Faas

Definition: FaaS, or Function as a Service, is a type of cloud computing service that enables developers to build, compute, run, and manage application packages as functions without having to maintain their own infrastructure. Services: Microsoft Azure Function, AWS Lambda, Google Cloud Functions.

Use case:

  • Reminders and notifications.
  • Scheduled tasks and messages.
  • File processing.
  • Data or data stream processing.
  • Running background backup tasks.
  • Computing backend calculations.
  • Lightweight Web APIs and Proof of Concepts, MVPs.

Getting started with Azure Functions

SaaS

Definition: Software as a service (SaaS) is a software distribution model in which a cloud provider hosts applications and makes them available to end-users over the internet.

Use case: Zoom, the online Office, your mailbox, BigCommerce. Google Workspace, Salesforce..

Get started: Learn about a cloud Provider

PaaS

Definition: PaaS, or platform as a service, is a cloud-hosted platform that provides on-demand access to a complete, ready-to-use platform for developing, running, maintaining, and managing applications.

Use case: Reduced cost and capital investment, shorter time-to-market for new applications, and ease-of-use and convenience for your team in their daily work

Get started: Learn about a cloud provider.

IaaS

Definition: IaaS is a type of cloud computing service that provides essential compute, storage, and networking resources on demand and on a pay-as-you-go basis.

Use case: IaaS, in essence, promotes access over ownership. This solution gives the end-user flexibility in terms of hosting custom-built apps or standard software, as well as a general data center for storage.

Get started: Learn about a cloud Provider

An important thing to note about the (Iaas, PaaS & Saas) => Shared Responsibility Model

Quantum Computing

Definition: Quantum computing is a field of study that focuses on the development of computer-based technologies based on quantum theory principles. On the quantum (atomic and subatomic) level, quantum theory explains the nature and behavior of energy and matter.

Use case: Quantum computers can be used in taking large manufacturing data sets on operational failures and translating them to combinatoric challenges that, when paired with a quantum-inspired algorithm, can identify which part of a complex manufacturing process contributed to incidents of product failure.

Get started: Introduction to Quantum Computing for Everyone - Edex


Dev Culture

Assembly

Definition: An assembly language is a low-level programming language designed to communicate directly with the hardware of a computer.

Use case: Assembly language is still used today for direct hardware manipulation, gaining access to specialized processor instructions, and dealing with critical performance issues. Device drivers, low-level embedded systems, and real-time systems are common applications (see Current usage).

Get started: Assembly Language & Computer Architecture

Compiler

Definition: A compiler is a special program that converts the source code of a programming language into machine code, bytecode, or another programming language. Typically, the source code is written in a high-level, human-readable language such as Java or C++.

Use case: It is used to generate machine code or bytecode that the target host system can execute.

Get started: WHAT COMPILERS CAN AND CANNOT DO

Interpreter

Definition: An interpreter is a computer program that executes program instructions written in one of the many high-level programming languages.

Use case: A compiler or an interpreter is used to convert source code to machine code. Compilers and interpreters are both used to convert a program written in a high-level language into machine code that computers can understand.

Difference: The interpreter only converts one program statement at a time into machine code. The compiler scans the entire program and converts it all at once into machine code.

Get started: What Your Interpreter Can and Cannot Assume

Programming Language

Definition: A programming language is a set of grammatical rules and a vocabulary for instructing a computer or computing device to perform specific tasks.

Use case: Depends on the language, however, it is now reaching every edge of society's needs.

Get started: C Programming Tutorial for Beginners

Libraries

Definition: A library is a collection of files, programs, routines, scripts, or functions.

Use case: Configuration data, documentation, help data, message templates, pre-written code and subroutines, classes, values, or type specifications.

Get started: Python Libraries For Data Science Full Course

Packages

Definition: A package is a namespace that groups together a group of related classes and interfaces. Packages can be thought of conceptually as different folders on your computer.

Use case: Packages help us avoid name conflicts and write more maintainable code. Packages are classified into two types: Packages Included Customized Packages

Get started: Packages In Java

Frameworks

Definition: A framework is a physical or conceptual structure designed to support or guide the construction of something that expands the structure into something useful. Frameworks are the initial set of tools used by many successful coding teams.

Use case: Web frameworks, specifically back-end web frameworks, assist developers in creating web applications, also known as dynamic websites. These are websites that are not created using only HTML, JavaScript, and CSS. Instead, they interact with a database using a programming language before generating the final content.

Get started: Web Frameworks: How To Get Started

SDK

Definition: SDK is an abbreviation for software development kit. The SDK, also known as a devkit, is a collection of software-development tools for a specific platform

Use case: includes building blocks, debuggers, and, in some cases, a framework or group of code libraries such as a set of routines specific to an operating system such as Android SDK for mobile dev.

Get started: Getting Started with SDK

CMS

Definition: CMS is an abbreviation for content management system. CMS is computer software or an application that manages all content through a database and can be used when creating a website.

Use case: While public websites and private intranets are the two most common use cases for a Content Management System (CMS), a CMS can also be used to manage content for mobile apps and Internet of Things (IoT) devices.

Get started: LinkedIn Courses

LMS

Definition: A learning management system (LMS) is a software application or web-based technology used to plan, implement and assess a specific learning process.

Use case: a learning management system is a software application that provides the framework that handles all aspects of the learning process

Get started: How to Use a Learning Management System (LMS)

E-Commerce

Definition: E-commerce (electronic commerce) is the buying and selling of goods and services, as well as the transfer of funds or data, over an electronic network, most notably the internet.

Use case: There are four traditional types of ecommerce, including B2C (Business-to-Consumer), B2B (Business-to-Business), C2B (Consumer-to-Business) and C2C (Consumer-to-Consumer). There's also B2G (Business-to-Government), but it is often lumped in with B2B.

Get started: How to Make an E-Commerce Website

E-Market

Definition: E-marketing is an advertising discipline that includes all marketing activities conducted by a business online using an electronic device or the internet.

Use case: internet marketing, online marketing, digital marketing, or web marketing: => eBay, Amazon

Get started: AMAZON Affiliate Marketing For BEGINNERS

WordPress

Definition: WordPress is a free, open source publishing software that can be installed locally on a web server and accessed via a proprietary web site or hosted in the cloud and accessed via the WordPress web site.

Use case: Social Network, Forum, Security, Shortcodes, E-Commerce Site, Project Management

Get started: How to Make a WordPress Website

WooCommerce

Definition: WooCommerce is a free WordPress plugin that allows you to create an online store by adding e-commerce functionality to your WordPress website.

Use case: It lets you turn a WordPress website into an ecommerce store

Get started: WooCommerce for Beginners

Moodle

Definition: Moodle is an online learning platform that allows you to create online courses, assign assignments, and track your students' progress.

Use case: a well-prepared teaching platform

Get started: The 15-Minute Guide for Teachers on Getting Started with Moodle

SPA

Definition: A single-page application (SPA) is a Web app that is presented to the user via a single HTML page in order to be more responsive and closely replicate a desktop application or a native app. A single-page interface is another term for an SPA (SPI).

Use case: It interacts with the user by dynamically rewriting the current web page with new data from the web server, as opposed to the web browser's default method of loading entire new pages such as Twitter & Facebook.

Get started: How to Build A Single Page Application

PWA

Definition: PWAs are web apps that use service workers, manifests, and other web-platform features in conjunction with progressive enhancement to provide users with an experience comparable to native apps.

Use case: PWAs provide a more responsive, dependable, and engaging version of your website or eCommerce store. PWAs can perform most of the functions of native apps, such as operating offline, accessing your camera and microphone if necessary, GPS, and more.

Get started: Get started with Progressive Web Apps - Microsoft

ChatBots

Definition: A chatbot, at its most basic, is a computer program that simulates and processes human conversation (either written or spoken), allowing humans to interact with digital devices as if they were speaking with a real person.

Use case: Chatbots assist businesses in asking contextually relevant questions, qualifying leads, and scheduling sales meetings on a large scale. Because people prefer conversations, bots convert 4x better than traditional lead generation tools. So, interact with your visitors 24 hours a day, seven days a week to generate more leads.

Get started: Build Your Own Chatbot

WebAssembly

Definition: WebAssembly is a new type of code that can be run in modern web browsers; it is a low-level assembly-like language with a compact binary format that runs with near-native performance and provides a compilation target for languages such as C/C++, C#, and Rust to run on the web.

Use case: WebAssembly makes it possible to create video, audio, graphics, 3D environments, multimedia games, cryptographic computations, and even portable language implementations.

Get started: An Introduction to WebAssembly - Linux Foundation

Git

Definition: Git is a piece of software that tracks changes in any set of files. It is commonly used to coordinate work among programmers who are collaboratively developing source code during software development.

Use case: Git is a source code management tool used in DevOps. It is a free and open-source version control system used to efficiently manage small to very large projects. Git is a version control system that allows multiple developers to collaborate on non-linear development by tracking changes in the source code.

Get started: Computer Stuff They Didn't Teach You - Scott Hanselman


In-depth Culture

HTML & CSS

Definition: HTML (Hypertext Markup Language) and CSS (Cascading Style Sheets) are two of the most important technologies for creating Web pages. HTML provides the page structure, while CSS provides the (visual and aural) layout for a variety of devices.

Use case: HTML is used by 94.6% of all websites. CSS is used by 97.0% of all websites. Inline CSS is used by 90.4% of all websites.

Get started: Learn HTML and CSS with this free 11 hour course

JS

Definition: Javascript (JS) is a scripting language that is mostly used on the Internet. It is commonly found embedded in HTML code and is used to enhance HTML pages. JavaScript is an interpreted programming language. As a result, it does not need to be compiled. JavaScript is used to create interactive and dynamic web pages.

Use case: Creating web and mobile apps, Adding interactive behavior to web pages, Building web servers and developing server applications, Game development..

Get started: Full JavaScript Course for Beginners

TypeScript

Definition: TypeScript is JavaScript with type syntax. TypeScript is a strongly typed programming language based on JavaScript that provides better tooling at all scales. The editor double-checks.

Use case: Microsoft created and maintains TypeScript, a programming language. It is a strict syntactical superset of JavaScript and extends the language with optional static typing. It is intended for large-scale application development and transpiles to JavaScript.

Get started: TypeScript Documentation

jQuery

Definition: jQuery is a lightweight, feature-rich JavaScript library It simplifies HTML document traversal and manipulation, event handling, animation, and Ajax with an easy-to-use API that works across a wide range of browsers.

Use case: jQuery was created to make HTML DOM tree traversal and manipulation easier, as well as event handling, CSS animation, and Ajax.

Get started: jQuery Full Course jQuery Learning Center

NodeJs

Definition: Node.js (Node) is an open source development platform for server-side JavaScript execution.

Use case: Node is useful for developing applications that require a persistent connection from the browser to the server, such as chat, news feeds, and web push notifications.

Get started: Node.js Tutorial - W3SCHOOLS

APIs

Definition: API stands for Application Programming Interface, and it is a software intermediary that allows two applications to communicate with one another.

Use case: An API is used every time you use an app like Facebook, send an instant message, or check the weather on your phone.

Get started: APIs for Beginners - freeCodeCamp

RestAPI

Definition: A REST API (also known as RESTful API) is a type of application programming interface (API or web API) that adheres to the REST architectural style and allows interaction with RESTful web services.

Use case: A RESTful API is an architectural style for an application program interface (API) that accesses and uses data via HTTP requests. That data can be used to GET, PUT, POST, and DELETE data types, which refer to reading, updating, creating, and deleting resource-related operations.

Get started: REST API Crash Course

SOAP

Definition: SOAP (Simple Object Access Protocol) is a message protocol that allows distributed application elements to communicate with one another. SOAP can be delivered using a number of standard protocols, including the web-based Hypertext Transfer Protocol (HTTP).

Use case: You can transmit SOAP messages in any way that the applications require, as long as both the client and the server use the same method.

Get started: Object Access Protocol Overview - Oracle

GraphQL

Definition: GraphQL is a syntax that describes how to request data and is commonly used to load data from a server to a client.

Use case: GraphQL is great if you want to work in a declarative style because it enables you to select only the information or operations you need.It can even be deployed within an integrated development environment (IDE) known as GraphiQL.

Get started: Getting Started With GraphQL.js

Angular

Definition: Angular is an HTML and TypeScript-based platform and framework for developing single-page client applications. TypeScript is used to write Angular. It provides core and optional functionality as a collection of TypeScript libraries that you can import into your applications.

Use case: building single-page client applications, building single-page client applications, using POJO in Angular will help you to develop an intuitive, lightweight, and specialized app.

Get started: Getting started with Angular

Reactjs

Definition: React. js is an open-source JavaScript library used to create user interfaces for single-page applications. It handles the view layer for web apps. React also enables us to create reusable user interface components.

Use case: web development to build interactive elements on websites.

Get started: React Course - Beginner's Tutorial for React JavaScript Library

React Native

Definition: React Native is a JavaScript framework for creating natively rendered mobile apps for iOS and Android. It's based on React, Facebook's JavaScript library for creating user interfaces, but instead of being aimed at browsers, it's aimed at mobile platforms.

Use case: Multi-OS mobile development

Get started: the Complete React Native Course 2021 : from Zero to Hero

Flutter

Definition: Google's Flutter is a free and open-source UI framework for developing native mobile applications.

Use case: IOS/Android mobile development

Get started: Flutter Course for Beginners โ€“ 37-hour Android App Development Tutorial

Ionic

Definition: Ionic offers a set of tools for developing native iOS and Android apps, as well as mobile-ready Progressive Web Apps, using familiar web libraries, frameworks, and languages.

Use case: Turn any web project into a native iOS or Android mobile application.

Get started: Ionic 4 Crash Course for Beginners - Build an App

Electronjs

Definition: Electron.js is a runtime framework that allows the user to create desktop-suite applications with HTML5, CSS, and JavaScript.

Use case: Pexels Electron app, Slack desktop app, WhatsApp Electron app

Get started: Learn Electron in Less than 60 Minutes - Free Beginner's Course

Python

Definition: Python is a general-purpose programming language, meaning it can be used to create a variety of different programs and isn't specialized for any specific problems.

Use case: build websites and software, automate tasks, and conduct data analysis.

Get started: Python Tutorial - Python Full Course for Beginners

Web Scraping

Definition: Web scraping is the process of extracting content and data from a website using bots. Web scraping, as opposed to screen scraping, which only copies pixels displayed onscreen, extracts underlying HTML code and, with it, data stored in a database.

Use case: price monitoring, enriching machine learning models, financial data aggregation, monitoring consumer sentiment, news tracking,

Get started: Web Scraping with Python - Beautiful Soup Crash Course

Django

Definition: Django is a Python web framework that allows for the rapid development of secure and maintainable websites. Django, which was created by experienced developers, takes care of much of the hassle of web development, allowing you to focus on writing your app instead of reinventing the wheel.

Use case: Suitable for both frontend and backend

Get started: Python Django Web Framework - Full Course for Beginners

Java

Definition: Java is an object-oriented programming language used to create software for a variety of platforms.

Use case: write applications for different platforms that run JRE and supports applications that run on a single device like a desktop or mobile phone. Java can also be used to develop applications that work in a distributed manner.

Get started: Java Full Course | Java Tutorial for Beginners | Java Online Training

JavaFX

Definition: JavaFX is a collection of graphics and media packages that allow developers to create, test, debug and deploy rich client applications that work consistently across multiple platforms.

Use case: Space, Dispatching, Manufacturing execution systems

Get started: JavaFX GUI Course โ˜•ใ€๐™๐™ง๐™š๐™šใ€‘

Java Swing

Definition: Swing in java is part of Java foundation class which is lightweight and platform-independent.

Use case: It is used for creating windows-based applications

Get started: Java Swing GUI Programming Tutorial

SpringBoot

Definition: Pivotal maintains an open-source micro-framework known as Spring Boot. It provides a platform for Java developers to get started with an auto-configurable production-grade Spring application.

Use case: It is targeted specifically towards building web applications and microservices.

Get started: Spring Boot Tutorial | Full Course [2021]

Ruby

Definition: Yukihiro Matsumoto created Ruby, an open source, interpreted, object-oriented programming language, with the gemstone's name implying "a jewel of a language." Ruby is intended to be straightforward, complete, extensible, and portable.

Use case: Ruby is an excellent programming language for creating desktop applications, static websites, data processing services, and even automation tools. It is used for web servers, DevOps, as well as web scraping and crawling.

Get started: Ruby Programming Language - Full Course

Ruby on rails

Definition: Ruby on Rails (also known as RoR) is the most widely used open-source web application framework. It is written in the Ruby programming language.

Use case: Rails can be used to help you build applications ranging from simple to complex; there are no limits to what you can achieve with Rails!

Get started: Learn Ruby on Rails - Full Course

C

Definition: C# is a type-safe, object-oriented programming language. C# allows developers to create a wide range of secure and robust applications

Use case: used in. NET, C# has its roots in the C family of languages and will be immediately familiar to C, C++, Java, and JavaScript programmers.

Get started: C# Get Started

DotNet Core

Definition: NET Core is a new version of .NET Framework, which is a free, open-source, general-purpose development platform maintained by Microsoft.

Use case: It is a cross-platform framework that runs on Windows, macOS, and Linux operating systems.

Get started: What is .NET?

Kotlin

Definition: Kotlin is a static type, object-oriented programing (OOP) language that is interoperable with the Java virtual machine, Java libraries and Android.

Use case: Android Development

Get started: Kotlin Course - Tutorial for Beginners

Go

Definition: Go (also called Golang or Go language) is an open source programming language used for general purpose.

Use case: Go was originally built for programs related to networking and infrastructure. Today, Go is used for a variety of applications like cloud and server-side applications, DevOps, command-line tools, and much more.

Get started: Golang Tutorial for Beginners | Full Go Course

Rust

Definition: Rust programming language is a computer language with object-oriented characteristics that's often prized as an alternative to traditional C++. While it's syntactically similar to C++, it also has its own range of features that make it a multi-paradigm programming language that's getting a lot of attention.

Use case: operation systems or microcontroller applications.

Get started: Rust Programming Course for Beginners - Tutorial


Database Stuff

SQL

Definition: Structured Query Language (SQL) is a standardized programming language that is used to manage relational databases and perform various operations on the data in them.

Use case: SQL is used to communicate with a database, a relational database.

Get started: SQL Tutorial - Full Database Course for Beginners

NoSQL

Definition: NoSQL is an approach to database management that can accommodate a wide variety of data models, including key-value, document, columnar, and graph formats. A NoSQL database generally means that it is non-relational, distributed, flexible and scalable.

Use case: SQL is used to communicate with a database, a non-relational database.

Get started: NoSQL Database Tutorial โ€“ Full Course for Beginners

Postgres

Definition: PostgreSQL is a powerful, open-source object-relational database system that uses and extends the SQL language and includes numerous features for safely storing and scaling the most complex data workloads.

Use case: Postgres is used to communicate with a database, a relational database.

Get started: Learn PostgreSQL Tutorial - Full Course for Beginners

MySQL

Definition: MySQL is a relational database management system (RDBMS) developed by Oracle that is based on structured query language (SQL).

Use case: For WordPress sites, that means it helps you store all your blog posts, users, plugin information, etc. It stores that information in separate โ€œtablesโ€ and connects it with โ€œkeysโ€, which is why it's relational.

Get started:

MongoDB

Definition: MongoDB is an open-source NoSQL database management program.

Use case: useful for working with large sets of distributed data. MongoDB is a tool that can manage document-oriented information, and store or retrieve information.

Get started: MongoDB Full Course | MongoDB Tutorial

CasandraDB

Definition: Apache Cassandra is a distributed database management system

Use case: Handle large amounts of data across multiple data centers and the cloud.

Get started: Crash Course | Introduction to Cassandra for Developers

Redis

Definition: Remote Dictionary Server, is a fast, open-source, in-memory, key-value data store. The project started when Salvatore Sanfilippo, the original developer of Redis, wanted to improve the scalability of his Italian startup.

Use case: enables you to write traditionally complex code with fewer, simpler lines.

Get started: Redis in 100 Seconds


Server Stuff

VPS

Definition: A virtual private server (VPS) is a virtual server that appears to the user as a dedicated/private server despite being installed on a physical computer running multiple operating systems. A virtual dedicated server is another name for a virtual private server (VDS).

Use case: better reliability, security, and performance than shared hosting.

Get started: Getting started with a VPS

RDP

Definition: The Remote Desktop Protocol (RDP) is a protocol or technical standard, for using a desktop computer remotely.

Use case: Desktop Computer such as a virtual machine

Get started: What is the Remote Desktop Protocol (RDP)?

DevOps

Definition: Simply put, DevOps is about breaking down barriers between traditionally siloed teams, such as development and operations. A DevOps model requires development and operations teams to collaborate throughout the software application life cycle, from development and testing to deployment and operations.

Use case: Companies such as Microsoft, Google & Amazon

Get started: What is DevOps? REALLY understand it | DevOps vs SRE

Virtual Environment

Definition: A virtual environment is a networked application that allows a user to interact with both the computing environment and the work of other users.

Use case: Email, chat, and web-based document sharing applications are all examples of virtual environments.

Get started: What are virtual environments?

Docker

Definition: Docker is a software platform that simplifies the process of building, running, managing and distributing applications

Use case: package applications into containers, combining application source code with the operating system (OS) libraries and dependencies required to run that code in any environment

Get started: Docker Tutorial for Beginners

Kubernetes

Definition: Kubernetes is a system that manages containers (containerized applications) where a container could be explained as a lightweight virtual machine

Use case: Containers management

Get started: Kubernetes: Getting started

Docker Swarm

Definition: Docker Swarm is a clustering and scheduling tool for Docker containers.

Use case: establish and manage a cluster of Docker nodes as a single virtual system.

Get started: What is Docker Swarm: Modes, Example and Working

Apache

Definition: Apache is the most widely used webserver software and runs on 67% of all websites in the world.

Use case: a web server to host applications

Get started: What Is Apache? What Is a Web Server? - WPBeginner

Nginx

Definition: NGINX is open-source software for web serving, reverse proxying, caching, load balancing, media streaming, and more.

Use case: high performance, almost infinite configurability

Get started: What is NGINX?

Single Thread

Definition: the execution of an entire task from beginning to end without interruption.

Use case: the open-source audio encoder

Get started: What is a single thread performance? - Quora

Multi-Thread

Definition: Multithreading is a CPU (central processing unit) feature that allows two or more instruction threads to execute independently while sharing the same process resources.

Use case: allows the execution of multiple parts of a program at the same time.

Get started: What Is Multithreading: A Guide to Multithreaded Applications

CI/CD

Definition: Continuous integration and continuous delivery/continuous deployment are abbreviated as CI and CD, respectively. In its most basic form, continuous integration (CI) is a modern software development practice in which incremental code changes are made frequently and reliably.

Use case: Modern Software Development

Get started: CI/CD Pipeline: Everything You Need To Know

ย 
Share this