I’m a bit allergic to questions that begin “Why not just …”. With those three words, I can usually already tell what’s coming before they tell me their idea, not because the suggestion is crazy complex but because almost invariably it’s the first thing that popped into the person’s head, because it’s the most obvious thing one could do, and has already been carefully considered or already tried. The question itself isn’t bad, it’s the underlying assumptions that makes it irritating and/or insulting, the assumptions that 1) their idea is so easy, and 2) you didn’t think of this obvious & easy idea.
And when I’m on the other end of this asking someone else why they didn’t do it in some way that looks obvious to me, I try hard to avoid “why not just”. Sometimes I will ask “I assume you didn’t X for some reason?” But maybe the best is to ask why nicely without making any suggestions.
When the question comes because they were lacking context, this can sometimes be headed off at the pass by announcing why the most obvious things didn’t work before explaining what you did do, or by highlighting the confounding requirements or problematic inputs. If the question comes from already-committed code, the goal would be to have commit or MR code comments that prevent post-facto second-guessing. Sometimes it’s useful to accept the question without retort and just answer it directly, by explaining that their idea was tried and didn’t work, and what the reasons are, and ask if they’d like to share any other ideas, earnestly not sarcastically. :P
If the suggestion really was something I didn’t think of and seems like it might solve a problem, which might be rare but does happen to me on occasion, then I do like to tell them it’s a good idea and recruit them to help me implement it. In that case, pushing back on their assumptions or tone is tempting to me, but I will try to let it roll off and just take the feedback and be momentarily embarrassed.
And when I’m on the other end of this asking someone else why they didn’t do it in some way that looks obvious to me, I try hard to avoid “why not just”. Sometimes I will ask “I assume you didn’t X for some reason?” But maybe the best is to ask why nicely without making any suggestions.
When the question comes because they were lacking context, this can sometimes be headed off at the pass by announcing why the most obvious things didn’t work before explaining what you did do, or by highlighting the confounding requirements or problematic inputs. If the question comes from already-committed code, the goal would be to have commit or MR code comments that prevent post-facto second-guessing. Sometimes it’s useful to accept the question without retort and just answer it directly, by explaining that their idea was tried and didn’t work, and what the reasons are, and ask if they’d like to share any other ideas, earnestly not sarcastically. :P
If the suggestion really was something I didn’t think of and seems like it might solve a problem, which might be rare but does happen to me on occasion, then I do like to tell them it’s a good idea and recruit them to help me implement it. In that case, pushing back on their assumptions or tone is tempting to me, but I will try to let it roll off and just take the feedback and be momentarily embarrassed.