Shouldn't introduction to CS be all about learning principles of the discipline in a broad perspective which then branch out to several specialised subjects later on?
And shouldn't introduction to programming be a separate course that teaches the way to program to achieve some concrete goals like building something?
Example: Wood carving techniques are taught to learn how to carve a piece of wood to build a small sculpture or something. Not to teach the principles of wood carving to become a master wood carving artist. Those things are separate.
I must say however, I am not a fan of it teaching the "hip languages of the day". My intro course started with Java which was solid, but they are changing it to Python now - in what I and many professors and lecturers refer to as the "data scienification of CS" - which is a bad thing. We have data science courses, we don't need CS to become one.