This course introduces computer network applications and design. Topics include: layered models, data transmission protocols, network topology, and security. (Format: Lecture 3 Hours) Tuesday and Thursday 4:00 to 5:20PM Avard Dixon 115.

- Professor: Peter Crawshaw

This course introduces the principles of design and implementation of programming languages. Topics include: language syntax and processors, and semantic models of data and control structures. (Format: Lecture 3 Hours) Monday Wednesday and Friday 10:30 to 11:20AM Sir James Dunn Building 104.

- Professor: Michael Cormier

This course applies analysis and design techniques to non-numeric algorithms that act on data structures. The design of efficient algorithms leads to in-depth investigations of computational complexity such as NP-hard problems. (Format: Lecture 3 Hours) Tuesday and Thursday 10:00 to 11:20AM Sir James Dunn Building 104.

- Professor: Laurie Ricker

This course is an introduction to programming at the systems level. Topics include: basic machine organization, assembly language, the UNIX environment, shell scripting, and C/C++ programming. (Format: Lecture 3 Hours, Laboratory 3 Hours) Tuesday and Thursday 1:00 to 2:20PM Sir James Dunn Building 106.

- Professor: Michael Cormier

This course introduces advanced structures for data organization, with an emphasis on associated algorithms and their complexity. Topics include: binary and text file structures, compression, distributed computing, event-driven programming, and user interface design. (Format: Lecture 3 Hours, Laboratory 3 Hours) Monday Wednesday and Friday 12:30 to 1:20PM Sir James Dunn Building 106.

- Professor: Liam Keliher

This course introduces program design techniques and algorithmic thinking using a high-level computer programming language. Topics include: fundamental control structures, elementary data structures, code reuse, basic algorithms, and debugging and testing. (Format: Lecture 3 Hours, Laboratory 3 Hours) Monday Wednesday and Friday 10:30 to 11:20AM Barclay 02.

- Professor: Liam Keliher

This course provides a broad survey of computer science and an introduction to programming. Topics include: origins of computers, data representation and storage, Boolean algebra, digital logic gates, computer architecture, assemblers and compilers, operating systems, networks and the Internet, theories of computation, and artificial intelligence. [Note 1: University preparatory level course in Mathematics is required.] (Format: Lecture 2 Hours, Laboratory 2 Hours) (Distribution: Natural Science-a)(Exclusion: COMP 1611; COMP 1711; any COMP course at the 2000 level or higher)

- Code Wrangler: Laurie Ricker