Industry is far too low a bar to aim at. College should give them the fundamental understanding of programming that they can apply to a variety of situations. Employability flows out of that.
I truly wish this was a more commonly held view point. You would think, speaking with many, that college was nothing more than a corporate worker mill.
This is a dangerously reductionistic viewpoint that castrates the intellectual potential of students.
To a student versed in Lisp macros, a framework like Rails ceases to be magic and starts being something that can be understood and improved on. Meanwhile, industry shies away from the possibility of a quick dive into a metaprogram, because, (OMG), it's hard!
I'm exaggerating, but industry strikes me as profoundly anti-intellectual at times. We need people to counter this sentiment and the damage it imposes on all of us.
But if the way you're doing it causes a high dropout rate, then you're not giving them "the fundamental understanding of programming" very well, are you? (Unless you're going to be snobbish and say that "only the few can learn this" - but that's a pretty ugly snobbery, especially if it's caused by you choosing an inaccessible teaching approach.)
The dropout rate for entry-level programming courses is high, regardless of starting language. Symbolic thinking is rough to pick up in a single semester. I think most people can get it, but the timeframe is tough, especially on non-majors. I don't know enough to comment beyond this, other than suggesting that we can require less of non-major students to ease them in?