blank
Select a level:
Select a term:
Only show courses available to first-year students.
blank

Course Listing for COMPUTER SCIENCE - Fall 2026 (ALL: 09/08/2026 - 12/23/2026)
Class
No.
Course ID Title Credits Type Instructor(s) Days:Times Location Permission
Required
Dist Qtr
2309 CPSC-110-01 Essentials of Computing-Python 1.00 LEC Johnson, Jonathan TR: 9:25AM-10:40AM TBA NUM  
  Enrollment limited to 18 Waitlist available: Y Mode of Instruction: In Person  
  Prerequisite: A satisfactory score on the Mathematics Placement Examination or a C- or better in Quantitative Literacy 101 or QLIT 103
  NOTE: 10 seats reserved for first year students.
  This course introduces fundamental concepts of computing and problem-solving techniques using the programming language Python. Topics covered include computer organization, data representations, algorithm design, coding, testing, and debugging strategies. Students will also explore various application areas of computing through a series of hands-on programming exercises. No prior programming experience is expected. This course is not open to students who have completed CPSC 215L This course is not open to students who have completed FYSM 124, Enchanted Data and Machine Minds
1005 CPSC-115-01 Intro to Computer Science 1.25 LEC Miyazaki, Takunari MWF: 10:00AM-10:50AM TBA NUM  
  Enrollment limited to 36 Waitlist available: Y Mode of Instruction: In Person  
    Cross-listing: DTSC-115-01
  Prerequisite: C- or better in Computer Science 110 or mathematics skills appropriate for enrolling in a calculus class.
  This course provides an introduction to computer science from broad and diverse perspectives, through object-oriented problem-solving using the Java programming language. Throughout the course, recurring themes are abstraction and effective use of basic algorithmic constructs such as sequence, selection and iteration. The building blocks of object-oriented programming such as encapsulation, inheritance, polymorphism and generics are covered and reinforced with practical applications. Required weekly laboratory sessions deepen students' learning with hands-on opportunities to experiment with the concepts covered in the lectures.
1006 CPSC-115-20 Intro to Computer Science 1.25 LAB Miyazaki, Takunari W: 1:30PM-4:10PM TBA NUM  
  Enrollment limited to 18 Waitlist available: Y Mode of Instruction: In Person  
    Cross-listing: DTSC-115-20
  Prerequisite: C- or better in Computer Science 110 or mathematics skills appropriate for enrolling in a calculus class.
  This course provides an introduction to computer science from broad and diverse perspectives, through object-oriented problem-solving using the Java programming language. Throughout the course, recurring themes are abstraction and effective use of basic algorithmic constructs such as sequence, selection and iteration. The building blocks of object-oriented programming such as encapsulation, inheritance, polymorphism and generics are covered and reinforced with practical applications. Required weekly laboratory sessions deepen students' learning with hands-on opportunities to experiment with the concepts covered in the lectures.
1007 CPSC-115-21 Intro to Computer Science 1.25 LAB Syta, Ewa R: 1:30PM-4:10PM TBA NUM  
  Enrollment limited to 18 Waitlist available: Y Mode of Instruction: In Person  
    Cross-listing: DTSC-115-21
  Prerequisite: C- or better in Computer Science 110 or mathematics skills appropriate for enrolling in a calculus class.
  This course provides an introduction to computer science from broad and diverse perspectives, through object-oriented problem-solving using the Java programming language. Throughout the course, recurring themes are abstraction and effective use of basic algorithmic constructs such as sequence, selection and iteration. The building blocks of object-oriented programming such as encapsulation, inheritance, polymorphism and generics are covered and reinforced with practical applications. Required weekly laboratory sessions deepen students' learning with hands-on opportunities to experiment with the concepts covered in the lectures.
2061 CPSC-215-01 Data Structures & Algorithms 1.25 LEC Cancelled NUM  
  Enrollment limited to 16 Waitlist available: Y Mode of Instruction: In Person  
    Cross-listing: DTSC-215-01
  Prerequisite: C- or better in Computer Science 115L.
  A study of data structures and algorithms using a high-level programming language. The basic data structures (lists, stacks, queues, trees, and files) and basic algorithms (searching, sorting, and file management) will be introduced and implemented. Data and procedural abstraction, software design principles, and the analysis of the complexity of algorithms will be discussed. Details related to programming will be covered in a required weekly lab.
