Visual Encyclopedia

Tech 101: The Visual Cheat Sheet Guide to Hardware, Software, and the Web

Eighteen single-page cheat sheets, each a standalone map for one topic. Every sheet follows the same anatomy: a core concept in one sentence, a defining diagram, plain-English vocabulary, exactly what to type, and the classic beginner mistakes. Flip straight to what you need — no cramming required.

Part 1 · The Bare Metal (Hardware & Systems)

Part 2 · The Connected World (Internet & Networking)

Part 3 · Speaking to Machines (Software Development)

Part 4 · Building Together (Version Control)

Part 5 · Shipping It (DevOps & Lifecycle)

Part 1

The Bare Metal — Hardware & Systems

01

Inside the Box

The physical parts of a computer, and what each one actually does.

Vocabulary

  • CPU (Processor) — the chip that executes instructions; every calculation your computer does happens here.
  • RAM (Memory) — fast, temporary workspace. Wiped clean when the power goes off.
  • Motherboard — the main circuit board that connects every component together.
  • SSD / HDD (Storage) — permanent storage for files and programs. Survives power-off.
  • GPU (Graphics) — a specialist chip for drawing pixels and doing many small calculations at once.

Rule of Thumb

No commands on this sheet — just remember the metaphor:

RAM = your desk (fast, small, cleared every night).
SSD = your filing cabinet (slower, huge, permanent).
CPU = you, doing the work.
GPU = a hundred interns doing tiny tasks in parallel.

Common Mistakes

  • Confusing memory (RAM — temporary workspace) with storage (SSD — permanent filing cabinet).
  • Assuming more RAM makes everything faster — it only helps when you were running out of it.
  • Calling the whole tower "the CPU." The CPU is one small chip inside the case.
↑ Back to contents
02

Operating Systems 101

The core software that manages the hardware and provides services to every app you run.

Vocabulary

  • Operating System (OS) — the manager software that runs everything else: Windows, macOS, or Linux.
  • Kernel — the innermost core of the OS. Talks directly to hardware and shares it out fairly.
  • Process Management — the OS juggling dozens of running programs so each gets a turn on the CPU.
  • UI / GUI — the visual layer (windows, icons, cursor). Just one part of the OS, not the whole thing.

The Big Three

Windows — most common on desktops; software runs everywhere.
macOS — Apple hardware only; Unix underneath, which developers like.
Linux — free and open source; runs most of the world's servers.

All three do the same core job: manage hardware, run processes, organize files.

Common Mistakes

  • Thinking the OS is the visual interface. The desktop is the skin — the OS is the manager of all hardware resources.
  • Believing an app "crashed the computer." Usually the OS killed the app to protect everything else.
  • Assuming software written for one OS runs on another — programs are built per-OS unless designed otherwise.
↑ Back to contents
03

File Systems & Paths

How data is organized on a drive, and how to write an address that points to any file.

Vocabulary

  • Directory — a folder. A container that holds files and other directories.
  • Root — the very top of the tree: / on macOS/Linux, C:\ on Windows.
  • Absolute Path — full directions from the root: /home/ada/notes.txt. Works from anywhere.
  • Relative Path — directions from where you are now: ./notes.txt or ../other/file.txt.
  • File Extension — the suffix (.txt, .py, .html) that hints at what's inside.

Path Shorthand

# the special path symbols
/        # root of the whole drive
~        # your home directory
.        # the directory you are in now
..       # one directory up
./x      # x, inside the current dir
../x     # x, in the parent dir

Common Mistakes

  • Using spaces in file names — my file.txt breaks commands. Use my-file.txt or my_file.txt.
  • Mixing up relative (./folder) and absolute (/usr/folder) paths — the leading / changes everything.
  • Forgetting that macOS/Linux paths are case-sensitive: Notes.txt and notes.txt are different files.
↑ Back to contents
04

Command Line Interface (CLI) Survival Guide

Navigating and controlling your computer purely through text commands.

Vocabulary

  • Terminal — the window/app where you type commands.
  • CLI — Command Line Interface: controlling the computer with text instead of clicks.
  • Prompt — the text (often ending in $ or %) that means "type your next command."
  • Flags / Arguments — extras after a command: flags change behavior (-la), arguments say what to act on (cd projects).

Commands

pwd            # where am I?
ls             # list files here
cd projects    # move into a folder
cd ..          # move up one level
mkdir site     # make a new folder
cp a.txt b.txt # copy a file
rm old.txt     # delete — permanently!

Common Mistakes

  • rm deletes permanently — there is no recycle bin on the command line.
  • Typing paths with the wrong case on Linux/macOS — the shell is case-sensitive.
  • Panicking at a blank screen. No output after a command usually means success.
