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.
| Name | Role | Office | Office Hours | |
| Swami Iyer | Instructor | siyer@cs.umb.edu | M-3-0201-14 | In-person: Tue Thu 8:00 AM - 9:00 AM and 11:00 AM - 12:00 PM Remote: Wed 10:00 AM - 12:00 PM (Zoom Link) |
| TBD | Teaching Assistant | TBD | TBD | TBD |
| TBD | Teaching Assistant | TBD | TBD | TBD |
| TBD | Teaching Assistant | TBD | TBD | TBD |
| TBD | Course Assistant | TBD | M-3-0731 (Linux Lab) | TBD |
| TBD | Course Assistant | TBD | M-3-0731 (Linux Lab) | TBD |
| TBD | Course Assistant | TBD | M-3-0731 (Linux Lab) | TBD |
| Anya Tongaprasith | Supplemental Instruction Leader | anya.tongprasith001@umb.edu | - | - |
Note: In case you want to email us, please start the subject line with [CS110].
| Section | When | Where |
| 1-4, 8, 9 | Tue Thu 12:30 PM - 1:45 PM | Y-2-2310 |
In each lecture, the instructor will present the material for that lecture. Roughly once a week, the instructor will also conduct an online quiz on recently covered material.
Starting from the second week, there will be one discussion per 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/CA will assume that you have done the reading in advance.
| Section | When | Where | TA | CA |
| 1 | Tue 11:00 AM - 12:15 PM | M-1-0608 | TBD | TBD |
| 2 | Thu 11:00 AM - 12:15 PM | M-1-0608 | TBD | TBD |
| 3 | Tue 2:00 PM - 3:15 PM | M-1-0418 | TBD | TBD |
| 4 | Thu 2:00 PM - 3:15 PM | Y-1-1300 | TBD | TBD |
| 8 | Tue 9:30 AM - 10:45 AM | W-2-0158 | TBD | TBD |
| 9 | Thu 9:30 AM - 10:45 AM | W-1-0055 | TBD | TBD |
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 slides and work out exercises. 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 for details).
| When | Where |
| TBD | TBD |
| TBD | TBD |
| TBD | TBD |
| TBD | TBD |
One-on-one tutoring for this course is available through the Tutoring Programs.
For each topic covered, you will have access to lecture slides (in HTML/PDF formats) and exercises with solutions. The materials for chapters 2 - 5 are based on the following optional text:
|
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. |
|
| Item | % of Final Grade |
| Programming Assignments (best 5 out of 6) | 20 |
| Exams (3) | 75 |
| Participation | 5 |
a(e1 + e2 + e3)/(150n), where a is the number of unique sessions you attended (attending multiple sessions in a week just counts as one), n is the number of unique sessions held, and e1, e2, and e3 are your Exam 1, Exam 2, and Exam 3 scores, respectively. For example, if a = 10, n = 12, e1 = 88, e2 = 95, and e3 = 83, the SI score is 1.48%.[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
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.
We will use Gradescope to grade the in-class quizzes, programming assignments, and exams.
To write and execute Python programs in this course, you will need access to a desktop/laptop computer (Linux, Mac, or Windows) that is properly configured with the necessary software. Click here for setup instructions.
We will use Zoom for all remote meetings.
The desktop computers in the Linux Lab (M-3-0731) are set up with the programming environment for the course. To use these computers, you must have a CS Account, which you can obtain by visiting the Computer Science Portal. If you are not a member already, you need to first register for a portal account. Once you have the portal account, sign into the portal and select your courses for the semester. You will be notified via your UMB email once your account is created/activated for the semester.
Lab Hours: Mon - Thu 9:00 AM - 9:00 PM and Fri 9:00 AM - 5:00 PM. To access the lab outside of those times, you must call Public Safety.
Note: The computers in the Linux Lab do not support roaming profiles, which means your data on each computer is local to that computer.
Come to lecture/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 earphones/headphones during the session is not permitted. Laptops may be used during the session, but 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.
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.
You must provide appropriate documentation if you were/are unable to take an exam on the scheduled date and want to arrange a makeup. 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 of missed quizzes.
Assignment deadlines are firm — late submissions will not be accepted. The only exception to this policy is if you have been granted extended time on assignments through the Ross Center (see the section on accommodations below), in which case you are allowed a 24-hour extension per assignment. To avail this extension, you must email me at least 48 hours prior to the assignment deadline
If you have any concerns about the grading of a particular quiz/assignment/exam, you may submit a regrade request via Gradescope. You must submit the request within a week from the date the quiz/assignment/exam grades are published, or else your request will be turned down.
Click here for the collaboration policy and penalties for infractions of the policy.
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.
In the event of a campus closure, all 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.