A senior engineer once collapsed a 40-line validation function into six lines of chained ternaries and array reduces. It shipped. It worked. It sat untouched for a year because nobody who inherited the codebase could figure out what it did without a whiteboard and twenty minutes.
That function cost more than the 40 lines it replaced. It just charged the bill to someone else, later.
Code is read far more than it's ever written or run, and every decision an author makes trades their time against everyone else's. We've covered that asymmetry before in the context of naming. Here it shows up in the code's own structure. A one-liner built to impress. Someone else pays for it.
Clever code has a specific signature: it optimizes for the moment of writing. The author is holding the entire problem in their head, every edge case fresh, every abstraction fully loaded. In that state, a one-liner reads as elegant. Six months later, nobody reads it in that state. They read it cold, mid-incident, trying to reconstruct a mental model the original author built over hours and wrote down in six seconds.
Ingenuity is a snapshot of one person's understanding at one moment. Readability is a transfer of that understanding to everyone who comes after. These are different design goals, and clever code optimizes for the one that matters least.
Here's the trap: cleverness feels like skill, and skill is what engineers are rewarded for. A reduce chain that replaces a for-loop looks like mastery of the language. A recursive one-liner that replaces an iterative function looks like depth of understanding. Both can be true and still be the wrong choice, because the audience for the code isn't the interviewer who'd be impressed by it. It's the on-call engineer at 2am who needs to understand it in under a minute.
The real skill is harder to show off. It's writing the boring version — the one that maps obviously onto the problem, that a mid-level engineer can read once and trust, that doesn't require the reader to hold three levels of abstraction in their head simultaneously. Boring code doesn't demonstrate that you're smart. It demonstrates that you already know you won't be in the room when it breaks.
The cost shows up in specific, measurable places.
A function that takes twenty minutes to parse instead of two adds nineteen minutes to every debugging session that touches it. Multiply that by every engineer who ever will.
A clever abstraction that only its author fully understands becomes a single point of failure. The moment that author changes teams, so does the risk.
Code review suffers too. Comprehension replaces design as the actual subject of the review. Reviewers either rubber-stamp what they don't fully understand, or block progress arguing about style.
None of this shows up in the pull request. It shows up three months later, in an incident channel, when someone's asking why a six-line function is taking forty-five minutes to debug.
This isn't an argument for dumbing code down. Genuine complexity sometimes requires genuinely complex code, and simplifying a hard problem past the point of correctness is its own failure. The distinction is between complexity the problem demands and complexity the author added for the pleasure of it. The first gets paid off once, when the problem is solved. The second keeps charging interest, indefinitely, to whoever reads the code next.
Brian Kernighan named this decades ago: debugging is harder than writing the code in the first place, so writing at the very edge of your cleverness guarantees you won't be able to debug it. The research backs him up. A study analyzing 35 Java programs found readability and complexity are measurably, negatively correlated. A separate 275-participant study identified nesting depth as the single strongest predictor of how long code takes to understand.
Clever is for today. Clear is for every day after.