Computer Science - CSC

CSC 511 Introduction to Programming 3 Credits

This foundational course will teach you the basics of computer programming using the Python language. You will design, code, test, and debug computer programs for textual and graphical applications.

Corequisite: CSC 511L.

Offered: every fall, spring, & summer.

CSC 511L Introduction to Programming Lab 0 Credits

Required lab for CSC 511.

Corequisite: CSC 511.

Offered: every fall, spring, & summer.

CSC 512 Data Structures and Algorithms 3 Credits

The primary focus of this course is data structures and their accompanying algorithms, including recursive algorithms. In order to judge between competing algorithms or alternative data structures, we will use analysis to discover the time and memory bounds of various approaches. We will also use object oriented programming as a useful way of constructing abstract data types and in general structuring complex programs. Several debugging tools and approaches will be explored, especially hand tracing of algorithms. The Python programming language will be our main vehicle.

Prerequisite: CSC 511 or CSC 111. Corequisite: CSC 512L.

Offered: every fall, spring, & summer.

CSC 512L Data Structures and Algorithms Lab 0 Credits

Required lab for CSC 512.

Corequisite: CSC 512.

Offered: every fall, spring, & summer.

CSC 530 Operating System Design and Distributed Computing 3 Credits

The design of operating system software, distributed applications, client/server and other models, security issues, and parallel programming on a High Performance Computing Cluster.

Prerequisite: A minimum grade of C in CSC 512 & CSC 512L. Corequisite: CSC 530L.

Offered: every fall.

CSC 530L Operating System Design and Distributed Computing Laboratory 0 Credits

Required lab for CSC 530.

Prerequisite: A minimum grade of C in CSC 502 & CSC 502L. Corequisite: CSC 530L.

Offered: every fall.

CSC 610 Database Management 3 Credits

This course presents an introduction to the design and use of database systems. Traditional databases will be the primary focus, centering on the relational model (SQL and related tools). There will be some discussion of large-scale information retrieval in the form of the NoSQL movement and data mining. Ethical, social and security issues will also be covered in an introductory fashion.

Prerequisite: CSC 112 or CSC 512; may be taken concurrently.

Offered: every fall & spring.

CSC 610L Database Management Lab 0 Credits

Required lab for CSC 610.

Prerequisite: CSC 512L. Corequisite: CSC 610.

Offered: every fall & spring.