Course list

Computer science

Computer Science I

This course served as an introduction to computational thinking using a problem-centered approach. Specific topics covered include: expression of algorithms in pseudo code and a programming language; functional and imperative programming techniques; control structures; problem solving using recursion; basic searching and sorting; elementary data structures such as lists, trees, and graphs; and correctness, testing and debugging. Assignments required a pseudo code solution and an implementation in Python (still basically psuedocode). An end-of-term project was also required.

Computer Science II

In CSCI-142, I delved further into problem solving by continuing the discussion of data structure use and design, but now from an object-oriented perspective. Key topics included: more information on tree and graph structures, nested data structures, objects, classes, inheritance, interfaces, object-oriented collection class libraries for abstract data types (e.g. stacks, queues, maps, and trees), and static vs dynamic data types. Concepts of object-oriented design are a large part of the course. Software qualities related to object orientation, namely cohesion, minimal coupling, modifiability, and extensibility, are all introduced in this course, as well as a few elementary object-oriented design patterns. Input and output streams, graphical user interfaces, and exception handling were covered.

The Mechanics of Programming

At this point in my career I was introduced to the details of program structure and the mechanics of execution as well as supportive operating system features. Security and performance issues in program design were a large part of this course. The program translation process was examined.

Concepts of Computer Systems

In short, this course is an introduction to the hardware and software organization of computer systems. The course emphasized a multilevel model of computer organization. Topics include the digital logic level; the micro architecture level; the machine instruction set level; the operating system level; and the assembly language level.

Introduction to Cryptography

This course provided an introduction to cryptography (duh), its mathematical foundations, and its relation to security. It covered basic number theory, classical cryptosystems, private-key cryptosystems (including DES and AES), hashing and public-key cryptosystems (including RSA). The course also provided an introduction to data integrity and authentication.

Hacking for Defense Program

Prototyped and made a business plan for a remote device identification method using the frequency offset of a any transmitter. I really liked this course.

Math

Project-Based Calculus I

This was the first in a two-course sequence intended for students majoring in mathematics, science, or engineering. It emphasized the understanding of concepts, and using them to solve physical problems. The course covered two-dimensional analytic geometry, functions, limits, continuity, the derivative, rule of differentiation, applications of the derivative, Riemann sums, definite integrals, and indefinite integrals.

Project-Based Calculus II

This was the second in a two-course sequence intended for students majoring in mathematics, science or engineering. Again, it emphasized the understanding of concepts, and using them to solve real-world problems. The course covered techniques of integration including integration by parts, partial fractions, improper integrals, applications of integration, representing functions by infinite series, convergence and divergence of series, parametric curves, and polar coordinates.

Discrete Math for Computing

This course introduced ideas and techniques from discrete mathematics that are widely used in Computer Science. I learned about the fundamentals of propositional and predicate calculus, set theory, relations, recursive structures and counting. This course helped me develop mathematical sophistication and the ability to handle abstract problems.

Probability and Statistics I

This course introduced sample spaces and events, axioms of probability, counting techniques, conditional probability and independence, distributions of discrete and continuous random variables, joint distributions (discrete and continuous), the central limit theorem, descriptive statistics, interval estimation, and applications of probability and statistic to real-world problems.

Probability and Statistics II

This course covered basic statistical concepts, sampling theory, hypothesis testing, confidence intervals, point estimation, and simple linear regression.

 

Computer security

Fundamentals of Comp Security

An introduction to the fundamental issues, concepts and tools common to all areas of computing security. Topics include identifying attackers and their motivations. Essential techniques will be introduced covering the areas of anti-virus, monitoring, virtual machines, account control, and access rights management. Various security models will be investigated. Concept areas such as confidentiality, integrity, availability and privacy will be studied.

Introduction to Malware

Computer malware is a computer program with malicious intent. In this course, students will study the history of computer malware, categorizations of malware such as computer viruses, worms, Trojan horses, spyware, etc. Other topics include, but are not limited to, basic structures and functions of malware, malware delivery mechanism, propagation models, anti-malware software, its methods and applications, reverse engineering techniques.

Malware Reverse Engineering

This course provides an overview of basic concepts, techniques, and tools of malware reverse engineering. Students will learn how to perform reverse engineering to discover hidden software functions and hidden network communication techniques and protocols. Students will also learn techniques to protect against software reverse engineering.

Web Server Application Security Auditing

This course discussed the processes and procedures to perform a technical security audit of web servers and web based applications. I not only explored Web Servers and Applications/Services threats, but also applied the latest auditing techniques to identify vulnerabilities existing in or stemming from web servers and applications. I wrote and presented my findings and recommendations in audit reports on web servers and application vulnerabilities.

Covert Communications

Covert communications have been employed in the past in traditional information warfare. Today with huge amounts of digital information exchanged in our cyber space and covert communication will become a potential tool for information warfare inside the space. Students will be introduced to the history, theory, methodology and implementation of various kinds of covert communications. Students will explore future techniques and uses of covert communications. More specifically students will explore possible uses of covert communications in the management of botnets. Students will conduct research in this topic area and will write a research paper on their research. Students will be required to submit their paper for publication in a peer-reviewed venue.