2062 CPSC-215-20 Data Structures & Algorithms 1.25 LAB Cancelled NUM  
  Enrollment limited to 16 Waitlist available: Y Mode of Instruction: In Person  
    Cross-listing: DTSC-215-20
  Prerequisite: C- or better in Computer Science 115L.
  A study of data structures and algorithms using a high-level programming language. The basic data structures (lists, stacks, queues, trees, and files) and basic algorithms (searching, sorting, and file management) will be introduced and implemented. Data and procedural abstraction, software design principles, and the analysis of the complexity of algorithms will be discussed. Details related to programming will be covered in a required weekly lab.
2839 CPSC-275-01 Intro to Computer Systems 1.25 LEC Chakraborttii, Chandranil MWF: 11:00AM-11:50AM TBA NUM  
  Enrollment limited to 24 Waitlist available: Y Mode of Instruction: In Person  
  Prerequisite: C- or better in Computer Science 215.
  This course introduces the fundamental organization and structure of modern computer systems from the perspective of a programmer. Students will become more effective programmers as they learn how computer systems compile, link, and execute programs, store information, and communicate. Topics covered will include data representations, computer arithmetic, low-level representations of programs, processor organization, the memory hierarchy and management, processes, and system-level I/O. A required weekly lab will involve a series of programming exercises related to these topics.
2840 CPSC-275-20 Intro to Computer Systems 1.25 LAB Chakraborttii, Chandranil W: 1:30PM-4:10PM TBA NUM  
  Enrollment limited to 12 Waitlist available: Y Mode of Instruction: In Person  
  Prerequisite: C- or better in Computer Science 215.
  This course introduces the fundamental organization and structure of modern computer systems from the perspective of a programmer. Students will become more effective programmers as they learn how computer systems compile, link, and execute programs, store information, and communicate. Topics covered will include data representations, computer arithmetic, low-level representations of programs, processor organization, the memory hierarchy and management, processes, and system-level I/O. A required weekly lab will involve a series of programming exercises related to these topics.
2841 CPSC-275-21 Intro to Computer Systems 1.25 LAB Johnson, Jonathan R: 1:30PM-4:10PM TBA NUM  
  Enrollment limited to 12 Waitlist available: Y Mode of Instruction: In Person  
  Prerequisite: C- or better in Computer Science 215.
  This course introduces the fundamental organization and structure of modern computer systems from the perspective of a programmer. Students will become more effective programmers as they learn how computer systems compile, link, and execute programs, store information, and communicate. Topics covered will include data representations, computer arithmetic, low-level representations of programs, processor organization, the memory hierarchy and management, processes, and system-level I/O. A required weekly lab will involve a series of programming exercises related to these topics.
3192 CPSC-352-01 Artificial Intelligence 1.00 LEC Chakraborttii, Chandranil MW: 8:30AM-9:45AM TBA NUM  
  Enrollment limited to 24 Waitlist available: Y Mode of Instruction: In Person  
  Also cross-referenced with PSYC Cross-listing: DTSC-352-01
  Prerequisite: C- or better in Computer Science 215L and Computer Science 203 (or concurrent enrollment in 203).
  A study of basic principles and research methods in artificial intelligence. The course exposes students to selected topics in the field including pattern recognition, problem solving, theorem proving, knowledge representation, and natural language understanding by computers. The course will draw on recent advances made by cognitive scientists in each of these applications. Students are expected to study the theoretical background of an application. They will also complete several programming and simulation assignments during the semester.
3193 CPSC-372-01 Database Fundamentals 1.00 LEC Johnson, Jonathan TR: 10:50AM-12:05PM TBA NUM  
  Enrollment limited to 24 Waitlist available: Y Mode of Instruction: In Person  
    Cross-listing: DTSC-372-01
  Prerequisite: C- or better in Computer Science 215L and Computer Science 203 (or concurrent enrollment in 203).
  This course provides an introduction to the design and implementation of database systems. Topics include: the relational algebra and relational database models; SQL and other relational query languages; the implementation of database management systems, including indexing, concurrency control and transaction management.
