CS

Linux System Administration

The administration of a Linux server. Prepares students for industry certification and entry-level employment in system administration. Topics include process control, system monitoring, filesystem preparation and maintenance, logical volumes, basic servers and the firewall, virtual machines, startup and shutdown, user accounts, periodic tasks, security issues, and installations.

Data Visualization

Access and analyze data and produce information visualizations to discover patterns. Fundamental skills and concepts for data science applicable to scientists, journalists, business people, and database programmers. Requires programming in a language of the student's choice.

Advanced Python Programming

Second course in the Python programming language. Covers resources, practices, and modules used by successful Python programmers; functional and imperative programming in Python; debugging and testing; data serialization and use of persistent stores and web services. Students write useful programs demonstrating mastery of these techniques, which are applicable to real world problems.

iPhone Programming

An advanced course in the design and development of iOS applications using Xcode and Swift. Overview of object-oriented programming in Swift. Development of user interfaces with Storyboard. Development of iOS applications using the model-view-controller paradigm, persistent storage, and networked data.

Advanced Java: Standard Edition

Introduces advanced Java language features and packages that are essential for building Java Standard Edition applications. Topics include object-oriented design, updated Java features, file input and output, exception handling, collections, generics, graphical user interfaces (GUIs), functional programming, reflection, and multithreading. Helps prepare students for industry certification in Java programming.

Advanced Java: Enterprise

Advanced Java Enterprise Edition covers features of the Java language essential for building network- and web-oriented applications. Topics include networking, Java Database Connectivity (JDBC), Servlets, JavaBeans, JavaServer Pages (JSP), Remote Method Invocation (RMI), JavaScript Object Notation (JSON), and Extensible Markup Language (XML).