It seems to me there is some kind of political war going on when it comes to education about computers.
One side argues, they must know what a computer is, how it roughly works, what it can do and cannot do, and how you can program it.
The other side says, knowing how to use Microsoft Office and Excel, and Facebook and Instagram 'responsibly' is enough, and they fight tooth and nails that the education doesn't become deeper.
This is my experience in Germany, though, where digitalization is understood as replacing books by tablet computers from Apple in school.
Have you made similar experiences?
Edit: Let me reiterate on that. I think part of the fierce resistance against deeper education is fueled by fear.
To explain that, I see how mathematics is used in schools as a rough intelligence test. And the results in math are important, not because people would need differentiation of nested functions at work, but because the grade in math is used as a proxy by the society.
Abstract thinking is difficult for many. And they dislike it. A fundamental education in computers requires abstract thinking. So with that, there would be even more filterng between those who think good, and those that don't. People are afraid of that. So they fight that change.
I think people are afraid of loosing out and becoming meaningless and irrelevant in a world of computers, i.e. a world of abstract thinking.
>One side argues, they must know ...how you can program it
>The other...fight tooth and nails
I'd guess a big part of the problem is many teachers not being able to program. After all programming jobs tend to pay more than teaching ones and even with those there are issues eg https://blog.codinghorror.com/why-cant-programmers-program/
Anecdote when I was like 15 we had a computer class but the teacher didn't have a clue and I ended up showing the others how to do 10 PRINT "some stuff"; 20 GOTO 10 etc
Feels like what you are describing was the state of affairs like 15 years ago when i was in secondary school. We had an "Informationstechnischer Grundkurs" teaching office / excel and a separate programming course for guys like me who wanted to focus on that. I don't really follow the state of education that closely, but would be quite surprised if the latter is not at least more widely available now.
Does everyone need to know how to program? I don't know, probably not. Us humans specializing is the only way we have to handle the huge amount of knowledge necessary to support our society. I certainly would have a hard time just surviving by myself. Also education slots are limited, we'd have to abolish other courses in exchange. This obviously will generate opposition.
Now let imagine we have an open slot to teach "CS" for 90min a week for a year in such a young age. What do you teach that would actually be useful to most of them later on? A bit of python? Basic C, since it doesn't come with many complicated abstractions on top? Javascript, since many of its courses quickly give colorful results? Even the programming bachelor I later did had trouble answering those questions, they switched from c->java->c++ to teaching 3 courses java. Plus all the languages other courses used and had to teach pretty much from scratch.
Personally, I think there is far too much focus on 'which language', rather than on the fundamentals of how to think/reason about a program, troubleshooting, and exposure to the actual documentation. Once you have a solid grasp of one language, picking up others becomes much easier. So someone who only has Javascript experience would likely be able to at least grok the basic structure of a c++ program. I feel the main problem with all the intro courses I have ever taken was too much reliance on textbooks/tutorials, and too much desire to over-simplify. I remember multiple people I took CS101 (Java) with who had no idea how to do anything outside of eclipse, and when they wanted to expand their skills through self-study had no idea how to use the documentation in a helpful manner. They knew how to write a class diagram, but all functions & classes had been introduced piecemeal, so they got overwhelmed looking at the official docs & just gave up out of frustration.
That said, I don't think something like haskell or straight assembler is a good choice, but any of the C-likes or Python would be fine, the differences just aren't great enough to matter much for the absolute beginner. A strong case could be made for Javascript, simply for ease of development, since any computer is almost guaranteed to have the basic software for writing, executing, & debugging. It is far from my favorite language, but for early intro courses I think pedagogy is far more important than language or tooling.
And personally, I feel that the only 'CS' that should be required for all students is keyboarding. Does someone who wants to go into the trades (excepting trades like machining) really have any urgent need for programming? However, almost any job will require typing skills.
Students have limited time, and I think it's foolish to force everyone to learn to program. Those classes have their benefits, but so do music classes. But, given avaliable time and resources, should we also require all students to learn an instrument?
Hmm. So if the teacher doesn't understand anything deeper, then the teacher is probably going to resist making the class deeper. That would make perfect sense.
> The other side says, knowing how to use Microsoft Office and Excel, and Facebook and Instagram 'responsibly' is enough, and they fight tooth and nails that the education doesn't become deeper.
I have certainly encountered efforts to ignore or deprioritize deeper education, but I have yet to meet active opposition to it. What form does it take, and what is the rationale?
I think you're right but there's more to it. When you can succeed by using your brain and technology, it doesn't matter so much who your parents are. The thing is we still have a massive legacy of wealth and power fueled by inheritance and other non-meritocratic systems.
This is why you see old media, non-STEM academia and other classic playgrounds of the rich first in line to bash tech. It's an existential threat to their power and control over society.
One side argues, they must know what a computer is, how it roughly works, what it can do and cannot do, and how you can program it.
The other side says, knowing how to use Microsoft Office and Excel, and Facebook and Instagram 'responsibly' is enough, and they fight tooth and nails that the education doesn't become deeper.
This is my experience in Germany, though, where digitalization is understood as replacing books by tablet computers from Apple in school.
Have you made similar experiences?
Edit: Let me reiterate on that. I think part of the fierce resistance against deeper education is fueled by fear.
To explain that, I see how mathematics is used in schools as a rough intelligence test. And the results in math are important, not because people would need differentiation of nested functions at work, but because the grade in math is used as a proxy by the society.
Abstract thinking is difficult for many. And they dislike it. A fundamental education in computers requires abstract thinking. So with that, there would be even more filterng between those who think good, and those that don't. People are afraid of that. So they fight that change.
I think people are afraid of loosing out and becoming meaningless and irrelevant in a world of computers, i.e. a world of abstract thinking.