Comment Re:Math sucks (Score 2) 509
At the risk of admitting that I'm also an Olde Farte (and worse, a hair-shirt electrical engineer, ca. 1980), I have to agree with Anonymous Coward. There is no substitute for understanding at-depth.
I really believe that students of the current generation are at a disadvantage compared to the bad old days. With the current complex CPU architectures and compiler/interpreter/hybrid language implementations, students aren't able to get much experience at the bare-metal, stacks-and-registers, bytes-and-words, cycles-and-buses level. I know this sounds like one of those "I used to walk to school ten miles barefoot in the snow" stories, but I think that we learned a great deal about computing architectures and the implementations of high-level languages when we assembled hot-patches in our heads and "deposited" code directly into program memory. (I won't lament the passage of "BFA" FORTRAN programs with mondo EQUIVALENCE and COMMON blocks, however. That's too much nostalgia; I'm not that hard a case.)
The same thing applies at the application language level. Java is a fine example. The (sort of) good news is that its possible for a slasher to write a more-or-less serviceable Java application after reading the first 30 pages of a book purchased at the mall. The bad news is that he/she then believes themselves to be a programmer, and hires out as same. The trouble comes when the next application is non-trivial - contains a search, or a sort, or (heaven forfend) some numerical work. The world is littered with this sort of wreckage.
What (it seems to me) this means to contemporary students is that they have to try harder than my generation did to get exposed to the bare-metal basics of computing - hardware architectures, language implementations, analysis of algorithms and the like. To return to A.C.'s point, its the deep understanding of the principles, and not mere proficiency in the language du jour, that will build a durable career.
So, kids, stay in school, and quit bitching about freshman calculus. A proper computer scientist has got to swallow a little abstract algebra and lot of graph theory, and they're *much* worse...