Home Teaching Publications Resources Contact

Courses Taught at Plymouth State University

My teaching interests include - Programming Languages; Web Application Development; Database Management Systems; Data Analytics; Robotics; Computer Networks; Cyber & Network Security;

CS 2010 - Computing Fundamentals
To explore some topical applications and technologies such as robotics, artificial intelligence and networking, first examines some of the fundamental aspects of computing including: how a computing machine stores, manipulates and transforms numbers, words, images and sounds, changing them from mere data into useful information; strategies for solving computational problems (algorithmic thinking); expressing computational solutions in various computer languages from assembly through icon-driven graphical languages (4GLs); historical, social and theoretical issues. Includes a weekly hands-on lab through which students experience a variety of computing environments.
CS 2220 - Computer Hardware
Focuses on the organization and structure of the major hardware components of computing systems. Expands upon the digital logic and notions of internal data representation begun in CS 2010, and then develops more depth in topics such as CPU structures and control, memory systems, I/O systems and the mechanics of information transfer. The nature of computing and the role of operating systems are examined from the hardware context.
CS 2370 - Introduction to Programming
A first course in computer programming, covering variables, functions, conditionals, recursion, loops, and arrays. Emphasis is placed on documentation and algorithm planning. Object-oriented programming is introduced, including methods, classes, inheritance, and polymorphism
CS 2521 - Intro Electromechanical Technology
Introduction to basic concepts of electrical circuits, electronics, and mechanical technology, as well as a broad vision and a basic structure of robots as systems with sensing, decision-making, and actuation. In addition, their various application in the societal and working environment will be discussed. The laboratories are to identify the basic components, processors, sensors, and actuators, and connect them together into a simple but functioning system with various communication ports, including USB, Bluetooth, and HTTP.
CS 2525 - Microcontroller and Distributed Systems
This course gives students an application-focused experience with microcontrollers, focusing on communication and control. Concepts in analog data I/O and advanced programming methods are introduced. Laboratory exercises help students learn the practical aspects of installing, programming, troubleshooting, and networking microcontrollers in typical use.
CS 3020 - Web Programming
Focuses on issues concerning the design, implementation and impact of user-friendly, interactive web pages and easy-to-navigate secure web sites. Covers a variety of web page and web site development technologies.
CS 3600 - Database Management Systems
Covers the principles and practice of relational database design and analysis, including topics of entity-relationship modeling, functional dependencies, normalization, relational algebra and relational calculus, as well as their SQL correspondents. Other related issues are discussed such as other data base models, object-oriented database scheme, concurrent data access, recovery and security
CS 3650 - Big Data Analytics
Provides students with an understanding of Big Data analytics cluster computer framework. Students gain knowledge on managing Big Data from various data sources including public and private data sets including business. Students gain a hands-on experience on various cloud-based Big Data framework and NoSQL databases including Hadoop and Spark for real-time stream processing tools for IoT (Internet of Things) devices.
CS 4140 Software Engineering
Presents fundamental principles of software engineering. Emphasizes software design, implementation and maintenance. Techniques used in the major phases of the software life cycle such as rapid prototyping, object-oriented design and module testing, are discussed. Software teams complete a term project that includes system documentation, design and implementation.
CS 4420 - Computer Security
Provides an introduction to the theory and practice of computer security and information warfare. In particular, examines issues in physical security, network security, database security, intrusion detection, detection of Trojan horses, viruses, worms and coordinated network attacks, access control, cryptography, legal and ethical issues including privacy and copyright, as well as various computer security policy issues
CSDI 1200 - Web Expressions
The World Wide Web has allowed everyday people to have a global voice. Students learn to harness the power of the web to express themselves to the world. Covers the creation of images, sounds, animation, text, hypertext, video and weblogs, as well as how to be a savvy web use