Review: Being a CPSC 210 TA

Posted on June 25, 2015 in ubc • 10 min read

Last term (2014W2, or Jan-Apr 2015), I had the opportunity to be a teaching assistant (henceforth abbreviated as TA) for CPSC 210: "Software Construction", which is part of UBC's CPSC software engineering stream. I've already reviewed 210 as a student in an earlier blog post; instead, this blog post will be somewhat different than my regular course reviews, being written from the perspective of a TA rather than a student in CPSC 210. There are a number of blogs out there that offer reviews of various UBC courses, but none that talk about what it's like to be a TA …


Continue reading

Review: CPSC 320, 404

Posted on June 23, 2015 in ubc • 8 min read

I took CPSC 320 and 404 this year (in 2014W2) along with a few electives, right after my second 8-month co-op stint. I actually took a lighter workload than I would usually take during regular winter sessions, in part because I was also doing a TA-ship for the first time (in fact, I've gone ahead and wrote a review about my TA experience). Keep on reading for my thoughts about these two upper-level CPSC courses.

CPSC 320:

In a nutshell:

Language: none in particular

Toolset: again, none in particular

Prereqs: CPSC 221, and either (a) 6 credits of 2nd year …


Continue reading

Review: CPSC 313, 317

Posted on June 22, 2015 in ubc • 5 min read

Again, a set of long overdue reviews for a bunch of 3rd year CPSC courses that I took in 2013W2, hopefully in time for fellow students who are considering registering for these courses. Enjoy, and as always let me know if you have any feedback; comments, questions, or suggestions are all greatly appreciated!

CPSC 313:

In a nutshell:

Language: Java, Y86 (a subset of x86 assembly used in this course)

Toolset: Eclipse, your preferred text editor

Prereqs: CPSC 213 and CPSC 221

Website/resources: CPSC 313, Piazza

Textbook: Computer Systems: A Programmer's Perspective, 2nd ed., by Bryant and O'Hallaron

CPSC …


Continue reading

Review: CPSC 304, 310

Posted on June 22, 2015 in ubc • 5 min read

This is a long overdue review for a bunch of 3rd year CPSC courses that I took in 2013W1. Better late than never, right? As it's been a lengthy 2 years since I've taken these courses, I'll probably keep these reviews a little bit shorter than some of my other reviews.

CPSC 304:

In a nutshell:

Language: relational algebra, SQL, Datalog

Toolset: exposure to Oracle, SQL*Plus

Prereqs: CPSC 221

Website/resources: CPSC 304 and lecture recordings (which are only accessible via VPN or ubcsecure; you'll get a 403 Forbidden error otherwise); Piazza

Textbook: Database Management Systems, 3rd ed., by …


Continue reading

Review: CPSC 213, 221

Posted on January 10, 2013 in ubc • 7 min read

Now that I've finished with all my 2nd year CPSC courses, I guess it's a good idea to write down my review before I forget about it, especially since I'm now on a co-op work position. So, without further ado, I present to you my overall thoughts and comments on both CPSC 213 and CPSC 221 (taken in 2012W1).

CPSC 213:

In a nutshell:

Language: C, Java, Assembly (SM213)

Toolset: Text editor of your choice + gcc (GNU C compiler) + debugging tools (gdb for C, Simple Machine for SM213 assembly)

Prereqs: CPSC 121, 210

Website/resources: CPSC 213 website, SM213 ISA …


Continue reading

Review: CPSC 189

Posted on July 17, 2012 in ubc • 2 min read

CPSC 189 is a relatively new course and is only worth 1 credit, but it sounded interesting enough that I decided to take it during summer session. I've always wanted a formal grounding in Python, and while I was somewhat disappointed to realize that the purpose of CPSC 189 wasn't to teach students Python per se, it was still an interesting and engaging course in my opinion.

CPSC 189:

In a nutshell: [ Language: Python ] – [ IDE: Wing IDE 101 ] – [ Prereqs: CPSC 110 ] – [ CPSC 189 Website ]

Basically, this is CPSC 110, except you'll be designing programs with the Python programming language (which …


Continue reading

Review: CPSC 110+121+210

Posted on June 23, 2012 in ubc • 9 min read

Here's my review for CPSC 110, 121, and 210, which I took in my 1st year as a UBC Science student, doing a major in computer science.

CPSC 110:

In a nutshell: [ Language: Racket ] - [ IDE: DrRacket ] - [ Prereqs: none ] - [ CPSC 110 Website ]

"Bad programming is easy. Idiots can learn it in 21 days, even if they are Dummies." - How to Design Programs, 2nd Edition

This is an introductory computer science course (I know, I'm stating the obvious here), designed to teach students to design. In fact, the textbook you'll be using is entitled "How to Design Programs", a.k.a. HtDP …


Continue reading

Advice for new UBC students (CPSC)

Posted on June 23, 2012 in ubc • 6 min read

So, here's the 3rd entry in my "Advice for new UBC students" series (I know, I'm not all that creative :P ) - today, I'll talk about everything an incoming UBC computer science student should know. This is written primarily for students in the Faculty of Science; students who are studying comp sci, but are pursuing a BA / BCOM instead of a BSc, will have to deal with different requirements as determined by their faculty.

One of the unique things about CPSC at UBC is that it is the only specialization you can declare immediately upon entering Science as a 1st year …


Continue reading