Introduction to Programming for Data Science

Schedule: Tuesdays 6:00 pm - 9:15 pm

Location: Hayden Hall 221 + Zoom

Dates: Jan 19, 2021 - Apr 24, 2021

Instructor: Kylie Bemis (she/her) | | Virtual Office Hours: Thursdays 3:00 pm - 4:00 pm @ Microsoft Teams or by appointment

TA: Gowtam Potluri | Virtual Office Hours: See Piazza

Piazza: Questions and lecture material are handled via Piazza | Sign up at https://piazza.com/northeastern/spring2021/ds5010

Canvas: Course schedule and assignments are available via Canvas | Log in at https://northeastern.instructure.com/courses/63573

Teams: Office hours are held virtually via Microsoft Teams | Log in at https://teams.northeastern.edu

Required Textbooks:

(Required reading excerpts will be made available on Piazza.)

Supplementary Textbooks:

(Required reading excerpts will be made available on Piazza.)

Academic integrity: Be familiar with the university’s academic integrity policy on cheating and plagiarism.


Overview

The course is a hands-on introduction to the fundamentals of programming, data structures and algorithms for data sciences. The course encompasses programming basics such as functions, data structures, and algorithms; and their use in design and implementation of data science applications. Fundamentals of discrete mathematics for programming with data will be introduced where appropriate. The course will also introduce students to programming as a collaborative discipline. The course will develop programming experience in Python.

Students are required to get a B or above in the placement courses in order to progress into the core courses in the degree program. Students that do not achieve a B or better in the placement courses will be required to retake the courses.


Topics


Policies

General

Please let me know if you use a different name or pronouns from what appears the class roster. You may use a preferred name on Piazza and when submitting assignments and exams, but please be consistent and inform the instructors. The Northeastern LGBTQA Center can provide resources for changing your name and gender marker in the Northeastern system.

Please reach out to me early if you have difficulty keeping up with class material or completing assignments for personal reasons. The We Care program at Northeastern University is a resource available to you in times of stress.

All students are expected to abide by the university’s academic integrity policy and respect Northeastern’s commitment to diversity and inclusion.

Northeastern University strictly prohibits discrimination or harassment on the basis of race, color, religion, religious creed, genetic information, sex, gender identity, sexual orientation, age, national origin, ancestry, veteran, or disability status. Please review Northeastern’s Title IX policy, which protects individuals from sex or gender-based discrimination, including discrimination based on gender-identity. Faculty members are required to report all allegations of sex/gender-based discrimination to the Title IX coordinator.

Please be kind and respectful to your fellow students regardless of identity or background. Students are expected to respect and use other students’ names and pronouns.

COVID-19

This course is taught under the hybrid NUflex model. Students may attend class in-person or remotely. Remote students will be able to participate virtually via Zoom and/or Microsoft Teams.

All course content can be accessed and completed remotely. However, some content and assignments will require synchronous virtual attendance (i.e., during the regularly scheduled class time in the Boston time zone). Classes may be recorded at the discretion of the instructor.

Due to extenuating circumstances, I will be teaching class remotely until further notice. An instructional assistant will be available in the classroom for Zoom support.

To attend class in-person, you must wear a mask and practice social distancing in the classroom. Students without a mask will not be allowed in the classroom. Do not come to class in-person if you are experiencing symptoms.

In-person classes may be canceled at the discretion of the instructor. If students do not abide by these rules, or if classroom density does not allow for safe social distancing, in-person classes will not be held. Course content will continue to be delivered virtually.


Technology

Piazza

Course administration, including all questions, course materials, and course announcements will be handled via Piazza.

Please do not email instructors or TAs directly – use Piazza for your questions and queries instead. This allows us to track all course-related correspondence in a single location.

General questions that may be useful to other students should be posted to the whole class. If your question is specific to you, or includes a partial solution, then post it to instructors only.

Please see this Stackoverflow guide for how to ask a good question.

Canvas

Assignments, quizzes, and grading will be handled via Canvas.

All assignments and quizzes will be posted on Canvas, and must be submitted on Canvas by the posted due date. Please do not email completed assignments or quizzes to instructors or TAs, or post them on Piazza.

Zoom

Classes will be broadcast synchronously via Zoom. Remote students can use Zoom to attend class virtually, without coming to campus.

Microsoft Teams

Virtual office hours will be handled via Microsoft Teams. During scheduled office hours or by appointment, instructors and TAs will be available for live chat or video call on Microsoft Teams.


Homework

Six individual homework assignments are to be completed for this class. Each homework is due online via Canvas on the date scheduled on Canvas.

Some aspects of the homework may be discussed with each other, but they should be completed individually, and your submitted work should be your own. Sharing of worked solutions will not be tolerated and will be considered cheating. Plagiarised solutions will receive a zero. Solutions with a very high degree of similarity with another past or current student’s will be considered plagiarism, and will be treated accordingly.


Quizzes

There will be three cumulative quizzes. All quizzes will be completed online via Canvas on the dates scheduled on Canvas.


Project

There will be a final programming project completed individually or in small teams. Project guidelines will be posted on Piazza and discussed in class.


Late work and grading

Late assignments will not be accepted. Extensions may be given on a case-by-case basis if requested at least 48 hours in advance of the due date with a reasonable justification.

Petitions for re-grades must be made in writing via Piazza private message no later than 1 week after receiving the original grade. The petition must clearly explain why a re-grading is justified. The new grade may be lower than the original grade.

Before petitioning the instructor for a re-grade, students should first contact the grader to make sure they understand why they lost points.


Grade scale

Students are required to get a B or above in the placement courses in order to progress into the core courses in the degree program. Students that do not achieve a B or better in the placement courses will be required to retake the courses.

The grade in this class is distributed as follows:

Final grades will follow the following scale:

Half-letter-grades (‘+’ and ‘-’) will be given as well using cut-offs determined at the end of the semester.

This scale is subject to change at the discretion of the instructor.