Authentication and Security Models

As more users access remote systems, the job of identifying and authenticating those users at distance becomes increasingly difficult. The growing impact of attackers on identification and authentication systems puts additional strain on our ability to ensure that only authorized users obtain access to controlled or critical resources. This course reviews basic cryptology techniques and introduces their application to contemporary authentication methods.

Penetration Testing

The process and methodologies employed in negotiating a contract, performing a penetration test, and presenting the results will be examined and exercised. Students will be exposed to tools and techniques employed in penetration testing. Assignments will explore the difficulties and challenges in planning for and conducting an assessment exposing potential vulnerabilities. Students will develop a metric used to evaluate the security posture of a given network and will develop a coherent and comprehensive report of their findings to present to their client. Particular attention will be paid to the ramifications of the findings toward the security of the targets.

Computer System Forensics

An investigation of the tasks of incident response and computer system forensics will be pursued. Students will learn the basic procedure for incident response as well as the tools needed to uncover the activities of computer users (deleted and hidden files, cryptographic steganography, illegal software, etc). Students will also learn to employ the activities needed to gather and preserve this evidence to ensure admissibility in court.

 

Cyber Security Policy and Law

We focused primarily on U.S. policy but also discussed relevant policies in the E.U. and China, as well as international tensions and norms. The central themes of the course was the ways in which technical challenges in security can be influenced by the social, political, economic, and legal landscapes, and what it means to protect against cybersecurity threats not just by writing better code but also by writing better policies and laws.

Information Systems

Systems Administration I

This course was designed to give an understanding of the role of the system administrator in large organizations. This was be accomplished through a discussion of many of the tasks and tools of system administration. The technologies discussed in this class included: operating systems, system security, and service deployment strategies.

Intro to Database & Data Model

This class was a presentation of the fundamental concepts and theories used in organizing and structuring data. Coverage included the data modeling process, basic relational model, normalization theory, relational algebra, and mapping a data model into a database schema. Structured Query Language was used to illustrate the translation of a data model to physical data organization.

Network Services

An investigation of the tasks of selecting, configuring and administering services in an inter-networking environment. Topics included the TCP/IP protocol suite, service administration including DHCP, DNS, SSH, Kerberos, and an introduction to directory services. I gained experience in administering, monitoring and securing an inter-network of computers with a variety of these services as well as an understanding of the similarities and differences between protocols in the TCP/IP suite (TCP and UDP).

Intro to Routing and Switching

This course was an introduction to wired network infrastructures, topologies, technologies and protocols required for effective end-to-end communication. Basic security concepts were also introduced at the local area network communication level. Networking layers 1, 2 and 3 were examined in-depth using the International Standards Organizations Open Systems Interconnection and TCP/IP models. Topics focused on the TCP/IP protocol suite, the Ethernet LAN protocol, and routed and routing protocols common in local area networks. Labs covered the various aspects of communication, management and security on equipment found in industry.

 
 

Psychology

Introduction to Psychology

Introduction to the field of psychology. Provides a survey of basic concepts, theories, and research methods. Topics include: thinking critically with psychological science; neuroscience and behavior; sensation and perception; learning; memory; thinking, language, and intelligence; motivation and emotion; personality; psychological disorders and therapy; and social psychology.

Abnormal Psychology

This course will serve as an introduction to the study of psychopathology and mental illness. The course examines the major categories of mental disorder not only from the descriptive point of view, but also in terms of the major theoretical explanations of the causes of disorder. The major treatment modalities also are covered.

Cognitive Psychology

This course examines how people perceive, learn, represent, remember and use information. Contemporary theory and research are surveyed in such areas as attention, pattern and object recognition, memory, knowledge representation, language acquisition and use, reasoning, decision making, problem solving, creativity, and intelligence. Applications in artificial intelligence and human/technology interaction may also be considered.

Social Psychology

This course explores topics related to behaviors and mental processes of individuals in social situations. Topics include: methodology, social perception, social cognition, the self, attitudes, prejudice, attraction, social influence, pro-social behavior, aggression, and behavior in groups. Course activities include lecture, class demonstrations, and assignments.

Death and Dying

This course examines the role of loss including death in our lives and the way we give and receive support during difficult times. It also looks at how society enfranchises some grievers and disenfranchises others. Included in this course is an examination of our options as consumers of funeral and burial services, grief counseling and other products and services which can either minimize or abate our grief. Central to the course is an examination of the ethical principles which apply to abortion, euthanasia and suicide and an examination of the ways in which the choices we make may be structured to express our core values. Finally, the course explores how The American way of Death differs from that of other societies and how we might incorporate the wisdom of other cultures into our own practices.

Psychology of Religion

This course examines (primarily social) psychological approaches to religious and spiritual belief, behavior, and experience. Topics include psychological approaches to religion, religious development in children and adolescents, religious development in adults and old age, religious conversion, religious orientation, religious attitudes and behaviors, religion and well-being, group dynamics in religious communities, religion as a total institution‚ cults and deprogramming, need theories and religion, and religion and politics.

Physics

University Physics I

