Announcements

 

 

 

If you didn't make it to one of the CUNIX tutorials (and even if you did), there are some good online UNIX references here and here.

 

 

 

 

 Teaching Staff and Office Hours

 

 

 

 Name 

 email 

 Office hours 

  Location 

Prof. Adam Cannon

  cannon@cs.columbia.edu

Mondays 9AM-1PM

  459 CSB

Apoorv Agarwal

  mailto:aa2644@columbia.edu

  TBA

122 Mudd (TA Room)

 

Getting help:

All TA office hours are held in the Mudd building (map to Mudd).
TAs hold office hours in the TA room (map to TA room once in Mudd)

 

 

 

 

 

 

 

 

 

 

 Course Overview

 

 

 

 

 

This course is an introduction to computer science for non-science majors. The goals of this course are:

  1. Survey a selection of fundamental concepts in computer science
  2. Provide a very basic introduction to programming in Java
  3. Introduce algorithmic problem solving and its place in science and engineering

The course will have biweekly homework assignments.

 

 

 

 Prerequisites

 

 

 

 

 

None.

 

 

 

 Schedule Fall 2007 (tentative)

 

 

 

Date 

Lecture 

Reading 

Jan 23

Introduction

S&G Chapter 1

Jan 28

Computer Science and Algorithms

S&G Chapter 1

Jan 30

Algorithms and Pseudocode

S&G Chapter 2

Feb 4

More Algorithms

S&G Chapter 2

Feb 6

Algorithmic Problem Solving

S&G Chapter 3

Feb 11

Introduction to Computer Organization

S&G Chapters 4 and 5

Feb 13

Binary and Boolean

S&G Chapters 4 and 5

Feb 18

Von Neumann Architecture

S&G Chapters 4 and 5

Feb 20

Circuit Construction

S&G Chapters 4 and 5

Feb 25

Machine and Assembly Languages

S&G Chapters 4 and 5

Feb 27

Introduction to Higher Level Languages

S&G Chapter 8

Mar 3

Introduction to Python

On-line material

Mar 5

More Python Basics

On-line material

Mar 10

Conditionals and iteration in Python

On-line material

Mar 12

Programming in Python

On-line material

Mar 24

Midterm Review

S&G Chapters 1-5 and 8

Mar 26

MIDTERM

 

Mar 31

Introduction to Systems Software

S&G Chapter 6

April 2

System Software Part II

S&G Chapter 6

April 7

Introduction to Networks

S&G Chapter 7

April 9

More on Network Protocols

S&G Chapter 7

April 14

Dijkstra’s Shortest Path Algorithm

S&G Chapter 7

April 16

Models of Computation

S&G Chapter 11

April 21

Turing Machines

S&G Chapter 11

April 23

The Halting Problem

S&G Chapter 11

April 28

Computers in Science and Society

S&G Chapter 15

April 30

Final Exam Review

 

May 5

IN-CLASS FINAL EXAM

 

 

 

 

 Assignments

 

 There will be 6 homework assignments this semester.

 

 

 

 

 Required Texts

 

 

 

 

 

G. Michael Schneider and Judith L. Gersting
Invitation to Computer Science, Java Version, Third Edition
Thomsom Course Technology, 2006
ISBN: 1418836540
Available at the Columbia Bookstore

 

 

 

 

 Additional References

 

 

 

 

 

 

 

 

David Reed
A Balanced Introduction to Computer Science
Pearson Prentice Hall, 2005

 

 

Lawrence Snyder
Fluency with Information Technology: Skills, Concepts, & Capabilities, 2nd edition
Addison-Welsey, 2005

 

 

 

 Class Policies

 

Exams

There will be an in-class midterm examination on October 29 and an in-class final exam on December 10

 

Grading

Grades will be assigned using the following guideline:

40% Homework

30% Midterm Exam

30% Final Exam

 

Academic Honesty

Please familiarize yourself with the Computer Science Department's academic honesty policy.