Undergraduate Information
The Computer and Information Science (CIS) Department offers several undergraduate degrees in fields related to computer science. The “Program Finder” button below will display the list of available degree programs. For a full list of courses, follow the “Course Finder” button, and for the current schedule of classes, log in to CUNYfirst.
For current and prospective students, we highly recommend viewing the advice brochure. There, you will find pertinent information, including possible two-, three-, and four-year schedules, FAQ, and more.
Programs
Courses
Additional Resources
Advice to Undergraduates
Advice Brochure
- Advice Brochure (pdf)—majors who started in fall 2017 or later
- Brochure Highlights:
- B.S. in Computer Science (Java)—Prerequisite Diagram (pdf), Degree Map (pdf), Degree Checklist (pdf)
- B.S. in Information Systems (Java)—Prerequisite Diagram (pdf), Degree Map (pdf), Degree Checklist (pdf)
- B.S. in Multimedia Computing (Java)—Prerequisite Diagram (pdf), Degree Map (pdf), Degree Checklist (pdf)
- Old Advice Brochure (pdf)—majors who started prior to fall 2017, where C++ is the language taught 1110 and 3110
Registration Advice
Letters from the Chair
- Spring 2022 Registration Advice (pdf)
- Summer 2022 Registration Letter (pdf)
- Fall 2022 Registration Advice (pdf)
Checklists for each major
Courses
First Course in the Major
Three-year Schedule for Undergraduate Course Offerings
Course offerings are subject to change,depending on enrollment and staffing.
2021–22
Fall Semester | Spring Semester |
---|---|
CISC 1215 Introduction to Programming Using Python (W) CISC 1600 Introduction to Multimedia Computing (E) CISC 2210 Introduction to Discrete Structures (D,E) CISC 2820W Computers and Ethics (D,E) CISC 3115 Introduction to Modern Programming Techniques (D,E) CISC 3130 Data Structures (D,E) CISC 3140 Design and Implementation of Large-Scale Web Applications (D,E) CISC 3142 Programming Paradigms in C++ (D) CISC 3220 Analysis of Algorithms (D,E) CISC 3225 Data Tools and Algorithms (D) CISC 3230 Theoretical Computer Science (D) CISC 3310 Principles of Computer Architecture (D,E) CISC 3320 Operating Systems (D,E) CISC 3325 Information Security (E) CISC 3415 Principles of Robotics (D) CISC 3440 Machine Learning (E) CISC 3630 Multimedia Computing (E) CISC 3660 Game Programming (D) CISC 3810 Database Systems (D,E) |
CISC 1600 Introduction to Multimedia Computing (D) CISC 2210 Introduction to Discrete Structures (D,E) CISC 2820W Computers and Ethics (D,E) CISC 3115 Introduction to Modern Programming Techniques (D,E) CISC 3130 Data Structures (D,E) CISC 3140 Design and Implementation of Large-Scale Web Applications (D,E) CISC 3142 Programming Paradigms in C++ (D,E) CISC 3160 Programming Languages (D) CISC 3171 Introduction to Software Engineering (D) CISC 3220 Analysis of Algorithms (D,E) CISC 3320 Operating Systems (D,E) CISC 3350 Workstation Programming (D) CISC 3610 Introduction to Multimedia Programming (E) CISC 3620 Computer Graphics (D) CISC 3650 Human-Computer Interaction (D) CISC 3665 Game Design (D) CISC 3810 Database Systems (D,E) CISC 4331 System and Network Administration (E) |
2022–23
Fall Semester | Spring Semester |
---|---|
CISC 1215 Introduction to Programming Using Python (W) CISC 1600 Introduction to Multimedia Computing (D) CISC 2210 Introduction to Discrete Structures (D,E) CISC 2820W Computers and Ethics (D,E) CISC 3115 Introduction to Modern Programming Techniques (D,E) CISC 3130 Data Structures (D,E) CISC 3140 Design and Implementation of Large-Scale Web Applications (D,E) CISC 3142 Programming Paradigms in C++ (D,E) CISC 3160 Programming Languages (D) CISC 3220 Analysis of Algorithms (D,E) CISC 3230 Theoretical Computer Science (D) CISC 3310 Principles of Computer Architecture (D,E) CISC 3320 Operating Systems (D,E) CISC 3325 Information Security (D) CISC 3340 Computer Networks and Protocols (D) CISC 3415 Principles of Robotics (D) CISC 3440 Machine Learning (E) CISC 3630 Multimedia Computing (E) CISC 3660 Game Programming (D) CISC 3810 Database Systems (D,E) CISC 4610 Multimedia Databases (D) |
CISC 1600 Introduction to Multimedia Computing (D) CISC 2210 Introduction to Discrete Structures (D,E) CISC 2820W Computers and Ethics (D,E) CISC 3115 Introduction to Modern Programming Techniques (D,E) CISC 3130 Data Structures (D,E) CISC 3140 Design and Implementation of Large-Scale Web Applications (D,E) CISC 3142 Programming Paradigms in C++ (D,E) CISC 3160 Programming Languages (D) CISC 3171 Introduction to Software Engineering (E) CISC 3220 Analysis of Algorithms (D,E) CISC 3225 Data Tools and Algorithms (D) CISC 3310 Principles of Computer Architecture (D,E) CISC 3320 Operating Systems (D,E) CISC 3350 Workstation Programming (D) CISC 3410 Artificial Intelligence (E) CISC 3610 Introduction to Multimedia Programming (E) CISC 3620 Computer Graphics (D) CISC 3650 Human-Computer Interaction (D) CISC 3667 Game Design and Development (D) CISC 3810 Database Systems (D,E) CISC 4331 System and Network Administration (E) |
2023–24
Fall Semester | Spring Semester |
---|---|
CISC 1215 Introduction to Programming Using Python (W) CISC 1600 Introduction to Multimedia Computing (D) CISC 2210 Introduction to Discrete Structures (D,E) CISC 2820W Computers and Ethics (D,E) CISC 3115 Introduction to Modern Programming Techniques (D,E) CISC 3130 Data Structures (D,E) CISC 3140 Design and Implementation of Large-Scale Web Applications (D,E) CISC 3142 Programming Paradigms in C++ (D,E) CISC 3160 Programming Languages (D) CISC 3220 Analysis of Algorithms (D,E) CISC 3230 Theoretical Computer Science (D) CISC 3310 Principles of Computer Architecture (D,E) CISC 3320 Operating Systems (D,E) CISC 3325 Information Security (D) CISC 3340 Computer Networks and Protocols (D) CISC 3415 Principles of Robotics (D) CISC 3440 Machine Learning (E) CISC 3630 Multimedia Computing (E) CISC 3660 Game Programming (D) CISC 3810 Database Systems (D,E) CISC 4610 Multimedia Databases (D) |
CISC 1600 Introduction to Multimedia Computing (D) CISC 2210 Introduction to Discrete Structures (D,E) CISC 2820W Computers and Ethics (D,E) CISC 3115 Introduction to Modern Programming Techniques (D,E) CISC 3130 Data Structures (D,E) CISC 3140 Design and Implementation of Large-Scale Web Applications (D,E) CISC 3142 Programming Paradigms in C++ (D,E) CISC 3160 Programming Languages (D) CISC 3171 Introduction to Software Engineering (D) CISC 3220 Analysis of Algorithms (D,E) CISC 3225 Data Tools and Algorithms (D) CISC 3310 Principles of Computer Architecture (D,E) CISC 3320 Operating Systems (D,E) CISC 3350 Workstation Programming (D) CISC 3410 Artificial Intelligence (E) CISC 3610 Introduction to Multimedia Programming (E) CISC 3620 Computer Graphics (D) CISC 3650 Human-Computer Interaction (D) CISC 3810 Database Systems (D,E) CISC 4331 System and Network Administration (E) |
2024–25
Fall Semester | Spring Semester |
---|---|
CISC 1215 Introduction to Programming Using Python (W) CISC 1600 Introduction to Multimedia Computing (D) CISC 2210 Introduction to Discrete Structures (D,E) CISC 2820W Computers and Ethics (D,E) CISC 3115 Introduction to Modern Programming Techniques (D,E) CISC 3130 Data Structures (D,E) CISC 3140 Design and Implementation of Large-Scale Web Applications (D,E) CISC 3142 Programming Paradigms in C++ (D,E) CISC 3160 Programming Languages (D) CISC 3220 Analysis of Algorithms (D,E) CISC 3230 Theoretical Computer Science (D) CISC 3310 Principles of Computer Architecture (D,E) CISC 3320 Operating Systems (D,E) CISC 3325 Information Security (D) CISC 3340 Computer Networks and Protocols (D) CISC 3415 Principles of Robotics (D) CISC 3440 Machine Learning (E) CISC 3630 Multimedia Computing (E) CISC 3660 Game Programming (D) CISC 3810 Database Systems (D,E) CISC 4610 Multimedia Databases (D) |
CISC 1600 Introduction to Multimedia Computing (D) CISC 2210 Introduction to Discrete Structures (D,E) CISC 2820W Computers and Ethics (D,E) CISC 3115 Introduction to Modern Programming Techniques (D,E) CISC 3130 Data Structures (D,E) CISC 3140 Design and Implementation of Large-Scale Web Applications (D,E) CISC 3142 Programming Paradigms in C++ (D,E) CISC 3160 Programming Languages (D) CISC 3171 Introduction to Software Engineering (D) CISC 3220 Analysis of Algorithms (D,E) CISC 3225 Data Tools and Algorithms (D) CISC 3310 Principles of Computer Architecture (D,E) CISC 3320 Operating Systems (D,E) CISC 3350 Workstation Programming (D) CISC 3410 Artificial Intelligence (E) CISC 3610 Introduction to Multimedia Programming (E) CISC 3620 Computer Graphics (D) CISC 3650 Human-Computer Interaction (D) CISC 3667 Game Design and Development (D) CISC 3810 Database Systems (D,E) CISC 4331 System and Network Administration (E) |
Every Semester
- CISC 1001 Computing and Quantitative Reasoning
- CISC 1003 Exploring Robotics
- CISC 1050 Introduction to Computer Applications
- CISC 1115 Introduction to Programming Using Java
- CISC 4900 Independent and Group Projects I
- CISC 4905 Independent and Group Projects II
- CISC 5001 Independent Study and Research I
- CISC 5002 Independent Study and Research II
- CISC 5003 Independent Study and Research III
- CISC 5004 Independent Study and Research IV
As Scheduled With Other Departments
Business
- CISC 1530 / BUSN 3120 Electronic Commerce
- CISC 1580W / BUSN 4202W Seminar in Computer-Assisted Management Games
- CISC 1590 / BUSN 3420 Management Information Systems
- CISC 1595 / BUSN 3440 Management of New and Emerging Technologies
- CISC 1597 / BUSN 3110 / TVRA 3537 New Media and Business
- CISC 2531 / BUSN 3430 Operations Management
English
- CISC 2830 / LING 3023 / ENGL 3525 Introduction to Natural Language Processing
Philosophy
- CISC 1410 / PHIL 3423 Philosophy and Artificial Intelligence
TV, Radio & Emerging Media
- CISC 1597 / BUSN 3110 / TVRA 3537 New Media and Business
Undergraduate CIS Student Clubs
We have two active undergraduate student clubs:
Computer Science Club
The Brooklyn College Computer Science Club is a community that enables students interested in technology to learn and grow together. The club offers exciting and beginner-friendly events designed to enrich and grow your understanding of in-demand skills, and opportunities for members to network and collaborate on projects and hackathons.
BC WiCS
The BC Women in Computer Science club (BC WiCS) is a strong community dedicated to empowering and encouraging women in CIS. Together, members promote diversity in technology, host CS-related events and workshops, go to (and win!) hackathons, and empower each other.
Course Syllabi
The syllabi shown below are intended to provide information about course content. Textbooks and weighting of grades are determined by the instructor of each section. See your instructor’s webpage for specific information.
Computer Science B.S.
- CISC 1110 [CIS 1.5] (pdf) Introduction to Programming Using C++
- CISC 1115 (pdf) Introduction to Programming Using Java
- CISC 2210 [11] (pdf) Introduction to Discrete Structures
- CISC 2820 [12W] (pdf) Computers and Ethics
- CISC 3110 [15] (pdf) Advanced Programming Techniques
- CISC 3115 (official A-IV document) (weekly topic list) Introduction to Modern Programming Techniques
- CISC 3120 [20.1] (pdf) Design and Implementation of Software Applications 1
- CISC 3130 [22] (pdf) Data Structures
- CISC 3140 [20.2] (pdf) Design and Implementation of Software Applications 2
- CISC 3142 (pdf) Programming Paradigms in C++
- CISC 3150 [26] (pdf) Object-Oriented Programming
- CISC 3220 [23] (pdf) Analysis of Algorithms
- CISC 3230 [38] (pdf) Theoretical Computer Science
- CISC 3310 [27.1] (pdf) Principles of Computer Architecture
- CISC 3320 [25] (pdf) Operating Systems
- CISC 4900 and 4905 [60.1, 60.2] (pdf) Independent and Group Projects I, II
- CISC 5001-04 [88.1, 88.2, 88.3, 88.4] (pdf) Independent Study and Research I, II, III, IV
Information Systems B.S.
- CISC 1050 [5.2] (pdf) Introduction to Computer Applications
- CISC 1530 [3.2] (pdf) Electronic Commerce
- CISC 1590 [9.2] (pdf) Management Information Systems
- CISC 2531 [10.31] (pdf) Operations Management
- CISC 3810 [45] (pdf) Database Systems
MultiMedia Computing B.S.
- CISC 1600 [3.5] (pdf) Introduction to Multimedia Computing
- CISC 3410 [32] (pdf) Artificial Intelligence
- CISC 3415 [32.5] (pdf) Principles of Robotics
- CISC 3620 [41] (pdf) Computer Graphics
- CISC 3630 [52] (pdf) Multimedia Computing
- CISC 3660 [54.1] (pdf) Game Programming
- CISC 3665 [54.2] (pdf) Game Design
Electives
- CISC 1001 (pdf) [CORC 1312 , CC 3.12] Computing: Nature, Power and Limits
- CISC 1002 (pdf) [CORC 3303, CC 30.03] Exploring Robotics
- CISC 1003 (pdf) [CORC 3310, CC 30.10] Paradoxes and the Limits of Knowledge
- CISC 1030 [3] (pdf) The Internet
- CISC 1035 [3.1] (pdf) Multimedia Production for the World Wide Web
- CISC 1080 [5.1] (pdf) Microcomputers in Education
- CISC 1590 [9.2] (pdf) Management Information Systems
- CISC 1595 [9.50] (pdf) Management of New and Emerging Technologies
- CISC 1597 [9.7] (pdf) New Media and Business
- CISC 3160 [24] (pdf) Programming Languages
- CISC 3171 [30.1] (pdf) Introduction to Software Engineering
- CISC 3330 [47] (pdf) Foundations of Parallel and Distributed Computing
- CISC 3335 [53] (pdf) Client-Server Web Programming
- CISC 3343 [49.1] (pdf) Telecommunications
- CISC 3345 [49.2] (pdf) Computer Networks
- CISC 3350 [46] (pdf) Workstation Programming
- CISC 3390 [29] (pdf) Compiler Construction
- CISC 3610 [3.1] (pdf) Introduction to Multimedia Programming
- CISC 3635 [36] (pdf) Multimedia Coding and Compression
- CISC 3640 [51.1] (pdf) Digital Image Processing
- CISC 3645 [50.1] (pdf) Multimedia Security
- CISC 3650 [54] (pdf) Innovative Approaches to Computer-Human Interfaces
- CISC 3800 [13.2] (pdf) Advanced Personal Computer Techniques for Business
- CISC 3820 [48] (pdf) Introduction to Modeling and Simulation
- CISC 4335 [55] (pdf) Parallel and Distributed Computing
- CISC 4610 [45.1] (pdf) Multimedia Databases 2