Code organized around a clear responsibility, implemented as functions, a file, or several files, collaborating through defined interfaces.
Knowledge index
Find the exact section you need. The reading path and project lab share the same knowledge.
Term explained · 96
Tap a dotted-underlined term for an explanation, then follow its link to the source section.
How closely work inside a module belongs together. High cohesion groups work serving a focused responsibility and related reasons for change.
The degree of dependency between modules. Low coupling reduces reliance on another module's internals through clear, stable contracts.
A module's public calling contract: inputs, outputs, errors, and synchronous or asynchronous behavior. Replacements must preserve it.
A memorable Internet name, usually registered for a renewable period. DNS supplies its records, while hosting runs the website.
A provider handling domain registration, renewal, and transfers. DNS can be hosted separately; compare renewal and multi-year costs.
A server answering DNS queries. Setting authoritative nameservers at a registrar delegates the domain's DNS to those servers.
A typed DNS entry: A/AAAA identify addresses, CNAME refers to a hostname, MX identifies mail servers, and TXT can carry verification data.
A provider of DNS, website proxying, and developer services. DNS-only records resolve names; proxying routes supported website traffic through its network.
Distributed infrastructure that delivers content and can cache reusable resources. Personalized data and authenticated responses need appropriate cache rules.
HTTP protected by TLS for encrypted transport and server identity verification. With a proxy, check both client-to-proxy and proxy-to-origin connections.
A secure gateway applying DNS, network, and HTTP policies to connected devices' traffic, useful for Internet filtering after traffic is connected.
An outbound connection established by cloudflared that lets Cloudflare reach a service on your infrastructure. The application and connector must stay running.
An application access service enforcing policies such as user identity. It can accompany Tunnel and needs explicitly configured access rules.
Cloudflare's application platform for static assets and server-side logic, with framework compatibility and runtime allowances to check.
A runtime model where the platform manages underlying server resources. Developers still own code, data, access, runtime constraints, and usage costs.
Storage that saves and retrieves file-like data by object identifiers, useful for images, attachments, and backups. Cloudflare R2 is one example.
A platform for website builds, deployment, and previews, including server-side capabilities. Check runtime constraints and plan eligibility.
A deployment environment for reviewing changes before production. Data and secret isolation still depend on its configuration.
Named configuration supplied through an environment, such as an API address. Values shipped to browser code are public; a variable name cannot protect secrets.
A platform offering application runtimes such as Machines for APIs and background processes, with compute, storage, and network resource charges.
An image packages a program and dependencies; a container runs it. Platforms can also start VMs from images. Persistent data requires separate planning.
Storage for data that must survive deployments. Fly Volumes have region and host constraints, do not automatically replicate between volumes, and do not replace backups.
A response-header mechanism telling browsers which origins may read responses, often needed for separate frontend and API domains. It does not replace API authentication.
Strictly the Linux kernel; everyday usage often means a complete distribution built around it with tools and repositories.
The core system component managing resources such as processes, memory and devices. It is not the graphical desktop.
Software that helps an operating system work with hardware. Check support for essential devices before changing systems.
An installable system combining a kernel, tools, installer and repositories, with its own versions, defaults and support lifecycle.
A tool for installing, updating and removing packages and handling dependencies. Tools and repositories differ across distributions.
A virtual computer running on a host, with a guest system on a dedicated virtual disk. Shared folders and device passthrough change its isolation boundary.
An image of installation media. Match architecture and verify origin and integrity; copying it onto an ordinary USB usually does not make that USB bootable.
A tool for multi-image boot media. After initializing a USB, copy supported ISOs and select them at boot. Initial installation formats the target media.
A firmware interface used before the OS loads, including initialization and boot selection. Its Secure Boot feature concerns trust checks for boot components.
A logical disk region that may hold system, user or boot data. Whole-disk erasure affects all partitions on the selected disk.
Structures and rules that organize files, directories and related information. Formatting creates a file system and can destroy existing data.
A processor that executes program instructions. Speed depends on cores, clock rate and workload, not a single number.
Working space for running programs, usually lost without power. It is not the disk that keeps files.
Longer-term storage for files. A file on disk does not imply that unsaved changes in a program have been written to it.
The process of initializing hardware, finding a boot target and loading the operating system. An app failing to open is not necessarily a boot failure.
System software that manages processes, files and hardware resources, such as Windows, macOS or Linux.
A running instance of a program. One application can use several processes; closing a window may leave background work running.
Several tasks making progress over a period of time, possibly by taking turns rather than running simultaneously.
Instructions that process inputs into results using explicit rules. AI-generated code still needs to be run and checked.
A way to express program rules. Choose based on the environment, ecosystem and existing project, not syntax alone.
A name used to refer to data in a program; its value may change as actions occur.
A test that decides which behavior to execute, such as whether a price is below a budget.
Repeating steps over items or while a condition holds, with a defined stopping condition.
Reusable processing that can accept inputs, return a result and sometimes produce side effects.
Information a program holds at a particular moment, such as whether a task is complete; changes need to be reflected in the interface.
An action or change, such as a button click. A program can react to an event by changing state; the event and state are distinct.
An interface for interacting with tools through text commands. Results also depend on the working directory and runtime environment.
The tools and environment needed to execute code. Versions and missing dependencies can change behavior.
An external library or tool a project needs. Track versions so the environment can be reproduced.
Version-control software for recording changes, comparing differences and recovering versions. It does not automatically verify correctness.
An identifiable state of code or a tool. Saving a version and testing its behavior complement rather than replace each other.
A unit of data sent over a network. Protocols specify how devices organize, send and handle it.
An address identifying a network interface on an IP network. It does not by itself identify which service should handle a request.
A number distinguishing network services on a device. After finding the IP, a client still needs the right listening port.
Wireless access to a local network. Being connected to Wi-Fi does not guarantee access to the internet.
A device connecting networks and choosing the next hop for traffic. Home routers often also provide Wi-Fi and address translation.
A system mapping names such as domains to network records. Record changes can be affected by caches and propagation time.
An application protocol for requests and responses between clients and servers; HTTPS adds encryption and authentication in transit.
The interface and interaction logic a user sees and operates. Browser code must not hold secret API keys.
Server-side software handling business logic, permissions or data. An API is an interaction contract, not the backend itself.
A number in an HTTP response describing the outcome category, such as success, not found or server error; details require the response and logs.
Placing a runnable program and its configuration in a target environment so intended users can access it.
Computing resources or software maintained by a provider and used over a network. Hosting does not remove responsibility for cost, access or data security.
A text format for structured data using objects, arrays and basic values. Valid syntax does not guarantee valid business data.
Storage such as localStorage lets the same browser and origin restore saved data after a reload. It is not account sync or a permanent backup.
A system for managing, querying and updating data, with deliberate choices about structure, access and backups.
Create, read, update and delete: four common data operations for translating interface requirements into data behavior.
A language for relational database queries and data operations. Different databases do not necessarily support identical SQL features.
An auxiliary data structure maintained for queries. It can speed up lookups at the cost of space and maintenance.
Multiple machines cooperating on data or tasks, with communication, failures and consistency to handle.
Processing work simultaneously. Splitting, transferring and combining work has overhead, so more machines are not always faster.
Stored reusable results that avoid repeated work. Define expiration or updates to prevent stale reads.
Using events and metrics to answer questions; data quality, measurement definitions and privacy boundaries affect conclusions.
The ability to adapt as users, data or work increase. Measure the bottleneck before choosing how to scale.
Adjusting model parameters from examples to make predictions or perform tasks; results depend on data and evaluation.
A model structure made of adjustable layers of computation, not a neuron-by-neuron copy of a human brain.
A model that learns patterns in data such as text and generates tokens in context. Fluent output does not guarantee factual accuracy.
Running a trained model on inputs to produce outputs, distinct from training and not a guarantee of factual verification.
Information available for a model's current task. Capacity is limited, so important requirements should be clear, relevant and current.
Plausible-looking output that is false or unsupported and needs checking against sources and actual behavior.
A system that can use tools across multiple steps toward a task. Define permissions, confirmation points and stopping conditions rather than assuming unlimited autonomy.
Comparing outcomes on tasks representative of actual needs with explicit criteria, not just model names, marketing or one demonstration.
Additional processing for complex tasks can increase latency and cost without guaranteeing correctness.
Maintained project facts, constraints and acceptance criteria that help AI understand the current work without treating old guesses as new facts.
Task instructions and context for AI, covering goals, current state, boundaries and expected results—not a formula that guarantees success.
Observable conditions for deciding whether a requirement is complete, including normal behavior, errors and existing behavior that must remain intact.
Steps covering triggers, inputs, processing, outputs and failure handling, best validated on a small scale before automatic execution.
The browser's object representation of a page's structure, which scripts can inspect and modify—not the pixels in a screenshot.
An interaction interface defining inputs, outputs and calling conventions. Use it with its authorization, limits and error-handling contract.
Turning raw content into structured data, handling and validating layout changes, missing fields and malformed input.
Controlling a browser by locating elements, waiting for page states and performing actions rather than guessing readiness with fixed delays.
Repeating an operation does not create additional unintended effects, especially important before retrying sends, writes or charges.
72 matching sections
Inside the case: a few different jobs
Free disk space is not the same as available memory for running applications.
Power on: a chain of handoffs
Report which screen you reached, the exact message, and what changed beforehand.
The operating system coordinates the work
Give AI your operating system when asking for instructions, and distinguish a file from a running process.
From stored code to a running program
Seeing a change and saving a change are two separate things to check.
Slowdowns, scheduling, and restarting
Record when the issue occurs, what it affects, and which actions change it.
What does reinstalling actually replace?
A reinstall replaces an environment. Identify the destination and the data you must preserve first.
Special software between applications and hardware
The kernel is not the desktop. System software provides shared capabilities and access boundaries.
From batches of jobs to interactive computing
Operating systems evolved by turning repeated machine-management work into shared software.
Why learn Linux when working with AI?
Linux is a useful environment for AI-assisted programming, not a requirement for every person or task.
Distribution families: packaging and maintaining a system
Check the family, version and support status. Linux is not one fixed installation package.
Arch, Gentoo and SUSE: different choices, not ranks
Your first choice reduces learning variables. Explore other maintenance models when they serve your curiosity.
Your first real installation: use a virtual machine
A VM does not need Ventoy. Confirm that you are installing into a new virtual disk.
ISO, architecture and verification
Check the source, support status, architecture and integrity before installation.
Ventoy: one USB drive, several installation images
Initializing Ventoy affects the USB. Installing the system requires a second, separate disk check.
A spare PC installation, with clear stopping points
Do not confirm a write until you can explain the destination and the recovery plan.
Prove that the installed system works
Verify the boot source, system identity and persistent files rather than relying on appearances.
Let AI coach you, not choose what to erase
AI can improve understanding and execution. You still own the boundaries, authorization and verification.
A program needs precise steps
Start with concrete inputs and expected results.
Why are there different languages?
Define the goal and environment before selecting an implementation language.
Variables, conditions, and loops
Trace code with a concrete input instead of guessing its behavior.
A programming habit: compose logic before syntax
Practice defining rules and tracking data changes, then use syntax to express that logic precisely.
Functions and data structures
Ask how the data is organized before asking for a line-by-line syntax lesson.
High cohesion, low coupling
Cohesion concerns related work inside a module; coupling concerns dependencies between modules.
Build with LEGO-like pieces: matching connections enable reuse
Give a module a focused job and explicit inputs and outputs, then check that a new use accepts its rules.
How does source code run?
For a startup problem, report the system, project directory, command, and full error.
Combine existing tools and keep versions
Writing code is only part of the job. Running it, inspecting changes, and checking behavior matter too.
Start with a connection and small packets
Networked programs need waiting and failure behavior as well as a successful path.
IP addresses and local switching
First distinguish your local network from other networks; protocol details can come later.
Ports: which service is listening?
Keep the full address and startup output, including the port, when reporting connection problems.
Wi-Fi changes the medium, not the whole story
Connected to Wi-Fi means one part of the connection is working.
Routers connect networks
When asking whether a service is reachable, say from which device and network.
Domains and DNS: names for addresses
Provide the full URL instead of saying only “that website.”
A request goes out, a response comes back
Ask what was requested, what came back, and how the interface handled it.
Forms and status codes
Report evidence and leave the cause open to investigation.
Make your project reachable
Check both “I can open it” and “the intended user can use it.”
Deciding what a provider manages
Choose services from the actual requirements of your first version.
Separate the roles: names, records, runtimes, and data
Identify each service's responsibility before deciding which ones your project needs.
Buying a domain: NameSilo, Cloudflare, and comparison tools
Compare extensions, renewals, and total holding cost rather than giving registrars a permanent price ranking.
DNS hosting: buy at NameSilo, configure at Cloudflare
Changing nameservers changes DNS hosting; transferring registration is a separate operation.
Cloudflare: DNS, orange clouds, CDN, and HTTPS
DNS hosting and website proxying are separate settings; orange-cloud proxying brings the relevant website traffic through Cloudflare.
Gateway: control what connected devices access
Gateway focuses on connected devices' Internet policies: connect traffic, then configure and verify the rules.
Tunnel and Access: reach an internal service, then control entry
Tunnel supplies connectivity, Access supplies entry policies, and your chosen machine still runs the application.
More Cloudflare services: code, files, and bot checks
Choose Cloudflare capabilities by the job: running code, storing data, controlling access, or reducing abuse.
Vercel: build, preview, and publish a frontend
Vercel connects builds, previews, and releases; verify configuration, runtime limits, and plan eligibility.
Fly.io: a configurable runtime for a backend
Plan backend runtime, persistent data, availability, and ongoing costs together.
Connect the pieces with a verifiable launch plan
Test the request path and include data, access, rollback, and costs in the deployment brief.
Files: TXT, CSV, and JSON
When asking to save data, specify where, for how long, and who can access it.
A system for organizing and querying
Sketch the fields and relationships before choosing a storage solution with AI.
Create, read, update, delete
Distinguish filtering, updating, and deleting in your requirements.
Tables and other ways to organize information
Explain what data exists, how it relates, and how you usually query it before choosing a database.
Indexes: faster lookup with a cost
Measure performance rather than adding technology in response to a vague feeling of slowness.
Split data and work when one machine isn't enough
Identify the single-machine limitation before introducing a distributed design.
Divide, process, and combine
Consider both parallelizable work and coordination overhead.
Fast search does much of its work in advance
For repeated queries, consider preparation and caching before adding machines.
Analytics starts with a question
Define the question before deciding which events to collect.
When should a small project care about scale?
Spend complexity on a problem you have actually established.
Learning adjusts a model using examples
Evaluate models on real tasks and unseen examples.
Layers of adjustable calculations
Think of a neural network as a trainable computational structure, not a tiny human brain.
Language models process and generate tokens
Understand tokens as processing units; use the relevant tokenizer for exact counts.
From your message to inference and tools
Separate generated claims from actions that tools actually performed.
Context limits and plausible mistakes
Provide key constraints explicitly and verify important results independently.
One model, different working environments
Find out what the assistant can actually see and do.
Choose for the task, not just the name
Use your own task to evaluate a model.
More processing for some difficult problems
More computation doesn't replace missing information or acceptance conditions.
Maintain a concise project note
A handoff should explain the present state and next action, not repeat the entire past.
A brief: goal, context, constraints, and checks
Professionalism comes from precise information and checkable results, not jargon.
Turn repeated actions into a workflow
Describe the workflow and output criteria before choosing tools.
Understand the application you're working with
Find the source of the data before automating the interface.
APIs and pages have different boundaries
The access method affects reliability and maintenance.
Extract fields you can validate
Treat extracted content as data that still needs validation.
Act on observable page states
Check the result of an automated action, not just that the action happened.
Scripts, agents, and safe repetition
Describe successful, failed, and repeated execution in a professional automation brief.