Also, I think perhaps the issue is with allowing "coding" classes to qualify as math/science credits may encourage some students to essentially come out of highschool with a working knowledge of how to write java / javascript to accomplish certain tasks but have little analytical training (ie the scientific method, math beyond the basics, etc)
I could very nearly count on a railway brakeman's fingers the number of times that high school math has been an asset in my software career. The three years of computer programming electives I took were wildly more useful - and actually taught me geometry...
Then again, learning how to program probably also makes learning those concepts easier too, as it goes both ways...
Hell, I had to take the AP Calculus AB twice -- not because I did poorly the first time, but because there was no other courses for me to take and I didn't want to go a year without any math before college.
If your goal is not to have codemonkeys - you need to give the people skills to develop themselves further - which means knowing how computers work.
In that case, assembler is more appropriate.
"Coding literacy" may or may not be a worthwhile goal with a net positive impact, but it is certainly not going to let everyone get in on the current tech salaries.
I think there not very effective but can give a bit of programming culture and maybe the real programming virus to few.
This dicussion reminds my the personnal experience of "prog21" at school on a Apple ][:
> One guy presented this amazing demo full of animation and shaded images. I'm talking crazy stuff, like a skull that dripped blood from its eye into a rising pool at the bottom of the screen. And that was just one segment of his project. I was stunned. Clearly I wasn't the hotshot programmer I thought was.
Not really – but I won’t make that argument myself, but instead link to pg’s "Blub Paradox": http://www.paulgraham.com/avg.html