Contact Information
- Division
- Business and Technology
- Dean
- Susan Lucyga (Interim)
- Associate Dean
- Darlene Jackson
- Division Office
- B 3, Rocklin Campus
Overview
The Computer Science curriculum prepares students for careers in computer programming and for transfer to state colleges and universities for further study in computer sciences or information science. The curriculum offers students both the theory and practical experience for entry level positions of employment. There are computer courses for non-science majors as well as science majors. In all cases, students should consult with a counselor for specific transfer requirements.
The Computer Science curriculum meets the Data Processing Management Association mode curriculum for undergraduate computer information systems education.
Faculty
Barry E. Brown
Professor, Computer Science
B.S., University of California, San Diego
M.S., University of California, San Diego
William B. Cole
Professor, Computer Science
B.S.E.E., Duke University
M.S.E.E., Stanford University
Michael R. Dobeck
Professor, Computer Science
B.S., California State University, Sacramento
Degrees/Certificates
Associate Degree for Transfer
Associate Degrees
Certificate of Achievement
Computer Science for Transfer
AS-T Degree
The Associate in Science in Computer Science for Transfer degree (AS-T) program provides students with a strong foundation in Computer Science. Upon completion of the program, students will demonstrate an ability to analyze problems and craft appropriate algorithmic solutions; apply knowledge of computing and mathematics appropriate to the discipline; interpret data, think critically and apply the scientific method; research and assess new ideas and information; and interpret technical information, as well as listen effectively to, communicate orally with and write clearly for a wide range of audiences.
The Associate in Science in Computer Science for Transfer degree (AS-T) prepares students to transfer into the CSU system to complete a bachelor’s degree in Computer Science or a major deemed similar by a CSU campus. Students earning an associate degree for transfer and meeting the CSU minimum transfer admission requirements are guaranteed admission with junior standing to the CSU system, but not to a particular campus or major. Upon transfer, students will be required to complete no more than 60 additional prescribed units to earn a bachelor’s degree.
To earn the Associate in Science in Computer Science for Transfer degree, students must complete 60 CSU-transferable semester units with a minimum grade point average of 2.0, including both of the following:
- completion of all courses required for the major with grades of “C” or better; and
- completion of the Intersegmental General Education Transfer Curriculum (IGETC) pattern. (Students transferring to a CSU campus must complete Area 1C Oral Communication to be eligible for admission.)
NOTE: The California State University General Education Breadth pattern (CSU GE) is NOT an option for this degree.
The exact wording of the law pertaining to associate degrees for transfer may be found in Education Code Section 66746.
It is highly recommended that, prior to transferring, students complete courses that satisfy the CSU United States History, Constitution and American Ideals graduation requirement. In all cases, students should consult with a counselor for more information on university admission and transfer requirements.
RESTRICTION: International coursework from non-United States regionally accredited institutions cannot be applied to associate degrees for transfer.
Required Courses
Code | Title | Units |
---|---|---|
CSCI 0012 | Programming Concepts and Methodology I | 3 |
CSCI 0013 | Programming Concepts and Methodology II | 3 |
CSCI 0026 | Discrete Structures for Computer Science | 3 |
CSCI 0039 | Introduction to Computer Architecture and Assembly Language | 3 |
MATH 0030 | Analytical Geometry and Calculus I | 4 |
MATH 0031 | Analytical Geometry and Calculus II | 4 |
PHYS 0205 | Principles of Physics: Mechanics | 4 |
PHYS 0205L | Principles of Physics Laboratory: Mechanics | 1 |
PHYS 0210 | Principles of Physics: Electricity and Magnetism | 3 |
PHYS 0210L | Principles of Physics Laboratory: Electricity and Magnetism | 1 |
Total Units | 29 |
NOTE: IGETC is the only approved general education pattern for the Computer Science for Transfer degree. (CSU GE is NOT an approved option.)
Computer Science—Computer Science
AA or AS Degree
The curriculum in Computer Science prepares students for transfer to California State University, Sacramento and to many other university Computer Science degree programs. In all cases, students should consult with a counselor for more information on university admission and transfer requirements. Students must fulfill the following major requirements with grades of “C” or better, complete a minimum of 60 degree-applicable semester units (12 of which must be completed at Sierra College) with a grade point average of at least 2.0 and complete one of the following three general education patterns:
- Sierra College Associate Degree Requirements;
- California State University General Education Breadth (CSU GE) pattern;
- Intersegmental General Education Transfer Curriculum (IGETC).
Required Courses
Code | Title | Units |
---|---|---|
CSCI 0012 | Programming Concepts and Methodology I | 3 |
CSCI 0013 | Programming Concepts and Methodology II | 3 |
CSCI 0026 | Discrete Structures for Computer Science | 3 |
CSCI 0039 | Introduction to Computer Architecture and Assembly Language | 3 |
CSCI 0050 | Introduction to Unix/Linux | 3 |
CSCI 0062 | Web Programming I | 3 |
Select 9 units from the following: | 9 | |
Data Structures | ||
The Game Development Process | ||
Visual Basic .NET Programming I | ||
System Programming with C | ||
Introduction to SQL | ||
Visual Basic .NET Programming II | ||
Object-Oriented Programming Using C++ | ||
Game Programming | ||
Mobile Device Programming | ||
Total Units | 27 |
Computer Science—Management Information Systems
AA or AS Degree
The curriculum in Management Information Systems has special emphasis on development, installation and maintenance of business software applications. Students must fulfill the following major requirements with grades of “C” or better, complete a minimum of 60 degree-applicable semester units (12 of which must be completed at Sierra College) with a grade point average of at least 2.0 and complete one of the following three general education patterns:
- Sierra College Associate Degree Requirements;
- California State University General Education Breadth (CSU GE) pattern;
- Intersegmental General Education Transfer Curriculum (IGETC).
Required Courses
Code | Title | Units |
---|---|---|
CSCI 0010 | Introduction to Computing | 3 |
CSCI 0027 | Visual Basic .NET Programming I | 3 |
CSCI 0050 | Introduction to Unix/Linux | 3 |
CSCI 0052 | Introduction to SQL | 3 |
CSCI 0054 | Visual Basic .NET Programming II | 3 |
CSCI 0062 | Web Programming I | 3 |
CIS 0065 | Computer Network Fundamentals | 3 |
Select 6 units from the following: | 6 | |
Programming Concepts and Methodology I | ||
System Programming with C | ||
Web Programming with PHP | ||
Mobile Device Programming | ||
Total Units | 27 |
Computer Science—Embedded Systems
Certificate of Achievement
Successful completion of the curriculum in Embedded Systems prepares students for entry-level programming positions in companies which manufacture products that have embedded microprocessors. A certificate is designed to provide career technical skills; it is not equivalent to an associate degree.
Required Courses
Code | Title | Units |
---|---|---|
CSCI 0012 | Programming Concepts and Methodology I | 3 |
CSCI 0026 | Discrete Structures for Computer Science | 3 |
CSCI 0039 | Introduction to Computer Architecture and Assembly Language | 3 |
CSCI 0046 | System Programming with C | 3 |
CSCI 0079 | Mobile Device Programming | 3 |
MECH 0010 | Fundamentals of Electronics | 4 |
Total Units | 19 |
Courses
Understanding course descriptions
CSCI 0010. Introduction to Computing
Units: 3
Advisory: Completion of MATH A with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Survey of computer science technologies and methods. Introduction to computer hardware and software, structured programming, operating system concepts, communications and social impacts of computer technology. Explore current and emerging topics such as robotics, computer security and artificial intelligence. (CSU, UC)
CSCI 0012. Programming Concepts and Methodology I
Units: 3
Prerequisite: Completion of CSCI 10 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Introduces the discipline of computer science using a high level language utilizing programming and practical hands-on problem solving. (C-ID COMP 122) (CSU, UC)
CSCI 0013. Programming Concepts and Methodology II
Units: 3
Prerequisite: Completion of CSCI 12 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Application of software engineering techniques to the design and development of large programs; data abstraction and structures and associated algorithms. (C-ID COMP 132) (CSU, UC)
CSCI 0014. Data Structures
Units: 3
Prerequisite: Completion of CSCI 66 with grade of "C" or better; and completion with a grade of "C" or better, or concurrent enrollment in CSCI 26
Advisory: Completion of CSCI 13 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
A comprehensive introduction of data structures for computer science. Topics include: lists, stacks, trees, hash tables, and heaps. Associated algorithms are also covered: searching, sorting, traversal, path finding, spanning tree, and network flow. C++ is used as the implementation language. (CSU, UC)
CSCI 0021. The Game Development Process
Units: 3
Advisory: Completion of MATH D with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Introduction to the history, technology, ethics, and design of computer games. A generally accessible course about the process of creating computer games from concept to implementation, including documentation, storyboards, character design, gameplay, animation and marketing. Students use these concepts to create a complete computer game of their own design. Programming experience not required. (CSU, UC)
CSCI 0024S. Programming for Mathematics and Science
Units: 3
Prerequisite: Completion of MATH 12 or 29 with grade of "C" or better
Advisory: Completion of CSCI 10 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Introduction to computer programming with an emphasis on problem-solving for mathematics and the sciences. Covers the essentials of computer programming, including: problem analysis, functions, variables, flow control, input/output, libraries, and user interfaces using a modern programming language. Not open to students who have successfully completed CSCI 0012. (CSU, UC)
CSCI 0026. Discrete Structures for Computer Science
Units: 3
Prerequisite: Completion of CSCI 12 and MATH 12 with grades of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Introduction to the essential discrete structures used in Computer Science, with emphasis on their applications. Includes elementary formal logic and set theory, elementary combinatorics, recursive programming and algorithm analysis, Boolean algebra, digital logic, combinatorial circuits, graph theory, circuit design and minimization, and computer arithmetic. (C-ID COMP 152) (CSU, UC)
CSCI 0027. Visual Basic .NET Programming I
Units: 3
Prerequisite: Completion of CSCI 10 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Introduction to methods and techniques of Visual Basic .NET programming. Includes coverage of user interface design, variables, decisions, menus, functions, object-oriented programming, looping, arrays, and printing. Designed to bring students up to the necessary skill and knowledge level for an intermediate-level programming course. (CSU)
CSCI 0028. Independent Study
Units: 1-3
Designed for students interested in furthering their knowledge at an independent study level in an area where no specific curriculum offering is currently available. Independent study might include, but is not limited to, research papers, special subject area projects, and research projects. See Independent Study page in catalog. (CSU, UC-with unit limitation)
CSCI 0039. Introduction to Computer Architecture and Assembly Language
Units: 3
Prerequisite: Completion of CSCI 10 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Assembly language programming techniques and introductory computer architecture concepts. Topics include addressing modes; pseudo operations; stack processing; subroutine linkage; arithmetic and logical operations; input and output; digital logic. Programs are designed, coded, tested, and debugged. (C-ID COMP 142) (CSU, UC)
CSCI 0046. System Programming with C
Units: 3
Prerequisite: Completion of CSCI 12 with grade of "C" or better
Advisory: Completion of CSCI 50 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Introduction to the C language and system programming on a Unix-like operating system. Topics include the standard C library, memory allocation, file I/O, permissions, system calls, and process management. Development in a Unix environment will cover editors, shell scripting, makefiles, source code control, and networking. (CSU, UC)
CSCI 0050. Introduction to Unix/Linux
Units: 3
Prerequisite: Completion of CSCI 10 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
An introduction to the Unix and Linux operating systems with an emphasis on system programming. Topics include the filesystem, permissions, regular expressions, processes, networking, basic system administration, and shell scripting. Extensive hands-on experience using the command line interface. (CSU, UC)
CSCI 0052. Introduction to SQL
Units: 3
Prerequisite: Completion of CSCI 10 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Survey of SQL (Structured Query Language). Includes database models, database design, table and view definition, transaction and data manipulation, queries and reports, data integrity, stored procedures, triggers, recovery and security. Hands-on experience using a popular SQL database. (CSU)
CSCI 0054. Visual Basic .NET Programming II
Units: 3
Prerequisite: Completion of CSCI 27 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Intermediate Visual Basic .NET programming. Includes coverage of multitier applications, database applications, databases using related tables, database updates, using Web forms, Web forms database and updates, XML Web services, and writing database reports using Crystal Reports. (CSU, UC)
CSCI 0059P. Web Programming with PHP
Units: 3
Formerly known as CSCI 303
Prerequisite: Completion of CSCI 12 or 27 with grade of "C" or better
Advisory: Completion of CSCI 62 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Create dynamic, session-oriented, data-driven web sites using the PHP scripting language. Covers processing fill-out forms, database backends, session management, authentication and searching. (CSU)
CSCI 0062. Web Programming I
Units: 3
Prerequisite: Completion of CSCI 10 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Introduction to methods and techniques of Web programming. Includes coverage of HyperText Markup Language (HTML), Cascading Style Sheets (CSS), and Extensible HyperText Markup Language (XHTML). Designed to bring students up to the necessary skill and knowledge level for an intermediate Web programming course. (CSU)
CSCI 0066. Object-Oriented Programming Using C++
Units: 3
Prerequisite: Completion of CSCI 12 with grade of "C" or better
Advisory: Completion of CSCI 46 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
An introduction to the concepts of object-oriented programming and the application of the C++ language. Extensive programming practice using C++ as the vehicle toward modular, reusable object-oriented code. (CSU, UC)
CSCI 0076A. Game Programming
Units: 3
Prerequisite: Completion of CSCI 12 with grade of "C" or better
Advisory: Completion with grade of "C" or better or concurrent enrollment in CSCI 13
Hours: 72 (54 lecture, 18 laboratory)
Explore the algorithms, data structure, and techniques used to program computer video games. Emphasis on arcade-style video games (new and classic) written in Java. Topics include 2D animation, sprites, interaction, music, and sound. Underlying issues include graphical user interface programming, multi-threaded applications, realtime programming, use of sophisticated APIs, and societal impacts of computer gaming. (CSU, UC)
CSCI 0079. Mobile Device Programming
Units: 3
Formerly known as CSCI 309
Prerequisite: Completion of CSCI 12 with grade of "C" or better
Hours: 72 (54 lecture, 18 laboratory)
Introduction to creating applications for mobile devices including Apple iPhone, iPad, and Google Android. Topics include touch interfaces, GUI elements, sensor input, simple animation and game play, network communication, and database access. (CSU)
CSCI 0095. Internship in Computer Science
Units: 0.5-4
Designed for advanced students to work in an area related to their educational or occupational goal. Provides new on-the-job technical training under the direction of a worksite supervisor, allowing students to expand knowledge and skills in the chosen field. Mandatory orientation session and faculty approval to determine eligibility. Students may earn up to a total of 16 units in internship courses (any course numbered 95 and PDEV 94). (CSU-with unit limitation)
Program Student Learning Outcomes (PSLOs)
- Engage in continuous learning as well as research and assess new ideas and information to provide the capabilities for lifelong learning.
- Read and interpret technical information, as well as listen effectively to, communicate orally with, and write clearly for a wide range of audiences.
- Analyze a problem and craft an appropriate algorithmic solution.
- Apply knowledge of computing and mathematics appropriate to the discipline.
- Interpret data, think critically and apply the scientific method.