There's a few themes going on.
I think he just doesn't see the world of 'regular' programmers. Has he heard of things like SAP or People Soft or SharePoint.
All of these offer pretty regular people to write applications and web applications.
Next comes the point you make that I will just reiterate. Programming is a skilled job. I taught high school computer science. I don't know how long its been since you were in high school, but most students can't even understand assigning a variable properly. If they can't get it in algebra, they don't get it in cs. That's for even basic programming. For anything more complex, it really takes another level.
The point about the web is valid to a certain extent. You can't just 'learn' it and be happy. It's a process of constant learning and research and working with the community. I can't think of a field that changes so much. I doubt AngularJS is crazy complicated, but darn it, I haven't even touched it and I'd have to learn it a new in all its complexities and idioms if I want to work on it.
You learn a trade like construction, you will learn what a 2x4 is and how to frame and that is eternal knowledge. Not so with writing software.
Lastly is programming culture. He doesn't spend enough on this point, but its a big thing that is affecting even good programmers.
The constant desire to learn the same thing in a different way is something that you probably need to be a bit autistic as he says. I can't explain what happened. I used to get so involved in a game like Baldur's Gate, I'd spend weeks so focussed on it. I'd to the same with programming. I have no desire to do that anymore. But, I know some people who still have that. Good on them. I'm hardly normal, but if I'm feeling the edge, imagine an actual normal person
To top it off, getting involved in software development used to be easier when more people were hired. Today, I'm finding developers need to write documentation of all sorts, figure out the requirements, code it up, write up the test cases, figure out the environment issues, do the database work...
Basically do everything. Some companies even have teams dedicated to these tasks, but they don't have enough skilled people to not have the developer do it with the speed at which companies have to operate.
In previous times, you could indeed have a skilled engineer design the system. Write a proper document. Then hand off some UI work to some application developer or even a junior developer. They would take the time to explain the system to the test team, who would then know how to use it and thus craft a test plan. All these people would be able to be involved.
But that's no the world we live in today. Everyone wants speed and moving fast, without building the long term technical base. This reduces the number of people capable of entering the field in a useful way.