I think there are three separate things to be taught.
One is the skills needed to move into a professional life in the IT industry, a second is the skills that will be needed in a world where using applications is just part of a normal job, be it office work, manufacturing or anything else.
The third, which has only obliquely been touched on, is simply teaching logical and critical thinking skills. That was what its proponents claimed for Latin and, when CS courses were first introduced into the curriculum, they were pushed as the "new Latin" for this reason.
In the first two cases there's no option but to teach using what's available at the time, either what's in use in the real world or some specially devised educational version. Whatever the option taken either pupils are going to have to relearn the details over the course of their lives (or be locked in, which is indeed a risk) but what they need to learn are the principles.
The third, however, is more difficult. Do kids need to learn computing to tell that Rudd's spouting bollocks? Perhaps a more general approach would be to embed those skills in other subjects; learn that anything a politician or other salesperson says must be treated with scepticism..