Until you get the person who questions everything, draining all your time. Then they become reliant on you, and stop thinking for themselves.
But I do think there's a difference. If a person generally asks a lot of questions, but there's clear signs of improvement and they're trying to pull their weight, then I really don't see it as a bad thing.
For coaching the questioner, I ask them how they approach finding information, and recommend they time box their exploration, and only ask their question if they've given it a good try. I I also will describe my personal workflow to find answers when answering their questions.
For coaching the rest of the team, I often suggest they ask "what have you tried so far?" or "where have you looked so far?" before just giving an answer. This can help show knowledge gaps, and oftentimes the questioner will take another look and discover the answer themselves.
And yes, if they never get away from this behavior even after getting feedback multiple times, then that turns into a different sort of conversation.
That said, if a junior brings up a question like "why does this error for some tests, but not others?"
records = some_orm_thing()
some_model_ids, other_ids = map(list, zip(*records))
The answer is obvious. Some tests return no records for the ORM thing and that doesn't unpack. If you ask this type of question it makes you look bad. I'm not saying it's the end of the world or anything, but we should at least be realistic about how juniors are treated. A private, friendly slack message is much less likely to get them fired than a post in a channel or pull request.I agree there's a difference between the kind of question like the one above vs. something like 'Why isn't there a check in there before unpacking a record?'
The first question is basically 'Teach me stuff I should know' the second is more along the lines of 'Why do we do it this way?'
And there does come a limit, if after a month they're still asking the same questions, not really seeming to have learned anything, it's probably not going to change.
I dunno, really I guess it usually comes down to the person and I hate to say it but, how annoying I find the questions and the person's behaviour.
I think my larger point was that smart juniors should seek to get clarification privately after exhausting their own skill, but you're absolutely right that they should raise issues as they come up in a thoughtful way to accelerate the team and their own growth.
Of course there is always a level of knowledge too low to participate constructively, but that’s another scope (fire your HR along with yet another zero-skills guy, etc).
Whatever the work is, the important thing is that it gets done, usually as efficiently and as good as possible. If it takes me explaining the same thing 3 times in a row to get something done properly the first time I'd rather do that than have to go back and fix things later.
And honestly, everybody starts somewhere, the best way to learn is by asking questions. If someone is asking me questions, it tells me they recognize they don't know everything, care enough to learn and are humble enough to ask for help.
Such qualities are rare in people and i've found every time, the people like that make the best employees and coworkers.