I entered for Fall 2002 and graduated after Spring 2006. I majored in EECS. I don't want to drudge through commenting each semester's courseload. I was worried about college being too hard and so took 2 classes I APed out of, math1b and chem1a. In retrospect, I could have gone ahead and done just fine. It's good I didn't know recursion, though, because cs3 was a blast and I got to have Harvey for 61a in Spring 03, and Dan again for 61b in Fall 03. I liked Varaiya for 20, despite many of my colleages not liking it. I also liked Sanders for 40, again, despite many of my peers disagreeing with me. Ramchandran was fantastic for 120. Hu was good for 130; however, it was clear that he had more of a corporate (read: pragmatic, economical) rather than academic bent. Boser is fantastic for 105 -- we got to design an amplifier, something normally reserved for 140. 145L is one of those classes that few seem to know about and fewer decide to take. I think it's great. It's hands-on, makes you really document your work, and gives you some practical albeit increasingly "old-school" know-how. Disclaimer: I TAed for the class, which lends some positive bias to my assessment. :) cs191 is mind-expanding, but make sure to take it when Vazirani and/or Crommie are teaching. If you get the quantum bug, I highly recommend taking physics 137a with D.H. Lee. Phenomenal. Finally, 170 with Sinclair is a great course. I was happy sticking with EECS because it's so flexible. Upper-div requirements? Just take 20 units, and you're all set! Considering where I'm headed (materials and devices), I thought in retrospect that Engineering Physics might have been a better fit as a major, but upon further reflection I realize that I have really benefitted from taking the 61 series, from 20 and 40, and from the flexibility of the upper-div requirements for EECS. Plus, being in EECS introduced me to HKN! :) Donny Aug.05.2006