SCI 161 Computers, Ideas and Society
Instructor: Chris Stephenson email
phone:(212) 311 54 15 room: D 144 Assistant:
Öykü Alanbay email
phone:(212) 311 54 58 room: D 127
This
course is not about “how to use a computer”, but what
computation and computers mean. The object of the course is to give
the student a general cultural background that will allow a
non-technical person to understand the more significant intellectual
and social problems associated with computer science. History of
computers and computer science -Pascal, Babbage, Church, Turing, ...
Models of computation – an overview of the Turing machine and
of the lambda calculus. A layperson's view of Gödel's theorem
and Turing's proof of the incomputability of the halting problem. The
combinatorial explosion. Difficult computations. Kinds of computer
program -imperative, object oriented, functional, declarative,
pattern matching. Computation in everyday computer use. Wildcards,
pattern matching, regular expressions. Spreadsheet as a primitive
functional program. How software is made -compilation,
interpretation. Computers and society. Intellectual property, Free
Software, Security, Privacy, Sharing. Computer crime, hacking and
cracking. Social responsibility -computers and the work process,
computers and unemployment. The birth of the internet. The birth of
the world wide web. Standards and monopolization that involves a
discussion covering: comparison of software development
practices(closed src vs. public licences), what to look for when
evaluating and employing software solutions, common organization
structure of software distributions, how to explore, compile and run
software. The course will be accompanied by a series of lab exercises
and miniprojects. In some of these, students will be exposed to
writing small and simple programs in different possible styles. In
others students will be asked to conduct research tasks on the
internet.
Credits:
3
Restrictions:
COMP 111 or COMP 112
|