The Bug That Isn't in Your Code
You ship a fix at 2 AM. CI passes. Tests green. But instead of relief, you feel dread. "I got lucky. They'll figure out I'm a fraud eventually."
That's not a bug in your code. It's a cognitive distortion — a systematic error in how your brain processes information. And if you're a developer, you're probably running five of them on loop every day.
The cost isn't just emotional. Cognitive distortions tank your output:
- All-or-nothing thinking → you scrap a working PR because it's "not clean enough"
- Catastrophizing → you spend 3 hours on a minor bug because "what if it's in prod"
- Mind reading → you avoid asking for help because "they'll think I'm incompetent"
The fix isn't to think positive. It's to catch the distortion, examine the evidence, and reframe. That's CBT — cognitive behavioral therapy — and you can systematize it in Notion.
TL;DR — I built a CBT Thought Record Notion template that catches these distortions in 3 minutes. Free preview here.
The 5 Distortions That Hit Developers Hardest
1. All-or-Nothing Thinking
"If this PR isn't perfect, I'm a bad engineer."
You see the world in binary: success or failure, no gradient. A 95% test coverage feels like 0%. A code review with one suggestion feels like a rejection.
The catch: Is it really 0 or 100? What's the actual grade? Most PRs are 80% good with 20% to improve — and that's normal, not failure.
2. Catastrophizing
"This bug in prod → I'm fired → I'm unemployable → I'm homeless."
You jump from a minor incident to total ruin in one mental leap. Each step feels logical, but you're chaining probabilities that are each <5% into a scenario that's <0.01%.
The catch: What's the actual worst case? A reverted deploy, a postmortem, a lesson learned. You've seen worse. The company has survived worse.
3. Mind Reading
"My reviewer left a comment — they think I'm incompetent."
You assume you know what someone is thinking, usually the worst possible interpretation. A "?" on line 42 becomes "this person has no idea what they're doing."
The catch: You can't read minds. What's the most likely explanation? They're asking a question because they want to understand your approach — that's their job.
4. Should Statements
"I should know this already. I'm senior."
You run a constant comparison against an imaginary ideal version of yourself. Every gap feels like a moral failure rather than a learning opportunity.
The catch: "Should" is a red flag word. Replace it with "could" or "want to." "I want to learn this" hits differently than "I should already know this."
5. Labeling
"I got lucky on that project. I'm a fraud."
You take one event and turn it into an identity. One lucky break erases years of skill. One mistake defines your entire self-worth.
The catch: You're a person, not a label. You did the work. The luck was opportunity meeting preparation. List 3 things you did that contributed to the outcome.
The 3-Minute Catch
When you notice an intensity spike — that gut-punch of anxiety or shame — run this:
| Step | Question | Time |
|---|---|---|
| 1 | What happened? (facts only) | 30s |
| 2 | What went through your mind? | 30s |
| 3 | Which distortion is this? | 30s |
| 4 | What's the evidence against it? | 60s |
| 5 | What's a fairer interpretation? | 30s |
That's it. Most spirals die at step 4. You write "I'm going to get fired," look for evidence against, realize your last 3 reviews were "exceeds expectations," and land on "My manager asked for a 1:1 — that's normal, not a PIP."
Why Notion?
I tried paper worksheets. They get lost. I tried apps. They're too rigid. Notion hits the sweet spot:
- Databases for structured records (situation, emotion, intensity, distortion, evidence, reframe)
- Relations to a reference table of the 10 distortions (pick from a list, don't type)
- Rollups that auto-calculate your intensity drop (seeing "42" in green is a dopamine hit)
- Daily view filtered to today's records — open it before Slack
The setup is two databases and one formula. I wrote up the full structure in my previous post.
The Data Changed My Mind
After ~80 records, the patterns are undeniable:
- My average intensity drop is 34 points (start 72 → end 38)
- Catastrophizing is my top distortion (41% of records)
- The most effective reframe: "This is a normal part of the job, not a verdict on me."
Seeing your own distortions quantified is its own kind of therapy. You stop believing the thoughts because you've seen the data — 41% of the time, you're catastrophizing, and 100% of those times, the catastrophe didn't happen.
Get the Template
-
Full template ($7): Gumroad — CBT Thought Record
- Pre-built databases, 10 distortions loaded, daily check-in view, intensity drop formula
- Free preview: Notion
You can also build your own from this post — the structure is simple. The template just saves you 30 minutes of setup and comes with the distortions pre-loaded.
I'm not a clinician. This isn't a substitute for therapy. It's a developer's system for catching the thought patterns that cost me hours every week.
If this resonated, I write about developer tools and developer wellness. Follow for more.
Top comments (0)