Offered at: San Luis Obispo Campus
Nearly all disciplines use the capabilities of computers. The Computer Science minor consists of a lower-division core and upper-division elective courses selected in consultation with an advisor. The core provides common knowledge and skills needed by anyone who wishes to advance further in computer science. The remaining courses enable students to specialize in areas relevant to their goals.
| Code | Title | Units |
|---|---|---|
| Admission to the minor is limited and selection is based upon the applicant's performance in: | ||
| CSC 1001 | Fundamentals of Computer Science | 3 |
| CSC 1001L | Fundamentals of Computer Science Laboratory | 1 |
| CSC 2001 | Data Structures | 3 |
| CSC 2001L | Data Structures Laboratory | 1 |
Students who intend to minor in computer science should consult the College of Engineering's Engineering Student Services website for GPA and course grade requirements for admission to the minor. In addition, they should contact Engineering Student Services for further information before planning to enter the minor.
Before formally applying, students must make an appointment at the College of Engineering's Engineering Student Services. The Computer Science minor is not open to CSC, CPE or SE major students, or to students in the Cross Disciplinary Studies Minor in Computing for Interactive Arts, the Cross Disciplinary Studies Minor in Data Science, or the Cross Disciplinary Studies Minor in Bioinformatics. Questions concerning the minor should be directed to Engineering Student Services.
Program Learning Objectives
- Analyze a computing problem and apply principles of computing to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements.
- Apply software development fundamentals to produce computing-based solutions.
Minor Requirements and Curriculum
- At least half of the units must be from upper-division courses (3000-4000 level).
- At least half of the units must be taken at Cal Poly (in residence).
- No more than one-third of the units will be taken with credit-no credit grading (CR/NC), not counting courses with mandatory CR/NC. Departments may further limit CR/NC grading if desired.
- A minimum 2.0 GPA is required in all units counted for completion of the minor.
| Code | Title | Units |
|---|---|---|
| REQUIRED COURSES | ||
| CSC 1001 & 1001L | Fundamentals of Computer Science and Fundamentals of Computer Science Laboratory | 4 |
| CSC 2001 & 2001L | Data Structures and Data Structures Laboratory | 4 |
| CSC 3001 | Modern Application Development | 4 |
| Approved Electives | ||
| Select from the following: | 6-8 | |
| Microcontrollers and Embedded Applications | ||
| Computer Architecture | ||
| Robotic Systems Integration | ||
| Autonomous Mobile Robotics | ||
| Advanced Microcontrollers and Embedded Applications | ||
| Applied Parallel Computing | ||
| Network Security | ||
| Advanced Computer Architecture | ||
| Introduction to Real-Time Operating Systems | ||
| High-Performance Embedded Systems | ||
| Design of Fault-Tolerant Systems | ||
| Introduction to Computer Networks | ||
| Advanced Computer Networks | ||
| Scalable Server Implementation and Testing | ||
| Distributed Systems | ||
| Software Engineering | ||
| Software Engineering without Programming | ||
| Computational Thinking for Educators | ||
| Teaching Computing | ||
| Practical Computer Security for Everyone | ||
| Introduction to Computer Security | ||
| Cryptography Engineering and Applications | ||
| Introduction to Privacy: Policy and Technology | ||
| Programming Languages | ||
| Theory of Computation | ||
| Algorithms and Complexity | ||
| Introduction to Databases | ||
| Introduction to Non-Relational Database Systems | ||
| Introduction to Database Management Systems | ||
| Game Design and Development | ||
| Introduction to Mixed Reality | ||
| Game Engineering and Critical Analysis | ||
| Mobile Application Development | ||
| Web Development | ||
| Software Evaluation | ||
| User-Centered UI/UX Design | ||
| Human-Computer Interaction | ||
| Malware Design and Analysis | ||
| Binary Exploitation: Tools and Techniques | ||
| Web and Cloud Security | ||
| Compiler Construction | ||
| Bioinformatics Algorithms | ||
| Introduction to Operating Systems | ||
| Implementation of Operating Systems | ||
| Fundamentals of Machine Learning | ||
| Database Management Systems Organization | ||
| Deep Learning | ||
| Introduction to Computer Graphics | ||
| Advanced Rendering Techniques | ||
| Computer Animation | ||
| Real-Time 3D Computer Graphics Software | ||
| Natural Language Processing | ||
| Artificial Intelligence | ||
| Semantic Computing | ||
| Computer Vision | ||
| Introduction to Data Science | ||
| Ethics, Science, and Technology | ||
| Total Units | 18 | |