Fall 2014 Elective Courses

Course Descriptions
Fall 2014 Course List

CSCI-UA.0436-001     9013     Computer Architecture
prereq: CSCI-UA.0201 & MATH-UA.0120
A first course in the structure and design of computer systems. Basic logic modules and arithmetic circuits. Control unit design of computers and structure of a simple processor; speed-up techniques. Storage technologies and structure of memory hierarchies; error detection and correction. Input/output structures, busses, programmed data transfer, interrupts, DMA, and microprocessors. Discussion of various computer architectures; stack, pipeline, and parallel machines; and multiple functional units.

CSCI-UA.0453-001     9014     Theory Of Computation
prereq: CSCI-UA.0310
Takes a mathematical approach to studying topics in computer science, such as regular languages and some of their representations (deterministic finite automata, nondeterministic finite automata, regular expressions) and proof of nonregularity. Context-free languages and pushdown automata; proofs that languages are not context-free. Elements of computability theory. Brief introduction to NP-completeness.

CSCI-UA.0470-001     9015     Object Oriented Programming
prereq: CSCI-UA.0201
Object-oriented programming has emerged as a significant software development methodology. This course introduces the important concepts of object-oriented design and languages, including code reuse, data abstraction, inheritance, and dynamic overloading. Covers in depth those features of Java and C++ that support object-oriented programming and gives an overview of other object-oriented languages of interest. Significant programming assignments stressing object-oriented design.

CSCI-UA. 480-001     11295     Special Topics In Computer Science: Computing with Large Data Sets
prereq: CSCI-UA.0201
Enormous collections of data in multiple fields of science and engineering are being gathered and need to be analyzed. For example, the Sloan Digital Sky Survey will represent more than 200 million objects, each with 100 dimensions, and other activities in physics, biology, astronomy, and medicine will soon gather ever-larger sets of data. Biology, and more specifically the field of systems biology, have seen massive improvements in the technologies we use to sequence genomes and measure the levels of gene expression (or activity) in cells under different conditions.
These large biology data sets have have features in common with large data sets arising in other fields and illustrate the general need for tools for analysis, manipulation and statistical analysis of large data sets. This course will discuss some of the associated unprecedented computational challenges, focusing on these very large data sets arising in computational biology. The course is intended to addre ss some of the needed general principles by using a high-level language, the R statistical programming language, to analyze large genomic data sets. We will focus on four main data-sets in this class that come from current genomics and systems-biology studies; the needed biology and statistics will be taught throughout the course.

CSCI-UA.0480-002     23097     Special Topics In Comp Science: Applied Internet Technology
prereq: CSCI-UA.0201
A practical introduction to creating modern web applications. Covers full stack web development - including topics such as database / data model design, MVC architecture, templating, handling user input, asynchronous processing, and client side interactivity. Students will use current server and client side web frameworks to build dynamic, data-driven sites. Various tools to support development will also be introduced, such as version control and build systems. Basic knowledge of HTML and CSS and familiarity with command line tools are recommended.

CSCI-UA. 0480-003     17611     Special Topics In Comp Science: iOS Programming
prereq: CSCI-UA.0201
In this course, students will learn to create applications for Apple's iPhone 3G using Objective-C and the iPhone SDK. Since its introduction this past summer, the Apple SDK has been revealed to be a powerful platform upon which to build sophisticated applications for the iPhone. Without actually having to own an iPhone, students will be able to build and test their applications on Intel Apple Macs using the freely available compiler and simulator. In addition to the development tools, students will become proficient in the object-oriented language Objective-C, the Apple iPhone Framework, and the principles of Cocoa development. This is a new, dynamic, constantly-evolving topic, and students will be at the forefront of a new technological advancement.

CSCI-UA. 0480-004     17612     Special Topics In Comp Science: Computer Graphics
prereq: CSCI-UA.0201
The course will cover: 2D and 3D shape modeling, 2D and 3D coordinate transformations, splines, user interaction, designing and implementing motion scripts, viewing perspective rendering, clipping, painter's and Z-buffer algorithms, shading and lighting, textures, fractals, and ray tracing. There will be a lot of programming in this course as well as a midterm and final.


top | contact webmaster@cs.nyu.edu