teaching

Courses I teach at Loyola University Chicago.

A selection of courses I have taught at Loyola University Chicago. Each card links to the syllabus for every term the course was offered.

COMP 306/406Undergraduate + Graduate

Data Mining

Theory and practice of analyzing very large datasets: structured and unstructured data, ETL with Pandas, cleaning, visualization, frequent- pattern mining, clustering, and supervised learning. The 406 (graduate) section adds research components and formal writing.

Pandas ETLdata cleaningvisualizationfrequent-pattern miningclusteringsupervised learning
HONR 204Honors

Science & Society: Network Science

Honors seminar: measuring network structure, identifying key nodes and communities, and modeling contagion — blending theory with real-world examples across computer science, sociology, political science, and biology.

network structurecentralitycommunity detectioncontagionresilience
COMP 271Undergraduate (+ grad COMP 400B)

Data Structures I

Data abstraction and structures — stacks, queues, lists, sets, and trees — with abstract data types, recursion, sorting and searching, and the analysis of correctness and efficiency. Programming-intensive (Python).

stacksqueueslistssetstreesADTsrecursionsorting & searching
COMP 388/488Undergraduate + Graduate

Topics in CS: Network Science

Network science as a unifying framework for interconnected systems: network types and representations, centralities, community detection, generative models, and epidemic spread (488 only). Includes a semester-long project.

representationscentralitycommunity detectiongenerative modelsepidemics
COMP 141Undergraduate

Introduction to Computing Tools & Techniques

The Unix shell environment, the command line, and shell scripting for computer-aided problem solving. Fully online; no prerequisites.

Unix shellcommand lineshell scripting