↑ Back to contents
Part 2

The Connected World — Internet & Networking

05

Internet Anatomy

The physical and logical infrastructure that connects the world's networks together.

Vocabulary

  • ISP — Internet Service Provider: the company you pay for your connection.
  • Router — a device that reads each packet's address and forwards it one hop closer.
  • Data Packet — a small chunk of your data with a destination address stamped on it.
  • TCP/IP — the shared rulebook: IP addresses and routes packets; TCP checks they all arrived and reassembles them.
  • Bandwidth — how much data can flow per second (the width of the pipe, not the speed of light in it).

Commands

ping example.com
# "are you there?" — sends a tiny packet
# and times the round trip

traceroute example.com
# show every router hop on the way

Common Mistakes

  • Confusing the Internet (the physical network of networks) with the World Wide Web (the pages that ride on top of it).
  • Thinking data travels as one big file — it's chopped into thousands of independent packets.
  • Blaming "the wifi" for everything. Wifi is only the last few meters; the problem is often further along the chain.
↑ Back to contents
06

The Web & DNS

How typing a name like "google.com" turns into a web page on your screen.

Vocabulary

  • HTTP / HTTPS — the language browsers and servers speak. The S means the conversation is encrypted.
  • DNS — Domain Name System: the phonebook that maps readable names to IP addresses.
  • URL — the full address: https://site.com/page?q=hi (protocol + domain + path + query).
  • IP Address — the numeric address of a machine, like 142.250.4.101.
  • Browser — the app that sends requests and turns the HTML/CSS/JS answer into pixels.

Anatomy of a URL

https://code.hibot.space/learn.html?tier=2
└protocol └domain (DNS looks this up)
          └path on the server
                     └query string

Common Mistakes

  • Forgetting DNS is just a phonebook — when a site "doesn't exist," it's often a name-lookup problem, not the site being down.
  • Ignoring the difference between HTTP and HTTPS — never type passwords into a plain-HTTP page.
  • Thinking the browser "contains" the web. It's only a viewer; everything lives on servers.
↑ Back to contents
07

Servers & Web Hosting

Dedicated computers that hold files and hand them to any client that asks.

Vocabulary

  • Server — a computer whose job is to answer requests. Physical, not magical.
  • Client — any device asking for something: your browser, your phone, another server.
  • Web Host — a company that rents you space on their servers so your site is always online.
  • Port — a numbered door on a server: 80 for HTTP, 443 for HTTPS, 22 for SSH.
  • Localhost — your own machine acting as a server, reachable at 127.0.0.1.

Hosting Flavors

Static hosting
# pre-made files served as-is
# (GitHub Pages, Netlify, Vercel)

Dynamic hosting
# a program builds each response
# (Railway, a VPS, the cloud)

python3 -m http.server 8000
# your laptop is now a web server
# visit http://localhost:8000

Common Mistakes

  • Thinking servers are magical clouds — they're physical computers sitting in racks in a data center.
  • Sharing a localhost link with a friend. Localhost means your machine; it only works for you.
  • Forgetting the port — if a server listens on 8000, plain http://localhost won't reach it.
↑ Back to contents
Part 3

Speaking to Machines — Software Development

08

Programming Logic & Syntax

The building blocks used to write instructions in any programming language.

Python

def greet(name):
    if len(name) > 0:
        return "Hi, " + name
    return "Hi, stranger"

for n in ["Ada", "Lin"]:
    print(greet(n))

JavaScript

function greet(name) {
  if (name.length > 0) {
    return "Hi, " + name;
  }
  return "Hi, stranger";
}
for (const n of ["Ada", "Lin"]) {
  console.log(greet(n));
}
Same logic, two languages. The ideas transfer; only the punctuation changes.

Vocabulary

  • Variable — a named box that holds a value: score = 10.
  • Function — a reusable, named block of instructions you can call with inputs.
  • Loop — "repeat this block" — for each item, or while a condition holds.
  • Conditional (if/else) — "do this only when that is true; otherwise do something else."
  • Syntax — the grammar rules of the language. Break them and the code won't even start.

The Universal Pattern

if (x > 5) { doSomething(); }

# every language has some form of:
#   store data      → variables
#   make decisions  → if / else
#   repeat work     → loops
#   name and reuse  → functions

Common Mistakes

  • Syntax errors: a missing semicolon, quote, bracket, or (in Python) wrong indentation stops everything.
  • Infinite loops — a while whose condition never becomes false runs forever.
  • Confusing = (assign a value) with == (compare two values).
↑ Back to contents
09

Data Structures Basics

How data is grouped and stored in memory so programs can use it efficiently.

