This is basically about realizing the difficult tasks (difficult in sense of not knowing yet how to solve it, e.g. from a technical perspective). If you know it, it is possible to "imagine", what the solution would be like. This is also a big difference, if you think about a Junior Developer and a Senior Developer. The former can try to estimate, but the main issue is usually, that a lot of things have to be researched and learned, which is totally fine, while the latter is more likely to know everything, which is needed to get the "imagination" of a possible solution.
It highly depends on the people, who are estimating.
Formerly of Apple, I currently write software to solve all manner of interesting problems. I work and live in Coral Gables, FL with my beautiful wife and two kids.
While I agree that identifying what will be the difficult tasks ahead of time is a valuable skill that quite often does differentiate Junior from Senior Developers, the concept I'm trying to relate here is subtly different. More than just being able to identify the difficult tasks ahead of time it is equally important to recognize when one of the "unknowns" for a task reveals itself to be the difficult task.
Too often I've seen devs (even very senior devs) or entire teams set off on a "death march" to inevitable failure just because their initial estimate didn't capture the actual most difficult task, and they failed to adequately re-evaluate/re-estimate once they had that additional information.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
This is basically about realizing the difficult tasks (difficult in sense of not knowing yet how to solve it, e.g. from a technical perspective). If you know it, it is possible to "imagine", what the solution would be like. This is also a big difference, if you think about a Junior Developer and a Senior Developer. The former can try to estimate, but the main issue is usually, that a lot of things have to be researched and learned, which is totally fine, while the latter is more likely to know everything, which is needed to get the "imagination" of a possible solution.
It highly depends on the people, who are estimating.
While I agree that identifying what will be the difficult tasks ahead of time is a valuable skill that quite often does differentiate Junior from Senior Developers, the concept I'm trying to relate here is subtly different. More than just being able to identify the difficult tasks ahead of time it is equally important to recognize when one of the "unknowns" for a task reveals itself to be the difficult task.
Too often I've seen devs (even very senior devs) or entire teams set off on a "death march" to inevitable failure just because their initial estimate didn't capture the actual most difficult task, and they failed to adequately re-evaluate/re-estimate once they had that additional information.