# Computer Science (CSCI) courses Chabot College · 2026-2027 Catalog · 12 courses Source: https://chabot.curriqunet.com/catalog/iq/3973/6079/6083/7528/7558 "Offered" lists sections in this catalog year's class schedules: Summer 2026, Fall 2026. ### CSCI 6 — Computer Programming for Visual Thinkers - **Units:** 3 - **Hours:** 36 Lecture, 36 Lab - **Offered:** not on the Summer 2026, Fall 2026 schedules - Grading: Optional Students work within 2D and 3D virtual worlds to create interactive games, stories and animations. Programs are assembled using a drag-and-drop interface to bypass the abstract syntax rules required by conventional languages. Topics covered include variables, data types, expressions, input/output, logic and control flow, loops, functions, parameters, arrays, recursion, flowcharts, graphics, animation, 3D modeling, and computer game design. ### CSCI 7 — Introduction to Computer Programming Concepts - **Units:** 3 - **Hours:** 54 Lecture, 18 Lab - **Transfers to:** CSU, UC - **Offered:** Summer 2026, 1 section (/c/chabot-college/schedule/summer-2026/csci.md); Fall 2026, 1 section (/c/chabot-college/schedule/fall-2026/csci.md) - Grading: Optional Introduction to computer programming for nonscience majors and for students requiring additional preparation before taking Computer Science 10 or Computer Science 14. Hardware, system software basics, the history of computing, basic computer operations, number systems, design of algorithms, and programming constructs such as variables, expressions, input/output, decision-making, loops, functions, and parameters. ### CSCI 8 — Computer Literacy - **Units:** 3 - **Hours:** 36 Lecture, 36 Lab - **Advisory:** MTH 55, MTH 55A, MTH 53, MTH 53A, Completion of Algebra 2 in high school - **Transfers to:** CSU, UC - **Offered:** Summer 2026, 2 sections (/c/chabot-college/schedule/summer-2026/csci.md); Fall 2026, 2 sections (/c/chabot-college/schedule/fall-2026/csci.md) - Grading: Letter Grade Only Introduction to computers including: Microsoft Windows, Microsoft Office, Multimedia, the internet, browsers, World Wide Web, an awareness of types of computer software in use including programming languages, electronic mail, computer-based careers and trends, and other computing issues in today’s society. No prior computer experience necessary. Course recommended for students of any major who want to learn about computers and how to use them. Hands-on laboratory experience reinforces lecture. ### CSCI 10 — Introduction to Programming Using Visual BASIC.NET - **Units:** 4 - **Hours:** 54 Lecture, 54 Lab - **Advisory:** CSCI 7, CSCI 8, Computer Application Systems 8 - **Offered:** not on the Summer 2026, Fall 2026 schedules - Grading: Optional Introduction to computer programming using Microsoft’s programming language Visual BASIC.NET for Windows. The course includes programming algorithm development, Visual Studio.NET’s IDE, the language’s basic syntax and grammar, object event procedures, input/output, looping techniques, decision logic, variable data types, functions and subroutines and text file and database manipulation. Intended for a general audience with little or no prior formal programming experience. ### CSCI 14 — Introduction to Structured Programming In C++ - **Units:** 4 - **Hours:** 54 Lecture, 54 Lab - **Prerequisite:** MTH 55 - **Advisory:** CSCI 7, ENGL C1000 (Formerly ENGL 1) - **Transfers to:** CSU, UC - **Offered:** Summer 2026, 2 sections (/c/chabot-college/schedule/summer-2026/csci.md); Fall 2026, 3 sections (/c/chabot-college/schedule/fall-2026/csci.md) - Grading: Letter Grade Only Introduction to structured programming and problem solving using the C++ language. Problem solving techniques, algorithm design, testing and debugging techniques, and documentation standards. C++ syntax: elementary operators, data types, control structures, user-defined and library functions, basic input/output, sequential files, arrays and structs. Appropriate for students with little or no programming experience, but comfortable using computers with modern GUI operating systems. ### CSCI 15 — Object-Oriented Programming Methods - **Units:** 4 - **Hours:** 54 Lecture, 54 Lab - **Prerequisite:** CSCI 14 - **Advisory:** MTH 20 - **Transfers to:** CSU, UC - **Offered:** Fall 2026, 1 section (/c/chabot-college/schedule/fall-2026/csci.md) - Grading: Optional Object-oriented programming methods employed to design, program, test and document intermediate level problems. Includes strings and string objects, multidimensional arrays, pointers, dynamic allocation, classes, overloaded functions, inheritance and polymorphism, introduction to linked lists. Designed to satisfy Association of Computing Machinery (ACM) guidelines for CS I as required for Computer Science and related transfer majors. ### CSCI 19A — Object-Oriented Programming Methods in Java - **Units:** 4 - **Hours:** 54 Lecture, 54 Lab - **Advisory:** CSCI 14, MTH 20 - **Offered:** Summer 2026, 1 section (/c/chabot-college/schedule/summer-2026/csci.md) - Grading: Optional Object-oriented programming methods employed to design, program, test and document intermediate level problems in the Java language. Overview of Java syntax, control structures, methods, I/O, strings, single and multidimensional arrays, recursion and exception handling. Abstract Data Types and Object-Oriented Programming principles including classes, information hiding, aggregation, inheritance, method overriding and polymorphism. Introduction to graphical user interfaces (GUIs) and applets using the javax.swing package. Dynamic allocation and de-allocation of memory; comparison of Java references with pointers in C++. Implementation and use of linked lists. Designed to satisfy Association of Computing Machinery (ACM) guidelines for CSI as required for Computer Science and related transfer majors. ### CSCI 20 — Introduction to Data Structures - **Units:** 4 - **Hours:** 54 Lecture, 54 Lab - **Prerequisite:** CSCI 15 - **Advisory:** MTH 1 - **Transfers to:** CSU, UC - **Offered:** Fall 2026, 1 section (/c/chabot-college/schedule/fall-2026/csci.md) - Grading: Letter Grade Only Design and implementation of larger projects using object-oriented software engineering principles. Emphasis on definition and use of data structures. Includes specification of Abstract Data Types, recursion, dynamic memory allocation, stacks, linked lists, priority queues, graphs, binary trees, heaps, sorting and searching, algorithm analysis, hashing techniques, random access files. ### CSCI 21 — Computer Organization and Assembly Language Programming - **Units:** 4 - **Hours:** 54 Lecture, 54 Lab - **Prerequisite:** CSCI 14 - **Transfers to:** CSU, UC - **Offered:** Fall 2026, 1 section (/c/chabot-college/schedule/fall-2026/csci.md) - Grading: Optional Basics of machine architecture, machine language, assembly language, operating system and higher level language interface. Data representation, instruction representation and execution, addressing techniques and use of macros. Space and time efficiency issues. Input/output including number conversion and use of system interrupts. Interrupt processing and interrupt handlers. Procedures including parameter passing and linkage to higher level languages. ### CSCI 28 — Discrete Mathematics - **Units:** 3 - **Hours:** 54 Lecture, 18 Lab - **Prerequisite:** MTH 1 - **Advisory:** CSCI 14 - **Transfers to:** CSU, UC - **Offered:** not on the Summer 2026, Fall 2026 schedules - Grading: Letter Grade Only Sets, relations and functions; logic, methods of proof, induction; combinatorics, discrete probability, recursion, and recurrence relations; graphs and trees; logic circuits; finite state machines. Designed for majors in mathematics and computer science. ### CSCI 41 — Introduction to UNIX - **Units:** 2 - **Hours:** 27 Lecture, 27 Lab - **Transfers to:** CSU, UC - **Offered:** Fall 2026, 1 section (/c/chabot-college/schedule/fall-2026/csci.md) - Grading: Optional UNIX operating system capabilities, introduction to Perl, elementary batch programming and compilation of C. Components of a UNIX system, common commands, directory and file management, UNIX editors, shells, electronic mail and user communication, the C language development environment, Internet resources. ### CSCI 42 — UNIX Tools, Shell Programming and System Administration Concepts - **Units:** 2 - **Hours:** 27 Lecture, 27 Lab - **Prerequisite:** CSCI 41 - **Transfers to:** CSU, UC - **Offered:** not on the Summer 2026, Fall 2026 schedules - Grading: Optional Further experience with UNIX tools. Enhanced shells. Emphasis on Linux variant of UNIX. Basic networking concepts. Writing and testing shell scripts. Processes and scheduling. Security issues. Basis System administration.