"Something that frustrates me about the field of computer science is that there are a lot of jerks who think that just because they've "mastered" some programming language or know some obscure unix commands, they are gods and you are nothing."
And frankly, that's the level at which a typical CS freshman is operating. Lots of knowledge about "coding"...very little knowledge about anything else. The playing field is much more level than it initially seems, but because the CS 101 classes are mostly about writing toy code it's easy for prior coding knowledge to be intimidating. In my own undergrad CS program, the CS101 hotshots fared no better, on average, than the kids who came in with no experience at all. In fact, a few of the loudest initial braggarts were the most spectacular flameouts, and about an equal number of the no-prior-experience kids ended up the honors graduates.
Universities could do a lot to combat this problem -- it might be a good idea to let the high-school coding jocks place out of the first CS classes. Alternatively, making first-year classes more about math and less about code would probably put 99% of all incoming students on an even playing field.