I got my first job at a startup writing code when I was a freshman in college.
I was an engineering major, and I taught myself how to program in middle school, but never did I ever take a class on it.
Of all the various things I have learned, learning programming has one of the lowest barriers to entry of any. I really think it is a waste of money to focus on it in school. Most of the kids that I knew who took AP Comp Sci were ruined by it. A multiple choice test for basic programming? Yuck.
I disagree with the rest, though. I would agree if I thought the other classes were worthwhile, but about 70% of my junior high and high school was filler at best. At least if there had been programming classes I could have taken those instead of truly pointless stuff like the JV girls volleyball coach teaching "social studies" via VHS tapes.
Looking at the College Board's numbers for test takers, there are about 19,000 who take the AP CS exam per year, less than one-tenth the number of students who take the calculus exam.
The real reason NYC has a shortage of engineers is because engineers don't want to live there. Aside from one or two cool startups and the Google office, most tech jobs in the area are in finance or "agency" style work.
"...selling digital media, trafficking ads in DART, negotiating CDN prices with suppliers, creating P&L's where the COGs is Akamai, tracking and filing bugs in Pivotal Tracker..." sounds like exactly the "Boiler Room" sort of startup most people with other employment options want to avoid.