Basic Course Info

Course Overview

This course provides an introduction to computer science and programming for data science. Students will learn the fundamentals of data structures, algorithms, analysis of algorithms, algorithmic complexity, programming using test-driven design, use of debuggers and profilers, code organization, and version control. Additional topics include data science web applications, SQL, NoSQL, Graph, and Streaming databases, and distributed computing.

By the end of this course you will be able to:

  • Design & implement various data structures, algorithms; tackle interview questions in a systematic way
  • Learn to use SQL (Postgres), NoSQL (mongoDB), Graph database (neo4j), Streaming database (Kafka)
  • Build & deploy a distributed processing pipeline at scale (MapReduce, Spark)
  • Deploy websites and apps (Heroku, AWS, GCP)

Other details can be found in the Syllabus linked above and on the DATA 1050 Interal Course Website.