=====COMPESS=====
Upon completion of this course, students will be able to:
* Identify different types of hardware and discuss what role that hardware plays
* List milestones of computer history
* Perform binary and hexadecimal conversions
* Perform addition and subtraction in binary and hexadecimal
* Explain how input, output, and storage devices work, and be able to compare and contrast different types of these devices
* List the parts of the CPU and what factors affect the CPU's performance
* Explain how the internet works, and identify the hardware and software required for connectivity and web publishing
* Identify the difference between application and system software, and explain how they interact
* Identify all the threats to your computer and explain ways to safeguard your computer
* Explain LAN, MAN, WAN in relation to topologies, communications transmissions, protocols, and communication media
* Identify ethical problems in computing
* Understand the basics of program development and describe programming language paradigms
* Understand logical and physical file management and more advanced file maintenance techniques (DBMS)
* Identify and explain the parts of the system development lifecycle
* Explore jobs in IT and understand the responsibilities that are associated with these jobs
=====UNIX=====
Upon completion of this course, students will be able to demonstrate:
* familiarity with the structure of UNIX systems
* the ability to accomplish/automate tasks
* exposure to command-line tools and utilities
* experience the connection between UNIX and C
* understanding of the UNIX philosophy
* exposure to Open Source concepts and ideals
* familiarity with important system concepts
* exposure to computer security
* understanding and use of pattern matching
* problem solving activities
=====DATA=====
Upon completion of this course, students will be able to:
* Discuss the representation and use of primitive data types and built-in data structures
* Describe how the data structures are allocated and used in memory
* Describe common applications for each data structure described in class
* Implement the user-defined data structures in a high-level language
* Compare alternative implementations of data structures with respect to performance
* Write programs that use the following data structures: arrays, linked lists, stacks, queues, and binary trees
* Compare and contrast the costs and benefits of dynamic and static data structure implementations
* Choose the appropriate data structure for solving a given problem
=====ASM=====
Upon completion of this course, students will be able to demonstrate:
* an understanding of the concepts of assembly
* understanding the impact of number systems
* familiarity with how assembly impacts programming
* experience implementing solutions in assembly
* familiarity with the role of the C library
* experience making system calls in assembly
* familiarity with the organization of a computer system
* experience using registers, stacks, and branches
=====HPC0=====
During the process of the course, the student will be able to:
* understand the impact of HPC on the field
* value interdisciplinary interaction in problem solving
* apply effective visualization techniques to view data
* understand key concepts of a distributed system
* recognize and relate how data may be generated
* compare the tradeoffs & advantages in concurrency
* identify processing considerations
* demonstrate problem solving capabilities
=====HPC1=====
Upon completion of this course, students will be able to demonstrate:
* demonstrate concept comprehension
* information sharing through documentation
* understanding the nature of an HPC environment
* apply troubleshooting skills
* gain experience with real world system issues
* demonstrate knowledge of Linux & Open Source
* demonstrate awareness of networking concepts
* perform system and network administration
* demonstrate awareness of security issues
* demonstrate scripting skills to automate tasks
* collaborative work on a project or task
=====HPC2=====
Upon completion of this course, students will be able to demonstrate:
* demonstrate continued concept comprehension
* information sharing through documentation
* understanding the nature of an HPC environment
* apply improved troubleshooting skills
* gain experience with real world system issues
* demonstrate knowledge of Linux & Open Source
* demonstrate awareness of networking concepts
* perform system and network administration
* demonstrate awareness of security issues
* demonstrate scripting skills to automate tasks
* collaborative work on a project or task
=====SYSPROG=====
Upon completion of this course, students will be able to:
* better understand file I/O for efficient data processing
* utilize capabilities built into the operating system
* write programs that interact with and spawn processes
* use pipes and sockets to communicate and share data
* demonstrate knowledge of concurrency
* design programs that handle signals
* explore efficient solutions to data- and processing- intensive problems
=====SYSNET=====
Upon completion of this course, students will be able to demonstrate:
* understanding of concepts to mix them together
* effective use of communication capabilities
* capability of contemplating/measuring performance
* proficiency with tools to accomplish tasks
* ability to suggest troubleshooting strategies
* application of changes as a result of testing
* problem solving activities
* ability to document processes and tasks