COMS W1004 Introduction to Computer Science May 27, 2009

COMS W1004
Introduction to Computer Science
May 27, 2009
Teaching staff
• Instructor: Chris Murphy
– [email protected]
– Office hours: Wed 3-5pm, 608 CEPSR
• TA: Swapneel Sheth
– [email protected]
– Office hours: Mon 11am-1pm, 608 CEPSR
• TA: Suhas Prakash
– [email protected]
– Office hours: TBA
You are here
About the course
• This course is an introduction to computer
science for computer science and other science
and engineering majors having little or no prior
programming experience.
• The goals of this course are to teach students:
– knowledge of the fundamental concepts in computer
– algorithmic program-solving capabilities
– fundamental Java programming skills
Course homepage
• Please check the course homepage
frequently for important announcements
and changes to the reading assignments
• Check the “Discussion” section for questions
related to the homeworks
• Check the “Gradebook” to make sure our
records match your own
• Go to if you have trouble
logging in to CourseWorks
• Homeworks: 50%
• Final exam: 35%
• Research project: 15%
• These are “guidelines” for the final grade
• There will be five homework assignments
• Each homework (generally) has two parts:
– Theory
– Programming
• Homeworks will be posted on the course
homepage and announced in class
• An in-class final exam will be held on the
last day of class: Wednesday, July 1
• Exam covers material from readings and
lectures (so come to class!)
• Schneider & Gersting
Invitation to Computer Science,
Java Version, Third Edition
• Cay Horstmann
Big Java, Third Edition
• Both available at CU Bookstore or online
• The course covers approx. 50% Java
programming basics and 50% computer
science theory
• Check the course homepage for assigned
readings for each lecture
• The syllabus is always “tentative” but we’ll
generally follow what’s there now
Academic honesty
• Please familiarize yourself with the Computer
Science Department’s policy:
• It is YOUR responsibility to read and adhere to
the policy
• What is computer science?
• What is an algorithm?
• Reading: S&G 1-2, 15
• Next lecture: THIS Friday!
What is Computer Science?
“The study of algorithms, including:
1. Their formal and mathematical properties
2. Their hardware realizations
3. Their linguistic realizations
4. Their applications”
-Schneider & Gersting, p.4
Computer Science is NOT (just) programming!
Research Project
• You will research a topic of your choosing
that relates to either:
– how computer science can be used to address
real-world problems, or
– the social impact of computing
• You will then present your findings to the
class in a very brief presentation later on
in the course
CS and Social Problems
• Mobile computing
(handheld devices,
embedded devices, etc.)
• Bioinformatics
• Ubiquitous computing
(sensors, recording
devices, etc.)
• Social networking
• Augmented/virtual reality
• Machine learning
• Robotics
• National security
• Personal security/safety
• Medicine & disease control
• Social welfare and equality
• Environmental issues
(climate change, extinction,
pollution, etc.)
• Distribution of
• Energy & natural resources
Computing and Society
• Digital media and IPR (Napster)
• Encryption algorithms and national
security (PGP)
• Hackers and network security
• Online anonymity: good or bad?
• Medical research and privacy
• As part of your Homework #1 submission,
briefly outline 1-2 topics you would be
interested in researching
• For example:
– “I am very interested in recycling. I would like to
investigate how embedded devices in products
can increase the percentage that get recycled
in a given household.”
Homework #1
• Do the following questions from S&G
Third Edition:
– Chapter 1: 7, 8, 9
– Chapter 2: 1, 10, 11, 21, 22, 23
• Research project proposal
• Homework is due at the beginning of
class on Monday, June 1!
– Just a paper copy, not electronic