This course builds on DS110 by expanding on programming language, systems, and algorithmic concepts introduced in the prior course. The course begins by exploring the different types of programming languages and introducing students to important systems level concepts such as computer architecture, compilers, file systems, and using the command line. It then moves to introducing a high performance language (Rust) and how to use it to implement a number of fundamental CS data structures and algorithms (lists, queues, trees, graphs etc). Then it covers how to use Rust in conjunction with external libraries to perform data manipulation and analysis. Students are expected to propose and complete an independent project on a large dataset using Rust.
Instructor: Alishah Chator
Office Hours: Thursday 1:30-3:30 pm @ Common space next to CDS1342 and by appointment
TA: Zach Gentile
Office Hours: 2:30-3:30 PM on Monday and Friday @ 14th floor of CDS, around desks 6-9
TA: Ritvik Gupta
Office Hours: 4:00-5:00 PM on Wednesdays and Fridays @ 14th floor of CDS, around desks 6-9
TA: Alekhya Koppineni
Office Hours: 3:00-5:00 PM on Tuesdays @ Howard Thurman Center in the Fuller building
CA: Sam Cowan
Office Hours: 3:30-4:30 PM on Tuesdays and Thursdays @ 14th floor of CDS, around desks 6-9
CA: Joshua Leeds
Office Hours: Mondays at 10 am in CDS
CA: Sia Sharma
Office Hours: 9am -11am on Tuesdays @ the 14th floor of CDS (desks 6-9)
CA: Emir Tali
Office Hours: 10-11am on Mondays and Wednesdays @ 16th floor of CDS
Lecture: Tuesday/Thursday 9:30–10:45am, CAS 313
Discussion sections: Tuesday 11:00–11:50am CGS 123, 12:30-1:20pm CGS 123, 2:00-2:50pm FLR 121 & 3:30-4:20pm FLR 121
Piazza (announcements and discussions): https://piazza.com/bu/fall2024/ds210/home (join code bu@1266)
Gradescope & code for submitting homework: https://www.gradescope.com/courses/852719 (entry code: 5K6V4Z)