The Developer's Glossary: Terms I Wish I Knew Sooner


Hi everyone. If you're like me, you've probably built entire features thinking "I know how this works... but what's the fancy name for it?" After years of shipping code by intuition, I finally sat down to decode the jargon. Here's my expanded cheat sheet β with examples from our daily grind.
βοΈ Core Programming Concepts
1. Compilation
What I did: "Turning my Python/Java into something the computer understands"
The term: Converting human-readable code β machine-executable binary.
# Compile C code
gcc hello.c -o hello # Creates executable 'hello'
Key insight: Syntax errors caught here (missing braces, type mismatches).
2. Runtime
What I fought: "It works until I click that button!"
The term: When your code is executing (post-compilation).
print(10 / 0) # Compiles fine β crashes at runtime
3. Serialization/Deserialization
What I built: "Saving user data to a file or API"
The term: Object β storable format (JSON/XML).
import json
user = {'name': 'Alice', 'active': True}
# Serialize
json_str = json.dumps(user) # β '{"name": "Alice", "active": true}'
# Deserialize
data = json.loads(json_str) # β Python dict
4. Recursion
What I implemented: "Function that calls itself"
The term: Solving problems by self-referential calls.
function factorial(n) {
return (n <= 1) ? 1 : n * factorial(n - 1);
}
factorial(5); // 120
Watch for: Stack overflows without base cases!
5. Polymorphism
What I used: "Same method, different behaviors"
The term: Objects responding differently to the same call.
interface Shape { double area(); }
class Circle implements Shape { area() { /* ΟrΒ² */ } }
class Square implements Shape { area() { /* sideΒ² */ } }
// Same method call:
shape.area(); // Works for Circle/Square
π Database Deep Dive
1. Indexing
What I thought: "Magic that makes queries faster"
The term: Search-optimized lookup structures (like book indexes).
-- Without index: Full table scan (slow)
SELECT * FROM users WHERE last_name = 'Smith';
-- Add index
CREATE INDEX idx_lastname ON users(last_name);
-- With index: Direct lookup (fast)
Trade-off: Faster reads, slower writes (indexes update on write).
2. Sharding
What I built: "Splitting the database when it gets huge"
The term: Horizontal partitioning across servers.
Shard 1 (USA): UserID 1-10M
Shard 2 (EU): UserID 10M-20M
Why: Distribute load, scale writes.
3. Normalization
What I did: "Organizing data to avoid duplicates"
The term: Structuring databases to minimize redundancy.
# Before:
Orders [OrderID, CustomerName, CustomerPhone...]
# After normalization:
Orders [OrderID, CustomerID]
Customers [CustomerID, Name, Phone]
4. ACID Transactions
What I needed: "Bank transfers that won't lose money"
The term:
Atomicity: All-or-nothing execution
Consistency: Valid state after transaction
Isolation: Concurrent ops donβt interfere
Durability: Survives crashes
π‘οΈ Security & Data Handling
1. Sanitization
What I fixed: "Stopped SQL injection attacks"
The term: Cleaning user inputs to prevent exploits.
// UNSAFE:
$query = "SELECT * FROM users WHERE email = '$_POST[email]'";
// SANITIZED:
$email = mysqli_real_escape_string($_POST['email']);
$query = "SELECT * FROM users WHERE email = '$email'";
2. Hashing
What I implemented: "Storing passwords safely"
The term: One-way transformation of data β fixed-size string.
import hashlib
hashlib.sha256("password123".encode()).hexdigest()
# β "ef92b778bafe771e8..." (stored instead of plaintext)
3. Middleware
What I coded: "Auth check before processing requests"
The term: Intercepting HTTP requests/responses.
// Express.js middleware
app.use((req, res, next) => {
if (!req.user) return res.status(401).send("Unauthorized");
next(); // Proceed if authenticated
});
π€ AI/ML Demystified
1. Overfitting
What I saw: "Model aced training data but failed with new inputs"
The term: Memorizing noise instead of learning patterns.
Fix: Regularization, dropout layers, more data.
2. Embeddings
What I used: "Turning words into numbers"
The term: Dense vectors capturing semantic meaning.
# "King" - "Man" + "Woman" β "Queen"
embedding_king = [0.8, -0.2]
embedding_man = [0.6, 0.1]
result = embedding_king - embedding_man + [0.9, 0.3]
# β [1.1, 0.0] β Near "Queen"
3. Gradient Descent
What I tuned: "Slowly adjusting model weights to reduce error"
The term: Optimization algorithm following error slopes.
Analogy: Finding valley by walking downhill.
β‘ System Design Essentials
1. Circuit Breaker
What I built: "Stop calling downed services"
The term: Fail-fast pattern to prevent cascading failures.
if errorRate > 70% {
openCircuit() // Block requests
time.Sleep(30 * time.Second)
retry()
}
2. Pub/Sub
What I designed: "Decoupled service communication"
The term: Publishers β Topics β Subscribers.
Payment Service β (order_created) β
β β
Email Service Analytics Service
3. CAP Theorem
What I debated: "Can a distributed system be perfect?"
The term: Choose 2 of 3:
Consistency (all nodes see same data)
Availability (every request gets response)
Partition tolerance (works despite network failures)
π Web Dev Gems
1. CORS
What I debugged: "Blocked by Same-Origin Policy"
The term: Browser mechanism for cross-domain requests.
# Response header allowing your frontend
Access-Control-Allow-Origin: https://your-app.com
2. SSR vs CSR
What I compared:
SSR (Server-Side Rendering): Pre-render HTML on server (Next.js)
CSR (Client-Side Rendering): Build DOM in browser (React/Vue)
π§ The "Aha!" Moments
My Old Description | Official Term | Realization |
"Making data fit in 0-1" | Normalization (ML) | Scale features for stable training |
"Caching DB queries" | Materialized Views | Pre-computed results stored as table |
"AI seeing cats everywhere" | Overfitting | Model memorizes instead of generalizing |
"Retrying failed API calls" | Exponential Backoff | Wait 2s β 4s β 8s β ... between retries |
"Turning configs into code" | Infrastructure as Code | Terraform/CloudFormation |
Final Wisdom
"Knowing terms won't make you a better developer β but communicating ideas and understanding docs will save hours of reinventing wheels."
Bookmark this. Share it with your team. Next time someone says "We need to shard with consistent hashing after JIT compilation," youβll nod instead of frantic-Googling. π
[Drop a comment with terms that once confused you!]
Subscribe to my newsletter
Read articles from Shubham Prajapat directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
