CS 8 Introduction to Computer Science

CS 8 Introduction to Computer Science

Spring Term 2016 - EnrlCd 07773
Department of Computer Science
University of California Santa Barbara

Course Information

  • Instructor: Professor Çetin Kaya Koç         → Koç is pronounced as "Coach"  

  • Class Room: Buchanan 1910
  • Class Schedule: Monday, Wednesday 3:30-4:45pm
  • Koç Office Hours: Tuesday 4:00-6:00pm
  • Koç Office: HFH 1119

  • Teaching Assistants:
    Emilie Barnard (emilie@cs.ucsb.edu)
    Victor Zakhary (victorzakhary@cs.ucsb.edu)
    Yan Tang (yantang@cs.ucsb.edu)
    Lennon Grinta (grinta@cs.ucsb.edu)
    Hongyuan You (hyou@cs.ucsb.edu)
    Anastasiya Lazareva (anastasiya@cs.ucsb.edu)
    Aaron Magat (ajmagat@cs.ucsb.edu)
    Metehan Ozten (mozten@cs.ucsb.edu)

  • Lab: Phelps 3525
  • Lab Schedule and TAs:
    Tuesday 8:00-8:50am, EnrlCd: 07781 -- Victor and Metehan
    Tuesday 9:00-9:50am, EnrlCd: 07799 -- Victor and Metehan
    Tuesday 10:00-10:50am, EnrlCd: 07807 -- Lennon and Hongyuan
    Tuesday 11:00-11:50am, EnrlCd: 07815 -- Lennon and Hongyuan
    Tuesday 12:00-12:50pm, EnrlCd: 07823 -- Emilie and Anastasiya
    Tuesday 1:00-1:50pm, EnrlCd: 07831 -- Emilie and Anastasiya
    Tuesday 2:00-2:50pm, EnrlCd: 07849 -- Yan and Aaron
    Tuesday 3:00-3:50pm, EnrlCd: 47860 -- Yan and Aaron

  • TA Office: Trailer 936 Room 104
  • TA Office Hours:
    Monday 9:00-11:00am: Lennon
    Monday 11:00am-12:00pm: Aaron
    Monday 1:00-3:00pm: Anastasiya
    Monday 5:00-7:00pm: Emilie
    Wednesday 11:00am-12:00pm: Aaron
    Wednesday 5:00-6:00pm: Hongyuan
    Thursday 9:00-11:00am: Metehan
    Thursday 11:00am-1:00pm: Victor
    Thursday 1:00-3:00pm: Yan
    Friday 5:00-6:00pm: Hongyuan

  • Please join the Piazza page for class discussions.  
  • Check the class website, the Piazza page, and/or your email once a day.

  • Slides and other course information are in the folder docx  
  • Homework, Programming Assignments and Quizzes are in the folder hwexpa  
  • IDLE transcripts and Python modules created during lectures are in the folder idle  

  • The grades: cs8Spring2016.htm
    (The Code is your PERMNumber mod 249989; in Python: Code = PERMNumber % 249989)

Midterm and Final Exams

There will be one Midterm Exam and one Final Exam.
The in-class Midterm Exam is on Wednesday, May 11 at 3:30-4:45pm  
2-pages of notes (cheat sheet) is alllowed during the Midterm

The Final Exam is in class at 12:00-3:00pm on Friday June 10  
No makeup exam can be given under any circumstances.

Homework Assignments

We will have one homework assignment every week. The paper copy of the homework assignments are to be delivered to the "cs8 - Koç" homework box in the CS Mail Room (HFH 2108). An electronic copy (Text, MS Word or PDF) can be submitted via the Dropbox link (see below). You could also scan/pdf your handwritten work; however, do not submit (low-resolution or small) phone-camera images under any circumstances! No late homework is accepted.
  • Homework Assignment 01:   hw01.html - due 12:00pm (noon) Thu Mar 31
  • Homework Assignment 02:   hw02.html - due 12:00pm (noon) Thu Apr 7
  • Homework Assignment 03:   hw03.html - due 12:00pm (noon) Thu Apr 14
  • Homework Assignment 04:   hw04.html - due 4:00pm Thu Apr 21   new time!!
  • Homework Assignment 05:   hw05.html - due 4:00pm Thu Apr 28
  • Homework Assignment 06:   hw06.pdf - due 4:00pm Thu May 5
  • Homework Assignment 07:   hw07.html - due 4:00pm Thu May 19
  • Homework Assignment 08:   hw08.html - due 4:00pm Thu May 26
  • Homework Assignment 09:   hw09.pdf - due 4:00pm Thu June 2

Programming Assignments

We will have one programming assignment every week. The programming assignments are due before 11:59pm (midnight) on Fridays via the submit.cs web page. The grading is automatically done at the time of submission, and no late programming assignment is accepted. In fact, your grade will be 0 even if it is submitted a few seconds after the deadline.      
  • Programming Assignment 01:   pa01.html - due 11:59pm (midnight) Friday Apr 1
  • Programming Assignment 02:   pa02.html - due 11:59pm (midnight) Friday Apr 8
  • Programming Assignment 03:   pa03.html - due 11:59pm (midnight) Friday Apr 15
  • Programming Assignment 04:   pa04.html - due 11:59pm (midnight) Friday Apr 22
  • Programming Assignment 05:   pa05.html - due 11:59pm (midnight) Friday Apr 29
  • Programming Assignment 06:   pa06.html - due 11:59pm (midnight) Friday May 6
  • Programming Assignment 07:   pa07.html - due 11:59pm (midnight) Friday May 20
  • Programming Assignment 08:   pa08.html - due 11:59pm (midnight) Friday May 27
  • Programming Assignment 09:   pa09.html - due 11:59pm (midnight) Friday June 3
Detailed information about Python's native programming environment (called IDLE) and the use of submit.cs.ucsb.edu is found here: usingIDLEAndSubmit.pdf.

Weekly Course Plan

  • Week01: Introduction. Computer Programs. Anatomy of a Computer. The Python Programming Language. Programming Environment - IDLE. Analyzing Programs. Errors. Algorithm Design. [Sections 1.1-1.7]
  • Week02: Numbers and Strings. [Sections 2.1-2.6]
  • Week03: Decisions and Loops. [Sections 3.1-3.9] and [Sections 4.1-4.11]
  • Week04: Functions. [Sections 5.1-5.10]
  • Week05: Lists. [Sections 6.1-6.7]
  • Week06: Files. [Sections 7.1-7.6]
  • Week07: Sets and Dictionaries. [Sections 8.1-8.3]
  • Week08 and Week09: TBA
  • Week10: Recursion. [Sections 11.1-11.7]

Course Related Links


Grading Rules

  • Programming Assignments: 30 %
  • Homework Assignments: 20 %
  • Midterm Exam: 20 %
  • Final Exam: 30 %

Catalog Specification

Introduction to computer program development for students with little to no programming experience. Basic programming concepts, variables and expressions, data and control structures, algorithms, debugging, program design, and documentation.

Prerequisite Rules

Not open for credit to students who have completed Computer Science 16 or Engineering 3.
CS 8 is a legal repeat for CMPSC 5AA-ZZ.

Academic Integrity at UCSB  

Dr. Çetin Kaya Koç