Introduction to Databases · Computer Science
Grading: 50% homework, 20% midterm, 30% final There is a homework assignment about every 2 weeks. (average for CS dept.) His grading was very fair. He didn't have extremely strict formatting, and there was room for creativity, but it was clear what he was looking for in the homeworks. About 4-5 for homework but more time for reviewing notes and class as you are completing the homework since there is a lot of content.
Workload is not high. The only work outside of the midterm and final are 2 HW assignments, which are SQL practice, and the semester-long project has you building a full-stack application (Python/Flask) which is genuinely useful experience, especially earlier on in your CS career. There is also an option for a project without coding, though I do not know much about it except that it sounds more boring. Therefore, the homeworks are pretty useful. The midterm (15% of the grade) and final (40% of the grade) do ask a few SQL questions, but are mostly theoretical questions about DB management systems. The midterm and final averages were around a 60 for the midterm and a 45 for the final which are kind of crazy considering databases is not supposed to be a terribly difficult class. There is a policy where the final replaces the midterm but that doesn't really happen since the midterm is hard, but the final is an affront to God himself. Ross curves reasonably though, so if you are able to repress the anxiety your raw scores will undoubtedly give you, you'll be alright.
Not bad at all, get a partner to do the project for you. As a reminder, these TA's are actual pains when it comes to grading homeworks and tests: Fei Peng Atif Ahmed Jingjing Ling Kilol Gupta Guanlin Zhou Sajal Khandelwal Kevin Raji Cherian
The workload is not too heavy but also not light for people who learn DB first time. 2 projects and 4 HWs. If you never built a website, project 1 would be interesting for you. And there will be 2 exams.
I absolutely loved this class. It literally caused me to excel in my other classes, and regain hope in Columbia CS. The professor is kind and hilarious. I actually learned a lot, and didn't wipe it out of my brain after the class. Prof Ferguson both gives readings, visual demonstrations (through graphing how data would flow), gives slides, and doesn't walk alongs. He also records classes. There is a lot of content, but it is very approachable because he explains conceptually how it works very clearly and so even though there is a lot of technical new skills you have to learn, they seem obvious given the conceptual understanding. Also gets easier given the amount of both practice through homework and in class examples. He is very approachable, kind, and genuinely seems to care. It is both his personality and teaching style that literally made be excited to go to class, and even do the homework. He is my far the best professor in the CS department and dare I say all of SEAS.
If you're hoping to learn SQL and how to use databases, this class does that... but only for the first few weeks. After that, it is all database management systems, but after the class you do have a pretty good idea of how databases are implemented which is useless for most people at the face level, but very useful for actually using databases. Still, the material is boring. Ross lectures as if he understands this fact and has surrendered to his powerlessness in changing it. Every lecture consists of a new topic which he explains well and a few examples. The review lectures are pretty useful. Basically, the structure, workload, and instruction of the class are all pretty good thanks to Ross, but you will be falling asleep anyway which is mostly the material's fault.
The professor was pretty good, he tried to add humor to his lectures but his accent was a little difficult to understand. He is overall a nice guy, probably your average professor. However, the TA's are horrible. If you see these TA's in your future classes, make sure to drop immediately: Fei Peng Atif Ahmed Jingjing Ling Kilol Gupta Guanlin Zhou Sajal Khandelwal Kevin Raji Cherian
Maybe Eugene Wu is a good professor or a good researcher, but apparently not a good teacher. He always makes simple things confusing in his class. There are many times I couldn't get his points. But after class, I always get handle of those puzzle quickly by searching related info in Google. Many of my classmates faced the same condition. Therefore I don't recommend this professor.
was supposed to be 5 HWs but we only got to do 4 of them. 3 exams - Very random times in the semester.
4 parts of a project that you do in a pair. Parts of the project could be quite tedious and not directly related to course content (for example, spending hours trying to clean up data to insert into your database) but ultimately you end up with a cool end result. 2 homework assignments 1 midterm 1 final (cumulative)