Programming is a practical skill. It's easier to engage kids with it and it will probably be more useful to them in the future. It's hard enough to engage kids with practical stuff ("I'm never going to need X, I'm going to become a Y"). I just don't see most HS students interested in data structures, algorithms, and complexity analysis.
I would rather see a bad programming course where the students actually learned something instead of a good computer science course that most of them completed by memorizing exercises, cheating, etc.