The purpose of the CS150 course is to introduce students to fundamental concepts in computer science. Concepts that introduce logic, programming, and interaction with the operating system will be interleaved to show how systems and applications software complement each other. The logic portion will adopt a problem solving focus with an integrated view of the computer. For programming, the class covers the basic Java syntax and language features, compilation, interpretation, execution, primitive data types, class and object usage, parameter passing, flow of control constructs and arrays. For interaction with the operating system, the class will show how to use Linux for day to day operations as a software developer.

See syllabus for instructor and teaching assistant information.

A tentative schedule for the course can be found here .

Course Objectives

Upon completion of this course, students should be able to understand and/or handle the following programming skills: 

  • Computer hardware and software basics
  • Operating system basics, process flow
  • Variables, data types, constants
  • Control statements, selections
  • Boolean logic
  • Mathematical functions, strings
  • Loops
  • Methods
  • Arrays
  • Text-based I/O, exceptions

May 22 (Russ) Welcome to the new CS150 course website!