DS 2500: Intermediate Programming with Data

John Rachlin

When Lecture: MTWR 11:40a-1:20p ET (Live/Online)
Lab: Virtual/Asynchronous - Released in advance
E-mail j.rachlin@northeastern.edu
Web Website
Office Hours Friday 2-6pm ET/Boston on Zoom and by appointment only.
Reserve 20 minutes for one-on-one help

Teaching Assistants

Please see Piazza for any scheduling updates and connection information. All times are ET/Boston.
NameOffice HoursZoom
Alina Gonzalez TBD zoom
Thomas Henehan TBD zoom
Maddie Lebiedzinski TBD zoom
Amey Gurunath Parab TBD zoom
Ayush Shenvi Pissurlenkar TBD zoom
Roland Waterson TBD zoom
Dachuan Zhang TBD zoom

About the course

Catalog Description

Provides intermediate to advanced python programming for data science with the aim of preparing students for more advanced courses in data science and to enable practical contributions to software development and data science projects in a commercial setting. Covers object-oriented design patterns using Python, including encapsulation, composition, and inheritance. Advanced programming skills will cover software architecture, recursion, profiling, unit testing and debugging, lineage and data provenance, using advanced integrated development environments, and software control systems. Through case studies, the course will survey key concepts in data science with an emphasis on machine-learning (classification, clustering, deep learning), data visualization, and natural language processing. Additional assigned readings will survey topics in ethics, model bias, and data privacy pertinent to today's big data world. Accompanied by DS2501: Lab for DS2500 (1.000 credits) in which students will practice the programming techniques discussed in lecture through hands-on experimentation.

5.000 Credit Hours (4.000 Lecture, 1.000 Lab - DS 2501 - required corequisite)
Prerequisites: DS 2000

This class is not recorded.

Other than the second-week of class, this class is not recorded. I strongly you recommend you come to every live session with your cameras on and your microphone muted. In the event you need to miss class, I will be posting lecture notes and coding examples that evening. (Materials should be available by 8pm.) I very much welcome active discussion in my classrooms. To ask a question, feel free to virtually raise your hand or post your question on chat.

In week 2 (May 15th-18th), I will be in Boston for faculty meetings. Pre-recorded lectures will be made available and we will temporarily run the class asynchronously. In week 3 and for the rest of the semester, we will return to live / synchronous lectures on Zoom.

Textbook

Title Deitel and Deitel (2019): Intro to Python for Computer Science and Data Science: Learning to Program with AI, Big Data and the Cloud, 1ed. (Pearson)
Buy online Amazon.com
Digital (free)
Description The Deitels’ Introduction to Python for Computer Science and Data Science: Learning to Program with AI, Big Data and the Cloud offers a unique approach to teaching introductory Python programming, appropriate for both computer-science and data-science audiences. Providing the most current coverage of topics and applications, the book is paired with extensive traditional supplements as well as Jupyter Notebooks supplements. Real-world datasets and artificial-intelligence technologies allow students to work on projects making a difference in business, industry, government and academia. Hundreds of examples, exercises, projects (EEPs), and implementation case studies give students an engaging, challenging and entertaining introduction to Python programming and hands-on data science.