CSci 1133H: Syllabus, Fall 2019

Monday, Wed, Friday 2:30-3:20 in Amundson 240
Wed 3:35-5:15 in Keller 1-262
Dr. Maria Gini (gini at
office hours: Tuesday 9:30-10:30 and Friday 11:00-12:00 and by appointment in Shepherd 245, (612) 625-5582.
Teaching Assistants:
Andrea Walker (
office hours: Tuesady 3:30-4:30
Tyler Wendland (
office hours: Monday 11:00-12:00 and Thursday 11:00-12:00
both at Keller Atrium Table 2
Textbook: we will use an online textbook from zyBook. To get to the book,
  1. Sign in or create an account at
  2. Enter zyBook code UMNCSCI1133HGiniFall2019
  3. Subscribe
If you need reference material on Python, here are some choices:

All class material will be available on canvas and also be posted on the class page at

Course Description

CSCI 1133 offers an introduction to the fundamental principles of Computer Science and programming with an emphasis on problem solving and representing/computing with data. The course is the first required course for computer science majors, and is a prerequisite for most of the higher level computer science courses. We will use the programming language Python to implement solutions to a broad spectrum of interesting and motivating computational problems. Specifically, the course will cover:


CSCI 1133 does not require or assume any previous programming knowledge. Prior exposure to a first semester Calculus course (or concurrent registration) is a formal prerequisite. Some material from Calculus I (differentiating polynomials and the like) may be employed in lectures and lab assignments; moreover, the mathematical and logical reasoning skills developed in Calculus I will play an important role in the class. It is important to have the mathematical maturity to both reason with abstractions and generalize abstract concepts from specific problem statements.

What you should expect to learn from this course

Upon successful completion of the course you should be able to:

Work Load and Grading

  1. Participation: There will be an in-class exercise every week when there is no exam. Each exercise will count for 1% of the grade (total = 12%).
    There will be small assignments from the textbook to be done online (total = 4%)
  2. Labs: Attendance to the lab each week will give 2% credit (total = 28%). Lab work is done in pairs. To pass the class you need to attend at least 12 of the 14 labs.
  3. Homeworks: 5 written homeworks, each 3% of the grade (total = 15%). Homeworks have to be done individually.
  4. Exams (open book and notes): There will be two in class midterm exams, each will count for 10% of the grade, and a final exam, which will count 15% (total = 35%).
    The week before each midterm there will be an in class short quiz, which will count for 2% of the grade (total = 6%).
Grading is on an absolute scale. This means that the performance of others in the class will not affect your grade. The grade cutoffs are as follows based on the total weighted score for the courss:
A 93 .. 100 A- 90 .. < 93
B+ 87 .. < 90 B 83 .. < 87 B- 80 .. < 87
C+ 75 .. < 80 C 70 .. < 75 C- 65 .. < 70
D+ 60 .. < 65 D 55 .. < 60 F < 55

Class Attendance

Attending class is very important to learn the material, to clarify any misunderstanding, and to keep up with studying. To encourage attendance there will be 12 short in class activities to be done individually or with other students during the semester. Each of them will be worth 1% of the final score. There will be no makeup for missing in class exercises.


In the weekly labs, you will apply concepts covered in the lectures and in the textbook by creating working programs that solve a variety of problems. The general format for the labs is as follows:
  1. Typically two students work together on the lab assignment.
  2. Make sure you arrive to the lab on time and stay until the end, unless you get all the problems done. The work for the labs can be done only in the lab. No makeup for missing labs unless you have a University-excused absence and you notify us in advance.
  3. Each lab is broken down into several steps that are checked by a TA as they are completed.
  4. The primary purpose of the labs is to help you learn by doing. The TAs are there to help you, and you always work in pairs. To get full credit you need to answer the problems for the lab correctly. If you do not get them all done, the TAs will take into account if you worked diligently.
  5. Each lab will have challenge problems that will give some extra credit. Be careful. You'll earn extra credit only if you have completed the lab and if you complete at least 12 labs out of 14.
As a rule of thumb, class performance will largely be determined by the amount of effort put in on the labs and on the homeworks, in addition to reading the text, and attending lectures.


Homeworks will be used to help prepare for exams or to solve more complex problems. Homeworks will have to be done individually, no collaboration allowed. They will enable you to assess your level of knowledge of the material. Programs submitted for grading must run on the University computers because that is where they will be run and graded.

Class Schedule

Here is the preliminary schedule. Things will likely change during the semester, but the due dates for homeworks and the dates of the exams will not change. You are expected to read the required sections before coming to class.

Week Dates Topics Chapter Hws due/Exams
1 Sept 4-6 variables, expressions 1, 2
2 Sep 9-11-13 loops, strings 5.1, 3.1
3 Sep 16-18-20 lists, for loops 3.2, 5.5, 5.6
4 Sept 23-25-27 functions 6 1st Hw due Fri Sept 27
5 Sep 30-Oct 2-4 1st Quiz, Fri Oct 4
6 Oct 7-9-11 lists 8.1-8.8 1st Midterm, Fri Oct 11
7 Oct 14-16-18 dictionaries 3.4, 8.12-8.15 2nd Hw due Fri Oct 18
8 Oct 21-23-25 recursion 14
9 Oct 28-30 Nov 1 classes 9 3rd Hw due Fri Nov 1
10 Nov 4-6-8 exceptions 10 2nd Quiz, Fri Nov 8
11 Nov 11-13-15 inheritance 13 2nd Midterm, Fri Nov 15
12 Nov 18-20-22 files 12 4th Hw due Fri Nov 22
13 Nov 25-27 plotting 15
14 Dec 2-4-6 numpy 15 5th Hw due Fri Dec 6
15 Dec 9-11 search/sort 16 3rd Quiz, Mon Dec 9
Monday Dec 16 Final exam, 1:30 to 3:30 pm


Incompletes will be given only in rare instances when an unforeseeable event causes a student who has completed all the coursework to date to be unable to complete a small portion of the work (typically the final assignment or exam). Incompletes will not be awarded for foreseeable events including a heavy course load or a poorer-than-expected performance. Verifiable documentation must be provided for the incomplete to be granted, and arrangements for the incomplete should be made as soon as such an event is apparent.

Academic Integrity

All work submitted for the class must be done individually unless group work is explicitly allowed. You are free to discuss course material with classmates, TAs, and professor, but you should never misrepresent someone else's work as your own.
It is your responsibility to protect your work from unauthorized access. Sharing your CSE lab account and/or password is a violation of the acceptable use policy for CSE Labs accounts and will result in account termination.
Collaboration on exams, copying homework solutions from classmates, or copying solutions from the web is cheating and grounds for failing the course.
Any student caught cheating will be subject to disciplinary actions, following University policies (see

Disability Accommodations

The University of Minnesota views disability as an important aspect of diversity, and is committed to providing equitable access to learning opportunities for all students. The Disability Resource Center (DRC) is the campus office that collaborates with students who have disabilities to provide and/or arrange reasonable accommodations. Students who have, or think they may have, a disability (e.g. mental health, attentional, learning, vision, hearing, physical or systemic), are encouraged to contact DRC to arrange a confidential discussion at 612-626-1333 or email Additional information is available at

Student Mental Health and Stress Management

As a student you may experience a range of issues that can cause barriers to learning, such as strained relationships, increased anxiety, alcohol/drug problems, feeling down, difficulty concentrating, etc. These mental health concerns or stressful events may lead to diminished academic performance or reduce a student's ability to participate in daily activities. University of Minnesota services are available to assist you with addressing these and other concerns you may be experiencing. You can access the broad range of confidential mental health services available on campus via

Sexual Harassment

Sexual harassment means unwelcome sexual advances, requests for sexual favors, and/or other verbal or physical conduct of a sexual nature. Such conduct has the purpose or effect of unreasonably interfering with an individual's work or academic performance or creating an intimidating, hostile, or offensive working or academic environment in any University activity or program. Such behavior is not acceptable in the University setting. For additional information, please consult Board of Regents Policy: The following link provides information on how to report Sexual Harrassment, Sexual Assault, Relationship Violence, or Stalking:
Copyright: © 2019 by the Regents of the University of Minnesota
Department of Computer Science and Engineering. All rights reserved.
Comments to: Maria Gini
Changes and corrections are in red.