I think the conclusion is, hard stuff is hard, and you have to try hard.
I think the conclusion is, hard stuff is hard, and you have to try hard.
For example, if you know Italian and you want to learn Spanish you can translate a lot of your prior learning. The sounds are the same, the sentence structure, and many of the words even. Even English to Spanish isn't that different.
When you know English and you want to learn Chinese you have to learn a completely different way of pronouncing and listening to language.
I think her point is that non-technical people don't realize that there are a lot of fundamentals and basic principles that you need to learn to code well that you can't just pick up in your non-technical life.
This might be a bit of extrapolation but while all human languages are very different, they all have recursion and learning to program is more or less harnessing the mastery of recursion that we language speaking humans already have. I've been terrible at learning learning but I can pick a programming language reasonably quickly, I don't need to rewire to anywhere the same degree.
I agree to your point about programming for non-techies though. And unlike with natural languages, you can't hand-wave your way out when you stuck..
For example, if he learned Mandarin in Taiwan he could've picked up a southern accent.
(And yes as remarked below my first exposure to the language was in Taiwan, but the courses I follow are not Taiwan specific)
8 years into the language, I still have real difficulties with some of the r's at the end of words, "有空儿吗?" (you kongr ma?)
The strength of the comparison doesn't come from the need for persistence, which is truly critical to either undertaking, but instead the kind of mental reformatting that needs to go on before either mode of expression is going to make sense.
I liked her bopomofo example because it highlights the fact that there is a level below programming can even begin --- it's the level that "your grandmother" can't even see --- and if you think you can just dive into an intro to Python (sorry Mark Pilgrim) and hope you'll be sadly, sadly mistaken.
Both endeavors require a great deal of tedious study of minor detail. You need to unlearn a lot and relearn it more generally. You can't program if the idea that computers run instructions isn't implicit; you can't speak Mandarin if you don't speak and hear tones without thinking twice.