← Home ← Codex ← DEBT ← Engine
Browse by Category
+ added · updated 7d
✦ This isn't a glossary anymore

A curated knowledge graph with editorial governance

A typical glossary gives you terms, definitions, and a search box. This goes further.

Terms are connected by reviewed, typed relationships, making it possible to follow how ideas relate across the entire corpus. Every connection is sourced, reviewed, and tracked, while the system continuously checks for missing links, dead references, and gaps in coverage.

The result is less a glossary and more a curated knowledge graph — designed not just to define concepts, but to show how they connect.

Honestly, we've stopped trying to pin down exactly what this is — and it's still being built. Depending on the day it reads like an Engineering Knowledge Operating System, a Curated Engineering Knowledge Graph, or an AI-Native Developer Knowledge Base, with a Blast Radius risk layer wiring in now. It's quietly becoming all of them — tap a ? to see what each means.

We're not quite sure what to call it — but it outgrew “glossary” a while ago.

The most ambitious framing: not a reference you read, but a substrate other tools run on. 819 reviewed, typed relationships bind the corpus into one coherent layer — alongside four-axis risk scores and editorial governance — that people browse and machines query. Engineering knowledge that's stored, connected, checked, and acted on all in the same place.
At its core it's a graph: 1,519 engineering concepts joined by reviewed, typed relationships. Every edge is sourced and tracked, every term scored on a four-axis risk model, and the whole corpus is continuously audited for missing links, dead references and gaps in coverage — closer to a maintained dataset than a wiki.
Built to be read by models as much as by people. The corpus is machine-readable end to end — typed edges, structured fields, an agent-sync layer, a deterministic assistant that answers from the graph instead of guessing, and 18 mediated narratives that walk through how distant concepts connect — so an LLM can traverse it the way a developer would.
The layer wiring in now. Every term already carries a four-axis risk score; Blast Radius teaches the graph to trace how that risk travels along its connections — turning isolated scores into a blast radius that shows how far a concept's risk actually reaches. Risk-graph readiness is at 40% and climbing as more connections are reviewed.
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
PHP 3 — Birth of the Language (Rasmus Lerdorf) PHP 3.0+ 🧠 1
PHP 3 (1997) was the first version called 'PHP' — a complete rewrite by Zeev Suraski and Andi Gutmans that transformed Rasmus Lerdorf's Personal Home Page tools into a proper language.
b0 PHP beginner
PHP/FI — The Origin Story (1994–1997)
PHP began in 1994 as Personal Home Page Tools — a set of Perl scripts Rasmus Lerdorf wrote to track visits to his online résumé. By 1995 it was rewritten in C, and PHP/FI (Forms Interpreter) 2.0 shipped in 1997 as the first publicly released version.
b0 PHP beginner
Array Destructuring ([] = …) PHP 7.1+ 🧠 1
PHP's short list() syntax — [$a, $b] = $arr — assigns array elements to variables in a single expressive statement.
b1 PHP intermediate
Array Unpacking with String Keys (PHP 8.1) PHP 8.1+
PHP 8.1 allows the spread operator to unpack arrays with string keys — previously only integer-keyed arrays could be spread.
b1 PHP intermediate
Array.flat() & Array.flatMap() ES2019 🧠 1
Array.flat(depth) flattens nested arrays; Array.flatMap() maps then flattens one level — more efficient than map().flat() and great for expanding items.
b1 JavaScript beginner
array_column() — Plucking Values from Arrays PHP 5.5+
array_column() extracts a single column from a multi-dimensional array or array of objects — the idiomatic PHP replacement for foreach loops that build lookup arrays, and for creating ID-indexed maps.
b1 PHP beginner
array_find() / array_find_key() (PHP 8.4) PHP 8.4+ 🧠 4
PHP 8.4 adds array_find() and array_find_key() — built-in functions that return the first element (or key) matching a callback predicate, replacing verbose foreach loops or array_filter() + reset() patterns.
b1 PHP beginner
Arrow Functions (PHP 7.4) PHP 7.4+ 🧠 1
Concise single-expression anonymous functions using fn() that implicitly capture outer-scope variables by value.
b1 PHP beginner
Arrow Functions fn() => (PHP 7.4) PHP 7.4+
PHP 7.4 arrow functions (fn($x) => $x * $factor) are short closures that automatically capture outer scope — no more use($var) boilerplate.
b1 PHP beginner
Assigning new by Reference PHP 8.1+
Writing $obj = &new ClassName() — assigning a new object by reference is redundant in PHP 5+ where objects are already passed by handle, not value.
b1 PHP beginner
Class Naming Convention PHP 5.0+
PHP classes must use PascalCase (UpperCamelCase) per PSR-1 — each word capitalised, no underscores, descriptive nouns or noun phrases.
b1 Style beginner
const Type Parameters (TS 5.0) 5.0
TypeScript 5.0 const type parameters infer literal types instead of widened types — const T extends string[] infers ['a','b'] not string[].
b1 TypeScript intermediate
Constructor Property Promotion (PHP 8.0) PHP 8.0+
Declare and assign class properties directly in constructor parameters using visibility modifiers, eliminating boilerplate.
b1 PHP beginner
CSPRNG PHP 7.0+ 🧠 1
Cryptographically Secure Pseudo-Random Number Generator — produces unpredictable values suitable for security tokens.
b1 Security intermediate
Dead Condition PHP 5.0+
A boolean condition that is always true or always false due to logic errors, making the branch either always execute or never execute.
b1 Code Quality intermediate
Debugging PHP PHP 5.0+ 🧠 8
Systematic techniques for finding and fixing PHP bugs — from var_dump and error logs to Xdebug step-debugging, with the guiding principle of narrowing down where incorrect behaviour first appears.
b1 PHP beginner
Diagram: Destructuring & Spread (JS) Destructuring & Spread (JS) ES2015
Destructuring extracts values from arrays/objects into variables; spread (...) expands iterables — both core to modern JavaScript style.
b1 JavaScript beginner
Dict & Set Comprehensions Python 2.7+
Python's concise syntax for building dicts, sets, and lists in a single expression — replacing verbose for-loop accumulation patterns.
b1 Python beginner
DNF Types (PHP 8.2) PHP 8.2+
PHP 8.2 DNF (Disjunctive Normal Form) types allow unions of intersections — (Countable&Iterator)|null — combining PHP 8.1 intersection types with union types.
b1 PHP advanced
Early Return Pattern 🧠 2
Exit a function as soon as the result is known rather than carrying state through the rest of the function body.
b1 Style beginner
✓ schema.org compliant