First Year CCIS Courses

In the first semester, CCIS students normally take:

  • CS 2500 Fundamentals of Computer Science 1
  • CS 2501 Lab for CS 2500
  • CS 1800 Discrete Structures
  • CS 1801 Recitation for CS 2500
  • CS 1200 Computer/Information Science Overview 1

In the second semester, CCIS students normally take:

  • CS 2510 Fundamentals of Computer Science 2
  • CS 2511 Lab for CS 2510
  • CS 2800 Logic & Computation
  • CS 2801 Lab for CS 2800
  • CS 1210 Computer/Information Science Overview 2

Labs, recitations, and Overview meet once a week.

Let us say a bit more about the first semester courses.

CS 2500 Fundamentals of Computer Science 1 is an introduction to thinking about how to design a computer program. The course uses the text How to Design Programs by Matthias Felleisen (the College’s Trustee Professor), Robert Findler (NWU), Matthew Flatt (Utah), and Shriram Krishnamurthi (Brown).  The programming language is Racket which is an enhanced version of the classic programming language Scheme. Racket has simple syntax and elegant powers of abstraction. Programming in Racket enables a clarity of thought that carries over to work in more messy languages.

To access the Fundamentals 1 course home page, go to:

Link during Fall semester:

Link during Spring semester:

Although CS 2500 may be taken with no prior knowledge of programming, it would certainly help if new students took a look at the first few chapters of the text and tested a few simple programs in Racket. This will put new students into the “right frame of mind”.

Even students with prior knowledge of programming will find Fundamentals of CS 1 to be an enlightening and challenging experience. Racket is a functional programming language that embraces recursive thinking. With its concise syntax and powerful intellectual constructs, Racket permits a programmer to create amazing programs with relatively few lines of code. Further, because Racket will be new to most freshmen, everyone will start on a level playing field.

CS 1800 Discrete Structures is an introduction to discrete mathematics with a focus on what is important for Computer Science. Since the ability to create correct programs depends on the ability to reason carefully about the structures and processes involved in software, this course is the foundation for future work in Computer & Information Science.

To access the course home page, go to:

CS 1200 Computer/Information Science Overview 1 covers a variety of topics important to new students in the college. Some topics: time management and being successful in CCIS; choosing a degree program; a bit of LINUX; and introduction to co-op.

Transfer students take CS 1220 Computer/Information Science Co-op Preparation instead of CS 1200. This Fall semester course focuses on co-op. It provides for the transfer students the same material that new freshmen learn in CS 1210 Computer/Information Science Overview 2 in the Spring semester.

NUTerm: Rising freshmen have the opportunity to re-take classes and/or excel their academic progress by taking courses during the Summer 1 term.