← Home ← Codex ← DEBT
Browse by Category
+ added · updated 7d
🤖 AI Guestbook — #code-smell educational data only
| |
Last 30 days
4 pings — 2026-05-26 T 10 pings — 2026-05-27 W 24 pings — 2026-05-28 T 2 pings — 2026-05-29 F 4 pings — 2026-05-30 S 10 pings — 2026-05-31 S 7 pings — 2026-06-01 M 4 pings — 2026-06-02 T 7 pings — 2026-06-03 W 27 pings — 2026-06-04 T 21 pings — 2026-06-05 F 29 pings — 2026-06-06 S 38 pings — 2026-06-07 S 41 pings — 2026-06-08 M 17 pings — 2026-06-09 T 13 pings — 2026-06-10 W 12 pings — 2026-06-11 T 10 pings — 2026-06-12 F 3 pings — 2026-06-13 S 3 pings — 2026-06-14 S 17 pings — 2026-06-15 M 6 pings — 2026-06-16 T 3 pings — 2026-06-17 W 10 pings — 2026-06-18 T 0 pings — 2026-06-19 F 4 pings — 2026-06-20 S 8 pings — 2026-06-21 S 6 pings — 2026-06-22 M 9 pings — Yesterday T 15 pings — Today W
Claude 13SEMrush 1PetalBot 1
PetalBot 9
Amazonbot 235Scrapy 167Ahrefs 141Perplexity 129ChatGPT 88Google 85SEMrush 72Unknown AI 60Claude 41Bing 33Majestic 26Meta AI 22PetalBot 13Sogou 3DuckDuckGo 2Qwen 1Yandex 1
crawler 1k crawler_json 85 pre-tracking 13
Tag total1.1k pings Terms pinged27 / 27 Distinct agents16
Level All Beginner Intermediate Advanced Tag: code-smell
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
Error Suppression Operator (@) PHP 5.0+
Prefixing a PHP expression with @ silently suppresses all errors and warnings it generates — hiding bugs instead of handling them.
3mo ago Code Quality beginner
Boolean Parameters (Flag Arguments Smell)
A boolean parameter that switches a function between two different behaviours — a sign the function should be split into two.
3mo ago Style beginner
Comments as Code Smell
Excessive or explanatory comments often indicate that the code itself is too complex or poorly named to be self-explanatory.
3mo ago Code Quality beginner
Data Clump
The same group of variables appearing together repeatedly — a signal they belong in a class together.
3mo ago Code Quality intermediate
Deep Nesting PHP 5.0+ 🧠 5
Code indented 3+ levels deep — guard clauses and early returns can flatten most deep nesting.
3mo ago Style beginner
Divergent Change
One class changes for many different reasons — a sign it has too many responsibilities.
3mo ago Code Quality intermediate
Duplicate Code PHP 5.0+
Identical or near-identical blocks of code in multiple places — the most common source of maintenance bugs.
3mo ago Code Quality beginner
Feature Envy PHP 5.0+ 🧠 1
A method that accesses the data of another class more than its own — suggesting it belongs in that other class.
3mo ago Code Quality intermediate
God Class PHP 5.0+
A class that knows too much and does too much — violating the Single Responsibility Principle.
3mo ago Code Quality intermediate
Inappropriate Intimacy
Two classes that access each other's private fields and internals too freely, creating tight bidirectional coupling.
3mo ago Code Quality intermediate
Inconsistent Names Smell
Using different terms for the same concept across a codebase — fetchUser vs getUser vs loadUser — increases cognitive load and obscures relationships.
3mo ago Code Quality beginner
Large Class
A class that has grown to accumulate too many responsibilities, fields, and methods — a sign it should be split into focused, cohesive classes.
3mo ago Code Quality beginner
Law of Demeter — PHP Examples
The Law of Demeter (don't talk to strangers) limits method chains — each unit should call only its direct collaborators, not traverse object graphs.
3mo ago Code Quality intermediate
Lazy Class
A class that doesn't do enough to justify its existence — the cost of understanding it exceeds the value it provides.
3mo ago Code Quality beginner
Long Method PHP 5.0+
A function or method that is too long to understand in one reading — typically 20+ lines is a signal to split.
3mo ago Code Quality beginner
Long Parameter List
A function or method with too many parameters — typically 4+ — making calls hard to read and easy to get wrong.
3mo ago Code Quality beginner
Magic Strings
Raw string literals used directly in code as identifiers or flags — prone to typos, hard to refactor, and lacking IDE support.
3mo ago Style beginner
Message Chains
A long chain of method calls ($a->getB()->getC()->getD()) that tightly couples code to the internal structure of multiple objects.
3mo ago Code Quality intermediate
Middle Man
A class that does little more than delegate every method to another object — an unnecessary layer of indirection.
3mo ago Code Quality intermediate
Parallel Inheritance Hierarchies
Every time you create a subclass of one class, you must also create a corresponding subclass of another — a sign of entangled designs.
3mo ago Code Quality intermediate
✓ schema.org compliant