TODDBLOG/ posts/ do we have x running y why not

Do we have X running Y? Why not? It is funny- often times I make design decisions based on some parameters to have them challenged later (a week, a month, several years) -- the problem is by this time I've forgotten the reasons why I made the calls and am apt to agree with someone proposing a reason to change them. "Why do we have X threads for Y and not Z" or something.

Many times I've ended up changing something when prompted, and even though I felt uncomfortable about making the change, I couldn't verbalize why.. couldn't think of any reason why they could be wrong. Later it blows up, and I remember why, and it's usually painfully obvious why I made the original call :) I think it is more compact for my brain to store something like "doing X is bad" rather than the actual reason why. Maybe it's a binary datatype in a brain-hash table :)

It is an annoying cognitive bug, but I suspect that carrying around reasons for doing everything will slow me down. Maybe not? I suppose that is one of the issues facing large companies in which everything has to be justified -- the more checks you have, the more reasons you have to remember to defend yourself, and the slower you move.