There is a common misconception among non-technical "folks" (i.e. lawyers, politicians etc) that anyone can learn to "code". Of course anyone can be shown how to write a "hello world" application in any language but that doesn't make them a programmer. Unfortunately the perception that "coding" is easy is perpetuated by these democratizing programs that try to turn everyone into a programmer. The fact is that writing the actual code is a small percentage of the intellectual effort required to implement a working software system.
We don't need a generation of code monkeys typing away at keyboards; we need people with mathematics and analytical skills. Our current education system is simply not producing enough people with math/analytical skills. Meddlesome, short-sighted Federal programs such as "computer science for all" are simply not addressing this basic lack of skills. The fact is that teaching the hard, basic skills required to produce technical professionals is very difficult but no one seems to have the stomach for hard work any more.