3194 CPSC-385-01 Computer Security 1.00 LEC Syta, Ewa TR: 9:25AM-10:40AM TBA NUM  
  Enrollment limited to 24 Waitlist available: Y Mode of Instruction: In Person  
  Prerequisite: C- or better in Computer Science 203, 215L and 275L
  Introduction to computer security, the practice of protecting information and computer systems from unauthorized actions. Topics covered in the course include information and computer security principles; basic adversarial models and threats; applied cryptography; network, software, operating system, and web security; real-world security protocols; policy, administration and auditing; and legal and ethical issues. Topics on privacy, anonymity, surveillance and a variety of modern, widely available tools for secure communication will also be discussed.
1421 CPSC-399-01 Independent Study 0.50 - 1.00 IND TBA TBA TBA Y  
  Enrollment limited to 15 Waitlist available: N Mode of Instruction: In Person  
  Independent work to develop maturity and initiative in the solution of a problem in the area of the student's special interests. This course may require concurrent registration in Computer Science 403 or 404. Submission of the special registration form, available in the Registrar's Office, and the approval of the instructor and chairperson are required for enrollment.
2460 CPSC-403-01 Computer Science Seminar 0.50 SEM Kousen, Kenneth T: 1:30PM-2:45PM TBA Y WEB  
  Enrollment limited to 14 Waitlist available: Y Mode of Instruction: In Person  
  This course is open only to senior Computer Science majors.
  Students engaged in research (Computer Science 419) or independent study (Computer Science 399) and senior exercise students will meet with computer science faculty for oral presentations and critical discussions of journal papers, research plans, and research progress. Seniors using this course to satisfy the senior exercise requirement will be expected to complete a research or design project and make a formal presentation on its results to the seminar. The project may be an extension or revision of a project conducted in one of their other major courses.
2843 CPSC-403-02 Computer Science Seminar 0.50 SEM Kousen, Kenneth T: 2:55PM-4:10PM TBA Y WEB  
  Enrollment limited to 14 Waitlist available: Y Mode of Instruction: In Person  
  This course is open only to senior Computer Science majors.
  Students engaged in research (Computer Science 419) or independent study (Computer Science 399) and senior exercise students will meet with computer science faculty for oral presentations and critical discussions of journal papers, research plans, and research progress. Seniors using this course to satisfy the senior exercise requirement will be expected to complete a research or design project and make a formal presentation on its results to the seminar. The project may be an extension or revision of a project conducted in one of their other major courses.
3195 CPSC-415-01 Special Topics: AI Integration 1.00 LEC Kousen, Kenneth M: 1:30PM-4:10PM TBA NUM  
  Enrollment limited to 24 Waitlist available: Y Mode of Instruction: In Person  
    Cross-listing: DTSC-415-01
  Prerequisite: C- or better in Computer Science 215.
  Explore the integration of AI systems into software development, focusing on programmatic access to AI services. The course covers RESTful API interactions, local AI open-source models, and applications in chatbots, image generation, visualization, and audio/video creation. By blending theoretical foundations with implementation, the course equips students with the knowledge to leverage AI in modern software solutions.
1480 CPSC-466-01 Teaching Assistant 0.50 - 1.00 IND TBA TBA TBA Y  
  Enrollment limited to 15 Waitlist available: N Mode of Instruction: In Person  
  Submission of the special registration form, available online, and the approval of the instructor are required for enrollment. Guidelines are available in the College Bulletin. (0.5 - 1 course credit)
2239 CPSC-490-01 Research Assistantship 0.50 - 1.00 IND TBA TBA TBA Y  
  Enrollment limited to 15 Waitlist available: N Mode of Instruction: In Person  
  This course is designed to provide students with the opportunity to undertake substantial research work with a faculty member. Students need to complete a special registration form, available online.
2453 CPSC-498-01 Senior Project Part 1 0.50 IND TBA TBA TBA Y  
  Enrollment limited to 15 Waitlist available: N Mode of Instruction: In Person  
  This course is comprised of a research or implementation project and a final written report. This course is required for all senior computer science majors. Students must locate a project advisor and must submit a preliminary proposal to the project adviser by the last day of classes in the spring semester of the junior year. In addition to the proposal, submission of the special registration form and the approval of the instructor and chairperson are required for each semester of this year-long project.(1 course credit to be completed in two semesters.)