"H. S. Teoh" <[email protected]> wrote in message news:[email protected]... > > That is not to say the classroom is completely worthless, > mind you;
I'd say that, and I often have ;) And I forever will. > courses like discrete maths Personally, I found discrete math to be the easiest class I took since kindergarten (*Both* of the times they made me take discrete math. Ugh. God that got boring.) It was almost entirely the sorts of things that any average coder already understands intuitively. Like DeMorgan's: I hadn't known the name "DeMorgan", but just from growing up writing "if" statements I had already grokked how it worked and how to use it. No doubt in my mind that *all* of us here have grokked it (even any of us who might not know it by name) *and* many of the coworkers I've had who I'd normally classify as "incompetent VB-loving imbiciles". Then there was Pidgeonhole principle, which was basically just obvious corollaries to preschool-level spacial relations. Etc. All pretty much BASIC-level stuff. > and programming logic did train me > to think logically and rigorously, an indispensible requirement in the > field. > > However, I also found that most big-name colleges are geared toward > producing researchers rather than programmers in the industry. The colleges I've seen seemed to have an identity crisis in that regard: Sometimes they acted like their role was teaching theory, sometimes they acted like their role was job training/placement, and all the time they were incompetent at both. > Case in point. One of the courses I took as a grad student was taught by > none less than Professor Cook himself (y'know the guy behind Cook's > Theorem). He was a pretty cool guy, and I respect him for what he does. > But the course material was... I don't remember what the official course > title was, but we spent the entire term proving stuff about proofs. Let > me say that again. I'm not just talking about spending the entire > semester proving math theorems (which is already questionable enough in > a course that's listed as a *computer science* course). I'm talking > about spending the entire semester proving things *about* math proofs. > IOW, we were dealing with *meta-proofs*. And most of the "proofs" we > proved things about involved *proofs of infinite length*. > > Yeah. > > I spent the entire course repeatedly wondering if I had misread the > course calendar and gone to the wrong class, and, when I had ruled that > out, what any of this meta-proof stuff had to do with programming. > > I once made the mistake of signing up for a class that claimed to be part of the CS department and was titled "Optimization Techniques". I thought it was obvious what it was and that it would be a great class for me to take. Turned out to be a class that, realistically, belonged in the Math dept and had nothing to do with efficient software, even in theory. Wasn't even in the ballpark of Big-O, etc. It was linear algebra with large numbers of variables. I'm sure it would be great material for the right person, but it wasn't remotely what I expected given the name and department of the course. (Actually, similar thing with my High School class of "Business Law" - Turned out to have *nothing* to do with business whatsoever. Never understood why they didn't just call the class "Law" or "Civic Law".) Kinda felt "baited and switched" both times.
