Programming and problem solving using Python. Emphasizes principles of software development, style, and testing. Topics include procedures and functions, iteration, recursion, arrays and vectors, strings, an operational model of procedure and function calls, algorithms, exceptions, object-oriented programming, and GUIs (graphical user interfaces). Weekly labs provide guided practice on the computer, with staff present to help. Assignments use graphics and GUIs to help develop fluency and understanding. Assumes basic high school mathematics (no calculus) but no programming experience.

Forbidden Overlap: Due to a partial overlap in content, students will receive 6 credits instead of 8 if they take CS 1110 and one of the following: CS 1112, CS 1114, CS 1115, BEE 1510.

Expected Outcomes

  1. Be fluent in the use of procedural statements — assignments, conditional statements, loops, method calls — and arrays. Be able to design, code, and test small Python programs that meet requirements expressed in English. This includes a basic understanding of top-down design.
  2. Understand the concepts of object-oriented programming as used in Python: classes, subclasses, properties, inheritance, and overriding.
  3. Have knowledge of basic searching and sorting algorithms. Have knowledge of the basics of vector computation.
For more information on the course, see the syllabet.
For students in CS 1110, we highly recommend the Academic Excellence Workshops.
For students not in CS 1110, we have information on alternative courses.

Exams

Exam Dates are determined by the university and are posted on the course schedule. Please make sure that you have nothing else planned at these times. In particular, do not plan to leave campus in May prior to our Final Exam.

Lecture

Tuesdays and Thursdays 9:05-9:55am in Baker Laboratory 200.

Labs

Labs are held every week in the ACCEL Lab, which has computers for students to use. (You are welcome and encouraged to bring your own laptop if you have one.) The entrance to this lab is through the former Engineering Library. You should enter on the ground floor, walk straight until you can go no further, then go up the stairs on your left.

Labs are mandatory and you must attend at your assigned time.

Time Tuesdays Wednesdays
Section Instructor Section Instructor
10:10-12:55201Camila Pretiz (cp573), George Karagiannis (gk446)207George Karagiannis (gk446)
11:15-12:05202Austen Joa (aj363), Victoria Litvinova (vl242)208Shawn Ong (so396)
12:20-1:10203Shawn Ong (so396)209Becca Jiang (rwj52)
1:25-2:15204Bowen Mao (bm644)210Becca Jiang (rwj52)
2:30-3:20205Yang Liu (yl572)211Matt Kim (sk849)
3:35-4:25206Yang Liu (yl572), Kevin Cook (kjc244)212Matt Kim (sk849)