Terms starting with "M"
Migrating from PHP 4 to PHP 5
PHP 4.0+
PHP 4→5 migration: objects now pass by reference, add visibility (public/protected/private), replace var with typed properties, fix object assignment semantics, and adopt try/catch.
6mo ago
PHP intermediate
Migrating from PHP 7 to PHP 8
PHP 7.0+
PHP 7→8 migration: fix type coercion changes (stricter), remove deprecated functions (each(), create_function()), update match/constructor promotion, check third-party compatibility.
6mo ago
PHP intermediate
MutationObserver API
HTML5
1
MutationObserver watches DOM tree changes — attribute changes, child additions/removals, text content changes — without polling or event listener on each node.
6mo ago
JavaScript intermediate
Mutex & Locking
3
A mutex (mutual exclusion lock) ensures only one thread/process can access a critical section at a time — the fundamental primitive for preventing race conditions.
6mo ago
Concurrency intermediate
MVC Pattern
PHP 5.0+
Model-View-Controller — an architectural pattern separating data (Model), presentation (View), and request handling (Controller), the foundation of Laravel, Symfony, and most PHP frameworks.
6mo ago
Architecture beginner
Magic Quotes — What They Were and Why Removed
PHP 3.0+
Magic quotes automatically escaped incoming data with addslashes() in PHP 3/4/5 — removed in PHP 5.4 because it caused more problems than it solved and gave developers false SQL injection protection.
6mo ago
PHP beginner
match() Default Arm vs No Default
PHP 8.0+
match() without a default arm throws UnhandledMatchError if no arm matches — unlike switch, which silently falls through.
6mo ago
PHP intermediate
max_execution_time & set_time_limit()
PHP 4.0+
max_execution_time limits script CPU time (not wall-clock time) — use set_time_limit(0) sparingly for long-running CLI tasks, never for web requests.
6mo ago
PHP beginner
Memory Leaks — Closures, Detached DOM
ES2015
JavaScript memory leaks occur when references are accidentally retained — common causes: closures holding large objects, detached DOM nodes, forgotten event listeners, and growing Maps/Sets.
6mo ago
JavaScript advanced
Migrating from PHP 5.x to PHP 7 and 8
PHP 5.0+
PHP 7 removed mysql_*, ereg functions, and several deprecated features — a systematic approach using Rector and PHPCompatibility catches 95% of issues automatically.
6mo ago
PHP intermediate
mysql_* Functions — Why They Were Removed
PHP 3.0+
The original mysql_* extension was removed in PHP 7.0 after years of deprecation — it lacked prepared statements, making parameterised queries impossible and SQL injection trivially easy.
6mo ago
PHP beginner
Managed Databases
1
Cloud-hosted database services where the provider manages patching, backups, failover, and scaling — RDS (AWS), Cloud SQL (GCP), Azure Database — trading control for operational simplicity.
6mo ago
Cloud intermediate
Mapped Types & Template Literal Types
2.1
1
Mapped types transform existing types by iterating over their keys. Template literal types create string union types from combinations — together they enable powerful type-level transformations.
6mo ago
TypeScript advanced
Meilisearch & Typesense
PHP 7.0+
2
Open-source, self-hosted search engines with PHP SDKs — fast BM25 search, typo-tolerance, and faceting without the operational complexity of Elasticsearch.
6mo ago
Search intermediate
Memento Pattern
PHP 5.0+
A behavioural pattern that captures an object's internal state and stores it externally so it can be restored later — enabling undo, snapshots, and versioning without exposing internals.
6mo ago
Code Quality intermediate
Memory Management — Stack vs Heap
PHP 5.0+
2
The stack holds function call frames with fixed-size local variables — fast, automatic, limited. The heap holds dynamically allocated objects — flexible, managed by GC, slower.
6mo ago
Compiler intermediate
Memory Visibility & Cache Coherence
In multi-processor systems, each CPU has a cache — writes by one CPU may not be visible to others without memory barriers. PHP's process-per-request model avoids most visibility issues.
6mo ago
Concurrency advanced
Message Ordering Guarantees
Different message systems provide different ordering: Kafka guarantees order within a partition, SQS Standard does not guarantee order, SQS FIFO guarantees order within a message group.
6mo ago
Messaging advanced
Message Serialisation
JSON (readable, flexible), Avro (schema-enforced, compact, Kafka standard), Protobuf (typed, 5-10x smaller) — matching format to volume and schema requirements.
6mo ago
Messaging intermediate
MIME Sniffing & X-Content-Type-Options
PHP 5.0+
Browsers that sniff file content to guess MIME type can execute uploaded HTML/JavaScript files as scripts — X-Content-Type-Options: nosniff prevents this.
6mo ago
Security intermediate