This is a course in calculus-based physics for science and engineering majors. Topics included kinematics, planar motion, Newton’s Laws, gravitation, work and energy, momentum and impulse, conservation laws, systems of particles, rotational motion, static equilibrium, mechanical oscillations and waves, and data presentation/analysis.

University Physics II

This course was a continuation of PHYS-211, University Physics 1. Topics included electrostatics, Gauss’ law, electric field and potential, capacitance, resistance, DC circuits, magnetic field, Ampere’s law, inductance, and geometrical and physical optics.

 

Computer Engineering

Intro to Computer Engineering

This course overviews the field of computer engineering and provides an appreciation of the computer engineering curriculum. Fundamental concepts of computers, computing and engineering design are introduced. Topics include basic circuits, number systems, digital logic, computer organization, programming in the Matlab environment, teamwork, communication skills, ethics and professionalism, historical background and global, societal and environmental issues related to computers. Lab exercises familiarize students with lab equipment, experiments and data analysis.

Digital System Design I

The course covers the specification, analysis, and design of basic digital systems, including the design of combinational and sequential circuits using basic logic components: AND, OR, INV, NAND, NOR, and XOR. Standard modules, such as decoders, multiplexers, shifter registers, adders, and counters, will be analyzed. Lectures will discuss fundamental design methodologies using Karnaugh Maps as well as Mealy and Moore state machines. The laboratory provides hands-on experiences of the design, implementation, and testing of digital systems using SSI, MSI, and FPGA components as well as CAD tools.

 

Philosophy

Intro to Philosophy

Philosophy is about the rigorous discussion of big questions, and sometimes small precise questions, that do not have obvious answers. This class is an introduction to philosophical thinking where we learn how to think and talk critically about some of these challenging questions. Such as: Is there a single truth or is truth relative to different people and perspectives? Do we have free will and, if so, how? Do we ever really know anything? What gives life meaning? Is morality objective or subjective, discovered or created? We’ll use historical and contemporary sources to clarify questions like these, to understand the stakes, to discuss possible responses, and to arrive at a more coherent, more philosophically informed, set of answers.

Intro to Moral Issues

This course examines ethical questions that arise in the course of day-to-day individual and social life. Some consideration will be given to ethical theory and its application to such questions, but emphasis will be on basic moral questions and practical issues. Examples of typical issues to be examined are: What are the grounds for moral obligations like keeping promises or obeying the law? How do we reason about what to do? Examples of typical moral issues that may be introduced are capital punishment, euthanasia, abortion, corporate responsibility, the treatment of animals, and so forth.

 

General Education

Principles of Microeconomics

Microeconomics studies the workings of individual markets. That is, it examines the interaction of the demanders of goods and services with the suppliers of those goods and services. It explores how the behavior of consumers (demanders), the behavior of producers (suppliers), and the level of market competition influence market outcomes.

Literature, Culture, and Media

Students will study literary and cultural texts selected from traditional literature to contemporary media and culture (including mythology, poetry, plays, novels, film, graphic novels, television, and digital literature). Students will analyze these texts from a variety of perspectives and become familiar with the history of debates about literature and/or culture as arenas of human experience. Individual sections will vary in their foci.

Intro to Environmental Studies

This course explores the human condition within an environmental context by emphasizing critical environmental problems facing humans on both a global and regional scale. The approach will be interdisciplinary. The issues, their causes, and their potential solutions will be analyzed with respect to ethical, social, historical, political, scientific, and technological factors.

Intro to Software Engineering

An introductory course in software engineering, emphasizing the organizational aspects of software development and software design and implementation by individuals and small teams within a process/product framework. Topics include the software lifecycle, software design, user interface issues, specification and implementation of components, assessing design quality, design reviews and code inspections, software testing, basic support tools, technical communications and system documentation, team-based development. A term-long, team-based project done in a studio format is used to reinforce concepts presented in class.

Writing Seminar

Writing Seminar is a three-credit course limited to 19 students per section. The course is designed to develop first-year students’ proficiency in analytical and rhetorical reading and writing, and critical thinking. Students will read, understand, and interpret a variety of non-fiction texts representing different cultural perspectives and/or academic disciplines. These texts are designed to challenge students intellectually and to stimulate their writing for a variety of contexts and purposes. Through inquiry-based assignment sequences, students will develop academic research and literacy practices that will be further strengthened throughout their academic careers. Particular attention will be given to the writing process, including an emphasis on teacher-student conferencing, critical self-assessment, class discussion, peer review, formal and informal writing, research, and revision. Small class size promotes frequent student-instructor and student-student interaction. The course also emphasizes the principles of intellectual property and academic integrity for both current academic and future professional writing.

Archery

This course is designed to present the lifetime recreational activity of archery in a broad perspective for future use as a recreational and /or competitive pursuit. A major objective of the course is to develop strength in the upper back, neck and shoulder girdle. Students will be presented with the proper shooting techniques and forms. Instruction in the proper selection, use and care of archery tackle (equipment) will be provided. Students will be introduced to the rules, safety, etiquette of archery and archery competition. Once the fundamental skills have been well mastered, students will participate in a variety of class competitions (field, American, hunter, golf, clout, and flight.)