23 courses with the subject CSCI, each shown exactly as we captured it from the college's catalog, with every element we hold. Where the wording looks broken, that is our reading of the catalog, not the college's text.
CSCI 109Principles of Computer Science (3.0 CH) An introductory survey course in which computers and their
consequences are viewed in terms of their historical and societal impact. The course emphasizes principles as opposed to technical training. A range of topics in computer science will be covered including history, application software, programming, artificial intelligence, and the impact of computers on society. This course is appropriate for anyone interested in gaining insight into the discipline of computer science. (P: MATH 107 or satisfactory placement score).
CSCI 139Web Design & Development (3.0 CH) This course provides a laboratory-based introduction to web
page design and development. Topics covered include HTML language fundamentals, HTML editors, CGI (Common Gateway Interface) processing, JavaScript programming, and Dynamic HTML. This course is appropriate for all students who wish to develop web pages. Students will be required to complete a major web-based project for the course. (P: MATH 107 or satisfactory placement scores). 243
CSCI 149Programming in Python (4.0 CH) This is an introductory course in the Python language, a high level
computer programming language that has been used at groups like YouTube, Industrial Light and Magic, NASA, and many others, and is one of the three "official" languages at Google. Python is used for scientific applications, game development, desktop applications, graphics, web applications, and other purposes. Its English-like syntax and use of indentation results in very readable code, and it has a large number of standard and third-party libraries that make creating programs for a wide variety of tasks intuitive and often simple. This course will introduce and explore a number of key features of Python, including its syntax, useful modules in the standard library, desktop GUI programming, basic database access, and how to make good use of Python learning resources, including the excellent online Python community. The course assumes no prior programming experience, though it is helpful. (P: MATH 107 or equivalent).
CSCI 179Programming in Visual Basic (4.0 CH) This course introduces the Visual Basic language and its
applications in the solution of a variety of information processing tasks. Emphasis is on object-oriented and event- driven programming concepts. In addition to mastering the language, the student will learn techniques for designing, writing and debugging computer programs. (P: MATH 107 or satisfactory placement scores).
CSCI 269Theory of Programming Languages (4.0 CH) A thorough study of the design and implementation of
high-level programming languages. In order to write efficient, well-engineered programs, it is necessary to understand how programming languages work. The course will focus on syntactic and semantic specification of language constructs and the implementation of data types, control structures, and sub-programs. Examples will be drawn from several languages to illustrate different approaches to solving common programming language problems. (P: CSCI 169 and CSCI 109).
CSCI 319Database Management (4.0 CH) An introduction to issues in the design and implementation of
database management systems. Major topics include database system components, conceptual modeling, database applications, normal forms, and the societal impact of database systems. Emphasis is given to the relational data model. Students are required to use a high-level language to write programs to access databases. (P: CSCI 169, CSCI 179 or CSCI 189 and one of CSCI 113 or CSCI 129).
CSCI 331Web Programming (4.0 CH) This course introduces students to server-side web programming
techniques. Topics covered will include accessing back-end databases to make web pages dynamic, creating and processing web forms, methods of web form validation, creating and using web services, maintaining session state, methods of web application security and data transfer over web via XML. (P: CSCI 139, CSCI 319).
CSCI 347Theory of Computation (3.0 CH) A study of the theory of computation; including algorithms, Turing
machines, foundational languages, computable functions, Church's thesis, and some unsolvable problems. (P: MATH 221 and one of CSCI 109 or CSCI 129 and one of CSCI 159, CSCI 179, or CSCI 189).
CSCI 351Info Systems Security & Forensics (3.0 CH) Computer systems are susceptible to unauthorized use
misuse, modification or denial of use of knowledge, data or capabilities. Responsible deployment and management of systems require that system administrators protect data from malicious attacks as well as inadvertent loss or natural disasters. This course will examine current security threats and best practices in managing security on standalone and networked computer systems. (P: One of CSCI 109 or CIS 129 and one of CSCI 159, CSCI 179, or CSCI 189).
CSCI 369Design & Analysis of Algorithms (3.0 CH) A review and continuation of complexity analysis and an
introduction to different strategies used to construct algorithms in the solution of computer solvable problems. Types of algorithms considered include greedy, divide-and-conquer, and backtracking as well as those appropriate for heuristic searching. (P: MATH 221, CSCI 169, and CSCI 109).
CSCI 419Computer Organization w/Assembler (4.0 CH) An examination of the interrelated physical
components of a computer with an introduction to assembly language. Proper understanding of how computers internally process data aids program developers in designing efficient solutions to problems. The student will gain an understanding of digital logic, digital systems, machine organization, interfacing, and communication by developing assembly language programs which will manipulate these aspects of the computer. (P: MATH 221 and one of CSCI 169, CSCI 179 or CSCI 189 and CSCI 109 or CIS 129).
TOTAL: 42 CH Students majoring in Data Analytics are also required to complete a minor in a data-intensive field, such as business, biology, or sociology. The choice of minor must be approved by the student’s academic advisor.
CSCI 427Operating Systems (3.0 CH) The design and implementation of operating systems are studied. Special
emphasis is placed on the basic principles involved in memory, processor, input-output, and file system management. (P: One of CSCI 169, CSCI 179, or CSCI 189 and one of CSCI 109 or CSCI 129).
CSCI 498Cooperative Education (1.0 CH) Variable CH available. Placement of the student in an environment
that provides experience in some aspect of management information science. This could be in the form of an assignment taken as part of the regular semester course load spanning more than one semester or one that requires a full-time commitment for a single semester. Such experiences are arranged through the Cooperative Education Office and supervised by a member of the computer science faculty.
CSCI 499Independent Study (1.0 CH) Variable CH available. Independent project or reading program in
computer science or management information systems conducted under the supervision of a faculty member of the Department of Mathematics and Computer Science. The student must meet the college's requirement for independent study and must have the permission of the faculty supervisor and the department chairperson.