Sometimes it's good to have a bit of a 'wake up call' part-way through your career and realise that you had a really big blind-spot for a long time.
People won't necessarily tell you what you're missing. They may not be aware or they may not want to demotivate you or put you on the spot.
A big blind-spot for me was time-efficiency. It simply never occurred to me that an algorithm could get exponentially slower if its time-complexity increased disproportionately to its inputs. This actually stung me once, when writing a selector that mapped from a Redux store. So no, this isn't just theory, it can actually affect real-life development!
And, I wouldn't dispute anything about what you're saying here. But I feel like it'd be just as effective, or moreso, for someone to come to you and say "hey, computing Fibonacci via recursion is pretty slow -- you should read up on this O-notation thing" as opposed to "real programmers don't use recursion."
I think that latter message has little, if any benefit. It would put most people in a defensive posture, it's an oversimplification, and it's kind of a non sequitur for just about any context in which it arises. In other words, I think you can have that epiphany/wake-up call without the baggage that comes with internalizing someone's judgement.
Personally, I often have such wake-up calls stumbling through things all on my own, absent any external stimulus.
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.
To play a friendly devil's advocate...
Sometimes it's good to have a bit of a 'wake up call' part-way through your career and realise that you had a really big blind-spot for a long time.
People won't necessarily tell you what you're missing. They may not be aware or they may not want to demotivate you or put you on the spot.
A big blind-spot for me was time-efficiency. It simply never occurred to me that an algorithm could get exponentially slower if its time-complexity increased disproportionately to its inputs. This actually stung me once, when writing a selector that mapped from a Redux store. So no, this isn't just theory, it can actually affect real-life development!
Still, great post, thanks for sharing!
Thanks for the kind words!
And, I wouldn't dispute anything about what you're saying here. But I feel like it'd be just as effective, or moreso, for someone to come to you and say "hey, computing Fibonacci via recursion is pretty slow -- you should read up on this O-notation thing" as opposed to "real programmers don't use recursion."
I think that latter message has little, if any benefit. It would put most people in a defensive posture, it's an oversimplification, and it's kind of a non sequitur for just about any context in which it arises. In other words, I think you can have that epiphany/wake-up call without the baggage that comes with internalizing someone's judgement.
Personally, I often have such wake-up calls stumbling through things all on my own, absent any external stimulus.