Original question from Quora:
How would you react if someone says they can learn a programming language in a day?
What’s the appropriate way to reply when someone claims that they can learn a programming language in a day, or even a week? Is it even possible for us mortals?
I would want to know how long they’ve been programming and what they’ve built. That is going to tell me more about their ability to pick up a new language more than almost anything else.
Here is why…
There aren’t that many patterns in programming. They are like chord progressions in music, once you learn them, you can play just about anything.
If you know how to assign variables, call subroutines/methods/functions, loop, and do if statements, that is probably 80% of programming in most languages. The rest is syntax rules.
The 80% of programming exists in almost every language and what the person is probably saying is they can learn the syntax to apply those principles in about a day. I find that to be largely true.
However, every language has a pile of details. Those details end up being important over time. Nobody can learn all of the little details about a language, its standard library, and so in in a day or a week.
In general, learning a language in a day or a week sounds impressive, but it really isn’t. At least, not in the way you imagine it to be.
It’s more akin to a musician being able to “sight read” music. There is a skill to being able to see something and play it on first glance. It takes practice.
There is a skill to being able to look at language syntax and just apply it. It takes practice.
P.S. I unpack more ideas in Creative Genius.