Vocabulary

  • Array / List — an ordered row of values, addressed by number (index), starting at 0.
  • Object / Dictionary — a collection of key → value pairs, addressed by name.
  • String — text in quotes: "hello".
  • Integer — a whole number: 42.
  • Boolean — exactly true or false. Powers every if/else.

Code

// array: ordered, indexed from 0
let arr = [1, 2, 3];
arr[0]            // 1  (not 2!)
arr.length        // 3

// object: labeled values
let user = { name: "Ada", age: 36 };
user.name         // "Ada"

Common Mistakes

  • Off-by-one errors — indexes start at 0, so the last item of a 3-item array is arr[2].
  • Using an array when data has names (use a dictionary) or a dictionary when order matters (use an array).
  • Comparing a string to a number: "5" and 5 are different things in most languages.
↑ Back to contents
10

The Developer Toolkit

The specialized software developers use to write, inspect, and fix code.

Vocabulary

  • IDE — Integrated Development Environment (like VS Code): editor + terminal + debugger in one app.
  • Text Editor — a plain-text writing tool. Code must be plain text — no fonts, no formatting.
  • Debugger — a tool that pauses your program mid-run so you can inspect variables line by line.
  • Syntax Highlighting — coloring code by meaning so mistakes jump out visually.

Starter Kit

Editor: VS Code (free, everywhere).
Extensions: add language support, linters, and themes from the built-in marketplace.
Terminal: use the one inside the IDE — same folder as your code.
Try one online first: the Hi Bot editor runs in your browser, nothing to install.

Common Mistakes

  • Writing code in rich-text editors like MS Word — smart quotes and hidden formatting break code.
  • Forgetting to save the file before running it — you keep running the old version.
  • Debugging with a wall of print statements when the debugger could show you everything in one pause.
↑ Back to contents
11

Frontend vs. Backend

The split between what users see and the server-side logic that makes it work.

Vocabulary

  • Frontend — everything rendered in the user's browser: layout, styling, interactivity.
  • Backend — the code running on servers: business logic, databases, authentication.
  • Full-Stack — a developer (or app) that spans both sides.
  • Client-Side — code that executes on the visitor's device.
  • Server-Side — code that executes on the server before a response is sent.

Who Does What

Frontend
HTML  # structure  (the skeleton)
CSS   # style      (the outfit)
JS    # behavior   (the muscles)

Backend
Python/Node  # the logic
Database     # the memory
Server       # the venue

Common Mistakes

  • Calling HTML and CSS "programming languages" — they're markup and styling languages (no logic, no loops).
  • Putting secrets (API keys, passwords) in frontend code — anyone can read client-side source.
  • Trusting client-side validation alone — the backend must re-check everything users send.
↑ Back to contents
12

APIs — Application Programming Interfaces

The rules and endpoints that let different software systems talk to each other.

Vocabulary

  • API — a published contract for how one program can ask another for things.
  • Endpoint — one specific URL you can call, like /v1/weather.
  • JSON — the standard package format: readable text of keys and values.
  • REST — the most common API style: URLs name things, HTTP methods say what to do to them.
  • HTTP MethodsGET read · POST create · PUT update · DELETE remove.

Code

// call an API from JavaScript
fetch('https://api.example.com/data')
  .then(r => r.json())
  .then(data => console.log(data))
  .catch(err => showError(err));

# or from the command line
curl https://api.example.com/data

Common Mistakes

  • Not handling failures — networks are slow and flaky; code must plan for errors and timeouts.
  • Ignoring status codes: 200 OK, 404 not found, 500 server error — they tell you what went wrong.
  • Putting an API key in frontend code where anyone can copy it.
↑ Back to contents
Part 4

Building Together — Version Control

13

Git Fundamentals

Tracking every change to your code locally, so you can always go back.

Vocabulary

  • Repository (Repo) — a project folder that Git is watching, history included.
  • Commit — one saved snapshot of your project, with a message saying what changed.
  • Staging Area — the "on deck" zone: only staged changes go into the next commit.
  • Version Control — the general practice of recording every change so nothing is ever lost.

Commands

git init            # start tracking this folder
git status          # what changed? what's staged?
git add .           # stage everything
git commit -m "add login page"
git log             # show the snapshot history

Common Mistakes

  • Forgetting to stage (git add) before committing — the commit comes out empty or partial.
  • Commit messages like "stuff" or "fix" — future-you needs to know what changed and why.
  • Giant commits mixing five unrelated changes — commit one logical change at a time.
↑ Back to contents
14

Branching & Merging

Working on several features at once without breaking the main project.

