> Languages are largely teachable, it's just syntax and keywords.
This is like "learning a natural language is just 'cramming vocabulary and grammar' - voila, you've become a fluent C1 speaker". :-)
Seriously: if you argue this way, you have only seen a very biased set of programming languages, and additionally, your knowledge of these programming languages is very superficial (i.e. you have never gotten to the "interesting"/"deep" concepts that make this particular programming language special, and which are hard to replicate in most other programming languages).
No, the comparison to natural languages is what is whack. If you understand the underlying concepts that programming languages pick and choose from as features, all you have to learn is what keywords map to those concepts and the language's syntax.
The comparison to natural languages would be if you could learn one language and then quickly pick up every other language of that "class" after learning how that single language works. That's not really how natural language works at all, but it does work with programming languages.
In C, implicit type narrowing/widening behavior stumped me as a noob working on noob problems. “Deep C Secrets” was a revelation when I finally found it.
Then again, that’s C.
I think the argument is that for a good chunk of business work, you don't need to use the "interesting"/"deep" concepts. Sure, you'll need time to adapt to the idioms of the language you're using, but following examples you can be just as productive as others in a relatively short time.