cs 4 Computer Science Bootcamp
Department of Computer Science
University of California Santa Barbara
http://koclab.cs.ucsb.edu/teaching/cs4
Course Information
- Instructor: Professor Çetin Kaya Koç
→ Koç is pronounced as "Coach"
- Class Schedule: Tuesday, Wednesday, Thursday 9:30-10:50am
- Classroom: Buchanan 1930
- Instructor's Office Hours: Wednesday 2:00-4:00pm
- Instructor's Office: Harold Frank Hall 1119
- Lab Schedule:
Tuesday 12:30-01:50pm, TAs: All
Tuesday 02:00-03:20pm, TAs: All
Tuesday 03:30-04:50pm, TAs: All
- Lab: PHELPS 3525
- Teaching Assistants:
Chris Zhang (zhizhouzhang@ucsb.edu)
Ashish Vyas (ashish@ucsb.edu)
- TA Office Hours:
Chris: Thursday 9:00-11:00
Ashish: Friday 11:00am-01:00pm
- TA Office Trailer Location:
Trailer 936 Room 104
- Please join the
Piazza page for class discussions
←
- Check the class website and the Piazza page once a day
- Slides and course notes are in the folder
docx
- Homework and Lab documents are in the folder
hwlab
- The grades: cs4.htm
(The Code is your PERM number mod 98773)
←
Exams, Homework and Labs
- The Midterm Exam will be in class during class time on Tuesday, Aug 27
←
- The Final Exam will be in class during class time on Thursday, Sep 12
←
- 2-pages of notes (both sides) are allowed during the Exams.
- No makeup exam can be given under any circumstances.
- We will have 6 Homework Assignments
- Homework Assignments are due 5pm on Fridays
- We will have 6 Labs
- Some labs require reports, which are due 5pm on Wednesdays
- Either, upload an electronic copy to a Dropbox folder
(to be provided), or deliver a paper copy to the HW Box in HFH 2108.
Electronic copy of your homework or lab report can be
in Text, PDF or MS Word. You could also scan/pdf your
handwritten work, however, do not submit small and/or
low-resolution phone-camera images.
- Lab Assignment 1: lab1.pdf -
Lab day: Tuesday Aug 6
This lab does not require a report. A demo to the TA is sufficient.
- Lab Assignment 2: lab2.pdf -
Lab day: Tuesday Aug 13
This lab does not require a report. A demo to the TA is sufficient.
- Lab Assignment 3: lab3.html -
Lab day: Tuesday Aug 20
This lab does not require a report. A demo to the TA is sufficient.
- Lab Assignment 4: lab4.html -
Lab day: Tuesday Aug 27
This lab requires a report which is due 5pm Friday August 30.
Dropbox
Link for lab4
- Lab Assignment 5: lab5.html -
Lab day: Tuesday Sep 3
This lab does not require a report. A demo to the TA is sufficient.
- Lab Assignment 6: lab6.html -
Lab day: Tuesday Sep 10
This lab does not require a report. A demo to the TA is sufficient.
- Homework Assignment 1: hw1.pdf -
Due date: 5pm Friday Aug 9
- Homework Assignment 2: hw2.pdf -
Due date: 5pm Friday Aug 16
- Homework Assignment 3: hw3.pdf -
Due date: 5pm Friday Aug 23
- Homework Assignment 4: hw4.pdf -
Due date: 5pm Friday Aug 30
- Homework Assignment 5: hw5.pdf -
Due date: 5pm Friday Sep 6
- Homework Assignment 6: hw6.pdf -
Due date: 5pm Thursday Sep 12
Dropbox
Link for hw6
Catalog Specification
An introduction to computational thinking, computing,
data management, and problem solving using computers,
for non-majors ONLY. Topics include coding basics,
representing code and data using a computer, and applications
of computing that are important to society.
Weekly Course Plan
- Lecture 01:
Data Representation
What is information?
How do we represent information?
What is data?
Analog versus digital.
- Lecture 02:
Number Representation, Computation, and Storing
History of number representation and calculation.
Binary, decimal, and hexadecimal number systems.
History of calculation and computers.
Memory technologies.
- Lecture 03:
Representation of Text
Representation of simple text and structured text.
Text encoding standards: 7-bit and 8-bit ASCII, Unicode, and UTF-8.
- Lecture 04:
Iteration
Iterative computations of sums and products.
Computing sums of products and or products of sums.
Computation of constants such pi or e.
- Lecture 05:
Recursion
Fibonacci numbers.
Recursive algorithmic paradigms.
Fractals.
- Lecture 06:
Representation of Images
Color, intensity, and pixels.
Tradeoffs in representation.
Image formats: headers, compression algorithms, Huffman coding.
Image watermarking.
- Lecture 07:
Representation of Sound and Music
Analog sound and digital sound.
Sampling and quantization.
Digitized music and distortion.
Sound compression and decompression.
- Lecture 08:
Hiding Information and Cryptography
Securing private information using encryption.
How to determine with whom we are talking on the Internet.
Proving identity and digital signatures.
Course Material
A printed book is not needed or required. In addition to the course
slides, online resources particularly those on python.org page are
sufficient for this course.
Grading Rules
- Lab Participation and Reports: 25 %
- Homework Assignments: 25 %
- Midterm Exam: 20 %
- Final Exam: 30 %
Academic
Integrity at UCSB ←
Dr. Çetin Kaya Koç
|