I wonder if some small part of the problem lies in the word "talent" . The implication is that developers are born with some sort of innate ability to write software well rather than coding being something you can learn with practise.
Calling people "talent" suggests recruitment is a hunt for some person with a rare underlying ability rather than just looking for someone with a skill they've learned. This could also go some way to explain why many small software companies refuse to recruit juniors and have top heavy structures. If you can't recognise the magical rare ability in people then you have to trust other companies experiences with "talent". Taking on people and nurturing them to be seniors wouldn't even be an option.
I can speak from the chess world, as a coach. I used to believe there was really no such thing as talent largely based on my own experience as I started relatively late, don't consider myself talented, and reached a reasonably high level at the game. I kind of still do think there's no such thing as talent, but that comes with a bunch of asterisks.
If you take two people and expose them to normal training regimens, different people will have different results - and frequently extremely different results. One could argue that the person who performed worse might have performed better if given exposure to a different regimen but in practice I find those that tend to overperform in one regimen tend to overperform in other regimens as well.
The catch is that the outcome is largely predicted by how the student responds to the training itself. The person who finds it interesting and enjoyable is going to dramatically outperform compared to the person who may be highly motivated by an outcome (wanting to become a good player) but doesn't especially enjoy the process - tactical training, game analysis, etc.
And so talent may not just be some innate ability at something but rather an innate preference, which is going to be the product of a million other things, for enjoying certain things. An amusing anecdote in the chess world came from retired World Champion Vladimir Kramnik. He recently casually remarked that now that he's retired he's spending less than 50% of his time with chess, as if as if he was just kicking back and neglecting the game by only dedicating 40% of his life to it.
Obviously there are some genetic factors like the ability to visualize/concentrate/etc that people usually think they are talking about when referring to talent. But the role those play will only start to matter when people reach some level at least vaguely approaching their potential, but they'll never get anywhere near that level without the thousands of hours of work and training that they'll likely never complete without a love of that work itself.
This is probably just a really long-winded way of repeating Thomas Edison, "Genius is 1% inspiration, 99% perspiration." The only catch is whether you have the capacity to put out that 99% perspiration.
I think there's a massive difference between coaching people to play competitive chess and teaching people to be good developers. For a start, in chess you only really start making good money from it when you're exceptionally good. Most chess players only ever play for their own satisfaction.
The same is absolutely not true for developers. You might well need talent to be a chess player who makes a living from chess, but there is no evidence that developers can't make a good living from their skill without having any innate talent in an area of software development. I've met and worked with plenty of good developers who essentially write code by brute forcing solutions to problems combined with lots of Googling. We all do it.
I've heard Ben Finegold say that 30 years ago only about top-30 could make anything resembling a decent living in a developed nation, while nowadays, even adjusted for inflation, the prize pools are much bigger and one of the biggest chess channels on YouTube is a player who's not even a GM.
What's fascinating to me is that the article makes no mention of female performance in chess whatsoever, which has historically been underwhelming compared to men, seeing how the strongest female player ever never made it into even top-4 of the Candidates tournament, let alone played for the Championship.
Since height and athletic ability plays almost no role in chess, can you perhaps explain why women have underperformed?
Also, I have no idea why WGM (Woman Grandmaster) title is even a thing, since I cannot possibly think of a more discriminatory "consolation prize" type of title in a field where men don't have an inherent physical advantage. Curious to hear what is your take on this as well.
I wouldn't say they have "underperformed", the best women chess players would absolutely wipe the floor with me and other casual players. However, historically women don't reach quite the same top level as men in some mathematical tasks, even though their median performance is on par or even better sometimes. You can visualise it as two normal distributions with the same mode, but one is slightly wider.
For now the WGM title exists, because if it didn't, there would be no women Grandmasters. While you see it as a consolation prise, I see it as an encouraging step to build a tradition of unisex chess participation so that one day we can have truly equal tournaments.
I liked this essay regarding the nature of talent. http://rittersp.com/wp-content/uploads/2014/03/Chambliss-Mun... Like much social science, one should be careful to not assume that any results would generalise to more cases, but I still think some of the ideas are interesting:
- When people talk about talent, it is some relatively immutable quality people have inside themselves that creates excellence. When people talk about observing (eg spotting or wasting) talent, they are really talking about observing excellence or high competency. Talent of the first kind is mostly not a thing (but eg some people may be predisposed to certain kinds of athleticism).
- Being excellent at one thing needn’t come with excellence or deviance at anything else. I think many people on HN will quite easily understand that typical celebrity recommendations (even if unsponsored) have no particular reason to be credible, but another aspect of this is the idea of the weird or eccentric genius which we sometimes see applied to programming (and I think less applied to eg being a lawyer or doctor).
"Talent of the first kind is mostly not a thing (but eg some people may be predisposed to certain kinds of athleticism)."
- Statements like this work reasonably well on HN and stupendously on the very receptive New York Times audience, but fail miserably when the first real-life punch lands (figuratively) on the speaker's jaw. "Talent" or "genetic quality" or "genetic predisposition" when considering a skill or activity is a fact of life and has been demonstrated in countless studies of twins.
I studied fish and birds for a long time and even there the main confounder when studying the effects of environment on life histories or physiological functions was "individual quality", the fact that just about everywhere certain individuals do much better than others for reasons other than "lucky breaks".
I've also seen people run very fast (much faster than me), draw very well (I draw houses and people the same way), tune their guitar by saying la-la (whereas I can't tell the difference between a piano and a church bell).
Yeah I meant to mention that that opinion is likely something that was east for the author to read. I think it is also personally useful to believe it and therefore that one is somewhat responsible for one’s successes and failures.
After a couple of decades I have decided for myself talent is real and not something that can be replaced with practice. I've had juniors surpass me in 2 years and I've worked with seniors that learned very little despite working mode decades than me. In my definition of talent I take into consideration not only intelligence but also drive, enthusiasm, work ethic, etc.
Talent becomes more and more important as you require actual design and architectural thinking. For the average code monkey not so much.
As for why a lot of companies refuse to hire juniors: they think practice is more valuable than it actually is and they don't want to spend resources on juniors getting that practice on the time they pay for. And the people involved in the early stages of recruitment are also not technical or passionate about tech so they can't recognize when somebody is or isn't.
I think it is pretty clear that we aren't complete tabulas rasas either. The exact "nature vs. nurture" split isn't known, but it very certainly isn't 0:100.
But the field of software talent is pretty wide. Someone can have a knack for identifying the core of the issue fast (intuition), someone can come up with unorthodox solutions (creativity), someone may be able to see possible security implications sooner than others, yet another is fast learner in general but not very creative etc. These may not be the same people.
I wouldn't read too much into the word choice. Not so long ago, I learned that my wife uses the word differently than I do. For her, a talent is simply a learned skill.
Calling people "talent" suggests recruitment is a hunt for some person with a rare underlying ability rather than just looking for someone with a skill they've learned. This could also go some way to explain why many small software companies refuse to recruit juniors and have top heavy structures. If you can't recognise the magical rare ability in people then you have to trust other companies experiences with "talent". Taking on people and nurturing them to be seniors wouldn't even be an option.