Questions about Computer Science

I will be attending UC Davis in the Fall, and I just have a few questions about the Computer Science program and how to prepare myself for it! I would appreciate any help or advice that you can give.

I only know the basics of programming. What are the best sites/books that I could use to self-teach myself some stuff over the summer? I plan on working really hard over the summer; this is something that I am extremely interested in and want to get good at.

I have a pretty old laptop and I will probably get a new one. Any recommendations?

I know that in general job opportunities for a computer science major are looking good right now, but what specific places do computer science majors at Davis intern or get jobs at? Just out of curiosity!

When, in my four years of college, will I most likely take my first computer science related course?

You don’t strictly need to know anything. I came in with no experience, and I know many people who also came in with no experience. If you want to be a bit ahead of the curve, I recommend doing the Python course in Codecademy. Are you planning to start with ECS 10 or ECS 30? ECS 10 is in Python and assumes no programming experience, and ECS 30 is in C and assumes basic programming experience. For what it’s worth I went into 30 with no experience and did just fine; I never took 10.

For PCs, I have a Toshiba and it’s served me well. Mine is also getting old (it’s a hand-me-down that my mom bought my senior year of high school, so late 2011) and it doesn’t cause problems. I initially had a Lenovo, and while it was great functionality wise, the hinges broke after one quarter and I couldn’t close it. That was a serious pain simply because I couldn’t take my laptop anywhere the rest of the year. So based on that experience I wouldn’t recommend one (don’t remember the specific model). Asus laptops seem to do decently well too from what I’ve seen.

For Macs, I have no experience there.

And honestly it doesn’t matter much what computer you have, so long as it works and you can access the internet.

I know someone who interned for Trulia last summer and is going to work there after her graduation in a few weeks. I know someone else who’s interning at Splunk. I know of a couple people interning at Intel. And a bunch of others where I know they’re interning somewhere but there are too many people to keep track of who’s going where. Basically, Davis grads wind up in all sorts of companies for internships and careers.

First year if you have any intention of graduating in four years while still having a reasonable schedule. You’ll be taking ECS 30 and most likely ECS 40. ECS 10 will come before 30 if you choose to do it, though personally I don’t recommend 10 for CS majors. You’ll also most likely take ECS 20, and possibly ECS 60 or 50 depending on how you choose to balance your schedule.

Big piece of advice: Do what you can to take ECS 60 ASAP, because it’s a prereq for the majority of the upper level classes. You need to take 30, 40, and 20 before taking it. I took it spring quarter sophomore year, and would recommend that you finish it by fall quarter junior year at the absolute latest. I mean, I know people who didn’t take 60 until the end of junior year and are still graduating on time, but their schedules really sucked their last year because they had to cram in all but a couple of their CS upper div classes in three quarters. It’s better to get it done sometime sophomore year so you can space your classes out more. Most people take 60 sometime sophomore year (and that’s what’s generally recommended), but it’s possible to finish it by the end of freshman year if you’re really on top of your CS classes.

@PhantomVirgo That was extremely helpful! Thanks!

No problem. Feel free to ask if you have any other questions!

@PhantomVirgo I have orientation tomorrow, and I’m super confused on what classes I may need to register for. I’m definitely going to take ECS 30, but should I take Chem or Physics? Also, are there any general Ed classes that you would reccommend?

Based on the timing of your orientation I’m assuming you’re in Letters and Science CS?

Which science sequence to take is mostly personal preference. I took CHE 2A-C both because I didn’t want to deal with an extra quarter of calculus, plus I find chem more interesting than physics. I’ve seen other CS majors say to try to do physics if at all possible. And supposedly the CHE 2A-B plus BIS 2A sequence is the easiest, though most I know who go for chem just finish out the series instead of worrying about another set of materials to get for bio.

One thing to note: Physics requires you to have completed MAT 21B, so unless you passed the AP Calculus BC exam or took CC classes up to calc 2 you won’t be able to start physics until spring. Chem doesn’t have that requirement, so you can start it immediately regardless. If you haven’t completed the math for physics and you’d rather not wait to start your science sequence, the chem (or biochem) track is your best bet.

