OS

OpenStem

@openstem · Joined Jul 2026
7420 public items8 groups
Content7420Groups8
Flashcards10 cards
What do HTTP status code classes 2xx, 3xx, 4xx, 5xx mean?1 / 10
2xx success (200 OK, 201 Created), 3xx redirection (301 Moved, 304 Not Modified), 4xx client error (400 Bad Request, 401 Unauthorized, 404 Not Found), 5xx server error (500 Internal, 503 Unavailable).
Software

HTTP Fundamentals

@openstem
HTTP Fundamentals
Flashcards10 cards
What is the difference between TCP and UDP?1 / 10
TCP is connection-oriented and reliable — ordered, error-checked, retransmitted (web, email, file transfer). UDP is connectionless and unreliable but fast and low-overhead — no ordering or delivery guarantees (video streaming, gaming, DNS).
Software

TCP/IP & DNS

@openstem
TCP/IP & DNS
Flashcards9 cards
What is the difference between a process and a thread?1 / 9
A process is an independent program with its own memory address space. A thread is a unit of execution within a process; threads of the same process share memory and resources. Threads are cheaper to create and switch between, but share state (needing synchronization).
Software

Processes & Threads

@openstem
Processes & Threads
Flashcards9 cards
What is the primary role of an operating system?1 / 9
The OS manages hardware resources (CPU, memory, storage, devices) on behalf of programs and provides a clean abstraction layer — processes, files, sockets — so applications don't program hardware directly.
Software

OS Fundamentals

@openstem
OS Fundamentals
Flashcards9 cards
What is a race condition?1 / 9
A bug where the program's correctness depends on the non-deterministic timing/interleaving of concurrent operations on shared mutable state — e.g. two threads incrementing a counter without synchronization can lose updates. Prevented with locks, atomics, or avoiding shared mutability.
Software

Fundamentals

@openstem
Fundamentals
Flashcards9 cards
What is the difference between a process and a thread?1 / 9
A process is an independent program with its own memory space, file handles, and resources. Threads within a process share the same memory and resources but have their own stack, registers, and program counter. Processes are isolated; threads are lightweight peers within a process.
Software

Threads & Processes

@openstem
Threads & Processes
Flashcards10 cards
What is the difference between authentication and authorization?1 / 10
Authentication (authn) verifies WHO you are (login, credentials). Authorization (authz) determines WHAT you are allowed to do (permissions, roles). Authentication always comes first.
Software

Authentication & Authorization

