Everything runs on IT. Here’s how it actually works.
Phones, games, GCash, school portals, Wi-Fi at home — all of it is information technology. This little site explains the whole world of IT in plain words: what computers are, how the internet works, how coding works, and how to start learning it yourself, for free.
sleep not found. The brain requested 8 hours; only 5 were installed.
curiosity.exe is running and cannot be closed. This is working as intended.
homework.dll is missing — just kidding. It knows where you live. Finish it first, then explore.
Start here — your path through this site
New here? Go in this order — each step builds on the one before it, and every page ends by pointing to the next step. Already know the basics? Jump straight to the step you need.
Bookshelf & Reference — keep going
Every free resource the Course uses, in one place — plus quick lookups for when you get stuck mid-lesson.
The course, as one textbook
Everything on this site, bound into a single textbook that follows the 8-module path in order. It comes in two editions — Regular is the complete textbook, free; Premium adds the full reviewer pack on top of it.
The complete textbook
The whole course in one printable PDF — for studying offline or sharing with classmates.
- All 8 modules, in order
- The free-course directory
- The cheat sheets
Textbook + reviewer pack
Everything in Regular, plus the complete reviewer pack for exam prep:
- Per-topic reviewers with worked examples & exam traps
- Expanded cheat sheets
- 104 practice questions with explained answer keys
- 20-question mock exam with a score guide
- Glossary in English + Tagalog
- 4-week study plan with a progress tracker
One-time payment · Digital download (PDF)
So… what is IT, in one minute?
Information technology (IT) is the study and use of computers, networks, and other devices to create, process, store, retrieve, and send information. When a school keeps grades in a system, when a store scans your items, when you message a friend — IT is the machinery and the know-how behind all of it.
IT is an application of computer science and computer engineering: part building things, part fixing things, part helping people use them. The full guide breaks every piece down — hardware, software, code, networks, data, security — in simple order.
Three facts to start with
The term “information technology” first appeared in print in a Harvard Business Review article — the field is younger than your grandparents.
Everything a computer does — photos, songs, games — is stored and processed as binary: long strings of just two digits.
IBM released the first hard disk drive. It was the size of two refrigerators and stored under 5 MB — less than one phone photo today.
Who this is for
This site is for IT students, future IT students, and anyone curious about how computers actually work. If you’re studying IT now, planning to take an IT course later, or learning on your own outside school, you’re in the right place. There’s a full roadmap in the guide showing what to learn, in what order — for the school path and the self-taught path alike.
Hello, World! — First Code
Almost every programmer’s first program does one small thing: it prints the words Hello, World! It looks too easy to matter — but it proves your setup works, and it shows the basic shape of all code: instructions go in, a result comes out.
What happens when code runs
Every program — this tiny one, and the biggest game — follows the same three steps.
You write
You type instructions into a file. That file is your program — a list of orders the computer follows exactly, in order.
You run it
A tool turns your file into actions. An interpreter translates and follows your instructions as it goes. A compiler translates the whole file first, then runs the translation.
You see the output
The result appears — that is the output. If you can read Hello, World!, your tools work and you just ran a program.
The same program, eight ways
One job, eight languages. The pattern never changes: a command, the text in quotes, and the words on screen. New words are explained on every card.
Python
The code
print("Hello, World!")
print() shows text on the screen. The words go inside quotes — quotes tell Python “this is text, not an instruction.” The parentheses hold the thing to show.
Output
JavaScript
The code
console.log("Hello, World!");
console.log prints a message to the console — a text panel where programmers read messages from their code (in a browser, the F12 key opens it). The semicolon at the end marks the end of the statement — one complete instruction.
Output — in the console
HTML
The code
<h1>Hello, World!</h1>
Honest note: HTML does not “run.” It is markup — it labels what each part of a page is, and the browser displays it. <h1> is an opening tag (“a big heading starts here”) and </h1> is the closing tag. Tags come in pairs, and the text between them is what shows.
On the page
CSS
The code
h1 {
color: white;
}
CSS never prints anything — it styles pages: colors, sizes, spacing. h1 is the selector: which part to style (every big heading). color is the property: what to change. white is the value: change it to this.
On the page
SQL
The code
SELECT 'Hello, World!';
SQL is how you talk to a database — an organized store of information, like a very strict spreadsheet. SELECT means “give me this”: this query hands back the text itself. In SQL, text wears single quotes.
Output — one row
Java
The code
public class Main {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
Every Java app starts in main — the front door the computer enters first. System.out.println prints one line of text (“println” is short for “print line”). Java asks for more setup words than Python before anything happens. That is normal — the extra words keep big programs organized.
Output
C
The code
#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
#include <stdio.h> borrows ready-made tools — here, the printing tools (stdio is short for “standard input/output”). printf prints the text. \n means “new line” — like pressing Enter at the end. return 0; reports back: “the program ended fine.”
Output
PHP
The code
<?php echo "Hello, World!"; ?>
echo sends text out. The <?php … ?> markers tell the computer “the code between us is PHP.” PHP usually runs on servers — the computers that send websites to your browser — building pages behind the scenes.
Output — on the web page
Your turn — in the coding box
Reading code is step one; typing it is where it sticks. The guide has a live coding box: type HTML on one side, see the page on the other, instantly. The button below opens it with a <h1>Hello, World!</h1> page already inside.
Mini challenge — 3 steps:
- Change the heading to your own name — that is your first edit as a programmer.
- Make it bigger: in the
<style>box, findh1 { font-size: 32px; }and change 32 to 60 — you just styled a page with CSS. - Add your own line: under the
<p>paragraph, type<p>I made this page.</p>— every tag pair you add appears instantly in the preview.
Next step — keep going
You just read real code in eight languages. Keep the streak going:
- The Course — Module 1 covers how computers actually work, and Module 2 takes your first real steps in coding, in order, with self-checks.
- All About IT — the full guide explains every topic on this page in simple words, plus careers, a glossary, and cheat sheets.
All About IT
Every major topic, in simple words, in a sensible order. Read it top to bottom like a book, or jump to the part you need.
What is IT?
The short version, then the real one.
Information technology (IT) is the study or use of computers, telecommunication systems, and other devices to create, process, store, retrieve, and transmit information. That’s the textbook definition — here’s what it means in real life:
- Create — typing a document, taking a photo, writing code.
- Process — a computer doing something with data: computing your grades, editing your video, running a game.
- Store — saving files on a drive, in a database, or in the cloud.
- Retrieve — opening that file later, searching for a record, loading a saved game.
- Transmit — sending information across networks: messages, video calls, this web page reaching your screen.
An IT system is the whole setup working together — all the hardware, software, and connected equipment, used by a group of people. A school’s enrollment system, a bank’s app, a hospital’s records: each is an IT system.
IT vs. Computer Science — what’s the difference?
They overlap a lot. Roughly: computer science studies how computing works in theory — algorithms, math, how to design new systems. IT applies it — setting up, running, securing, and supporting the systems people actually use every day. In college, BSIT leans practical: programming plus networks, databases, and systems administration.
The computer system
Hardware you can touch, software you can’t — and how they work together.
A computer system has two halves. Hardware is every physical part. Software is the set of instructions (programs) that tell the hardware what to do. Hardware without software is a paperweight; software without hardware has nowhere to run.
The main hardware parts
CPU — the brain
The Central Processing Unit does the actual computing: billions of tiny calculations per second. When a game says it needs a faster processor, this is the part it means. Its speed is measured in gigahertz (GHz).
RAM — short-term memory
Random Access Memory holds what you’re working on right now — open apps, the game you’re playing. It’s fast, but it forgets everything when the power turns off. More RAM = more things open at once without slowing down.
Storage — long-term memory
Hard drives (HDD) and solid-state drives (SSD) keep your files even when the computer is off. SSDs have no moving parts and are much faster — that’s why a laptop with an SSD boots in seconds.
Motherboard — the backbone
The big circuit board everything plugs into. It connects the CPU, RAM, storage, and all other parts so they can talk to each other, and carries power and data between them.
Input devices
How information gets in: keyboard, mouse, touchscreen, microphone, camera, scanner. Your taps and keystrokes become data the computer can process.
Output devices
How results come out: monitor, speakers, printer, headphones. The graphics card (GPU) deserves a mention too — it’s a specialized processor that draws everything on screen, crucial for games and video.
The two kinds of software
System software
The software that runs the computer itself. The biggest piece is the operating system (Windows, macOS, Linux, Android). It manages the hardware, runs your apps, and handles files. Utilities like antivirus software belong here too.
Application software
Programs you use to do tasks: browsers, Word processors, games, photo editors, messaging apps. Apps sit on top of the operating system — they ask the OS whenever they need the hardware.
How a computer actually works, step by step
Input
You press a key, tap the screen, or open a file. The instruction and data enter the computer.
Fetch
The CPU fetches the next instruction from RAM — the instruction for whatever program is running.
Decode & execute
The CPU decodes what the instruction means, then executes it: add two numbers, compare values, move data. This fetch–decode–execute cycle repeats billions of times per second.
Memory
While working, data sits in RAM for speed. Results you want to keep get written to storage (SSD/HDD) so they survive a shutdown.
Output
The result appears: pixels on the monitor, sound from the speakers, a printed page — or a message sent across the network.
Every app you’ve ever used — from a calculator to a full game — is just this cycle happening unimaginably fast.
Binary: how computers represent everything
Computers are built from tiny switches that are either on (1) or off (0). Each switch is one bit. Eight bits make a byte. Numbers, letters, colors, sounds — all of it gets converted into patterns of bits. The letter “A”, for example, is stored as the number 65, which in binary is 01000001.
| Unit | Size | Roughly holds |
|---|---|---|
| Bit | 0 or 1 | A single yes/no |
| Byte | 8 bits | One character of text |
| Kilobyte (KB) | 1,000 bytes* | A short text file |
| Megabyte (MB) | 1,000 KB | One phone photo |
| Gigabyte (GB) | 1,000 MB | ~250 songs |
| Terabyte (TB) | 1,000 GB | A big hard drive |
*Everyday labels use powers of 1,000; computers count in powers of 1,024 (1 KiB = 1,024 bytes). That’s why a “500 GB” drive shows up slightly smaller in your OS.
Try it: build a number in binary
Tap the bits to switch them on or off. Each position is worth double the one before it — add up the “on” positions and you get the number. This is exactly how a computer counts.
In binary: —
Coding / programming
Writing instructions a computer can follow — exactly, literally, every time.
Code is a set of instructions written in a programming language. A computer does exactly what the code says — no guessing, no common sense. Programming is mostly problem-solving: break a big task into small, exact steps, then write those steps in a language the computer understands.
The four building blocks of all code
Variables
Named boxes that store values. score = 0 makes a box called score holding 0. Later the code can change it: score = score + 10.
Conditions
Decisions. If something is true, do this; else, do that. Like: if the password is correct, log in; else, show an error.
Loops
Repetition without copying code. “Repeat 10 times” or “keep going while lives remain” — loops are how a game checks your controls 60 times a second.
Functions
Reusable mini-programs with a name. Write greet(name) once, then call it whenever you need it, with any name. Functions keep big programs organized.
Your first Python program
# This is a comment — the computer ignores it name = input("What is your name? ") # variable + input score = 0 for i in range(3): # loop: repeats 3 times score = score + 10 # function of the loop body if score >= 30: # condition print("Great job, " + name + "!") else: print("Keep practicing, " + name + ".")
That tiny program already uses all four building blocks. Almost every program ever written is these same ideas, scaled up.
The main languages — and what each is for
| Language | What it’s used for |
|---|---|
| Python | Beginner-friendly all-rounder: automation, data, AI, web back-ends, school projects. The best first language for most students. |
| JavaScript | The language of the web browser — makes pages interactive. Also used on servers (Node.js) and in apps. |
| HTML / CSS | Not programming languages, honestly: HTML is a markup language that structures a page’s content; CSS is a style language that designs how it looks. No logic — but every website needs both. |
| Java | Enterprise software, Android apps, banking systems. Strict and verbose, which teaches discipline. Common in college courses. |
| C++ | Games, game engines, and performance-critical software. Gives direct control of memory — powerful, less forgiving. |
| PHP | Server-side web code; runs WordPress and a huge share of older (and many current) websites. |
| SQL | The language for talking to databases: asking questions and changing data. Works with almost every database system. |
| Lua | A small, lightweight scripting language often embedded inside other programs — a variant of it called Luau is used to script games in Roblox Studio. |
The same idea in JavaScript (what runs in a browser)
// A function that greets whoever visits
function greet(name) {
if (name === "") {
return "Hello, stranger!";
}
return "Hello, " + name + "!";
}
And a web page’s skeleton in HTML + CSS
<h1>All About IT</h1> <!-- HTML: the content --> <p>Welcome to the site.</p> h1 { color: white; } /* CSS: how it looks */
The web: how websites work
What actually happens between typing an address and seeing a page.
Client vs. server
Your browser is a client — it asks for things. A server is a powerful computer, always on, whose job is to answer those requests: it stores the website’s files and data and sends them to whoever asks. Every website you visit lives on a server somewhere.
Front-end vs. back-end
Front-end = everything you see and tap in the browser (HTML, CSS, JavaScript). Back-end = the behind-the-scenes part on the server: the code (PHP, Python, Node) and the database that handles logins, posts, payments, and saved data.
Loading a website, step by step
You type an address
e.g. example.com — a friendly name, because humans are bad at remembering numbers.
DNS looks up the number
The Domain Name System translates the name into the server’s IP address — like a phonebook for the internet.
Your browser sends a request
Using HTTP (or its secure version, HTTPS), your browser asks the server: “send me this page.”
The server responds
The server may run back-end code, pull data from a database, then send back HTML, CSS, JavaScript, and images.
Your browser builds the page
It reads the HTML for structure, CSS for design, runs the JavaScript for interactivity — and renders what you see. All in under a second.
Internet & networking
How devices connect, find each other, and exchange data.
A network is simply two or more devices connected so they can share data. The internet is a giant network of networks — millions of smaller networks all agreeing to speak the same languages (protocols) so data can travel between any of them.
LAN vs. WAN
LAN (Local Area Network) — a small area: your home Wi-Fi, a school computer lab. WAN (Wide Area Network) — a huge area: a company’s offices across cities. The internet is the biggest WAN of all.
IP addresses
Every device on a network gets an IP address — a unique number label like 192.168.1.5 (private, inside your home) or a public one the whole internet can reach. Data travels in small chunks called packets, each stamped with the sender’s and receiver’s IP addresses.
Router vs. switch
A switch connects devices inside one network and passes data between them. A router connects different networks together — your home router links your LAN to the internet and decides where packets go next. (Home “Wi-Fi routers” usually combine both, plus a wireless access point.)
TCP/IP & HTTP in plain words
TCP/IP is the internet’s rulebook: IP delivers packets to the right address; TCP makes sure they all arrive, in order, and re-sends any that get lost. HTTP is one specific language built on top, used by browsers and web servers. HTTPS is HTTP with encryption, so nobody in between can read it.
Databases
Where apps keep their information — organized, searchable, and safe.
A database is an organized collection of data stored electronically, managed by a program called a database management system (DBMS). Instead of scattering info across random files, a database keeps it structured so thousands of users can read and update it at the same time without it becoming a mess.
The most common kind is the relational database (an idea from Ted Codd in the 1970s): data lives in tables, like spreadsheets with rules. Each table has columns (the fields: name, age, grade) and rows (one record each: one student). Tables link to each other — a grades table can point to a student by their ID number instead of copying their whole name every time.
Asking a database a question, in SQL
-- Get the names and grades of students in one section
SELECT name, grade
FROM students
WHERE section = 'A'
ORDER BY name;
SQLite
The world’s most common database — it lives inside a single file and is built into phones, browsers, and countless apps. Perfect for learning and small projects.
MySQL
A full server database that powers a huge share of the web (it’s the classic partner of PHP and WordPress). Free and open source.
Think about it: your school’s enrollment list, a store’s inventory, the messages in a chat app — those aren’t “files.” They’re rows in database tables.
Operating systems & files
The manager of the whole computer — and how your stuff is organized.
The operating system (OS) is the layer between you and the hardware. It starts the computer, runs and schedules your programs, divides RAM and CPU time between them, controls the screen/keyboard/storage, manages user accounts and permissions, and keeps everything from interfering with everything else.
- Windows — the most common desktop OS; what most school and office PCs in the Philippines run.
- macOS — Apple’s desktop OS, only on Macs.
- Linux — free and open source; runs most of the world’s servers, and is a favorite of programmers and network admins. Many flavors (Ubuntu, Debian, Fedora…).
- Android & iOS — phone operating systems. Android is built on Linux; iOS is Apple’s.
Files and folders: everything stored is a file — a document, a photo, a program — organized into folders (directories) in a tree, starting from a root (like C:\ on Windows). The last part of a filename, the extension, hints at the file’s type: .txt, .jpg, .mp3. The full cheat-sheet of extensions is in the cheat sheets section below. The OS keeps track of where every file physically is, so you never have to.
PC building & troubleshooting basics
The hands-on side of IT — the part that makes you the family’s tech support.
Building a PC means choosing compatible parts and assembling them: case, power supply (PSU), motherboard, CPU + cooler, RAM sticks, SSD, and a GPU if you game or edit video. The core skill is compatibility — the CPU must match the motherboard’s socket, the RAM must match its generation (DDR4 vs DDR5), and the PSU must supply enough watts. Parts mostly click into place; the golden rules are: don’t force anything, and discharge static (touch something metal) before handling components.
The troubleshooting mindset
- Identify the symptom exactly. “No display” is different from “no power” — and when did it start?
- Check the simple things first. Cables, power, is it muted, is Wi-Fi on, did it update last night? Most “broken” PCs fail here.
- Restart. Genuinely fixes a large share of problems by clearing stuck states.
- Change one thing at a time and test — swap the cable, try a different port, boot in Safe Mode. If you change five things, you’ll never know which one worked.
- Read the error message and search it word-for-word. Someone, somewhere, has had the exact same problem.
- Back up before big fixes. Data first, experiments second.
Ethical hacking & cybersecurity
Yes — hacking is a real IT career. The legal, professional kind.
Hacking, in its original meaning, is deeply understanding a system well enough to make it do things — or reveal weaknesses its makers didn’t notice. Whether that’s good or evil depends entirely on permission and purpose:
Black hat
Breaks into systems without permission — to steal, damage, or extort. This is crime, not a career.
White hat (ethical hacker)
Hired, with written permission, to attack a system on purpose — find the holes first, report them, and help fix them before criminals find them.
Security researcher
Studies vulnerabilities and publishes findings responsibly so software gets patched and everyone’s systems get safer.
What ethical hackers actually do
A penetration tester (“pentester”) is hired by a company to try to get in — through the network, the website, sometimes even by testing whether employees fall for fake emails. Every attempt is agreed in advance, documented, and ends in a report: here’s the hole, here’s how bad it is, here’s how to fix it. The job is maybe 20% “attacking” and 80% understanding systems deeply and writing clear reports. It requires strong foundations first — networking, Linux, and coding — which is why it sits near the end of the Course on this site.
How to practice legally
- Your own devices and your own lab — an old laptop, virtual machines on your PC. Yours = legal playground.
- TryHackMe — guided, beginner-friendly rooms built exactly for learning this legally.
- Hack The Box — practice machines designed to be broken into, on purpose.
- CTF competitions (Capture The Flag) — puzzle-style security contests run by schools and communities, online and in person.
The legal line — read this part carefully
Breaking into systems or accounts that are not yours, without permission, is a crime in the Philippines under RA 10175, the Cybercrime Prevention Act of 2012 — even if you “didn’t do anything” once inside, and even if it started as a joke. Ethical hacking is defined by permission + fixing, always. If you’re curious (good!), channel it into the legal practice platforms above — that’s genuinely how professionals start.
That’s the whole vibe of the job: point the tools at systems you own or are hired to test, find the weak spots, fix them, write it up. The terminal above is pretend — the lab platforms in the Course are where the real, legal practice happens.
Defense basics everyone should know
- Strong, unique passwords — long passphrases, a different one per account, ideally kept in a password manager.
- Turn on two-factor authentication (2FA) — even if a password leaks, your account stays locked without the second code.
- Spot phishing — messages creating panic (“your account will be deleted!”), sender addresses that are almost-right, links asking you to “log in again.” Go to the real site yourself instead of clicking.
- Know the malware types — virus (attaches to files), worm (spreads by itself), trojan (fake useful program), ransomware (locks your files for money), spyware (watches and steals). Defense against all of them starts below.
- Update everything — most updates are plugging holes attackers already know about. Old, unpatched software is the #1 way in.
- Back up important files — a copy somewhere separate (external drive or cloud). Backups turn a ransomware disaster into an inconvenience.
Cloud computing basics
“The cloud” is just someone else’s computers — rented over the internet.
There is no magic cloud. When your file is “in the cloud,” it physically sits on a server in a data center owned by a company like Google, Microsoft, or Amazon. Cloud computing means using computing power, storage, or whole programs over the internet instead of only on your own device.
- Cloud storage — Google Drive, OneDrive, iCloud: your files, reachable from any device.
- Cloud apps (SaaS, “Software as a Service”) — Gmail, Google Docs, Canva: the program runs on their servers; you just use it in a browser.
- Cloud servers (IaaS, “Infrastructure as a Service”) — renting a whole virtual computer from AWS, Azure, or Google Cloud to host websites and apps, and scaling it up when traffic grows.
Why companies love it: no buying hardware upfront, pay as you grow, and your site survives your own laptop dying. Why it’s a career field: somebody has to design, run, and secure all of that — that’s cloud engineering.
AI & IT Basics
What ‘AI’ actually means, where you already use it, and what’s just hype.
Artificial intelligence (AI) means getting computers to do tasks that look smart: recognizing what is in a photo, deciding whether an email is junk, or predicting the next word you are about to type.
- Machine learning (ML) — one common way to build AI. Normally, a programmer writes every rule by hand. With ML, nobody writes the rules: the program studies many examples and finds the patterns by itself.
- Data — the examples it learns from: emails, photos, songs, chat messages — anything it can study.
- Training — the learning phase, when the program studies the data and adjusts itself to match the patterns it finds.
- Model — the finished program after training. It is the thing that learned the pattern, and it now makes guesses about new things it has never seen.
Sa madaling salita: ang AI ay natututo mula sa maraming halimbawa — hindi ito binibigyan ng lahat ng sagot; hinahanap nito ang pattern.
You already use it: the spam filter
Nobody sat down and taught your email app the word “spam.” Instead, the app studied thousands of emails that people had already marked as spam, and learned which words and patterns tend to show up in them. Now, when a new email arrives, it compares the email against what it learned and guesses: spam, or not spam.
The same idea is quietly working all around you:
- Video recommendations — the next video a site suggests is a guess based on patterns in what you, and people with similar taste, already watched.
- Autocorrect and keyboard suggestions — your phone predicts the word you meant to type, from patterns in how people type.
- Voice assistants — they turn your speech into words by matching the sounds against patterns learned from huge amounts of recorded speech.
Worked example: teach a tiny spam filter
Here is one simple way a model can learn. Show a program six short emails. People marked three of them as spam, and three as not spam:
| What the email says | Marked as spam? |
|---|---|
| “free money now” | Spam |
| “win a prize today” | Spam |
| “meeting at 3pm” | Not spam |
| “project update attached” | Not spam |
| “free prize for you” | Spam |
| “lunch tomorrow?” | Not spam |
Now the program counts — that is the whole trick. The word “free” appears in 2 of the 3 spam emails, and in 0 of the 3 not-spam ones. The word “meeting” appears only in not-spam. So the model learns a simple lean: an email with “free” is probably spam; one with “meeting” is probably fine.
Then a brand-new email arrives: “free meeting notes.” “Free” points to spam. “Meeting” points to not-spam. The model weighs the evidence on both sides and makes its best guess — a guess, not a certainty.
The key idea: the program never understood what “free” means. It never read the email the way you read it. It counted patterns, and that is all. Real spam filters study millions of emails and far more signals, but the basic idea is exactly this.
Try it: what would the model guess?
Use the tiny spam filter from the worked example. For each question, say your guess out loud first — then tap the button to check yourself.
A new email arrives: “win free money.” Would the model mark it as spam, or not?
Spam.
“Win,” “free,” and “money” all appeared in the spam examples — every word in this email is a spam-word, so this is the model’s easiest guess.
A new email arrives: “money for the school project.” The model spots the word “money” — a spam-word from its training. Is its guess safe to trust?
No — the model might guess wrong here.
This is a normal, harmless email, but the model does not understand meaning — it only counts patterns, and “money” was a spam pattern in its examples. That is the lesson: a pattern-counter can be wrong, so always double-check — it is why good emails sometimes land in your spam folder.
Last one: is your phone’s autocorrect a kind of AI?
Yes.
Autocorrect predicts the word you are typing — and the word you probably want next — from patterns in how millions of people type. Predicting from patterns is exactly what this whole topic is about.
Notice what all three answers have in common: the model is always guessing from patterns, never truly understanding. That leads straight to the honest version below.
The honest version — no hype
- AI does not think. It finds patterns in data and makes guesses. There is no understanding behind the guess — just counting, done on a very large scale.
- It is only as good as its examples. It needs lots of good data. Bad examples teach bad guesses — programmers call this “garbage in, garbage out.”
- It can be confidently wrong. A model can state a wrong answer in a very sure voice. Always verify important answers yourself.
- It is a tool IT people already use. Support chatbots, bank fraud alerts, tools that scan system logs for problems, helpers that suggest code — AI is already part of the job. Learning to use it well is the real skill, and it sits on top of the fundamentals: it does not make learning them pointless.
More corners of IT
Three more areas you’ll keep hearing about.
Mobile / app development
Building apps for phones — natively (Kotlin for Android, Swift for iOS) or cross-platform with one codebase (Flutter, React Native).
Game development
Building games with engines like Unity (C#), Unreal (C++), or Roblox Studio — which you script in Lua (Luau): game logic, physics, and interfaces, all as code.
Artificial intelligence
Teaching computers to learn patterns from data instead of only following written rules. Modern AI is mostly math + lots of data + Python: you feed examples, the model adjusts itself, then it can classify, predict, or generate. It’s a specialization you grow into after programming and data basics — not a starting point.
IT vs. Computer Science vs. Computer Engineering
Three degree programs that sound alike — here’s the honest difference.
| BSIT — Information Technology | BSCS — Computer Science | BSCompE — Computer Engineering | |
|---|---|---|---|
| Focus | Applying technology: systems, networks, databases, support, and enough programming to build and automate. | The science of computing: algorithms, math, theory, and designing software from first principles. | Hardware + software: circuits, electronics, processors, and the code that runs directly on devices. |
| You study a lot of | Programming, networking, databases, systems administration, web & systems development, capstone projects. | Advanced math, data structures, algorithms, operating systems theory, compilers, AI. | Physics, circuits, electronics, digital logic, embedded systems (code on chips and devices). |
| Typical jobs | IT support, systems/network admin, web developer, database admin, QA, systems analyst. | Software engineer, developer, data scientist, AI/ML engineer, researcher. | Embedded systems engineer, hardware engineer, robotics, telecoms, IoT developer. |
| Choose it if… | You like the whole system — building, fixing, connecting, and helping things run. | You love math, logic puzzles, and deep theory about how computation works. | You like tinkering with actual circuits and gadgets as much as code. |
None is “better” — they overlap, and people cross over between them all the time. This site is built around the BSIT path.
A short history of IT
Two centuries in six stops.
The first programmer
Writing notes on a planned mechanical computer, Lovelace described an algorithm for it — an algorithm for a machine that didn’t even exist yet. She also saw, early, that computers could work with music and images, not just numbers.
The idea of the computer itself
Turing described a theoretical machine that could compute anything computable — the blueprint every modern computer still follows. In WWII he helped build machines that broke enemy codes.
Rooms full of vacuum tubes
Machines like Colossus (1943) and ENIAC filled whole rooms. The stored-program idea — instructions kept in memory, like data — became the standard design. In 1956, IBM shipped the first hard disk drive.
Networks learn to talk
ARPANET connected its first universities in 1969. In the 1980s the TCP/IP rules standardized everything — and in 1989–91, Tim Berners-Lee invented the World Wide Web on top of it.
A computer on every desk
Microprocessors shrank computers from rooms to desktops. The IBM PC (1981) and early Macintosh made computing personal; Windows and the web browser brought it to everyone in the 1990s.
A computer in every pocket
The iPhone era put a networked computer in everyone’s hand. Apps moved to the cloud, and IT quietly became the infrastructure of daily life — bills, classes, games, government, everything.
Cheat sheets
The pages you’ll actually come back to. Screenshot these.
Python basics
name = "Ana" # variable (text = string) age = 15 # variable (number = integer) print("Hi, " + name) # show output input("Your name? ") # ask the user, get text back if age >= 18: # condition print("Adult") elif age >= 13: print("Teen") else: print("Kid") for i in range(5): # loop: 0,1,2,3,4 print(i) while age < 18: # loop while true age = age + 1 def add(a, b): # function return a + b fruits = ["mango", "banana"] # list fruits.append("apple") # add an item
SQL basics
SELECT name, grade FROM students; -- get columns SELECT * FROM students WHERE age > 14; -- filter rows INSERT INTO students (name, grade) -- add a row VALUES ('Ana', 9); UPDATE students SET grade = 10 -- change data WHERE name = 'Ana'; DELETE FROM students WHERE id = 3; -- remove a row SELECT COUNT(*) FROM students; -- count rows
Binary chart — count to 15
| Decimal | Binary | Decimal | Binary |
|---|---|---|---|
| 0 | 0000 | 8 | 1000 |
| 1 | 0001 | 9 | 1001 |
| 2 | 0010 | 10 | 1010 |
| 3 | 0011 | 11 | 1011 |
| 4 | 0100 | 12 | 1100 |
| 5 | 0101 | 13 | 1101 |
| 6 | 0110 | 14 | 1110 |
| 7 | 0111 | 15 | 1111 |
Common file extensions
| Extension | What it is |
|---|---|
| .exe | Executable — a Windows program. Double-clicking runs it, so only open .exe files from sources you trust. |
| A document that looks the same on every device. Modules, e-books, forms. | |
| .zip | A compressed folder — many files squeezed into one for easier sending. Unzip/extract to use them. |
| .mp4 | The standard video file format — works almost everywhere. |
| .html | A web page file. Open it in a browser and it renders as a page — this very site is one. |
| .jpg / .png | Images. JPG is smaller and lossy (photos); PNG keeps sharp edges and supports transparency (graphics, screenshots). |
| .docx / .xlsx / .pptx | Microsoft Word documents, Excel spreadsheets, PowerPoint presentations. |
| .py / .js / .java | Code files — Python, JavaScript, Java source code, readable as plain text. |
| .mp3 | Compressed audio — the classic music file. |
| .iso | A complete copy of a disc in one file — often used for operating system installers. |
Beginner project ideas, by level
You learn IT by building. Each project matches a Course module.
Map your home network
List every device on your home Wi-Fi and find each one’s IP and MAC address in your router’s admin page. Draw the network like a diagram. No tools needed — just looking, with permission, at your own network.
A Python quiz game
Ask 5 questions in the terminal, track the score with a variable, use conditions for right/wrong and a function per question. Then make it yours: your own topic, your own jokes.
A simple chat bot
A Python bot that answers keywords: say “hello” and it greets you, ask “joke” and it tells one. It’s all conditions and functions — and it feels like magic the first time it works.
Your own website
A one-page site about something you love, in pure HTML/CSS/JavaScript: a heading, photos, a small interactive button. Publishing your first page is a rite of passage.
A browser mini-game
Build a tiny game that runs in a web page — a number-guessing game or a reaction timer — with HTML for the layout, CSS for the look, and JavaScript for the rules: score, win/lose states, a restart button. Real game logic, tiny scope.
A class records database
In SQLite: one table of students, one of grades, joined by ID. Practice SELECT, INSERT, and a JOIN query that prints a mini report card. Fake names only — never real classmates’ data.
IT fields & careers
What each job actually does all day — no buzzwords.
Programmer / Software Developer
Writes and maintains the code of apps and systems. Most of the day = reading code, solving logic problems, fixing bugs, and building features piece by piece.
Web Developer
Builds websites and web apps — front-end (the part users see), back-end (servers and databases), or both (“full-stack”).
Network Administrator
Sets up and keeps an organization’s network running: routers, switches, Wi-Fi, cables, and user access. When “the internet is down” at an office, this is the person.
Cybersecurity Analyst
Watches systems for attacks, investigates alerts, and closes holes. Ethical hackers / pentesters are the offensive cousins of this job — hired to test defenses.
Database Administrator
Keeps databases fast, organized, backed up, and secure — the guardian of an organization’s records.
IT Support / Help Desk
The front line: helps users fix account, software, and hardware problems. The classic first IT job — and where troubleshooting skills are built.
Systems Analyst
Studies how an organization works, then designs the system that would work better. Half tech, half talking to people about what they actually need.
QA Tester
Tries to break software before users do: plans tests, hunts bugs, and confirms fixes. Detail-obsessed work that every dev team depends on.
The roadmap: from first steps to an IT career
The long view, in order — whichever path you take. You don’t need to rush it: one step at a time.
Build the foundation for free
Work through the Course on this site at your own pace, whatever your age or year level. Get comfortable with how computers work, basic networking ideas, and your first real code (Python). Keep your math strong — IT uses more math than people admit: logic, basic algebra, and later, statistics.
Use school as your runway
In senior high, a STEM strand (where it’s offered) gives you heavier math and science, which keeps the most college doors open — IT, computer science, and engineering included. No STEM strand available to you? It’s not a dead end: strands don’t lock you out of an IT degree, and the free Course here covers the same foundations. Either way, keep coding on the side — a small project or two a year beats any single grade.
IT vs. the neighbors
Re-read the IT vs CS vs CompE comparison above before enrolling — the right fit matters more than the school’s name. All three lead to tech jobs; they just start from different doors.
What you’ll actually take
Early: introduction to IT, programming 1 & 2, computer hardware, discrete math. Middle: data structures, databases, networking, operating systems, web development, systems analysis & design. Late: information security, project management, electives (cloud, mobile, data), an internship, and the capstone — a real system you design, build, and defend in front of a panel.
No degree? The skills are the same.
Many working IT professionals are self-taught. The honest version of this path: follow the same order as the Course (fundamentals → networking → coding → web → databases → operating systems → security), finish real projects instead of only watching tutorials, earn the genuinely free certificates (like freeCodeCamp’s) as receipts, and build a small portfolio page that shows your work. Employers in support, web, and freelance work often hire on demonstrated skill — but be honest with yourself: this path takes the discipline school normally provides for you.
Skills underneath the subjects
Typing fluency, reading error messages without fear, searching well, taking notes you’ll actually re-read, and finishing small projects. Certificates and grades help, but a GitHub page or folder of finished projects is proof nobody can argue with.
Glossary
IT words, in normal words.
- ASCII
- The original numbering scheme that turns characters into numbers — in ASCII the letter 'A' is 65. It covers 128 characters: English letters, digits, and basic symbols. Older and smaller than Unicode, but still everywhere.
- Tagalog: ang pinakaunang sistema ng pag-numero sa mga letra — ang 'A' ay 65; 128 na karakter lang: mga letrang Ingles, numero, at simpleng simbolo
- Algorithm
- A step-by-step recipe for solving a problem — the logic behind code.
- Tagalog: hakbang-hakbang na proseso na sinusunod ng computer para lutasin ang isang gawain
- Bandwidth
- How much data a connection can carry per second — the “width” of the pipe.
- Tagalog: kung gaano karaming data ang kasya sa koneksyon mo kada segundo — parang lapad ng tubo
- Binary
- The base-2 number system (0s and 1s) all computer data is written in.
- Tagalog: sistema ng bilang na 0 at 1 lang ang gamit — dito nakasulat ang lahat ng data ng computer
- Browser
- The app you open websites with — it reads a page's code (HTML, CSS, JavaScript) and draws it on your screen. Examples: Chrome, Edge, Firefox, Safari.
- Tagalog: ang app na pinagbubuksan mo ng websites — binabasa nito ang code ng page at ipinapakita ito sa screen; halimbawa: Chrome, Edge, Firefox, Safari
- Bug
- A mistake in code that makes a program behave wrongly.
- Tagalog: mali sa code kaya hindi maayos ang takbo ng program
- Cache
- A small, fast storage spot for data you’ll need again soon.
- Tagalog: maliit at mabilis na imbakan para sa data na kakailanganin mo ulit maya-maya
- CSS
- A style language for web pages: it designs how things look — colors, sizes, spacing, layout. HTML builds the structure; CSS dresses it up.
- Tagalog: wikang pang-style ng web pages: ito ang nagdidisenyo ng itsura — kulay, laki, spacing, layout; ang HTML ang gumagawa ng istruktura, ang CSS ang nagpapaganda nito
- Cloud
- Computing services rented over the internet, running on someone else’s servers.
- Tagalog: mga serbisyong kinukuha mo online na tumatakbo sa servers ng iba, hindi sa sarili mong device
- CPU
- The computer’s processor — the part that does the actual calculating, repeating fetch–decode–execute billions of times per second.
- Tagalog: ang utak ng computer — ang bahaging gumagawa ng aktuwal na pagkuwenta, ulit-ulit nang bilyun-bilyong beses kada segundo
- CRUD
- The four basic moves on data — Create, Read, Update, Delete. Almost every app with data is just CRUD behind the scenes: posting something (create), showing it (read), editing it (update), removing it (delete).
- Tagalog: ang apat na basic na galaw sa data — Create (gumawa), Read (basahin), Update (baguhin), Delete (burahin). Halos lahat ng app na may data, CRUD lang ang ginagawa sa likod: pag-post (create), pagpapakita (read), pag-edit (update), pagbura (delete).
- Database
- An organized store of information — like a very strict spreadsheet — where apps keep data searchable and safe.
- Tagalog: organisadong imbakan ng impormasyon — parang napakahigpit na spreadsheet — kung saan iniimbak ng apps ang data para madaling hanapin at ligtas
- DNS
- The internet’s phonebook: turns website names into IP addresses.
- Tagalog: ang phonebook ng internet: ginagawang IP address ang pangalan ng website
- Encryption
- Scrambling data so only someone with the key can read it.
- Tagalog: pag-scramble ng data para yung may tamang key lang ang makabasa nito
- ER diagram
- Entity-Relationship diagram — a drawing that plans a database before it is built: boxes for each table and lines showing how the tables connect. The blueprint of a database.
- Tagalog: Entity-Relationship diagram — guhit na nagpaplano ng database bago ito buuin: mga kahon para sa bawat table at mga linyang nagpapakita kung paano nag-uugnay ang mga table. Ang blueprint ng isang database.
- Firewall
- A gatekeeper that filters network traffic by rules — blocks what shouldn’t pass.
- Tagalog: bantay na nagsasala ng dumadaang data sa network — hinaharangan ang hindi dapat makapasok
- Foreign key
- A column in one table that points to the primary key of another table — the link between tables. The customer_id column on an orders table is a foreign key pointing at the customers table.
- Tagalog: isang column sa isang table na tumuturo sa primary key ng ibang table — ang nag-uugnay sa mga table. Ang customer_id column sa isang orders table ay foreign key na tumuturo sa customers table.
- Function
- A reusable mini-program with a name: write it once (like greet(name)), then call it whenever you need it — instead of copying the same code over and over.
- Tagalog: munting program na may pangalan: isulat mo ito nang isang beses, tapos tawagin mo kahit kailan mo kailangan — hindi mo na kailangang kopyahin ang code nang paulit-ulit
- Hacker
- Someone who understands computer systems deeply. The label depends on intent: a white hat hacker tests and protects systems with written permission; a black hat hacker breaks in without permission to steal or damage things — a crime in the Philippines under RA 10175, the Cybercrime Prevention Act of 2012.
- Tagalog: taong may malalim na kaalaman sa computer systems — depende sa intensyon: ang white hat ay sumusubok at nagpoprotekta ng systems nang may pahintulot; ang black hat ay sumisira o nagnanakaw nang walang pahintulot — krimen ito sa Pilipinas sa ilalim ng RA 10175, ang Cybercrime Prevention Act of 2012
- HTML
- The markup language that structures web page content.
- Tagalog: wikang pang-markup na bumubuo ng laman at ayos ng isang web page
- IP address
- A unique numerical label for a device on a network.
- Tagalog: natatanging numerong label ng isang device sa network — parang address ng bahay nito
- JavaScript
- The programming language of the web page: it makes pages respond and interact — clicks, forms, animations, live updates — running in the visitor's browser.
- Tagalog: ang programming language ng web page: ito ang nagpapagalaw at nagpapainteraktibo sa mga pahina — pag-click, forms, animations, live updates — tumatakbo sa browser ng bumibisita
- Join
- Combining rows from two or more tables into one result by matching a shared column — like pairing each order with its customer name. The most-used move in real SQL queries.
- Tagalog: pagsasama ng mga row mula sa dalawa o higit pang table sa iisang resulta sa pamamagitan ng pagtutugma ng iisang column — halimbawa, ang pagpapares ng bawat order sa pangalan ng customer nito. Ang pinakaginagamit na galaw sa mga totoong SQL query.
- Kernel
- The core of an operating system — the part that talks directly to the computer's hardware. Apps never touch the CPU, memory, or devices themselves; they ask the kernel, and the kernel arranges it. Linux's kernel is shared by Linux, Android, and most servers.
- Tagalog: ang pinakaloob na bahagi ng operating system — ito ang direktang kumakausap sa hardware ng computer; dumadaan dito ang mga app para magamit ang CPU, memory, o devices; ang kernel ng Linux ay ginagamit din ng Android at ng maraming servers
- Latency
- Delay — how long data takes to travel. Gamers call it “ping.”
- Tagalog: delay — gaano katagal bago makarating ang data; “ping” ang tawag ng mga gamer dito
- Loop
- Code that repeats itself: “repeat 10 times” (for) or “keep going while something is true” (while) — how programs do the same job again and again without copying the code.
- Tagalog: code na inuulit ang sarili: “ulitin nang 10 beses” (for) o “tuloy lang habang totoo ang kondisyon” (while) — ganito ginagawa ng program ang parehong gawain nang hindi kinakailangang kopyahin ang code
- Malware
- Malicious software: viruses, ransomware, spyware, and friends.
- Tagalog: masasamang software: virus, ransomware, spyware, at iba pang nakakasira o nagnanakaw
- Nested query
- A query written inside another query — the inner one runs first and hands its result to the outer one. Also called a subquery.
- Tagalog: isang query na nakasulat sa loob ng isa pang query — ang nasa loob ang unang tumatakbo at ipinapasa ang resulta nito sa nasa labas. Tinatawag ding subquery.
- Open source
- Software whose code anyone may read, use, and improve (Linux, Python…).
- Tagalog: software na pwedeng basahin, gamitin, at ayusin ng kahit sino ang code (halimbawa: Linux, Python)
- Octet
- One of the four numbers in an IPv4 address — octet means eight, because each one is stored as eight bits, so every octet must be between 0 and 255.
- Tagalog: isa sa apat na numero ng isang IPv4 address — ibig sabihin ng octet ay walo, dahil bawat isa ay naka-imbak bilang walong bits, kaya bawat octet ay mula 0 hanggang 255
- Operating system
- The manager program that starts when you switch a device on and runs everything else: which apps run, where files live, how apps use the screen, keyboard, and storage. Examples: Windows, macOS, Linux, Android, iOS.
- Tagalog: ang manager na program na unang nagbubukas kapag binuksan mo ang device at namamahala sa lahat ng iba pa: aling apps ang tumatakbo, nasaan ang files, paano ginagamit ang screen, keyboard, at storage; halimbawa: Windows, macOS, Linux, Android, iOS
- Packet
- A small piece of data traveling across a network — a message is chopped into packets, each stamped with where it came from and where it is going, then reassembled at the other end.
- Tagalog: maliit na piraso ng data na naglalakbay sa network — hinihiwa sa packets ang isang mensahe, bawat isa ay may tatak kung saan galing at patutungo, tapos pinagbubuo muli sa dulo
- Phishing
- A trick: a fake message that pretends to come from someone you trust (a bank, a school, a delivery company) so you hand over your password or details.
- Tagalog: panlilinlang: pekeng mensaheng nagpapanggap na mula sa pinagkakatiwalaan mo (bangko, paaralan, delivery company) para makuha ang password o detalye mo
- Primary key
- The column that gives every row in a table its own unique identity — like a student ID number. No two rows share the same primary key, so the database can always tell rows apart, even when names or other fields repeat.
- Tagalog: ang column na nagbibigay ng sariling natatanging pagkakakilanlan sa bawat row — tulad ng student ID number; walang dalawang row ang pareho ng primary key, kaya laging natutukoy ang bawat isa kahit magkapareho ang pangalan
- Protocol
- An agreed set of rules for how devices communicate (TCP/IP, HTTP…).
- Tagalog: napagkasunduang mga patakaran kung paano mag-usap ang mga device (halimbawa: TCP/IP, HTTP)
- Python
- A beginner-friendly programming language that reads almost like plain English — the language Module 3 teaches you first. Used everywhere: websites, apps, data, AI.
- Tagalog: sikat na programming language na halos katulad ng simpleng English — ito ang unang language na ituturo sa iyo ng kurso (Module 3); ginagamit sa websites, apps, data, at AI
- RAM
- Fast, temporary memory for whatever the computer is currently doing.
- Tagalog: mabilis pero panandaliang memorya para sa ginagawa ng computer sa kasalukuyan
- Router
- A box that connects your home network to the internet and steers traffic between networks.
- Tagalog: aparatong nagdudugtong ng home network mo sa internet at nagpapasya kung saan dadaan ang data papuntang ibang networks
- Server
- A computer whose job is answering other computers’ requests.
- Tagalog: computer na ang trabaho ay sumagot sa mga request ng ibang computer
- SQL
- The language used to ask and update databases.
- Tagalog: wikang ginagamit para magtanong at mag-update ng laman ng database
- SSD
- A fast, long-term storage drive with no moving parts — where your files live even after the computer is turned off.
- Tagalog: mabilis na pangmatagalang imbakan na walang gumagalaw na parte — dito nakatira ang files mo kahit patay na ang computer
- Switch
- A box that links the devices inside one network, so they can talk to each other directly.
- Tagalog: aparatong nagdudugtong ng mga device sa loob ng iisang network para direktang makapag-usap ang mga ito
- Terminal
- A text-based window where you type commands to control the computer directly — no buttons or menus. Also called the command line; it is where you navigate folders, run programs, and manage files and servers.
- Tagalog: text na bintana kung saan nagta-type ng mga utos para kontrolin ang computer — walang pindutan o menu; dito ka nagna-navigate ng folders at nagpapalista ng files
- Transistor
- A tiny electronic switch inside computer chips — off means 0, on means 1. Billions of them together form the hardware that runs every program.
- Tagalog: napakaliit na switch na elektroniko sa loob ng computer chips — patay (off) ay 0, bukas (on) ay 1; bilyun-bilyong transistors ang bumubuo ng hardware na nagpapatakbo ng bawat program
- Truth table
- A chart that lists every possible combination of logic inputs and the answer each one gives — the standard way to define how AND, OR, and NOT behave.
- Tagalog: talahanayan na naglilista ng lahat ng posibleng kumbinasyon ng logic inputs at ng sagot ng bawat isa — ito ang karaniwang paraan para ipaliwanag kung paano kumikilos ang AND, OR, at NOT
- Unicode
- The modern universal numbering scheme for characters — over 150,000 of them, covering nearly every writing system in the world, including Tagalog and emoji. Unicode includes all 128 ASCII characters unchanged.
- Tagalog: ang modernong pandaigdigang sistema ng pag-numero sa mga karakter — mahigit 150,000 karakter, kasama ang halos lahat ng wika sa mundo tulad ng Tagalog at emoji
- Variable
- A named container in code that holds a value.
- Tagalog: pinangalanang lalagyan sa code na may hawak na value
- VPN
- A private, encrypted tunnel through a public network.
- Tagalog: pribado at naka-encrypt na koneksyon na dumadaan sa pampublikong network
How to keep learning IT for free
The method matters more than the platform.
- Follow the Course order — basics first, security later. Skipping foundations is the #1 reason beginners get stuck.
- Code a little, often. Twenty minutes daily beats five hours once a month.
- Build tiny things. Every concept becomes real the moment you use it in a project — the ideas list above is a good start.
- When stuck, read the error, then search it. This is not cheating; it is literally the job.
- Keep a notes file. Write down what you learned in your own words — future you will be grateful.
- Everything on the Bookshelf is free — the shelf is the toolbox; the Course is the order to use them in.
Playground: try it yourself
Three interactive things: find your field, test what you learned, and write real code.
Which IT field fits you?
Answer honestly — 5 questions, no wrong answers. Your result is a suggestion, not a destiny.
The general IT quiz
Eight questions covering the whole guide. See how much stuck.
Try-coding box — HTML & CSS
Edit the code and watch the preview change instantly. This runs only on your device — break things freely, the Reset button brings back the starter code.
Your code
Live preview
The Course
Eight modules, in order, built only from genuinely free resources. Each module ends with a hands-on project and a 5-question self-check. Fundamentals first — security comes later, after networking and coding, the same way professionals actually learn it.
Curious about AI? The guide’s “” topic explains artificial intelligence and machine learning in plain words — what they are, where they already work in IT, and what’s just hype.
The whole course, as one textbook
This course is also a single textbook, in two editions. Regular is the complete textbook — all 8 modules, the free-course directory below, and the cheat sheets in one printable file. Premium adds the full reviewer pack on top of it.
The complete textbook
Study offline, or share it with other IT students.
- All 8 modules, in order
- The free-course directory
- The cheat sheets
Textbook + reviewer pack
Everything in Regular, plus the complete reviewer pack for exam prep:
- Per-topic reviewers with worked examples & exam traps
- Expanded cheat sheets
- 104 practice questions with explained answer keys
- 20-question mock exam with a score guide
- Glossary in English + Tagalog
- 4-week study plan with a progress tracker
One-time payment · Digital download (PDF)
About certificates — the honest version
Certificates are proof of finishing, not magic job tickets — but they’re nice to have, so here’s the truth per platform. freeCodeCamp certificates are genuinely free: finish the projects, claim the certificate, no payment at any point. Kaggle Learn micro-courses like Intro to SQL are free and earn a free completion certificate when you finish all the lessons and exercises — you just need a free Kaggle account to run them and claim it. Harvard’s CS50 courses are free to take on Harvard’s own site, and CS50 issues its own free certificate when you complete a course; the verified certificate on edX costs money — you don’t need it to learn. Khan Academy, MDN, SQLBolt, and The Odin Project don’t offer certificates for this material — what you get there is skill, which is the point. W3Schools tutorials are free, but its certificates are separate paid products — optional, skip them. Cisco’s free Skills for All courses award free digital badges; Cisco’s proctored certification exams (like CCNA) are paid, later-career steps. Google’s IT Support certificate on Coursera is a paid certificate program; Coursera offers financial aid to learners who qualify. TryHackMe has free rooms to start and an optional paid premium — check each learning path’s official page for what it includes. Anyone claiming “everything is free, certificates included” is not telling you the whole story.
Free courses by topic
Don’t want the full path? Jump straight to one subject — every course sits in its own category, as its own card. Every course below is free to start on the provider’s official site; the labels say the level and exactly what the certificate situation is. Details can change, so check the official page.
Coding & general programming
Thousands of interactive coding lessons — Python, JavaScript, data, and more — with projects in every section.
Harvard’s famous intro course: how computers work, plus C, Python, SQL, and web basics, ending in a final project.
Programming basics through JavaScript — drawing, animation, and the web — with friendly, bite-size practice.
Python
Harvard’s introduction to programming with Python: functions, conditions, loops, libraries, and a final project.
Interactive Python lessons and projects, right in the browser, inside freeCodeCamp’s curriculum.
Full-length Python video courses (and more). No account needed — just press play.
University of Michigan’s beginner Python course: free video lectures, textbook, and autograded assignments, with a free grade book when you log in. Also on Coursera and edX.
Databases & SQL
Interactive SQL lessons with exercises that run right in your browser — no setup needed.
Querying and managing data with SQL, with friendly in-browser practice.
Free hands-on SQL micro-course using Google BigQuery in your browser: 6 lessons with exercises, about 3 hours, and a free completion certificate. Needs a free Kaggle account.
A quick-reference SQL tutorial with a try-it editor for every command.
Harvard's full course on databases: create and query tables with SQL, model real-world data, join tables with keys, and finish with a final project.
freeCodeCamp’s full beginner video course: database management basics with the MySQL database system — tables and keys, CRUD queries, joins, nested queries, and database design with ER diagrams — 4 hours 20 minutes, free on YouTube with no account needed.
Web development
Mozilla’s structured tutorials for HTML, CSS, and JavaScript — takes you from complete beginner to comfortable.
Build web pages with HTML and CSS through hands-on projects, step by step.
A complete, project-based web development curriculum — HTML, CSS, JavaScript, Git, and databases.
Short, example-first tutorials with a “try it yourself” editor for web languages and SQL.
Networking
Cisco’s free, self-paced networking course: how networks work, IP addressing, and the basics of configuration.
Khan’s course on how computers and the internet work — including its Internet unit: wires and Wi-Fi, IP addresses, DNS, packets, and protocols.
A free video course for the CompTIA Network+ exam — 87 short videos (about 13 hours) covering networking fundamentals: the OSI model, IP addressing, routing, Wi-Fi, cloud networking, network security, and troubleshooting. Watch them in order, no account needed.
Computer systems & hardware
Google’s training for entry-level IT support jobs: troubleshooting, computer hardware, networking, operating systems, and security.
Peer-reviewed college textbooks, free online and as PDFs — for the math, science, and computing subjects behind IT.
Build a working computer from a single Nand gate up through CPU and machine language, in six hands-on projects using a free hardware simulator — self-contained, no previous CS knowledge required. Taught by Noam Nisan and Shimon Schocken.
MIT’s free lecture series on the everyday tools that CS classes usually skip: the command line, text editors, Git, and debugging — lecture notes and exercises free to read, no account needed.
Harvard’s gentle intro to technology for students who don’t (yet) consider themselves “computer persons”: hardware, the internet, multimedia, security, programming, and web development, across six weeks of lectures and assignments.
Operating systems
Cisco’s free Operating Systems Basics course on Skills for All: what an operating system is, basic OS security, and how to set up mobile devices.
Linux and operating-system lessons and videos inside freeCodeCamp’s curriculum and channel.
Short, interactive lessons on the Linux command line — files, users, permissions, and how the system works — with a quick quiz after each lesson. This is the official home of the classic linuxjourney.com lessons, kept free and open source, no sign-up needed.
A free beginner game that teaches real Linux commands — you log into levels over SSH and each level is a small puzzle about files, permissions and searching text.
The classic free operating-systems textbook from the University of Wisconsin–Madison: how an OS schedules the CPU, manages memory, and stores files — every chapter readable free online; print copies are an optional extra.
Cybersecurity & ethical hacking
What cyber attacks are, how organizations defend against them, and what security careers look like.
Fortinet’s free entry-level cybersecurity track: NSE 1 covers today’s threat landscape and security fundamentals; NSE 2 and 3 move on to network security products and core firewall operations. Self-paced and open to everyone free of charge — complete the online course and test to earn each NSE certification.
Hands-on security practice in guided beginner labs — legal hacking practice on systems built for exactly that.
Carnegie Mellon’s free capture-the-flag platform for beginners — practice web, crypto, forensics and reversing challenges year-round, a safe and legal place to practice (now on Carnegie Mellon’s free CyLab Security Academy — 500+ challenges, beginner to advanced).
Computer Basics & Computer Systems
You’ll learn what every part of a computer does, how the fetch–decode–execute cycle works, and how binary represents everything.
- What a computer is; hardware vs. software
- CPU, RAM, storage, motherboard, input/output devices
- The operating system’s job; files and folders
- Binary and data sizes (bits, bytes, GB, TB)
- How a computer works, step by step
Hands-on project
Spec-sheet detective: pick any phone or PC and write down its CPU, RAM, and storage. Then explain — out loud or on paper — what each part does, in one sentence each, without looking anything up twice.
Bits and Binary: the computer’s secret language
This module’s first lesson, taught right here on the site — no other tab needed. It starts at the very bottom: the only language a computer truly understands. Read slowly. Every new word is explained the first time it appears.
The idea, in plain words
A computer does not think in words, pictures, or sounds. Deep inside, it works with electricity — and electricity in a chip is either flowing or not flowing. That is all it has. So everything a computer does must be built from just two states.
Binary is a way of writing numbers with only two digits: 0 and 1. The counting system you use every day has ten digits (0–9) and is called decimal. One single 0 or 1 is called a bit — short for binary digit. A bit is the smallest piece of information a computer can hold.
Why only two digits? A computer chip is made of billions of tiny switches called transistors. A switch has exactly two positions: off and on. Off means 0. On means 1. There is no “half-on” — and that is the point. Two very clear states are fast and hard to mix up, so a computer can flip them billions of times per second without making mistakes.
Bits usually travel in groups of eight. Eight bits together are called a byte. One byte is enough to store one character of text — the letter A, for example, is stored as the byte 01000001.
Everyday example: light switches
Think of a light switch at home. It is either off or on — never anything in between. One switch is exactly like one bit:
- One switch (1 bit): 2 possible states —
0(off) or1(on). - Two switches (2 bits): 4 combinations —
00,01,10,11. - Three switches (3 bits): 8 combinations.
See the pattern? Every switch you add doubles the number of combinations. Keep doubling up to eight switches — one byte — and you get 256 combinations. That is enough for every letter, digit, and symbol on a keyboard, which is exactly why one byte can hold one character.
Sa madaling salita: ang bit ay parang switch ng ilaw — patay (0) o bukas (1) lang. At bawat dagdag na switch, dumodoble ang kayang bilangin.
Worked example 1: counting in binary
In decimal, each place is worth ten times the place before it: 1, 10, 100. In binary, each place is worth double the place before it: 1, 2, 4, 8, and so on. To read a binary number, add up the places that hold a 1. Example: 101 means 4 + 0 + 1 = 5.
| Decimal (the usual way) | Binary |
|---|---|
| 0 | 0 |
| 1 | 1 |
| 2 | 10 |
| 3 | 11 |
| 4 | 100 |
| 5 | 101 |
| 6 | 110 |
| 7 | 111 |
| 8 | 1000 |
Watch how it counts: binary rolls over much sooner than decimal, because it runs out of digits after 1. Where decimal goes 1, 2, … 9, then 10, binary goes 1, then straight to 10.
Worked example 2: adding 5 + 3 in binary
5 in binary is 101, and 3 is 011. (Writing 3 as 011 changes nothing — a zero in front adds no value, like writing 03 in decimal. It just lines the columns up.) Add column by column, from right to left, exactly like ordinary addition:
1 1 carried 1s 1 0 1 = 5 + 0 1 1 = 3 ----------- 1 0 0 0 = 8
- Right column: 1 + 1 = 2. Binary has no digit “2” — 2 is written
10. So write 0, and carry the 1 into the next column. To carry means the extra value moves one column to the left — the same thing that happens in decimal when a column goes past 9. - Middle column: 0 + 1, plus the carried 1, makes 2 again. Write 0, carry 1.
- Left column: 1 + 0, plus the carried 1, makes 2 again. Write 0, carry 1.
- The last carry has no column left to move into, so it becomes a brand-new column on the far left: 1.
The answer reads 1000. Check it in decimal: 1000 in binary is 8, and 5 + 3 = 8. It matches — the computer’s way and your way agree.
Try it: the binary playground
Reading about bits is not the same as touching them. This site has a binary playground in the guide: eight bits you can tap, plus a box where you type a number and watch the bits light up.
- Type 13, then look at which bits turn on: 8 + 4 + 1 = 13.
- Then type 7 and watch the bits change: 4 + 2 + 1 = 7.
- Challenge: tap the bits yourself and make 21 without typing it. (Hint: 16 + 4 + 1.)
Three quick predictions — say your guess out loud first, then tap to check yourself.
A byte is eight bits. What is the biggest number one byte can store?
255.
Every added bit doubles the combinations the lesson counted (1 bit: 2, 2 bits: 4, 3 bits: 8...), so eight bits give 256 combinations, 0 through 255.
The bits 1101 are lit up. What number is the computer seeing?
13.
8 + 4 + 1 = 13 — the same number the playground step asked you to type.
You need the computer to store the number 21. Which bits light up?
16, 4, and 1 (written 10101).
16 + 4 + 1 = 21 — the challenge from the playground list.
Played with it? Then you are ready — the self-check below is this module’s finish line.
The lesson and self-check above are this module’s main path — finishing them means you finished Module 1. If you want to explore these topics further, the free courses below go deeper. They are extras only: none of them is required to finish this module.
More free courses for this module, by category: Computer Systems & Hardware
Internet & Networking
You’ll learn how devices connect, what IP addresses and DNS do, and how a web page travels from a server to your screen.
- What a network is; LAN vs. WAN
- IP addresses and packets
- Routers, switches, and your home Wi-Fi setup
- DNS — the internet’s phonebook
- TCP/IP, HTTP and HTTPS, step by step
Hands-on project
Map your home network: list the devices on your own Wi-Fi, find your router’s IP address (usually on a sticker or in your Wi-Fi settings), and draw the whole thing as a diagram — modem → router → devices.
How computers talk: addresses and packets
This module’s first lesson, taught right here on the site — no other tab needed. It explains how computers find each other and swap information across a network. Read slowly. Every new word is explained the first time it appears.
The idea, in plain words
A network is two or more computers linked together so they can share things — files, messages, games, web pages. The internet is the biggest network of all: millions of smaller networks connected to each other.
Every computer on a network needs an address, so the others know where to send things. That address is called an IP address (IP is short for Internet Protocol — the shared set of rules computers follow when they talk to each other). No address, no delivery.
Data does not travel in one big lump. It is chopped into small pieces called packets. Each packet carries a little of the data, plus the address it is going to and the address it came from — so the pieces can find their way and be put back together at the other end.
The box that moves packets along is called a router. A router reads the address on a packet and forwards it — sends it onward, one step closer to where it needs to go. The Wi-Fi box in your home is a router.
One problem: people remember names, not numbers. So the internet has DNS (short for Domain Name System) — the internet’s phone book. You give DNS a website’s name, and it looks up the matching IP address for you.
Sa madaling salita: parang magkakapitbahay ang mga computer — bawat isa may sariling address, at ang packets ang mga sulat na ipinapadala nila sa isa’t isa.
Everyday example: sending a letter
A network works a lot like the postal service:
- Your house address = the IP address. It tells everyone exactly where to deliver.
- The letter you send = a packet. One piece of the message, travelling on its own.
- The post office sorting office = the router. It reads the address and sends the letter onward, closer to its destination.
What if your letter is too long for one envelope? You tear it into pages and mail each page in its own envelope, numbered 1, 2, 3… The person at the other end puts the pages back in order and reads the whole letter. That is exactly what splitting data into packets is like.
Worked example: opening a website, step by step
Say you open a website. Here is what actually happens:
- You type the site’s name into your browser — a name you can remember, like a friend’s nickname.
- DNS looks up its IP address. The name is easy for you; the number is what computers use. The answer might be
142.250.190.14. - Your request is split into numbered packets. Each packet is small, addressed, and numbered, so nothing gets mixed up on the way.
- Your router forwards each packet along a path toward that address. A packet may pass through several routers on the way, like a letter passing through several sorting offices.
- The reply packets come back. The website lives on a computer called a server — a computer whose job is answering other computers’ requests. Its reply packets travel back to you and are reassembled — put back together in order — into the page you see.
Now look closer at that address: 142.250.190.14. An IP address is four numbers, separated by dots. Each number is called an octet — oct means eight, because each one is stored as eight bits (remember bits and bytes from Module 1?). Eight bits can count from 0 up to 255, so every octet must be between 0 and 255.
Worked check: is 300.1.2.3 a valid IP address? No. The first octet is 300, and 300 is bigger than 255 — an octet can never be that large. One bad number makes the whole address invalid.
Try it: build a valid IP address
Type a number from 0 to 255 in each box. The page checks every octet as you type: a green check means that number is fine, and when all four are valid you’ll see your address joined together.
Worked checks to compare with: 192.168.0.1 is valid — every octet is between 0 and 255. 300.1.2.3 is not valid — the first octet, 300, is bigger than 255.
Built a valid one? Then you are ready — the self-check below is this module’s finish line.
Three quick checks — for each address, decide valid or not, then tap to check yourself.
Your friend writes down the IP address 192.168.1.256. Is it a valid address?
No.
The last octet is 256, and every octet must be between 0 and 255 — 256 is one too many. 192.168.1.25 would be fine.
Is 10.0.0.1 a valid IP address?
Yes.
All four octets are between 0 and 255.
How many octets does every IP address have?
Four, separated by dots.
Every IP address is four numbers separated by dots — each number is one octet, like the four boxes in the builder above.
The lesson and self-check above are this module’s main path — finishing them means you finished Module 2. If you want to explore these topics further, the free courses below go deeper. They are extras only: none of them is required to finish this module.
More free courses for this module, by category: Networking
Coding with Python
Your first real programming: variables, conditions, loops, and functions — then small programs of your own.
- Setup and your first print()
- Variables and input from the user
- Conditions: if / elif / else
- Loops: for and while
- Functions and lists
- Reading error messages without panic
Hands-on project
Build the 5-question quiz game from the project ideas: variables for the score, conditions for answers, one function per question. Then rebuild it about a topic you love.
Variables: the computer’s labeled boxes
This module’s first lesson, taught right here on the site — no other tab needed. It covers the most useful idea in all of programming: keeping things in named boxes so your code can use them again. Read slowly. Every new word is explained the first time it appears.
The idea, in plain words
A variable is a named box in the computer’s memory that holds one value. Memory is the computer’s short-term workspace — where it keeps things while a program is running. You give the box a name, put a value inside it, and from then on you use the name whenever you need that value.
To put a value into a box, you write the name, then an equals sign, then the value — like age = 14. Careful: in code, the = sign does not mean the “equals” you know from math class. It means “put this inside the box.” So read age = 14 out loud as “age gets 14.”
Sa madaling salita: ang variable ay parang lalagyan na may pangalan — lagyan mo ng laman, tapos gamitin mo ang pangalan kapag kailangan mo ang laman.
Everyday example: a labeled kitchen jar
Picture a jar in your kitchen with a label that says “Snacks.” The label is the variable’s name. Whatever sits inside the jar — biscuits today, candy tomorrow — is the value.
You can empty the jar and refill it with something else. The contents change, but the label still says “Snacks.” A variable works exactly the same way: the name stays fixed, and the value inside can change whenever the program needs it to.
Worked example: your first variables
Here is a tiny program in Python — the programming language this module teaches. Python reads a program from top to bottom, one line at a time. Read the code first, then the walkthrough under it.
name = "Ana"
age = 14
print(name)
print("I am", age, "years old")
age = 15
print(age)
name = "Ana"— puts the text"Ana"into a box namedname. Text in a program is called a string — a string of characters, like letters on a string of beads. The quotes are how you mark text: they tell Python “this is text, not an instruction.”age = 14— puts the number 14 into a box namedage. A whole number like 14 is called an integer. Numbers need no quotes — written bare,14is a number the computer can do math with.print(name)—print()shows what is inside a box on the screen. The thing to show goes inside the parentheses — the round brackets. This line showsAna.print("I am", age, "years old")— print can show several things at once, separated by commas. Text in quotes prints exactly as written;ageprints the value inside its box. This line showsI am 14 years old.age = 15— puts a new value into the same box. The old value, 14, is gone — 15 takes its place. The box kept its name; only the contents changed, exactly like the snack jar.print(age)— shows what is in the box now:15. This last line proves the change really happened.
So the whole program prints these three lines:
I am 14 years old
15
Try it: predict the output
Three tiny programs. For each one, say out loud what you think print will show — then tap the button to check yourself. Getting one wrong is fine; that is how the idea sticks.
a = 5 b = 3 print(a + b)
Output
The box names stand in for their numbers: a + b is really 5 + 3, and print shows the result.
fruit = "mango" print(fruit, fruit)
Output
Print can show the same box twice — every time you write the name, Python looks inside the box again.
score = 10 score = score + 1 print(score)
Output
The right side is worked out first: the box holds 10, so score + 1 is 11 — then that result is stored back into the same box, replacing the 10.
Predicted all three? Then you are ready — the self-check below is this module’s finish line.
The lesson and self-check above are this module’s main path — finishing them means you finished Module 3. If you want to explore these topics further, the free courses below go deeper. They are extras only: none of them is required to finish this module.
More free courses for this module, by category: Python
Web: HTML, CSS & JavaScript
You’ll learn how pages are structured, styled, and made interactive — and you’ll publish thinking like a front-end developer.
- HTML: headings, paragraphs, links, images, lists
- CSS: colors, layout, spacing, responsive design
- JavaScript: responding to clicks and input
- How the browser puts it all together
- Front-end vs. back-end, revisited
Hands-on project
Make your own one-page website about anything you like, using the try-coding box in the guide as your practice ground first. Requirement: one JavaScript interaction — a button that changes something on the page.
Your first web page: HTML is the skeleton
This module’s first lesson, taught right here on the site — no other tab needed. You will read a real web page line by line, then change it yourself in the try-coding box. Read slowly. Every new word is explained the first time it appears.
The idea, in plain words
A web page is a document — a file of text — that a browser reads and draws on your screen. The browser is the app you open websites with, like Chrome or Edge. You write the document; the browser turns it into the page you see.
The document is written in HTML, short for HyperText Markup Language. HTML is the skeleton of the page: it says what each part is — this is a heading, this is a paragraph — not how it looks. Color, size, and layout are a different job, done by a different language you will meet soon.
HTML is built from tags. A tag is a short label inside angled brackets, like <h1>. A tag and the content it wraps together are called an element: an opening tag, the content, and a closing tag. A heading is a title line — h1 is the biggest heading of all. A paragraph, written p, is a block of text.
Sa madaling salita: ang HTML ang kalansay ng page — siya ang nagsasabi kung ano ang bawat parte, hindi kung ano ang itsura nito.
Everyday example: building a house
Think of building a house. First comes the wooden frame — the skeleton of the house. The frame decides where the walls stand, and where the doors and windows go. Without a frame, there is nothing to build on.
HTML is that frame. It decides where each part of the page stands. The paint, wallpaper, and furniture come later — that decorating work belongs to CSS, the language that controls how a page looks. A page with no HTML is like a pile of bricks with no plan: all the pieces are lying there, but nothing holds them together.
Worked example: a complete real page
Here is a whole web page — every line of it. It is short, and it really works: a browser would draw it exactly as the walkthrough below describes. Read the code first, then the walkthrough under it.
<!DOCTYPE html>
<html>
<head>
<title>My first page</title>
</head>
<body>
<h1>Hello, world!</h1>
<p>This is my first web page.</p>
</body>
</html>
<!DOCTYPE html>— the first line. It tells the browser: “this is an HTML page.” It is a label for the browser, not a tag, and nothing from it is drawn.<html>— wraps the whole page. Everything else sits inside it, and</html>at the very end closes it.<head>— holds information about the page. The head is never drawn on the screen.<title>My first page</title>— the page’s name. It shows on the browser tab, not on the page itself.<body>— holds everything you actually see: the heading, the text, all of it.<h1>Hello, world!</h1>— a heading, the biggest size. “Hello, world!” is the classic first message programmers write when they try something new.<p>This is my first web page.</p>— a paragraph: one block of plain text under the heading.
One pattern to notice: every opening tag has a matching closing tag, and the closing tag carries a slash — <h1> opens, </h1> closes. Open, content, close. That is an element, every time.
Try it: change the page yourself
Reading code is not the same as touching it. This site has a try-coding box in the guide: you edit real code and watch the preview change as you type. The button below opens it with this lesson’s page already loaded — if you want to type it yourself instead, copy the worked example above into the box.
- Change the words inside the
<h1>to your own name, and watch the big heading change in the preview. - Challenge: add a second
<p>line under the first one, with your favorite food inside it. Remember the pattern: opening tag, your words, closing tag with the slash.
Three quick checks before you open the box — guess each answer, then tap to check yourself.
The page's <title> says "My first page". Where will those words show up — on the page itself, or on the browser tab?
On the browser tab.
The title is the page's name. It shows on the browser tab, not on the page itself.
Which part of a page is never drawn on the screen — the <head> or the <body>?
The <head>.
The head holds information about the page and is never drawn on the screen. The body holds everything you actually see.
This line is broken: <p>My cat<p>. What is missing?
The slash.
Every opening tag has a matching closing tag, and the closing tag carries a slash: it should read <p>My cat</p>. Open, content, close.
Changed the heading and added your line? Then you are ready — the self-check below is this module’s finish line.
The lesson and self-check above are this module’s main path — finishing them means you finished Module 4. If you want to explore these topics further, the free courses below go deeper. They are extras only: none of them is required to finish this module. The links open the courses’ official pages.
More free courses for this module, by category: Web Development
Databases & SQL
You’ll learn how apps store data in tables, and how to ask a database questions with SQL.
- What a database is; tables, rows, columns
- SELECT — reading data
- WHERE, ORDER BY — filtering and sorting
- INSERT, UPDATE, DELETE — changing data
- Joining tables with IDs
- SQLite vs. MySQL — which tool when
Hands-on project
Build the class-records database from the project ideas in SQLite (fake names only): two tables, five practice queries, one JOIN that produces a mini report card.
Databases: where apps keep their data
This module’s first lesson, taught right here on the site — no other tab needed. It shows where apps actually keep their information, and how to ask for exactly the piece you want back. Read slowly. Every new word is explained the first time it appears.
The idea, in plain words
A database is an organized store of information that apps read and write. Reading means looking information up. Writing means saving new information, or changing what is already saved. Nothing inside a database is dumped in at random — everything is kept in a fixed shape, so the app always knows where each piece lives.
The main shape is a table: information arranged in rows and columns, like a spreadsheet. Each row is one record — one complete item, such as one student. Each column is one field — one kind of fact that every row has, such as a name or a grade. So a students table holds one row per student, with a column for each fact about them.
Sa madaling salita: ang database ay isang maayos na imbakan ng impormasyon — parang isang malaking talaan na binabasa at sinusulatan ng mga app.
To ask a database for information, you use a language called SQL, short for Structured Query Language. A question written in SQL is called a query. You will read two real queries in this lesson, line by line.
This is how the apps you already use keep track of their data. A class portal keeps students, sections, and grades in a database. An online store keeps its products, prices, and orders there. A social media app keeps accounts, posts, and likes there. When you open an app and your information appears, the app has just asked its database a question — and the database answered.
Everyday example: a teacher’s class record
You already know a table like this from school: the teacher’s class record, where every student gets a line, and every line carries the same facts.
| Name | Section | Grade |
|---|---|---|
| Ana | Rizal | 92 |
| Ben | Rizal | 85 |
| Carla | Rizal | 97 |
| Dan | Rizal | 78 |
Each row is one student — one record. Each column is one fact kept about every student — one field. A database table is this exact idea, kept inside the app instead of on paper, where it can be searched and sorted in a split second.
Worked example: asking the table questions
Here is that class as a real database table, named students. It has three columns: id, name, and grade. The id is a number that belongs to one row only — no two rows share an id, so the database can always tell rows apart, even if two students someday share a name.
| id | name | grade |
|---|---|---|
| 1 | Ana | 92 |
| 2 | Ben | 85 |
| 3 | Carla | 97 |
| 4 | Dan | 78 |
First question: show the name and grade of everyone in the table.
SELECT name, grade FROM students;
SELECT— the word that opens a question. It means “show me these columns.”name, grade— the columns to show, in that order. Theidcolumn is not listed, so it will not appear in the answer.FROM students— “from this table.” It names the table to look in.- The semicolon
;— ends the question, like the period at the end of a sentence.
Result
| name | grade |
|---|---|
| Ana | 92 |
| Ben | 85 |
| Carla | 97 |
| Dan | 78 |
The answer is itself a small table: the columns you asked for, from every row. And nothing in the original table changed — SELECT only reads.
Second question, a sharper one: which students have a grade of 90 or higher?
SELECT name FROM students WHERE grade >= 90;
SELECT name— show only the name column this time.FROM students— from the students table, same as before.WHERE grade >= 90— the new part.WHEREmeans “only keep rows where this is true.” The database checks each row one by one: is this row’s grade 90 or more? The symbol>=means “greater than or equal to” — so a grade of exactly 90 would count.
Result
| name |
|---|
| Ana |
| Carla |
Ana (92) and Carla (97) passed the check. Ben (85) and Dan (78) were checked too, but their grades are below 90, so their rows were left out. That row-by-row checking is all WHERE does.
Try it: predict the result
Three questions, all on the same students table above. For each one, say out loud which rows you think will come back — then tap the button to check yourself. Getting one wrong is fine; that is how the idea sticks.
SELECT name FROM students;
Result
| name |
|---|
| Ana |
| Ben |
| Carla |
| Dan |
There is no WHERE, so no row is filtered out — all four students come back, and only the name column shows.
SELECT name FROM students WHERE grade >= 95;
Result
| name |
|---|
| Carla |
Only Carla’s 97 reaches 95 — Ana’s 92 misses it, so just one row survives the WHERE check.
SELECT grade FROM students WHERE name = 'Ben';
Result
| grade |
|---|
| 85 |
WHERE name = 'Ben' keeps only Ben’s row, and SELECT grade shows just that row’s grade. The quotes mark Ben as text to match, not a column name.
Predicted all three? Then you are ready — the self-check below is this module’s finish line.
The lesson and self-check above are this module’s main path — finishing them means you finished Module 5. If you want to explore these topics further, the free courses below go deeper. They are extras only: none of them is required to finish this module. The links open the courses’ official pages.
More free courses for this module, by category: Databases & SQL
Operating Systems
You’ll learn what an OS really manages, meet Linux, and get comfortable with files, paths, and the command line.
- What the OS manages: processes, memory, files, devices
- Windows, macOS, Linux, Android, iOS — the family tree
- File systems, paths, and permissions
- The command line: pwd, ls, cd, mkdir
- Users, accounts, and why “admin” is powerful
Hands-on project
Command-line day: open a terminal on any PC and navigate using only commands — make a folder tree for your projects, create files, move them, list everything. Bonus: try a Linux live environment or WSL on a machine you own or have permission to use.
The operating system: the manager inside your device
This module’s first lesson, taught right here on the site — no other tab needed. It explains the one program that runs everything else on your phone or computer. Read slowly. Every new word is explained the first time it appears.
The idea, in plain words
Start with the machine in your hand or on your desk. A device is a physical machine — a phone, a tablet, a laptop, a desktop computer. Its physical parts are called hardware: the screen, the keyboard, the battery, and the chips inside. Hardware on its own does nothing. It needs instructions before it can do a single useful thing.
A program is a set of instructions that tells hardware what to do, step by step. An app is a program built for one job you care about — sending messages, taking photos, playing a game. And a file is one saved piece of information with a name: one photo, one song, one document.
Now the star of this module. An operating system (short: OS) is a program — the first big one that starts when you switch a device on. Its job is to manage everything else: which app runs, where your files are kept, and how apps get to use the screen, the keyboard, the storage (the part of the device that keeps your files), and the camera. You never open the OS the way you open an app. It is simply in charge, all the time, behind everything you see.
You already know several operating systems, even if you never called them that. Windows runs most laptops and desktops. macOS runs Apple’s Mac computers. Linux is free, and it runs most servers — powerful computers that hold websites and apps for other computers to use. Android, the OS on most phones, is built on Linux. iOS is the OS on iPhones.
Sa madaling salita: ang OS ang manager ng device mo — siya ang nagpapasya kung anong app ang tatakbo, at siya ang nag-iingat ng lahat ng iyong files.
Everyday example: the school principal
Picture a school. The students are like apps — each one has somewhere to be and something to do. The classrooms and desks are like the computer’s memory (the workspace where work happens right now) and its processor (the part that does the actual work, following instructions). And the principal? The principal is the OS.
- The principal decides who gets which room. The OS decides which app gets to use the processor, and for how long.
- The principal keeps the filing room, where every student record is stored and can be found again. The OS keeps your files in storage, so any app can find them later.
- The principal makes sure two classes never clash over one room. The OS shares the hardware fairly, so apps take turns instead of fighting over the screen, the camera, or the processor.
A school without a principal would be chaos — every class grabbing whatever room it wants. A device without an OS is the same: hardware with nobody in charge.
Worked example: what happens when you tap an app icon
You tap the icon for a game. Here is what the OS does, in order — all of it in about a second:
- The screen tells the OS your finger tapped. The touchscreen notices the touch and reports exactly where it landed. The OS works out which icon you meant.
- The OS finds the app in storage. Storage is the device’s filing cabinet: it holds every app and file, and it keeps them even when the power is off. The price of that safety is speed — fetching from the cabinet is slow.
- The OS copies the app into RAM. RAM is the device’s desk: a fast workspace where running apps sit. It is much faster than storage — but it forgets everything the moment the power goes off. That is why the app is copied there, not moved.
- The OS tells the CPU to start. The CPU is the worker — the part that follows instructions and does the calculating. The OS hands it the app’s first instructions, and the game starts running.
- The OS draws the app’s window on the screen. A window is the area of the screen where one app shows itself. The OS gives the game its window and paints it for you to see.
- The OS keeps the other apps paused in the background. Your chat app and music app do not close. The OS holds them in RAM, paused, and switches the CPU between all of them so quickly that it feels like everything runs at once. Running several apps this way is called multitasking.
Notice who did every step: the OS. The game never touched the hardware directly — it asked the manager, and the manager arranged everything.
Try it: who does this job?
Three everyday moments from the lesson. For each one, say out loud who does the job — then tap the button to check yourself. Getting one wrong is fine; that is how the idea sticks.
You take a photo and tap Save. The next day, the photo is still there, in the same place, under its name. Who made sure of that?
The OS — its file-management job.
Saving is the OS’s work: it writes the photo into storage and remembers where it put it, so the app can ask for it back any time.
You are on a video call. Without ending the call, you open the camera app to snap a photo. Two apps now want the camera at the same time. Who decides which one gets it?
The OS decides.
Only one app can use a piece of hardware at a time, so the OS hands out turns fairly — the second app waits, or gets a polite “camera busy” message.
Your phone pops up a warning: “Storage almost full.” What is actually full — and what can you do about it?
The storage — the filing cabinet — is full, so new files have nowhere to go and saving starts to fail.
The fix is yours to make: delete files or apps you no longer need, or move photos to a computer or another backup, and the OS can save again.
Got all three? Then you are ready — the self-check below is this module’s finish line.
The lesson and self-check above are this module’s main path — finishing them means you finished Module 6. If you want to explore these topics further, the free courses below go deeper. They are extras only: none of them is required to finish this module. The links open the courses’ official pages.
More free courses for this module, by category: Operating Systems
Cybersecurity & Ethical Hacking
Placed here on purpose: you now know enough networking, coding, and operating systems for security to make sense. You’ll learn how attacks and defenses work at a concept level, and how ethical hackers legally practice.
- Threats: malware types, phishing, weak passwords
- Defense: updates, 2FA, backups, least privilege
- Black hat vs. white hat vs. researcher
- What a penetration test is (permission, scope, report)
- Legal practice: your own lab, TryHackMe, Hack The Box, CTFs
- The law: RA 10175 and why permission is everything
Hands-on project
A home security audit — of your own accounts only: turn on 2FA everywhere it exists, replace any reused password, update every device, and set up one backup. Write a one-page report of what you fixed, like a real pentester’s report. Then, if you want the attacker’s view, open a free TryHackMe beginner room — a lab built for it.
Staying safe online: what cybersecurity really is
This module’s first lesson, taught right here on the site — no other tab needed. It explains what cybersecurity means, who the good and bad hackers are, and how to spot the most common trick used against ordinary people. Read slowly. Every new word is explained the first time it appears.
The idea, in plain words
Cybersecurity means keeping computers, phones, accounts, and data safe from people who try to steal, damage, or break into them. Your data is the information about you stored on a device or online — your photos, messages, school files, and passwords. An account is your personal space on a website or app, the one you open with a username and password — like your school portal account or your email account.
A hacker is a person who tries to get into computer systems — sometimes to protect them, sometimes to harm them. That difference is everything in this module, and it comes down to one word: permission.
A white hat hacker tests and protects systems with permission. The owner asks them to look for weak spots, so those weak spots can be fixed before anyone bad finds them. A black hat hacker breaks in without permission, to steal or damage things. Same skills, opposite sides — permission is what separates the two.
That is not just a rule of politeness; it is the law. Testing a system without the owner’s clear permission is illegal. In the Philippines, Republic Act 10175 — the Cybercrime Prevention Act of 2012 — makes unauthorized access (breaking into a system that is not yours) and online fraud crimes. Curiosity is good, and this site points you to legal places to practice it. Permission always comes first.
Sa madaling salita: ang cybersecurity ay ang pagprotekta sa iyong mga account at data — at ang pahintulot ang hangganan ng tama at ilegal.
Everyday example: a house with doors and locks
Think of your online life as a house. Your accounts are the rooms inside, and your data is everything you keep in them. Keeping the house safe works the same way online:
- You lock your doors at night. Online, that means strong passwords — they are the locks on your accounts, so use long ones that are hard to guess.
- You don’t hand your keys to strangers. Never share your passwords or one-time codes (the short numbers sent to your phone to prove it is really you) with anyone who asks.
- A guard at the gate checks IDs before letting anyone in. That is what logging in does: the website checks your username and password to verify you are really you before it opens the door.
None of this needs special tools. Most online safety is ordinary habits, done every time — just like locking a door.
Worked example: spot the phishing email
Phishing is a trick: a fake message that pretends to come from someone you trust — a bank, a school, a delivery company — so you will hand over your password or your money. Here is a short fake email from a scammer pretending to be a bank. Read it, then we take it apart line by line.
From: support@secure-banko-alerts.com
Subject: URGENT: verify your account in 24 hours
Dear customer, we noticed unusual activity on your account. Your account will be closed in 24 hours unless you verify it now.
Click here to verify and type your password to keep your account open.
Now the walkthrough — three warning signs, in order:
- The sender’s address is not the bank’s real address. It says secure-banko-alerts.com — a made-up name that only sounds official. Always check the domain: the main part of an address, the part after the @ sign. A real bank message comes from the bank’s own domain, not a look-alike.
- The email creates panic. “24 hours or your account closes” is meant to make you rush before you think. Real banks do not threaten you like this — pressure is the scammer’s main tool.
- The link asks you to type your password on a strange page. Never do that. If you are worried about your account, close the email and open the bank’s real app or website yourself, the way you normally would. If nothing is wrong there, the email was fake.
Try it: real or phishing? You decide.
Three messages. For each one, decide first — is it safe, or is it a trick? — then tap the button to check yourself. Getting one wrong is fine; that is how the idea sticks.
A text message arrives: “Your package is waiting! Claim it here: bit.ly/free-pkg9” You are not expecting any delivery. Real or phishing?
Phishing.
You ordered nothing, and the shortened link hides where it really leads — a mystery link. Never tap it; delete the message.
A friend messages you: “What’s your school portal password? I’ll log in for you.” Your friend means well. Safe or unsafe?
Unsafe — don’t share it.
Never share passwords, even with friends. Your password is yours alone; once it leaves you, you no longer control who has it.
An email from your school’s real address reminds you about a real deadline — one you already knew about — and includes a link to the school portal. Real or phishing?
It looks legit — but use the safe habit anyway.
Don’t click the email’s link. Open the school portal yourself, the way you normally do, and check the deadline there.
Got all three? Then you are ready — the self-check below is this module’s finish line.
The lesson and self-check above are this module’s main path — finishing them means you finished Module 7. If you want to explore these topics further, the free courses below go deeper. They are extras only: none of them is required to finish this module. The links open the courses’ official pages.
More free courses for this module, by category: Cybersecurity & Ethical Hacking
Next Steps: Degree & Career Prep
You’ll tie everything together: study skills for the math ahead, a portfolio of finished projects, and a head start on first-year college subjects — or, if you’re self-taught, a plan for turning skills into applications.
- Math for IT: logic, algebra, and how to study them
- Reading technical English (documentation is a skill)
- Git & GitHub basics: saving your code’s history
- Turning your module projects into a portfolio
- Preview: data structures and discrete math
- Choosing your path: an IT degree vs. CS vs. CompE — or self-taught, revisited
Math for IT: logic, algebra, and how to study them
This module’s first lesson, taught right here on the site — no other tab needed. It covers the two kinds of math IT students meet first — logic and algebra — and, just as important, how to study them so they actually stick. Read slowly. Every new word is explained the first time it appears.
The idea, in plain words
Logic is reasoning with two answers only: true and false. Something is either true, or it is false — nothing in between. Logic is the math of deciding, step by step, whether a statement is true.
You have already met logic in this course. In Module 1, you learned that a computer stores everything as bits — tiny switches that are either 0 or 1. Bits are just logic in disguise: 0 means false, and 1 means true.
And in Module 3, the Python lesson used if statements — lines that tell the program, “if this is true, do that.” Every if condition is a small logic question with a true-or-false answer. So logic is not new to you; this lesson just gives it a name and a shape.
The basic tool of logic is the truth table: a chart that lists every combination of inputs and the answer each one gives. You will read two truth tables in the worked example below — slowly, row by row.
Algebra is math with an unknown number. The unknown is usually written as a letter, most often x. Algebra is the part of math that teaches you to rearrange a problem — move things from one side to the other — until the unknown stands alone and you can solve for it. When a program computes a total price, or a game updates a score, algebra is working underneath.
In college, this kind of math — logic, plus sets (groups of things, like the set of all students in one class) — has its own subject name: discrete math. It sounds scary, but it is mostly what this lesson covers: yes-or-no questions and careful step-by-step reasoning. When you meet the name later, you will already know what it means.
Sa madaling salita: ang logic ay pangangatwiran gamit ang true at false, at ang algebra ay math na may hindi pa alam na numero.
Worked example: solving for x, one move at a time
Here is a small problem in the kind of words a game would use: You need 100 points to reach the next level, and you already have 35. How many more do you need?
You probably solved that in your head already. Algebra is just a careful way to write the same problem down: 35 + x = 100. Here, x is just a name for the number you don’t know yet — the points still missing.
There is really only one rule of algebra: whatever you do to one side of the equals sign, you must do to the other side too. That is what keeps the two sides equal.
So, take 35 away from both sides: 35 − 35 + x = 100 − 35. The left side simplifies to just x standing alone, and the right side gives the answer: x = 65.
Now check it back, the way you would check any answer: 35 + 65 = 100. It works — the two sides really are equal.
This is exactly what your Python programs do — x = 100 - 35 is the computer “solving for x” by rearranging, the same move you just made.
Sa madaling salita: sa algebra, ilipat-lipat ang mga numero hanggang ang x na lang ang mag-isa — at kung ano ang ginawa mo sa isang side, gawin mo rin sa kabilang side.
Everyday example: the umbrella decision
Students make logic decisions like this every day, without noticing. Here is one, in everyday words:
Kung umuulan AND wala akong payong → mag-jeep ako. (“If it is raining AND I have no umbrella → I will ride a jeep.”)
Look at the AND hiding inside that sentence. Two conditions must both be true before the decision happens:
- It is raining — true or false?
- I have no umbrella — true or false?
If it rains but you do have an umbrella, you might just walk with it. If it is sunny, umbrella or not, you walk. Only when both conditions are true at the same time does the jeep decision happen. That is an everyday if/then sentence with an AND inside it — the same shape as an if statement in code.
Worked example: the AND truth table, row by row
Now the same idea as a small machine: a lamp wired to two switches, A and B, where the electricity must pass both switches to reach the lamp. In logic, this wiring is called AND. Here is its truth table. On means 1 (true); off means 0 (false).
| Switch A | Switch B | Lamp |
|---|---|---|
| off | off | off |
| off | on | off |
| on | off | off |
| on | on | ON |
Here is how to read any truth table, using this one:
- Each row is one combination. Two switches have exactly four possible combinations — off/off, off/on, on/off, on/on — so the table has four rows. Nothing is missing: every possibility gets its own row.
- Read each row left to right. First the inputs (Switch A, then Switch B), then the answer. Row 3, for example, says: A is on, B is off.
- The last column is the answer. The Lamp column tells you what that combination produces. Row 3’s answer: the lamp stays off, because the off switch blocks the path.
- Look for the pattern. The lamp turns on in exactly one row — the row where both switches are on. That is the whole rule: AND = output on only when ALL inputs are on.
Now change the wiring so the electricity can pass through either switch. That wiring is called OR. Same four combinations — only the answers change:
| Switch A | Switch B | Lamp |
|---|---|---|
| off | off | off |
| off | on | ON |
| on | off | ON |
| on | on | ON |
Read it the same way: one row at a time, inputs first, answer last. The lamp is on in three of the four rows — every row except the one where both switches are off — because OR = output on when AT LEAST ONE input is on.
NOT: flip the answer
There is one more basic logic word, and it is the simplest of the three: NOT. NOT flips a statement’s answer — true becomes false, false becomes true. It has only one input, so its truth table is the smallest you will ever see:
| Switch A | Lamp |
|---|---|
| off | ON |
| on | off |
Read it row by row, the same way as before: switch off → lamp ON; switch on → lamp off. Picture the lamp as a night-light that stays on until someone flips the switch — the switch being on is exactly what turns the lamp off. That is the whole rule: NOT = output is the opposite of the input.
In programming, NOT shows up everywhere: in Python, != means “not equal to”, and the word not flips a condition, as in if not finished: — “if it is NOT true that I am finished, do it again.” Same flip, same table.
Sa madaling salita: ang NOT ay pambaligtad — ang true nagiging false, ang false nagiging true.
How to study math for IT
Knowing the ideas is half the work. The other half is studying in a way that makes them stay. Three moves that work:
- Try the worked example yourself first. After you read an idea, close the explanation and work the example again on your own — with different numbers, or different switch settings — before looking at the answer. Struggling a little first is what makes the answer stick when you check it.
- Space it out. Three short sessions on three different days beat one long cram session the night before. Your brain keeps what it recalls again and again, so coming back to an idea on a new day is not wasted time — it is the method.
- Treat mistakes as the lesson. When a practice answer comes out wrong, do not just read the right answer and move on. Find exactly which row or step broke — the same way you debug a program — because that broken step is the thing you actually needed to learn.
Try it: predict the answer
Five quick predictions. Decide your answer first — then tap the button to check yourself. Getting one wrong is fine; that is how the idea sticks.
A lamp is wired the AND way. Switch A is on (1) and Switch B is off (0). Is the lamp on or off?
Off.
AND needs both switches on. With B off, the path is blocked — so the lamp stays off.
The same lamp is rewired the OR way. Switch A is off (0) and Switch B is on (1). Is the lamp on or off?
On.
OR needs at least one input on. B is on, and that is enough — the lamp lights.
A night-light is wired the NOT way: it stays on until the switch is flipped on. If the switch is on (1), is the lamp on or off?
Off.
NOT flips the input. The switch is on, so the lamp is the opposite — off.
Two study plans for a first logic quiz. Plan (a): read the chapter once, the night before, for 2 hours straight. Plan (b): read it three days in a row, 25 minutes each day, and try practice questions each time. Which plan builds the logic muscle better — and why?
Plan (b).
Spaced practice with questions beats one long reading. The brain keeps what it recalls repeatedly — three short sessions, each with trying-it-yourself, give it three chances to hold on.
In the worked example, 35 + x = 100. What is x — and which move finds it?
x = 65.
Take 35 away from both sides of the equation — the same move on each side — and x stands alone: 100 − 35 = 65.
Got all five? Then you are ready — the self-check below is this module’s finish line.
Hands-on project
The portfolio page: one simple website (Module 4 skills) that shows your quiz game, your network map, your database project, and your security audit report. This single page is what you show anyone who asks, “so what can you do?”
The lesson and self-check above are this module’s main path — finishing them means you finished Module 8. If you want to explore these topics further, the free courses below go deeper. They are extras only: none of them is required to finish this module. The links open the courses’ official pages.
More free courses for this module, by category: Coding & General Programming
The Bookshelf
Every resource the Course uses, shelved in one place. All of these are free to start learning from — and in the Course view, they’re also organized by topic, with the honest notes about certificates.
Coding & general programming
freeCodeCamp
Thousands of hours of hands-on coding lessons — web design, JavaScript, Python, databases — with free certificates when you finish the projects.
Visit site University course · HarvardCS50x — Introduction to Computer Science
Harvard’s full intro to computer science, free on Harvard’s own site: how computers work, C, Python, SQL, and web basics. CS50’s own certificate is free on completion; the edX verified certificate is the paid extra.
Visit site Lessons & practiceKhan Academy — Computing
Gentle, well-explained computing lessons: programming, the internet, data, and SQL — plus math practice for school and college.
Visit sitePython
CS50P — Python, Harvard
Harvard’s introduction to programming with Python, free on Harvard’s own site. CS50’s own certificate is free on completion; the verified certificate on edX is the paid extra.
Visit site Video courses · YouTubefreeCodeCamp — YouTube
Full-length video courses on Python, JavaScript, HTML/CSS, and more — free to watch, no account or certificate, just press play.
Visit channelDatabases & SQL
SQLBolt
Learn SQL through short interactive lessons and exercises that run right in your browser — no setup, no account, no certificate.
Visit site Tutorials with try-it editorW3Schools
Short, example-first tutorials for web languages and SQL, each with a “try it yourself” editor. Great for quick lookups. (Its certificates are paid extras.)
Visit siteWeb development
MDN Web Docs
The web developer’s encyclopedia: tutorials and references for HTML, CSS, and JavaScript, maintained by Mozilla and the community.
Visit site Full web-dev curriculumThe Odin Project
A complete, project-based path to web development — HTML, CSS, JavaScript, Git, databases — free and open source, no paywalls.
Visit siteNetworking
Computer systems & hardware
OpenStax
Peer-reviewed college textbooks, free online and as PDFs — useful for the math and science subjects in senior high and college.
Visit site Job training · Google on CourseraGoogle IT Support Certificate
Google’s training program for entry-level IT support roles: troubleshooting, networking, operating systems, and security. The certificate program is paid; Coursera offers financial aid to learners who qualify.
Visit site University course · Hebrew University of Jerusalem on CourseraBuild a Modern Computer from First Principles: From Nand to Tetris
Build a working computer from a single Nand gate up through CPU and machine language, in six hands-on projects using a free hardware simulator — self-contained, no previous CS knowledge required. Taught by Noam Nisan and Shimon Schocken. Certificate: paid (full course content free to learn).
Visit siteOperating systems
Cisco — Operating Systems Basics
Cisco’s free Operating Systems Basics course on Skills for All: what an operating system is, basic OS security, and how to set up mobile devices — free to finish, with a free digital badge.
Start the free course Linux practice game · OverTheWireOverTheWire: Bandit
A free beginner game that teaches real Linux commands — you log into levels over SSH and each level is a small puzzle about files, permissions and searching text. Free, no certificate — the skills are the proof.
Visit siteCybersecurity & ethical hacking
TryHackMe
Guided, hands-on cybersecurity labs for beginners — the legal way to practice security skills. Free rooms to start; a premium plan is optional.
Visit site Capture-the-flag practice · Carnegie MellonpicoCTF
Carnegie Mellon’s free capture-the-flag platform for beginners — practice web, crypto, forensics and reversing challenges year-round, a safe and legal place to practice (now on Carnegie Mellon’s free CyLab Security Academy — 500+ challenges, beginner to advanced). Free, no certificate.
Visit site