The next few Thinkies are related. They all generate ideas when faced with an intimidating problem.
Pattern: You’re stuck addressing a hairy problem. Or you’re addressing it but you have a nagging feeling that you’re missing something important, prioritizing incorrectly.
Transformation: List absolutely everything you can think of that makes the problem hairy. Technical aspects. Social aspects. Economic. History. Perverse incentives. Uncertainty. Cognitive biases. Absolutely everything.
I just did this with software design. Seems intimidating when put this way, but hey, that’s the actual problem.
Panicked fear of failure is a serious waste when addressing hairy problems. People just freeze. One way to discharge this tension is just list all the reasons for it. You’re not dumb. Feeling fear is a reasonable response. Freezing, though, is optional.
Partial acknowledgement is another waste. You start understanding bits of the problem, get scared, & ignore the rest. Now your priority decisions are incomplete. Your understanding of second-order effects is incomplete. You risk doing ineffective or counter-productive work.
Face the hairy problem.


Reminds me of a discussion I had with my son about anxiety. Wasn't programming related but what the heck...
We were riding motorcycles across the US from Washington State to Maine then up to Nova Scotia. I started getting tons of anxiety at one point. So we checked the bikes over. One of the 2 nuts that held my handlebars on has fallen off. I must have felt the slight play in the handlebars.
Anxiety tells you something might be up, check everything carefully!