The programming talent myth
The programming talent myth
Posted May 7, 2015 9:22 UTC (Thu) by neilbrown (subscriber, #359)In reply to: The programming talent myth by nix
Parent article: The programming talent myth
That's like saying that we didn't evolve the ability to speak English or German or any other specific language. This is obviously true if you use the word "ability" to mean "knowledge" or "skill" - a thing that can be learnt or practised and developed.
But if you use "ability" to mean something encoded in your genes, realised in your brain (and other parts of your body) - then "the ability to do mathematics" is exactly the same ability as "the ability to speak English" or "the ability to design electronic circuits". Depending on how the ability is trained and educated it will manifest in different ways, but that doesn't make it a different (innate) ability.
Evolution hasn't gifted us with specific skills - it has gifted us with a general ability to develop any skill.
We are born with a brain that knows (nearly) nothing. We can't even walk!!! Maybe we can count to 4 or 5, but we have no way to communicate that counting.
But we are born with a brain that can learn nearly anything. That is the ability that underlies all the others. That is the real gift that evolution has granted us.
Yes, the human brain does seem to have a particular affinity to language. I suspect that it because the languages we use are tuned (possibly by non-biological evolution) to the particular abilities of our brains.
As I reflect on my own thinking process (admittedly an error-prone activity) is see the two key strengths are:
1/ abstraction - the ability to recognize and identify patterns, and then associate all "things" that fit the pattern together. Very importantly, this is recursive so we build patterns of patterns.
2/ memory - both short-term (which gives a sense of time and sequencing) and long-term with parallel fuzzy-matching for very effective lookup.
Words, like numbers, are abstractions. Sentences build on these to create new abstractions. Their ideal length fits with the length of our short-term memory. The precision (or lack there-of) of words aligns with the fuzzy-matching of our memory access mechanism.
These same basic tools of abstraction and memory support "natural language", "mathematical language", computer programming, mechanical design, economics, politics, religion, war, etc etc.
I accept that the ability to solve partial differential equations or to write web-apps in Python did not lead to this ability helping my ancestors to survive, but I contend that you cannot point to any one resulting skill that did any more than any other. It was the "generality of ability", not any specific ability, that let our common ancestors dominate.
In times past there were more special-purpose VLSI designs than there are today. The general purpose CPU beat them all.... with the possible exception of image rendering, but "graphic chips" may yet turn into the "even more general purpose" processor which conquers today's general purpose processors.
*We* are the general purpose processors of the animal world. We may not have the best numerical co-processor, but we don't need one!
The LWN site is currently under high scraper load, so comment display has been suppressed for anonymous users. If you are a human, you may read the comments by clicking the button below:
Note: you can avoid this step in the future by logging into your LWN account.
