I've had three full years in college now and I was thinking how sad it was that I couldn't think of a single class that I would actually recommend to anyone. But then I remembered that I got 3 credits for going to China for two weeks and writing 25 pages about Lenovo with 3 other people. I would recommend that class.
I would not recommend any class, but surely I would recommend a few teachers, the kind of teacher that let you think by yourself, that inspires you to create something new.
The kind of teacher that teaches you something but encourages you to find a better way.
I think that's the point.
Classes are as great as teachers make them!
So find a great teacher and you'll have your best class ever.
Linearity: You need a friendly helpful teacher for this one. The class comes in use when you need to solve multiple iterations of a particular calculation. For instance, triangulation is a cinch now that I've taken Linearity.
English literature: It's fun to read the classics and compare them to how politicians and blogs cherry pick and bastardize quotes.
But, I would say, you have to take it with the right teacher...someone who pushes you to find your own understanding of the literature. This usually doesn't happen until the 300 and 400 level courses.
I was always in the library, because I had no interest in what I was being taught, and (I didn't realise it then, but) I couldn't bear being in a roomful of people for lectures. I wish I'd done something like an Open University (is there a US equivalent to this organisation?) course instead.
I'm curious how many credits your OS course was. I have friends at CMU and OS is a 12 credit class. You build a Unix-like kernel from scratch with a partner. An "A" in OS guarantees a six figure programming job at graduation.
It was 1.5. The lab was .5 credit (a class a credit where I went). It was, as far as I know, the only class in the whole university where the lab was a separately credited part.
At CMU OS is actually a 36 unit course, which can be converted to 12 credits at most USA schools, where 12 credits is full time, 15 credits is normal, and 18 credits is the max.
So the CMU OS course is equivalent to four normal classes.
My understanding was that most CMU students overloaded and took a bunch of classes anyways.
BUT... but I just looked up the class at CMU and it is not 12 credits. It is 4 credits. Which shakes my worldview somewhat, I thought this 12 credit was proof that the CMU CS curriculum was something special.
So either I was mislead by my friend at CMU years ago when this course came up in discussion or more likely, I misunderstood him. Feel free to downmod my post above, it would ideally settle out around 0 points for containing wrong information. Sorry for spreading untruths...
I'd also recommend the other two of the "big three" computer science electives - Compiler Design, and Computer Graphics. You can skip most of the rest of the CS major, but no matter how good a programmer you think you are, you'll get something out of those 3 courses.
And I'll second the bit about TAing, though my experience was in physics rather than CS. Being a physics lab TA is cool...you get to play with all sorts of stuff. (Heck, taking physics labs is cool, though the lab reports are not so cool.)
My school, the University of Pittsburgh, somehow tricked the accreditation board into thinking that our physics computer labs (where we solved problems that were typed into Excel) were equivalent to an actual physics lab.
It was wrapped up together with Waves, Optics, and Thermal Physics at my college (and then I think they redid the curriculum the year after I passed through and pulled it out). The parts that I saw definitely seemed worth learning - you learn that pop-science concepts like entropy and temperature actually have precise mathematical definitions in terms of the states of the individual particles. You also learn a bunch of nifty mathematical tricks for dealing with Really Big Numbers.
Actually, I'd probably recommend it more for someone planning to go into finance, economics or history (!!) rather than someone going into physics or CS, unless you're going into a subfield directly related to stat mech. Most of my physics coursework has been basically useless for my computer programming; yeah, it's nifty to know your vectors and rotation matrices (particularly if you go into graphics), but I've never had to solve a volume integral or contract a tensor since dropping my physics major.
This class involved bantering about nothing and and absolutely everything at the same time. It was a small class (usually 3 unique friends that I had just met). And the format was twice a week/discussion. I think it was called: Late-night/post party/stupid drunk/socio-political seminar 101. Take it. Seriously.
Most useful:
Linear algebra,
Numerical methods,
Stats and probability
Most interesting:
Control systems,
Abstract algebra,
Real analysis,
Complex analysis
Of course my definition of "useful" is not necessarily yours. I'm much more on the research side of things, and having a solid mathematical foundation is absolutely essential there.
My advice for taking courses in college: take courses that you know will be useful, but you will not have the time to teach to yourself. If you're a true nerd you will learn all the really useful stuff on your own anyway, and you don't need university for that.
I had a bunch of courses that I really liked in college:
Tonal Harmony and Counterpoint, aka "Harmonize this melody in 4-part harmony" - where you find that there are intricate rules to music, and what you hear on the radio is the result of centuries of evolution in what's considered "acceptable" music. (Or, if you listen to punk rock, the result of breaking nearly every rule for kicks.)
Intro Geology, aka "Rocks for Jocks" (it's funny though; the English-major jocks always struggled in this class, while us one or two physics majors were like "pish, this is easy") - where you play with lots of rocks and go on lots of field trips. I found it surprisingly interesting.
Sustainable Agriculture, aka "This hippy bio professor got a grant for teaching enviro-friendly stuff" - where you learn that there is shit in the meat, and we're all gonna starve when the oil runs out.
Also really liked my philosophy courses, General Relativity, Game Theory, and perhaps Mathematical Logic (though I found that one really hard).
I took a class titled "Entrepreneurship" when I was in college about 10 years ago. Every other week a different entrepreneur spoke. The founder of Jolt Cola came in and told us "we love water [as a market]--it comes out of the tap, and you can sell it for a dollar a bottle." He also showed us one of their big-sellers: Americola--sold ONLY in Japan, with a picture of the Statue of Liberty on the can. That was the moment I realized how twisted marketing can be.
If I had one recommendation, it would be to keep practicing any math you learn while in college. If you're like me, you basically had math classes every semester from when you were 6 years old until the end of college, and you take for granted how much you will be able to forget in 5 years without practice.
The classes I got the most out of aren't the ones I'd necessarily recommend. Whether I got a lot out of a class depended on lot on what the rest of my schedule looked like at the time (besides variables like professor and class makeup). If I was taking 12 credits, I'd tend to get a lot out of all of them. If I was taking 18 plus being a treasurer of a singing group and planning a trip to Europe, I wouldn't learn as much.
Sometimes, I'd get a lot of knowledge out of a class, but the perspective and wisdom wouldn't come until later. I learned how to write a fugue in '18th century counterpoint.' Like the Zelda one on this page:
But it wasn't until I'd been out of college a few years that I figured out how to write a coherent piece that was longer than a minute or so (not counting fugues, which I could still write if I wanted to).
As you can see I really have no idea how to promote music. That might be something I'd recommend a music major learn about.
Others, like Theory of Computation, I loved but because I didn't find any use for it in the first few years after college, I forgot a lot. I still get the basic concepts of nondeterminism and context-free grammars and such, but I'm having to basically relearn all the useful stuff.
I started plunking out twinkle twinkle and star wars on the organ when I was 4 or 5 or something. I started saxophone lessons in 4th grade, piano in 5th grade. I 'wrote' one piece as an exercise while taking piano. My teacher gave me a chord progression and I came up with a few patterns that sounded an awful lot like the overworld music in Final Fantasy IV. I stopped piano after 9th grade and did drama and choir instead. I sang in a Vocal Jazz ensemble, and played sax in the Jazz band, and had lots of opportunity to improvise.
In college my introductory computer science classes were really boring and easy, while the introductory music classes were challenging and interesting. Sophomore year I declared a double major in Music Theory. I took composition lessons for 1 or 2 semesters, I can't remember exactly, but I didn't get much out of them. Two of the "Three Short Pieces for Piano" were written in lessons. Writing for class was really hard, because I felt like I had to please the professor, though he tried to tell me to write whatever I wanted. I agonized over every detail, which got discouraging, because usually there was no correct answer. I also had huge confidence problems because of the rigid, mathematical way I thought music should be appreciated. That is, I thought there was no way I could ever come up with anything original, and I thought original==good.
One day a few years ago, after listening to dozens of Mozart pieces dozens of times, hearing how amazing it was, and knowing how many people poo pooh'd Mozart for using predictable harmonic progressions; I said 'screw it, I'm writing a classical sonata and don't care how unoriginal it turns out to be.' I did it because that's what I liked and that's what I wanted to write. I've had a lot of fun since then, though I haven't made any money.
Operating systems and compilers/compiler optimization.
Computer graphics, but that's not necessarily interesting/useful to everyone.
U of T has a 4th year course called "Computer Architecture" which brought together concepts from almost all the other computer courses and which I enjoyed immensely.
Forget the class, find the best teacher. (Just reiterating what people are saying here) My best class was Entrepreneurship II, just because the teacher was great and taught from personal experiences.
A classical education instead of GE: intense reading of the classics, 6-9 hours of intense discussion/debate with your peers, & a thesis every semester.
I thoroughly enjoyed Business Law, Microeconomics, and an intro to Psychology course. Everyone should probably take psych and an economics class in order to understand people and the world in which we live. B law was great for critical thinking and I learned a good bit about the law as well.
For me the best way to learn has been to do projects in the subject. Not a class. Never. If it is new math, I need to work out some interesting problems using it. Everything that I know I learnt on my own. Some interesting teachers helped put the spark. But thats all teachers can do. Spark you. You have to do the burning, for which you basically have to like learning.Just don't care about if it is useful later or not. Thats not how knowledge is structured. Go with the fun. If stat mech is fun, why not.
My AP Eng. teacher had a one-one talk with me on day 2 of class about her expectations--and how much I had slacked on the first homework assignment. For once a teacher that didn't rubberstamp everything you turned in. I went from hating English to loving that class.
Not a specific class, but I've really enjoyed taking the various speaker series. These are one credit classes where we just get a different speaker each week. This semester I'm actually taking Women & Entrepreneurship. It's basically 60 women and me. They like having me around though so it works out.
Theory of Computation - this was really a grab bag of discrete math. We covered a little of automata theory, complexity, graph theory, and even abstract algebra. The problem sets were really hard, it felt like weight-lifting for my brain.
Molecular Biology - the material itself was a bit dry, but taken as a whole it completely changed my understanding of life as a dynamic process.
oil painting. taught me to look at the world in a whole different way. and inspired me to change my major.
(i'm not saying this to win points with PG. i actually find hacking pretty different from painting.)
more generally, stretch out into different disciplines. these days, most of the interesting stuff happens at the intersections. plus, you'll meet a lot of interesting folks whose paths would never cross with yours otherwise.
A tie for most useful... Both courses have been far more practical than my actual technical capabilities. The first one taught me how to effectively tailor my ideas to my audience, and the second taught me how to take an idea from start to finish.
58 comments
[ 3.3 ms ] story [ 122 ms ] threadI think that's the point. Classes are as great as teachers make them! So find a great teacher and you'll have your best class ever.
English literature: It's fun to read the classics and compare them to how politicians and blogs cherry pick and bastardize quotes.
And if you have a chance to TA, do it. You learn a lot more by teaching than you do by being taught.
Organic Chem - 1 credit.
OS - 1.5
How many credit hours is considered a full time load at your schools?
So the CMU OS course is equivalent to four normal classes.
BUT... but I just looked up the class at CMU and it is not 12 credits. It is 4 credits. Which shakes my worldview somewhat, I thought this 12 credit was proof that the CMU CS curriculum was something special.
So either I was mislead by my friend at CMU years ago when this course came up in discussion or more likely, I misunderstood him. Feel free to downmod my post above, it would ideally settle out around 0 points for containing wrong information. Sorry for spreading untruths...
And I'll second the bit about TAing, though my experience was in physics rather than CS. Being a physics lab TA is cool...you get to play with all sorts of stuff. (Heck, taking physics labs is cool, though the lab reports are not so cool.)
But OS... if you don't know that stuff you're basically worthless.
Actually, I'd probably recommend it more for someone planning to go into finance, economics or history (!!) rather than someone going into physics or CS, unless you're going into a subfield directly related to stat mech. Most of my physics coursework has been basically useless for my computer programming; yeah, it's nifty to know your vectors and rotation matrices (particularly if you go into graphics), but I've never had to solve a volume integral or contract a tensor since dropping my physics major.
Most interesting: Control systems, Abstract algebra, Real analysis, Complex analysis
Of course my definition of "useful" is not necessarily yours. I'm much more on the research side of things, and having a solid mathematical foundation is absolutely essential there. My advice for taking courses in college: take courses that you know will be useful, but you will not have the time to teach to yourself. If you're a true nerd you will learn all the really useful stuff on your own anyway, and you don't need university for that.
Tonal Harmony and Counterpoint, aka "Harmonize this melody in 4-part harmony" - where you find that there are intricate rules to music, and what you hear on the radio is the result of centuries of evolution in what's considered "acceptable" music. (Or, if you listen to punk rock, the result of breaking nearly every rule for kicks.)
Intro Geology, aka "Rocks for Jocks" (it's funny though; the English-major jocks always struggled in this class, while us one or two physics majors were like "pish, this is easy") - where you play with lots of rocks and go on lots of field trips. I found it surprisingly interesting.
Sustainable Agriculture, aka "This hippy bio professor got a grant for teaching enviro-friendly stuff" - where you learn that there is shit in the meat, and we're all gonna starve when the oil runs out.
Also really liked my philosophy courses, General Relativity, Game Theory, and perhaps Mathematical Logic (though I found that one really hard).
The classes I got the most out of aren't the ones I'd necessarily recommend. Whether I got a lot out of a class depended on lot on what the rest of my schedule looked like at the time (besides variables like professor and class makeup). If I was taking 12 credits, I'd tend to get a lot out of all of them. If I was taking 18 plus being a treasurer of a singing group and planning a trip to Europe, I wouldn't learn as much.
Sometimes, I'd get a lot of knowledge out of a class, but the perspective and wisdom wouldn't come until later. I learned how to write a fugue in '18th century counterpoint.' Like the Zelda one on this page:
http://www.goladus.com/music/musicpage.php
But it wasn't until I'd been out of college a few years that I figured out how to write a coherent piece that was longer than a minute or so (not counting fugues, which I could still write if I wanted to).
Here's some more: http://www.myspace.com/gadolus
As you can see I really have no idea how to promote music. That might be something I'd recommend a music major learn about.
Others, like Theory of Computation, I loved but because I didn't find any use for it in the first few years after college, I forgot a lot. I still get the basic concepts of nondeterminism and context-free grammars and such, but I'm having to basically relearn all the useful stuff.
On the other hand, unlike many people who do, you know how to make music. Serious talent. How long have you been doing it?
In college my introductory computer science classes were really boring and easy, while the introductory music classes were challenging and interesting. Sophomore year I declared a double major in Music Theory. I took composition lessons for 1 or 2 semesters, I can't remember exactly, but I didn't get much out of them. Two of the "Three Short Pieces for Piano" were written in lessons. Writing for class was really hard, because I felt like I had to please the professor, though he tried to tell me to write whatever I wanted. I agonized over every detail, which got discouraging, because usually there was no correct answer. I also had huge confidence problems because of the rigid, mathematical way I thought music should be appreciated. That is, I thought there was no way I could ever come up with anything original, and I thought original==good.
One day a few years ago, after listening to dozens of Mozart pieces dozens of times, hearing how amazing it was, and knowing how many people poo pooh'd Mozart for using predictable harmonic progressions; I said 'screw it, I'm writing a classical sonata and don't care how unoriginal it turns out to be.' I did it because that's what I liked and that's what I wanted to write. I've had a lot of fun since then, though I haven't made any money.
Computer graphics, but that's not necessarily interesting/useful to everyone.
U of T has a 4th year course called "Computer Architecture" which brought together concepts from almost all the other computer courses and which I enjoyed immensely.
Most all of the undergraduate courses focused on analysis. I hated that! Let me design stuff already!
Molecular Biology - the material itself was a bit dry, but taken as a whole it completely changed my understanding of life as a dynamic process.
(i'm not saying this to win points with PG. i actually find hacking pretty different from painting.)
more generally, stretch out into different disciplines. these days, most of the interesting stuff happens at the intersections. plus, you'll meet a lot of interesting folks whose paths would never cross with yours otherwise.
A tie for most useful... Both courses have been far more practical than my actual technical capabilities. The first one taught me how to effectively tailor my ideas to my audience, and the second taught me how to take an idea from start to finish.
I also really enjoyed my computational geometry class.
But the first poster is right: good teachers are at least if not way more important than interesting classes.