First-Year Seminar, Winter 2013
Great Ideas in Computer Science
- Instructor:
- Zhaojun Bai
3005 Kemper Hall
530-752-4874
bai at cs.ucdavis.edu
- Meeting time:
- 4:10pm - 5:00pm, Wed..
- 1007 Giedt
- Office Hours :
- 10:30am - 12:00pm, Tue. Thur. or by appointment
- Catalog Description
-
This seminar begins with first and most important of the great ideas
of computer science: the algorithm - a procedure or
recipe that can be given to a person or machine for doing a job.
We will then discuss other great ideas revolve around this central one,
and experiment few processes of computer simulation to try our ideas.
The class will condense a great of deal of complex material into
a manageable, accessible form to all students who have a curiosity
to learn about computing. The object is to let students
gain basic understanding and appreciation some intellectual
ideas in computer science.
- Textbook
- The instructor will provide lecture notes
and reading materials taken from a variety of sources.
- Homework assignment and grading:
- The seminar meets one hour each week. The meetings will be
consisted of classroom lecture and discussion. Students will be
given a letter grade based on two short assignments (30%), participation
in classroom discussions (30%), and a report on a pre-approved,
relevant topic of their choosing (40%).
- On-line Info:
- Class annoucements and handouts will be available at this site:
http://www.cs.ucdavis.edu/~bai/ECSfys/
Lecture schedule, handouts and assignments
- 1/9 and 1/16
- The idea of recursion: a simple idea to solve large problems
- Reading: Chap. 1 and 3 of ``Thinking Recursively'' by Eric Roberts
(handout)
- Video: traditional song ``There's a hole in the bucket"
- Additional reading assignment: the tower of Hanoi (handout)
- 1/23 and 1/30
- Induction and complexity
- Reading: Chap. 2 of ``Thinking Recursively'' by Eric Roberts (handout)
- 2/6
- Abstraction
- Reading: Prof. Harvey's introduction to abstraction (handout)
- Reading: J. Karmer: Is abstraction the key to computing?'' (handout)
- 2/13
- 2/20
- Algorithmic methods: dvide-and-conquer, greedy algorithms
- 2/28
- Guest lecture by Prof. P. Rogaway on
what computers cannot do
- Halting problem, Post Correspondnce Problem and
the Diophantine Equation Problem (Hilbert's 10th problem)
- 3/6
- Concurrency and parallelism
- Reading: The free lunch is over: a fundamental turn toward concurrency in software
- 3/13
- 3/20 5:00pm, final project writeup due
Student project papers
- Michael Rea: The usefulness of recursion
- Stefan Paterson: When are computers going to kill us?
- Destiny Durham:
Viewpoint computing as social science
references:
Computing as Social Science and
Social science meets computer science at Yahoo
- Cynthia Quan: Computers in psychology
References: Computer uses in clinical psychology
- Charlton Lin: Tower of Hanoi and Recursion
References: (1) Tower of Hanoi explanation (2)
Tower of Hanoi
game (3)
Reve's Puzzle game and explanation
- Cameron Bridges:
Moore's law and you: why computer speed will continue
to grow
- Jagdeep Singh:
Future of the CPU
(presentation)
- Lynn Huynh: Spirit of computing: abstraction
- Xinru Xiao: General facts about computer
science
- Clark Fisher:Abstractness in computer science
- Kim Nguyen: Abstraction
- David Ogle: Greedy algorithm
- Dante Williams: Algorithmics vs. computer science
- Tue Doan: Recursion
- Candice Tandiono:
Recursion and the tower of Hanoi
Additional reading
Questions sent to bai at cs.ucdavis.edu.