@openstem
Authentication & Authorization
Flashcards10 cards
What three properties make up the CIA triad?1 / 10
Confidentiality (only authorized parties can read data), Integrity (data isn't tampered with undetected), and Availability (systems and data are accessible when needed). It's the core model for evaluating security.
Software

Security Fundamentals

@openstem
Security Fundamentals
Flashcards10 cards
What is the difference between a Docker image and a container?1 / 10
An image is an immutable, layered template (the blueprint). A container is a running (or stopped) instance of an image with its own writable layer. One image → many containers, like a class → objects.
Software

Docker

@openstem
Docker
Flashcards10 cards
What problem does Docker Compose solve?1 / 10
Compose defines and runs multi-container applications from a single YAML file. Instead of many `docker run` commands, you declare services, networks, and volumes once and start them all with `docker compose up`.
Software

Docker Compose Fundamentals

@openstem
Docker Compose Fundamentals
Flashcards10 cards
What is the test pyramid?1 / 10
A guideline for test distribution: many fast, cheap unit tests at the base, fewer integration tests in the middle, and few slow, brittle end-to-end tests at the top. It optimizes for fast feedback and maintainability.
Software

Test Types

@openstem
Test Types
Flashcards10 cards
What is Test-Driven Development (TDD)?1 / 10
Write a failing test first (Red), write the minimal code to pass it (Green), then improve the design (Refactor) — repeat. It drives design from requirements and creates a safety net for refactoring.
Software

Practices

@openstem
Practices
Flashcards10 cards
What is a software design pattern?1 / 10
A reusable, named solution to a recurring design problem in a given context. A pattern is not a finished piece of code but a template/blueprint describing how to structure classes and objects to solve the problem.
Software

Pattern Fundamentals

@openstem
Pattern Fundamentals
Flashcards10 cards
What is the Singleton pattern and what is its main drawback?1 / 10
Ensures a class has only one instance with a global access point. Useful for shared resources (config, logging) but is often an anti-pattern: it introduces global state, hides dependencies, and makes unit testing harder (hard to mock/reset).
Software

Creational Patterns

@openstem
Creational Patterns
Flashcards10 cards
What is Inversion of Control (IoC) in Spring?1 / 10
Instead of objects creating their own dependencies, the Spring IoC container creates and injects them. This decouples components, centralizes wiring, and makes testing easy (inject mocks). Dependency Injection is the mechanism that implements IoC.
Software

Core & Dependency Injection

@openstem
Core & Dependency Injection
Flashcards9 cards
Which files does Spring Boot read external configuration from by default?1 / 9
application.properties or application.yml on the classpath (and config locations). Spring Boot binds these values into beans and supports profile-specific variants like application-dev.yml.
Software

Configuration & Properties

@openstem
Configuration & Properties
Flashcards9 cards
What is sound null safety in Dart?1 / 9
Types are non-nullable by default; you must explicitly opt in with `?` (e.g. String?) to allow null. The compiler guarantees a non-nullable variable can never be null, eliminating null-reference errors at compile time. Introduced in Dart 2.12 and made mandatory (no opt-out) in Dart 3.0.
Software

Language Basics

@openstem
Language Basics
Flashcards9 cards
How are optional named parameters declared in a Dart function?1 / 9
They are wrapped in `{ }` in the signature, e.g. `void f({int x = 0})`. Callers pass them by name, and each may have a default or be marked `required`.
Software

Control Flow & Functions

@openstem
Control Flow & Functions
Flashcards10 cards
What does 'everything is a widget' mean in Flutter?1 / 10
The entire UI is built from widgets — not just buttons and text, but also layout (Row, Column, Padding), styling, and even the app itself. Widgets are immutable descriptions of part of the UI; Flutter builds a tree of them and renders it.
Software

Widgets & State

@openstem
Widgets & State
Flashcards10 cards
How do you declare a variable whose type is inferred in Dart?1 / 10
Use `var` (mutable) or `final` (single assignment) and let Dart infer the type from the initializer, e.g. `var count = 0;` infers `int`.
Software

Dart for Flutter

@openstem
Dart for Flutter
Flashcards10 cards
What is the difference between SSR, SSG, and ISR in Next.js?1 / 10
SSR (Server-Side Rendering) renders HTML per request. SSG (Static Site Generation) renders at build time, serving static HTML. ISR (Incremental Static Regeneration) serves static pages but regenerates them in the background after a revalidation interval — combining SSG speed with fresh data.
Software

Rendering & Routing

@openstem
Rendering & Routing
Flashcards10 cards
What is Next.js?1 / 10
A React framework for building full-stack web apps. It adds file-based routing, server rendering, data fetching, bundling, and a build/deploy toolchain on top of React.
Software

Next.js Fundamentals

@openstem
Next.js Fundamentals
Flashcards8 cards
What are the building blocks of a NestJS application?1 / 8
Modules (organize related code), Controllers (handle incoming requests and routing), and Providers/Services (business logic, injectable). Nest wires them via a built-in dependency injection container — a structured, Angular-inspired architecture.
Software

Architecture

@openstem
Architecture
Flashcards8 cards
Which decorator maps a GET request to a controller method?1 / 8
`@Get()` — placed on a controller method, optionally with a path segment like `@Get(':id')`. Sibling decorators include @Post, @Put, @Patch, and @Delete.
Software

Decorators & Routing

@openstem
Decorators & Routing
Flashcards10 cards
What is MongoDB's data model?1 / 10
A document database: data is stored as flexible, JSON-like documents (BSON) grouped into collections. Documents in a collection need not share the same schema. Maps naturally to objects in code — no joins/normalization required for nested data.
Software

Documents & Queries

@openstem
Documents & Queries
Flashcards10 cards
What does the $inc update operator do?1 / 10
It increments (or decrements with a negative value) a numeric field by the given amount, creating the field at that value if it doesn't exist.
Software

CRUD & Operators

@openstem
CRUD & Operators
Flashcards10 cards
What is MVCC in PostgreSQL?1 / 10
Multi-Version Concurrency Control: readers never block writers and writers never block readers, because each transaction sees a consistent snapshot. Updates create new row versions rather than locking; old versions are cleaned up by VACUUM.
Software

Postgres Features

@openstem
Postgres Features
Flashcards10 cards
What command connects to a PostgreSQL database interactively?1 / 10
`psql -U <user> -d <database>` opens the interactive SQL terminal. Inside, `\dt` lists tables, `\d table` describes one, and `\q` quits.
Software

PostgreSQL Basics

@openstem
PostgreSQL Basics
Flashcards10 cards
What is Amazon S3 and what is its core abstraction?1 / 10
S3 (Simple Storage Service) is object storage — you store files ('objects') in 'buckets', accessed by key over HTTP. It's highly durable (11 nines), scalable, and used for static assets, backups, data lakes, and static website hosting. Not a filesystem — there are no real folders.
Software

Core Services

@openstem
Core Services
Flashcards10 cards
What does 'elasticity' mean in cloud computing?1 / 10
Elasticity is the ability to automatically scale resources up or down to match demand, so you provision capacity dynamically instead of buying for peak load.
Software

Cloud Fundamentals

@openstem
Cloud Fundamentals

We use privacy-friendly product analytics (no session recording, PII masked) to improve OpenStem. Load analytics? Privacy Policy