What this author is trying to say is computer programming can be a trade of a learned skill set, much like a brick layer is a learned skill set; albeit a crude example. If companies are bemoaning about the lack of computer programmers and the skill sets in the market, then they need to realize that mandating a college degree is not needed.
When I read the comments, in here, and the general attitude in the outside world, it always comes down to some form of this:
"We know exactly what a student will need for their career, nothing more need be taught."
Or some other such truism, focused on the job as it presently exists. One thing for certain, is that if you train a student in the fully practical, the student will know how ot do exactly one thing, and will become redundant rather quickly.
A programmer knowing what a netmask is? Hell yes.
I have found through personal experience and general logic, that a person who knows more about what they are doing knows more about what they are doing. A programmer that can answer questions that do not relate 100 percent to his narrow job description is more valuable than one who cannot. KNowing bout more things can lead to nifty stuff like promotions, raises and the like.
My extraneous and supposedly non-relevant knowledge has over the years served me quite well, as relevant solutions are often found outside the normal solution set. In addition, I can never tell where a solution might pop up from.
disclaimer: I read Wikipedia for fun.
But if you want to teach someone off the street the programming language du jour, and set him or her in a cubicle raking in that minimum wage, then yeah, you can teach that in short order. That isn't worth much more than minimum wage, as you are producing an almost valueless throwaway employee.