On that note, you’ll definitely need to take math. Most likely MAT 21A, but you can start in MAT 21B if you passed the AP Calc AB exam or MAT 21C if you passed the AP Calc BC exam. Alternatively if you already took those APs, you can start at MAT 21A for a (theoretical) GPA boost because you’d already (hopefully) know the material.

Your schedule will look something like:
ECS 30
MAT 21A/B/C (depends on classes you’ve already completed)
GE/CHE 2A if doing chemistry
GE to get you up to around 15 units, if you choose to

For GEs, I highly recommend any of the RST 1 classes. I took RST 1F (religion today) my freshman year and loved it, and I’m taking RST 1 (survey of religion) in the fall for fun. Pretty much if you’re interested in world religions at all, you can’t go wrong with any of those classes. They also tend to fulfill a lot of GE requirements.

LIN 1 (intro to linguistics) is interesting (though I might be biased as a linguistics double major) and simple, but it doesn’t fulfill many GEs. Still, it can count towards either AH or SS, so it’s flexible.

ANT 2 (cultural anthro) is easy and fulfills a good amount of GEs. I thought it was boring though. I’d still recommend it because it does count towards a lot of requirements and isn’t too difficult.

ANS 42 (companion animal biology), only offered in winter last I checked. Very interesting if you’re interested in companion animals, but again only offered in winter. Also fulfills a lot of GE requirements.

Later on, I would recommend LIN 177 (computational linguistics). Simple, fulfills elective requirements for CS, and counts for upper div units. You could theoretically take this your second quarter, but you might want to wait until you have more programming under your belt because that makes it a lot easier. That’d probably be the earliest you could get in at any rate, because upper div CS majors got the memo that it counts towards electives.

Also later on, a lot of CS majors take the HIS 111 series with Spyridakis. I’ve wanted to take one of these classes but haven’t been able to fit any in yet, so I have no personal experience with these.

You can find other classes on schedule builder. Go into search, click advanced search options, and check any GE requirements you want the class to fulfill. You might also want to select to include only open courses so you don’t get your hopes up on a class only to realize it’s full.

Thank you so much. This was extremely helpful! I did get a 5 on Calc BC, so I will probably go for Mat 21C and then go with the physics track.

One more question, would it be bad to take a Science Gen Ed my first quarter? I know being a computer science major these gen eds will be taken care of, but the class just sounds really interesting and it’s not computer science related. Would this put me behind?

Also, would it be okay to start physics next quarter, and take a humanities GE and that science GE this quarter? I think there’s another math pre req for physics that I would need to take concurrently with it.

Taking a science GE would only be bad in the sense of 1. potentially overloading on science units and 2. not finishing GEs as quickly as you could. If you’re interested in it, by all means take it. You won’t be behind by taking a few random science classes that don’t fulfill GEs. Out of curiosity, what class is it?

Edit: Actually depending on what the class is it might fulfill some core literacies. Even if it doesn’t, it wouldn’t put you behind.

PHY 9A is only offered in fall and spring, so if you don’t take it in fall you’ll need to wait until spring. That’s usually what happens anyway because of the MAT 21B requirement, so you wouldn’t be behind by doing that.

PHY 9A only requires MAT 21B. PHY 9B requires MAT 21C and you either need to have completed MAT 21D or be concurrently enrolled. PHY 9C requires MAT 21D and either MAT 22A completed or concurrently enrolled. If you do MAT 21C as planned, this is how it’ll look for you:

Fall: MAT 21C + other classes
Winter: MAT 21D + other classes
Spring: MAT 22A + other classes

You’d be fine on prereqs regardless of when you start physics. Without having taken physics myself to know the actual workload, I’d say to wait until spring for physics so you have more time to adjust to the quarter system. Your schedule will be full enough if you have ECS 30, MAT 21C, a humanities GE, and a science GE. Remember, you have 12 quarters here. That gives you 11 others beyond your first quarter to take heavier workloads, and trust me you’ll get some heavy workloads your last couple years depending on how you schedule your requirements. No reason to overwhelm yourself at the start!