50+ Terms Explained
Coding Glossary 📚
I built this because I kept hitting words I didn’t understand when I was learning. No textbook speak here. Every term explained in plain English — with a real-life analogy and a code example you can actually use.
🔍
50+Terms
6Categories
100%Plain English
FreeAlways
📌
How to use this glossary: Hit a word you don’t recognise while reading? Search it here. Read the plain English definition, check the real-life analogy, look at the code example — then move on. You will remember it naturally as you practice. No cramming needed.
😕 No terms found for ““. Try a slightly different word.
🧱
Core Terms
Fundamental building blocksVariable Core
Picture a sticky note on your wall. You write something on it, stick a label on top, and pull it out whenever you need it. That is a variable — a named container that holds one value at a time. Change the value anytime you like.
city = "Lahore"Array Core
Instead of 10 sticky notes scattered everywhere, imagine one notebook with numbered pages — each page holds one value. That notebook is an array. One variable, many values, all in order and easy to reach.
students = ["Ali", "Sara", "Jack"]Loop Core
You know how a washing machine spins the same cycle until it is done? A loop does exactly that — runs the same block of code again and again so you never have to write the same thing twice. When I first learned loops I felt like I found a cheat code.
for i in range(5): print(i)Function Core
Think of a function like a recipe card. You write the steps once, give it a name like makeChai, and call that name whenever you want chai — no rewriting. The secret behind clean, professional code.
def make_chai(): print("Brewing!")String Core
Any text inside your code lives in quote marks — that is a string. Your name, a message, an emoji — if it is wrapped in quotes, it is a string. The computer treats it as text, not a command. Mix them up and things break.
"Salam!" | "basiccodingconcepts.info"Object Core
Imagine a contact card in your phone — one card holds name, number, city for one person. An object works exactly like that. One variable that groups multiple pieces of related information together. The building block of every real app.
person = {"{"}name:"Ali", age:22{"}"}Index Core
The address of an item inside an array. Here is the catch — computers start counting from 0, not 1. So the first item lives at index 0. The second at index 1. Always one less than you expect. Every beginner trips on this at least once.
students[0] → "Ali" (first item)Comment Core
A note you leave inside your code — for yourself or anyone reading it later. The computer skips it completely. Like writing a sticky note in the margin of a textbook — the book does not care, but future-you absolutely does.
# This prints the user's name📊
Data
Types of informationData Type Data
Every value in your code belongs to a category. The number 5 is different from the text “5”. One you can do maths with — one you cannot. Data types tell your program which category a value falls into. Mix them up and you get confusing bugs.
5 is int | "5" is stringInteger (int) Data
A whole number — nothing after the decimal point. Perfect for counting things that cannot be half — students in a class, items in a cart, years of experience. The most common number type you will use.
age = 22 | score = 95Float Data
A number with a decimal point. Use it when precision matters — prices, percentages, GPS coordinates. Anything that lives between two whole numbers. 8.5 out of 10. PKR 499.99. 33.6°N latitude.
price = 499.99 | score = 8.5Boolean Data
The simplest data type in existence — it is either True or False. Nothing else. Used to answer yes/no questions in code. Is the user logged in? Did the payment go through? Is the score above 50? Yes or no.
is_online = True | passed = FalseNone / Null Data
The value that means “nothing is here yet.” Like an empty field on a form — it exists, but nothing has been filled in. In Python it is None. In JavaScript it is null. Not zero. Not an empty string. Just nothing.
result = None ← no value yetDictionary Data
Like an actual dictionary — you look up a word to find its meaning. In Python, you look up a key to find its value. Perfect for storing things that naturally come in pairs — username and score, city and country, name and phone number.
{"{"}"city": "Lahore", "country": "PK"{"}"}Operator Data
The symbols that do the actual work. Maths operators add and subtract. Comparison operators check if things are equal or greater. You already know most of these from school — coding just uses them slightly differently.
+ - * / == != > < and orConcatenation Data
Joining two strings together into one — like gluing two pieces of paper side by side. “Hello” + ” ” + “Ali” becomes “Hello Ali”. Simple idea with a fancy name. You will use this every single day when working with text.
"Hello" + " Ali" → "Hello Ali"🔀
Control Flow
How programs make decisionsIf / Else Flow
Your program’s decision maker. “If it is raining, take an umbrella. Else, wear sunglasses.” Your brain runs if/else all day without realising it. Without this, your code does the same thing every single time — no matter what.
if marks >= 50: print("Pass")For Loop Flow
Best for when you know exactly how many times to repeat. “Do this 10 times.” Or “go through every item in this list, one by one.” Clean, predictable, and the first loop every beginner should learn.
for name in names: print(name)While Loop Flow
Best for when you do not know the count in advance. “Keep asking for the password until the user gets it right.” It runs as long as the condition stays true — then stops on its own. Pair with break to be safe.
while not correct: ask_again()Break Flow
The emergency exit of a loop. The moment your code hits break, it leaves the loop immediately — no matter how many rounds are left. Use it when you have found what you needed and staying in the loop wastes time.
if found: break ← exit nowContinue Flow
Not an exit — just a skip. “Skip this round, keep going.” The loop stays running, but the current item is ignored and execution jumps straight to the next one. Useful for filtering out items you do not need to process.
if x == 0: continue ← skip zeroCondition Flow
A question your code asks — and the answer is always True or False. “Is the user logged in?” “Is the score above 80?” The result of that question controls what your code does next. Every if statement needs one.
age >= 18 → True or FalseIteration Flow
One complete run of a loop. If your loop runs 5 times, it has 5 iterations. You will hear developers say “on each iteration” — they just mean each time the loop goes around. Same word, simple concept.
5 loops = 5 iterationsNested Loop Flow
A loop inside another loop. Like a clock — the minute hand completes a full circle for every single tick of the hour hand. Powerful for working with grids, tables, or anything two-dimensional. Gets confusing fast — keep them simple.
for row in grid: for col in row:⚙️
Functions
Reusable code blocksParameter Functions
A blank field inside a function waiting to be filled in. Like a form that says “Enter Name Here” — the parameter is the blank space. You fill it with real data when you actually call the function.
def greet(name): ← name is blankArgument Functions
The actual thing you fill into that blank field. When you call greet(“Sara”), you are passing “Sara” as the argument. It fills the parameter inside the function. Parameters wait. Arguments fill them.
greet("Sara") ← "Sara" fills blankReturn Functions
A function that only prints is like a microwave that beeps but hands you nothing. Return actually gives the result back to the code that called it — so you can store it, use it, or pass it somewhere else.
def add(a,b): return a + bScope Functions
Where a variable can and cannot be seen. Variables created inside a function stay inside it — like what happens in a room, stays in that room. Outside code is blind to them. Understanding scope stops some of the most confusing bugs beginners ever face.
x inside def → invisible outsideArrow Function Functions
JavaScript’s shortcut for writing functions. Same result — less typing. The → symbol replaces the word “function”. Once you see them in real code you will spot them absolutely everywhere in modern JavaScript projects.
const double = n => n * 2;Default Parameter Functions
A safety net for your function. If someone calls it without passing a value, the default kicks in automatically. Like a cafe that gives you regular milk unless you specifically ask for oat. No crash. Just sensible fallback behaviour.
def order(drink="tea"): ...Method Functions
A function that belongs to something. .upper() belongs to strings. .append() belongs to lists. You call a method using a dot — and it already knows which object it is working on. No need to pass the object in.
"hello".upper() → "HELLO"Calling a Function Functions
Defining a function writes the recipe. Calling it actually cooks the food. You call a function by writing its name with parentheses — that is what triggers everything inside to run. Without calling it, it just sits there doing nothing.
make_chai() ← this runs it now🐛
Errors & Debugging
Finding and fixing problemsBug Errors
Any mistake in your code that makes it misbehave — crash, give wrong output, or act strangely. Not a sign you are bad at coding. Every developer writes bugs. Every single day. The good ones just find them faster. Your first bug means you are officially a real coder.
Wrong formula = wrong result = bugDebugging Errors
The detective work of coding. Something is wrong — you do not know what or where. Debugging is tracking it down and fixing it. I spent half my early coding life debugging. It is a skill you build every day and use forever.
Add print() → find the bugSyntax Error Errors
You broke the grammar rules of the language. A missing bracket, a typo in a keyword, a forgotten colon. Your code will not even start until it is fixed. But the error message usually tells you exactly where to look — read it, do not panic.
print("Hi" ← missing closing )Runtime Error Errors
Code that starts fine but crashes mid-run. Syntax was perfect — the problem only appeared when the program was actually executing. Like a car that starts fine but stalls at a red light. Division by zero is the classic example.
Accessing index 10 in a 5-item listLogic Error Errors
The sneakiest bug in existence. No crash. No error message. Code runs perfectly — and gives you the completely wrong answer. Like following a recipe correctly but using salt instead of sugar. Everything “works” but tastes terrible. Hardest to find.
÷ 3 instead of ÷ 2 for averageconsole.log() Errors
JavaScript’s most used debugging tool — and honestly one of the most used lines in all of web development. Print any value to the browser console and see exactly what your variable holds at that moment. Temporary. Essential. Used by everyone.
console.log(total); → see valueError Message Errors
The text your program shows when something breaks. Most beginners close it in panic — that is the single biggest mistake. Read it. It tells you the error type, the file, and the exact line number. That is free debugging help handed to you on a plate.
NameError: 'x' not defined, line 5Exception Handling Errors
A way to deal with errors without crashing. You “try” something risky, and if it fails, the “except” block catches it and handles it gracefully. Like a safety net under a tightrope walker — the show goes on even when something goes wrong.
try: risky() except: handle_it()📖
General Programming
Common terminologyAlgorithm General
A clear, step-by-step plan to solve a problem. Not code — just the logic. Like directions to a location: turn left, go straight, turn right. Making a cup of chai is an algorithm. Code is just how you write those directions in a language a computer understands.
Sort → compare → swap → repeatSyntax General
The rules of how to write code in a specific language. English has grammar rules — programming languages have syntax. Break a syntax rule and your code simply will not run. Every language has different rules. Python cares about indentation. JavaScript cares about semicolons.
Python needs : and indentationIDE General
The app where you actually write code. IDE stands for Integrated Development Environment — fancy way of saying “a code editor with helpful tools built in”. VS Code is what most beginners and professionals use. Start there.
VS Code, Replit, PyCharmOutput General
Whatever your program produces and shows to the user. Text on screen, a downloaded file, a sound, an image — anything your code sends out into the world. print() in Python. console.log() in JavaScript. The result of your program’s work.
print("Salam!") → Salam! on screenInput General
Data that comes into your program from the outside world. A user types something, a file is uploaded, a button is clicked — all of that is input. Without input, programs cannot respond to the real world. They just run the same thing every time.
name = input("Your name? ")Library / Module General
Code someone else already wrote that you can borrow. Need to do maths, generate random numbers, or work with dates? There is already a library for that. Do not build everything from zero. import it, use it, move on. This is how real developers work.
import random | import mathAPI General
A way for two programs to talk to each other. Think of a restaurant waiter — you do not walk into the kitchen yourself, you tell the waiter what you want, and they bring it back. The waiter is the API. You never see the kitchen code.
Weather app asks weather API → gets dataOpen Source General
Software whose code is open for anyone to read, use, or improve. Most tools you use as a beginner are open source — Python, VS Code, React. Free because thousands of developers built them together over years. You will use open source code every single day.
Python, VS Code, Linux — all open sourceVersion Control General
A system that saves every version of your code as you build it. Made a mistake that broke everything? Roll back to yesterday’s version. Git is the tool. GitHub is where developers store and share those versions. Every professional uses it every day.
git commit -m "added login page"Compiler / Interpreter General
Your code is human-readable — computers need machine instructions. A compiler translates everything at once before running. An interpreter does it line by line as it runs. Python interprets. C compiles. Both get to the same result — different roads.
Python → interpreter → runs line by line