Bingo!!! From the article, “in the U.S., computer science is a rare bright spot of opportunity for people without a college education.”
And why is it that classes are not a good way to learn programming? I would suggest that it is at least partially because affirmative action and government unions have hobbled the ability of our educational institutions to teach challenging subjects. With a little help from Hollywood... they do just fine at indoctrinating our children with leftist ideals and revisionist history. But in general most schools now fall flat on their face when trying to teach useful skills and critical thinking.
Higher education used to be (pretty much before 1800) basically like this: teacher gives student book to read, student gets to periodically meet with teacher to ask questions and be asked questions about the book. Teacher hands student next book, rinse, repeat. After a while, student “gets” the subject and can pass a very tough test on the subject. But even if there is no specific written test, teacher can tell from their conversations when student has a good grasp of the subject.
I’ve done quite well in programming since the late 80’s, and the only formal class I took was a 6-week in-house company class which was a complete waste of time, but was also required for me to start my career in programming at the company and transfer to their IT area.
Classes today are either lecture or lab based and have periodic tests and projects. Lectures are far slower than simply reading the book. If the teacher has to add quite a bit of their own information on the subject being taught by the book, then the problem is that the book is not a good book. If the book is a decent book, the teacher need not lecture. It does help to be able to ask the teacher questions as they arise. Trouble is, the personal question-asking is only a small part of the time the students will spend with the teacher. Large classes in education works about like educating a herd of cattle. But quality has never really been sought under this system. It was purported to be sought, but in reality the cattle system was being used as a way to achieve just enough skills to be useful to major corporations, but with a mass indoctrination that removed all that pesky “thinking for one’s self”, that is, any thinking contradictory to the total program of the world’s financial elites.
For computer science in particular, the labs and projects are usually not that hot, especially when one considers the very good examples that are available out there to the independent studier. One that I came across early on was Peter Norton’s Assembly Language Book for the IBM PC, by Peter Norton and John Socha. It gives you every program to type in, chapter by chapter, explaining as you go, and the exercise ? A hex/ascii disk display utility, a very good example. Each chapter you keep adding features, at the end you’ve got a neat little tool and an great start on understanding what’s going on inside a computer.
The book, of course, only cost a few dollars and you can get through it in a few weeks nights after work if you don’t dawdle.
Of course, today it would require a few changes to run on current operating systems. But you’d be shocked to see how much of the Intel instruction set from 1989 is still supported. MOV AX,BX and so forth is still the same.
Generally only the better CompSci graduates will have the work ethic (i.e., no short cuts, etc.) of a professional, the rest have the reality of needing to do in 3 weeks what would have been a 1/2 year project hit them in the face like a bucket of cold water. Of course, today that effect is lessening as companies increasingly offer jobs that consist of non-programming bs. The resulting lower productivity is actually desired by our elite masters at this point in time: it raises consumer prices, which is part of their current program of squeezing the sheeple in the advanced nations between stagnant wages and increases in their cost of living. Of course, the lower productivity and higher prices required to earn a profit are only possible with dramatic consolidation of industries into oligopolies or monopolies and the absence of competition, which, of course, they’ve largely achieved already in most key industries.
Studying programming does require a decent understanding of math up to the level of basic algebra.
What a horribly high expectation to inflict on people, right ?
Unfortunately for many, it is, like all engineering disciplines, highly reliant on being able to deal with designs in one’s mind, the same aptitude that’s needed for designing cars, homes, etc. This is why those fields are male-dominated.
Regarding schools failing to teach - it’s not a failure, they are succeeding at exactly at what they have been tasked to do by their masters.
Ever since the Peabody Education Fund and the General Education Board, and the takeover of elite universities by the secular-humanist eastern establishment, i.e., new world order, by the early 1800s, our entire educational system has been a tool used by those financial elites to move us towards a statism where they finance and control the state in the background.