ICS 222: Basic Concepts of Computer Science

Catalog entry:

What is Computer Science about? Understand the ideas and models of language, computation, complexity, network; learn to apply them in practice.


This course presents the conceptual background of Computer Science as a science, and the fundamental ideas and methods of theory and practice of computation. It introduces and explains the concepts of language, state machine, computer, interpreter, specializer, compiler, using a graphical framework for reasoning about computability, complexity and program construction. The students will acquire the capability to understand and use the basic methods of Computer Science.


Documentary about Alan Turing.

People, time and place:

  • Lectures, Labs, Practica: Dusko, Muzamil
    • Time: Tuesday and Thursday 15:00-16:15
    • Place: Kuykendall 305 (lectures) and Hamilton 2K (practica)
  • Office hours:
    • Time: Tuesday 13:00-15:00, or by appointment
    • Place: POST 315 (or POST 311 when you are the first)
  • Period: 21 August 2017 – 15 December 2017

Slides and notes:

  1. Introduction (lecture note)
  2. First concept: Function (lecture note)
  3. Second concept: Machine (lecture note)
  4. Third concept: Program (lecture note in progress)