I'm not sure it's properly subbed in english but here's a french video by Monsieur Bidouille (Mister Fiddle With?) on the subject that is just so complete on the matter. youtube.com/watch
"Should people learn to code in 2017?" In basic words; there's two axis of thinking here:
Programming languages have been created for humans. It mimics human languages with the computer constraints. If you want to make something complex to a computer, you have to use code to tell it what to do.
If AI, in the future, will be coding apps, well humans would still have to tell it "precisely" what to develop. How would you interface with an AI (with a machine) ? Well with code. You maybe won't be writing apps but you would still have to write code to speak with the machine.
What will AI do for sure is making complex easier, for beginners, or help experienced programmers to optimize their code (choosing the right algorithm, function, etc).
The one terrifying question left is to know if we will all become Project Manager writing specs to feed the AI ? 😱