Course Info


Catalog Description

An introduction to computer programming — the concepts involved in using a high-level language and the program development process. The goal of this course is proficiency in the design and implementation of programs of significant size and complexity. This course is quite demanding because of the length of the programming exercises assigned. This is the first course in the computer science major sequence.

Prerequisites: Math 140 credits or placement; or Math 130 with a B or higher in the previous semester; or permission of the instructor.

Students who successfully complete this course will be able to tackle computational challenges that they might encounter later in their careers. Students interested in computer science will be well-prepared to delve deeper into the field and students in science and engineering will be able to incorporate computation into their studies.

Course Staff

Name Role Email Office Office Hours
Swami Iyer Instructor siyer@cs.umb.edu M-3-201-14 In-person: Tue Thu 9:30 AM - 10:30 AM and 2:30 PM - 3:30 PM
Remote: Wed 10:00 AM - 12:00 PM (Zoom link)
Haowen Guan Teaching Assistant haowen.guan001@umb.edu M-3-0150 Mon Wed 1:00 PM - 2:00 PM
JieHyun (Jenna) Kim Teaching Assistant jiehyun.kim001@umb.edu M-3-201-10 Wed Thu 3:00 PM - 4:00 PM
Rishank Singh Teaching Assistant rishank.singh001@umb.edu M-3-201-10 Tue 1:00 PM - 2:00 PM; Fri 12:00 PM - 1:00 PM
Zhen Lu Teaching Assistant zhen.lu001@umb.edu M-3-201-10 Mon 12:00 PM - 2:00 PM
Avraham Felzenstein Course Assistant a.felzenstein001@umb.edu M-3-0731 Tue Thu 2:00 PM - 3:00 PM
Kenichi Maeda Course Assistant kenichi.maeda001@umb.edu M-3-0731 Mon Wed 4:00 PM - 5:00 PM
Pratham Patel Course Assistant p.patel034@umb.edu M-3-0731 Mon 10:00 AM - 12:00 PM
William Martinez Course Assistant william.martinez001@umb.edu M-3-0731 Mon Wed 11:00 AM - 12:00 PM
Serin Kitery Supplemental Instruction Leader serin.kitery001@umb.edu - -

Note: In case you want to email us, please start the subject line with [CS110].

Class

Section When Where
1-8 Tue Thu 11:00 AM - 12:15 PM W-1-0088 (Snowden Auditorium)

In each class, the instructor will present the material for that class for an hour, and conduct an online quiz on that material for the remaining fifteen minutes. You are strongly encouraged to review the material before each class, and review it again thoroughly soon after.

Discussion

Starting from the second week, there will be a discussion every week. The focus of the discussion for a particular week will be the current assignment. The teaching assistant (TA) will walk you through the assignment problems systematically. The TA will also answer any specific questions you may have about the assignment or the course material in general. You may also seek help from the course assistant (CA) who will be assisting the TA during the discussions. The discussions will be worthwhile only if you go to the sessions having read the assignment writeup thoroughly and have at least a moderate understanding of the problems involved. The TA will assume that you have done the reading in advance.

Section When Where TA CA
1 Tue 9:30 AM - 10:45 AM M-1-0209 Haowen Guan Avraham Felzenstein
2 Thu 9:30 AM - 10:45 AM M-2-0206 JieHyun (Jenna) Kim Avraham Felzenstein
3 Tue 12:30 PM - 1:45 PM M-2-0211 Haowen Guan Pratham Patel
4 Thu 12:30 PM - 1:45 PM W-2-0198 JieHyun (Jenna) Kim Pratham Patel
5 Tue 9:30 AM - 10:45 AM M-2-0206 Zhen Lu William Martinez
6 Thu 9:30 AM - 10:45 AM W-1-0061 Rishank Singh William Martinez
7 Tue 12:30 PM - 1:45 PM W-1-0055 Zhen Lu Kenichi Maeda
8 Thu 12:30 PM - 1:45 PM M-3-0732 Rishank Singh Kenichi Maeda

Supplemental Instruction

As part of the College of Science and Mathematics Freshman Success Program, supplemental instruction (SI) is available to all CS110 students free of charge. The SI sessions will also start from the second week. The focus of the sessions for a particular week will be the material covered in class during the previous week. The SI leader will walk you through the relevant lecture notes and solve problems. In addition, the SI leader will answer any specific questions you may have about the current assignment, or the course material in general. The SI sessions are optional, but highly recommended, especially if you feel like you are falling behind in the course. You may attend as few or as many sessions as you like. You will receive extra points for attending the sessions (see the Grading Scheme section below).

When Where
Mon 2:00 PM - 2:50 PM M-2-0214
Wed 2:00 PM - 2:50 PM M-2-0214
Fri 2:00 PM - 2:50 PM M-2-0214
Sat 2:00 PM - 2:50 PM Remote (Zoom link)
Sun 2:00 PM - 2:50 PM Remote (Zoom link)

