41 courses with the subject CS, 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.
CS 101Problem-Solving with Algorithms and Programming I (with CS 101L Lab)1098
This course is an introduction to the understanding of computer systems, the use of structured programming concepts, algorithm development, debugging and data analysis. It is taught with a high-level programming language. Currently the language is Java.
This course examines the principles of Web page development from a technical standpoint. It is not a course in design, although it does touch on that area. After considering the relationship between design and function, students begin to write and demonstrate Web pages. Web pages will be implemented using both HTML, CSS and related frameworks.
CS 202Problem-Solving with Algorithms and Programming II (with CS 202L Lab)1098
A continuation of CS 101 . Topics considered in this course include recursion, dynamic memory allocation (linked lists) and an introduction to professional programming techniques.
This course builds on student’s knowledge of web design and programming. Combining these skill sets allows students to create dynamic, web based applications with significant user interaction. The course focuses on providing students with the modern tools, such as Javascript and related frameworks, to build effective, client side, web applications by applying the concepts of responsive design, GUI interactions, and text based data storage.
This course introduces to students the wide career choices in the field of computer science and equips them with industry knowledge and skills needed to obtain internships and jobs.
CS 222Introduction to Data Science with Python (with CS 222L Lab)1098
This course provides an introduction of data science and analytics techniques using Python. Students will learn the essential concepts of python programming. They will use python tools to perform data exploration, cleaning, manipulation and visualization. They will also learn basic statistics and machine learning techniques to conduct data analysis. Students from non-computer Science majors are welcome.
This course is intended for second-semester sophomores, it focuses on helping students gain facility with the following major types of computer science writing: instructions/manuals/code documentations, literature reviews, critiques, data presentations, research proposals and system-improving proposals. Exposure to these various types of writing will serve students well in future courses and their career.
This course is an introductory study of current computing networking technologies, systems, equipment, and management/configuration software. It includes hands-on lab sessions and course projects.
This course is an introduction to contemporary computer languages such as 228A: Python; 228C C#; 228H C++; 228G SAS, 228R Rust; 228J Go. Content and credit hours vary depending on the interests of students and instructor. It may be repeated for credit with permission of the adviser.
Subject
CS
Credits (min)
1098
Credits (max)
1098
Type
course
Repeatable
may be repeated for credit with permission of the adviser.
This course provides an introduction to data science and analytics techniques using R. Students will learn the essential concepts of R programming. They will use tools and various packages in R to perform data cleaning, processing and visualization. They will also learn basic statistics and machine learning techniques to conduct data analysis. Students from non-computer science majors are welcome.
This course is an intensive study of fundamental concepts, design strategies, tools and APIs (Application Programming Interface) to create mobile phone applications on the open Android platform. Topics include the mobile software development process, design of mobile user interfaces, data storage, networking, location and mapping, multimedia and graphics. The intended student audience is sophomore computer science students.
CS 202 with a grade of at least C- or instructor’s approval.
CS 242Introduction to Network Security1098
This course will present the theory, methodology and hands-on labs necessary for students to acquire fundamental knowledge of Network Security. Topics covered will include Attacks and Malicious Software, Email Security, Remote Access, Web Security, Wireless Security, Cryptography, Infrastructure Security, Intrusion Detection Systems, and Security Baselines. This is a technical course that is designed to provide students with practical knowledge in the field of Network Security. No knowledge of networking or security is required.
CS 262Introduction to Practical Security Assessment1098
This course focuses on learning about an area of cybersecurity called practical security assessment (in the industry terms, “penetration testing”). It is an art of offensive security where your primary goal is to evaluate the defense mechanisms of the network, identifying vulnerable points, exploiting them, exfiltrating information, setting up persistence, and most importantly, writing a report about it that will help the company to better prepare for a real-world cyberattack. Moreover, a typical security assessment includes not only network assessment but also social engineering and physical security. In this course, the students will focus on learning about the major steps in this field: intelligence gathering, initial foothold, network enumeration, privilege escalation, persistence, lateral movement, password (hash) cracking, data exfiltration, and reporting. The students will learn social engineering aspects as well as how to evaluate networks from a perspective of offensive security. No knowledge of security is required.
This course provides an introduction to the key concepts, tasks, and techniques of data mining. It focuses on providing students with the knowledge needed to manipulate and extract new information from large amounts of data. Topics will include data preprocessing and feature selection, decision trees, cluster analysis, classification, machine learning, evaluation and validation, as well as scalability. The course will illustrate these issues and techniques through the use of practical applications and examples taken from various domains, including biology, computer science, sociology, and economics.
This course is an intensive study of client/server technology and the methods, languages and tools, such as PHP and related frameworks, for developing client-side and server-side applications on the Internet. It includes Web-based programming projects.
CS 202 , CS 206 , or permission of the instructor.
CS 308Introduction to Computer Gaming1098
This introduction to computer game development is designed for students with a background in programming. The focus of the course is on game play, design process, and programming for a two-dimensional environment.
In this introduction to the theoretical basis of computing, topics include a review of graph theory; network models; grammar, languages and automata; Turing machines; computability. Offered on request.
(also listed as MA317) This course introduces basic methods for the design and analysis of algorithms, with an emphasis on methods useful in practice. Students will learn different algorithms for various computational problems and evaluate their performance. Techniques to analyze efficiency of algorithms, as well as key algorithm design techniques, such as divide and conquer, dynamic programming and greedy algorithms, will be covered.
Also listed as BI 338 The focus of this course is on genomics including concepts in gene structure and function. Students will gain knowledge in the utilization of genome databases/browsers and bioinformatics tools employed for gene model prediction (annotation), and use those tools to annotate sequences from various eukaryotic genomes. Students will be given instruction on algorithm design based on pattern-matching and will gain hands-on experience in the use of algorithms to help predict gene models and to test those models for accuracy within the context of the programming language Perl. Collaboration between students trained in different disciplines (math, computer science, biology) will be encouraged in order to address issues in genomics and to reflect the interdisciplinary nature of the field.
This course examines the ethical consequences of the expansion of computer usage in our society and aims to give Computer Science majors a solid grounding in ethics in general and the ethical dilemmas that are unique to computer applications. As computer applications expand into nearly every aspect of our daily lives, it has become vital that computer professionals are well-acquainted with the ethical problems unique to computers.
This course is a study of the major concept areas of computer operating systems principles; the architecture of computer systems at the register; transfer and programming levels of system description; and the inter-relationships between the operating system and the architecture of computer systems.
This advanced course in computer system organization includes logic design, data representation and transfer, digital arithmetic, digital storage and accessing, control and input/output reliability. Cloud computing (Amazon Web Services) will be studied as well.
This introduction to the theory and methodology of computer graphics develops underlying principles for the representation of objects and surfaces with computers, including translation, rotation, scaling motion, parallel and perspective projection, and hidden lines and surfaces. Class usage of the computer is an integral part of the course. Not regularly offered.
This study of the aspects of developing and designing data communication networks includes identifying and defining the design of the proposed system, analyzing the type of message, determining the total traffic, developing alternative configurations, calculating the network cost, implementation, and follow-up evaluation.
CS 202 , MA 230 , CS 227 or permission of the instructor.
CS 373Data Communications II1098
This is the second course in data communications. It concentrates on both theoretical and practical aspects of the TCP/IP and ATM network protocols. Students design, build and troubleshoot networks.
This course introduces advanced concepts and tasks, as well as state-of-the art research and techniques, for data mining/knowledge discovery from big data. It focuses on helping students gain the necessary skills to both (1) perform data mining upon non-traditional sources of data (such as graphs/networks, images, videos, time series, etc), and (2) apply advanced data mining techniques for knowledge discovery. The methods learned in this course will serve students well in any future class, project, or job where they may have large datasets to analyze or manipulate.
This introduction to basic concepts and techniques of intelligent systems includes insights into active research areas and applications, strategies for choosing representations, notational systems and structures, natural languages, vision systems, search strategies and control. Not regularly offered.
In this seminar in advanced topics of computer science, content and credit hours vary depending on interests of instructor and students. May be repeated for credit.
Continuation of CS 490 . Focuses on application of state-of-the-art techniques in software design and development. Includes implementation of senior project designed in CS 490 .
This is the first course of a two-semester Computing Technology Capstone. The fall semester is designed to prepare the student for the design, implementation, management, and upgrade of medium- to large – scale computer technology solutions. Through in depth labs in the areas of wired and wireless networking, core services like DNS/DHCP, computer operating systems Windows, Mac, and Linux, and iOS and Android devices, students will review and refine technical skills, We will also cover critical nontechnical skills such as project management, presentation and technical solution documentation. Finally, in the fall semester, students will write a 4 to 6 page paper researching the design, and implementation of a large scale technical solution, i.e. how did Facebook build their server infrastructure, or how a school district in their area upgraded their computer labs and network.
This is the second course of two-semester Computing Technology capstone courses. In this course, students will engage with a real world client to solve a computing technology problem involving wired and/or wireless networks.