I had heard this class was easy. The universal consensus was that this class was an easy-A, walk-in-the-park, sort of a joke of an upper-level Computer Science course.
I hate the people who told me that.
IT WAS HARD, OKAy???
I don’t know if those people had experience with relational databases before, or they had an easier instructor, or what it was, but I was constantly struggling to grasp concepts in this class. Fortunately, nearer to the end, it all came together – and yes, I did manage that A-grade – but this was not without a lot of work.
This class has weekly tutorials which go toward your grade. In that sense, they are mandatory – and I would highly recommend you put the time and effort into them, as they develop your understanding of basic concepts.
Not completely SQL
Unless you are familiar with relational databases and normalization, you will probably spend the first half of this class wondering “Uh, I thought this class was going to teach me SQL?” This is exactly where I was. Fortunately, it sort of all comes together later – and once you make the connections the whole thing comes a little bit easier.
If you have already worked with SQL on co-op or elsewhere, I can see this course not being incredibly helpful – you would probably mostly be interested in the database design information at the beginning of the course. However, with most applications using some sort of relational database, you should probably take this if you don’t have experience.
Oh also, the project
There is also a large-ish component of this course which is a project, which you complete in a group of 4. The project itself is broken down into a number of deliverables, I think 4 or 5, and includes a demo with a TA. The main complaint I had about the project is that a team of 4 is pretty large for an assignment (it’s really hard to get everyone’s hands in every deliverable).
Get started on the project early – once you get into the final deliverable, you only have a couple weeks to make an entire app, complete with a rudimentary UI, that uses a RDB. (You can see my group’s project here.) The project ends up being due in the last couple weeks of term, which is when every course has stuff due, and it was a bit of a nightmare getting it done on top of 3 other large-ish projects.
Overall I am pretty glad I took this course – no longer will my eyes glaze completely over when someone starts talking about SQL or databases to me.