Tutoring

One-on-one tutoring for this course is available through the Tutoring Programs.

Introduction to Programming in Python: An Interdisciplinary Approach by Robert Sedgewick, Kevin Wayne, and Robert Dondero

This text offers an excellent introduction to computing principles, motivating each principle by examining its impact on specific applications drawn from fields ranging from materials science to genomics to astrophysics to internet commerce.

Grading Scheme

Assessments

Item % of Final Grade
Programming Assignments (best 5 out of 6) 40
Exams (1 and 2) 50
Participation 10

% Score to Letter Grade

[93, 100]: A, [90, 93): A-, [87, 90): B+, [83, 87): B, [80, 83): B-, [77, 80): C+, [73, 77): C, [70, 73): C-, [67, 70): D+, [63, 67): D, [60, 63): D-, [0, 60): F

Software Needed

iClicker

We will use iClicker to conduct in-class quizzes, for which you will need an iClicker Student App Subscription.

Piazza

We will use Piazza as the Q&A platform for the course. If you have any general questions about the assignments, exams, or the lecture material, the most effective way to get them answered is by posting them on Piazza. You can expect your questions to be answered by the course staff or your peers.

Gradescope

We will use Gradescope to grade your programming assignments and exams.

Programming Environment

To write and execute Python programs in this course, you will need a laptop (Linux, Mac, or Windows) properly configured with the necessary software. Click here for setup instructions.

Zoom

We will use Zoom to hold remote office hours and SI sessions

CS Account

In order to use the computing resources of the department, and in particular, those in the UNIX/PC Lab (M-3-0731), you need to setup a CS account. With your CS account credentials, you can connect to our designated server (users.cs.umb.edu) remotely using SSH. With the same credentials, you can also sign into the Linux systems in the CS Lab. In addition, you can sign into the Windows systems in the lab with the same username and an initial password abcd_1234, which you must change the first time you sign in.

Visit CS Labs Portal to register for a portal/CS account and confirm via email. If you already have a CS account, use the same username. The next step is to sign into the portal and select your courses for the term. You will be notified via your UMB email once the course directories and your account are created.

Policies

Classroom

Come to class/discussion on time and stay for the entire session. If you have to leave early, let the instructor/TA know in advance. Have your mobile phone silenced or turned off during the entire session. Use of earphone/headphone during the session is not permitted. Use of a laptop during the session is permitted only for class purposes. Do not talk to each other during the session. If you have any questions, bring them up to the instructor/TA.

Piazza

If you have a question, first make sure that it has not already been asked/answered. Clearer questions get better answers, so re-read your question before you post it. Ask your questions early. Posts are categorized using tags, so pick an appropriate tag for your post. Use the platform only for questions that can be asked in a general way, without sharing code or other assignment-related work. However, if you are stuck on a problem despite your valiant efforts to solve it, you may seek help from the course staff by posting your code privately, as properly formatted text (not images). Any post that is inappropriate or violates the academic honesty code will be deleted by the course staff.

Excused Absence from Discussion and Makeup Exam

You must provide appropriate documentation if:

The documentation must be a letter from the Dean of Students if the type of your absence is among those listed on their website. For other types of absences, the supporting documentation must be emailed to the instructor directly.

Note: There will be no makeup for missed quizzes.

Late Days

Assignment deadlines are firm and non negotiable, but you have up to 5 (10 if you have accommodations) late days that you may use to submit one or more assignments a bit late. You may request an extension for any assignment only once. To do so, you must send the instructor a request via email at least 48 hours prior to the assignment deadline, clearly stating the number of late days needed, or else your request will not be granted.

Unused late days will be converted into x% extra points, which will be added to your final grade. x will be calculated as x = d / n, where n is the number of late days allotted and d is the number of late days unused. For example, if d = 3 and n = 5, then x = 0.6%.

Regrade Request

If you have any concerns about the grading of a particular assignment or exam, you may submit a regrade request via Gradescope. You must submit the request within a week from the date the assignment or exam grades are published, or else your request will be turned down.

Collaboration

Click here for the collaboration policy and the penalties for infractions of the policy.

Accommodations for Students with Disabilities

Section 504 of the Americans with Disabilities Act of 1990 offers guidelines for curriculum modifications and adaptations for students with documented disabilities. If applicable, students may obtain adaptation recommendations from the Ross Center for Disability Services. The student must present these recommendations and discuss them with the instructor within a reasonable period, preferably by the end of Add/Drop period.

Campus Closure

In the event of a campus closure, all class-related activities will be conducted remotely, via Zoom. If there is an exam scheduled to take place on that day, the exam will be postponed to the next suitable date.