Vocabulary

  • Branch — a parallel line of development; changes there don't touch anything else.
  • Main / Master — the trunk line: the version that should always work.
  • Merge — folding one branch's commits into another.
  • Merge Conflict — two branches edited the same lines; Git asks a human to choose.

Commands

git branch feature/login   # create
git checkout feature/login # switch to it
# ...commit your work...
git checkout main          # back to trunk
git merge feature/login    # fold it in

Common Mistakes

  • Working directly on main instead of a feature branch — one bad commit breaks everyone.
  • Fearing merge conflicts — they're normal. Git marks the disputed lines; you pick, save, commit.
  • Letting a branch live for weeks — the longer it drifts from main, the uglier the merge.
↑ Back to contents
15

GitHub & Collaboration

Syncing your local Git history to the cloud so a team can build together.

Vocabulary

  • Remote — a copy of the repo hosted elsewhere (usually GitHub), nicknamed origin.
  • Clone — download a full copy of a remote repo, history and all.
  • Push / Pull — send your commits up / fetch everyone else's down.
  • Pull Request (PR) — "please review and merge my branch" — where code review happens.
  • Fork — your own copy of someone else's repo, to change freely.

Commands

git clone https://github.com/user/repo.git
git pull              # get latest first
git push origin main  # share your commits
# then open a Pull Request on github.com

Common Mistakes

  • Confusing Git (the local engine on your machine) with GitHub (the cloud hosting platform).
  • Pushing without pulling first — if the remote moved on, your push is rejected.
  • Committing secrets (API keys, passwords) — once pushed, treat them as leaked and rotate them.
↑ Back to contents
Part 5

Shipping It — DevOps & Lifecycle

16

The Software Development Life Cycle (SDLC)

The structured phases of planning, building, and maintaining software — forever.

Vocabulary

  • SDLC — the six-phase cycle: plan → design → develop → test → deploy → maintain.
  • Agile — working in short loops (sprints), shipping small pieces and adjusting.
  • Waterfall — the older style: finish each phase completely before the next begins.
  • Sprint — one short Agile cycle, usually 1–2 weeks.
  • Requirements — the agreed list of what the software must do, written before building.

What Each Phase Asks

Plan — what problem, for whom, why?
Design — what will it look like and how will it be structured?
Develop — write the code.
Test — does it actually work?
Deploy — put it in front of real users.
Maintain — fix, improve, repeat.

Common Mistakes

  • Skipping planning and design and jumping straight into code — you build the wrong thing faster.
  • Treating "deployed" as "done" — maintenance is most of a real product's life.
  • Testing only at the very end, when bugs are the most expensive to fix.
↑ Back to contents
17

CI/CD & Automation

Automating testing and deployment so human error never ships to production.

Vocabulary

  • CI (Continuous Integration) — every commit is automatically built and tested.
  • CD (Continuous Deployment) — commits that pass every test go live automatically.
  • Pipeline — the ordered sequence of automated steps a commit travels through.
  • Automated Testing — code that checks the code, on every single change.
  • Deployment — the moment new code starts serving real users.

A Minimal Pipeline

# .github/workflows/ci.yml (GitHub Actions)
on: push
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npm install
      - run: npm test   # the gate

Common Mistakes

  • Bypassing the automated tests to push broken code directly to production — the belt exists for a reason.
  • Ignoring a flaky red pipeline until nobody trusts it — a failing test should always mean something.
  • Deploying manually "just this once" — every manual step is a chance for human error.
↑ Back to contents
18

Cloud Computing Basics

Renting computing power and infrastructure over the internet instead of owning it.

Vocabulary

  • Cloud — someone else's data center, rented by the minute over the internet.
  • IaaS — Infrastructure as a Service: raw virtual machines; you install and manage everything.
  • PaaS — Platform as a Service: you push code; the platform handles servers, scaling, and TLS.
  • SaaS — Software as a Service: finished apps you just use in the browser.
  • Scaling — adding capacity when traffic grows: a bigger machine (up) or more machines (out).

The Pizza Analogy

On-premises — make pizza at home from scratch.
IaaS — rent a kitchen; you still cook.
PaaS — delivery; you just pick toppings (your code).
SaaS — eat at the restaurant.

Big three providers: AWS, Google Cloud, Azure.

Common Mistakes

  • Leaving cloud resources running unnecessarily and receiving a massive bill — always shut down what you're not using.
  • Choosing IaaS for a hobby project when a PaaS free tier does the job with zero server management.
  • Assuming the cloud provider handles your security and backups — responsibility is shared, and your data is your job.
↑ Back to contents

Want to go deeper on any of these? The Learn path turns these maps into hands-on projects, the Glossary defines every term, and the Editor lets you try the code right in your browser.