teaching-mindinmindISTA 416/516: Introduction to Human Computer Interaction

An introduction to Human Computer Interaction (HCI), including gestalt theory, human perceptual and cognitive factors, rapid prototyping, iterative design, and user evaluation.  A project-based course that mixes lectures, research paper seminars, and project workshops.


teaching-nltkLING 388: Language and Computers

A hands-on introduction to computational linguistics and Natural Language Processing using the Natural Language Processing Toolkit (NLTK) for Python, with an emphasis on applications. Includes foundations of programming, analyzing large corpora, part-of-speech tagging, parsing, semantics, classification, and information extraction.


teaching-manningLING/CS 439/539: Statistical Natural Language Processing

An advanced introduction to Statistical Natural Language Processing (NLP), including information theory, part-of-speech tagging, parsing, machine translation, machine learning, and information retrieval. Emphasizes implementing foundational algorithms and representations for common NLP tasks from the ground up.


teaching-ista303ISTA 303: Creative Coding

An introduction to rapid prototyping, including laser cutting, 3D printing, and Arduino-based electronics. Through project-based learning, students learn 2.5D and 3D design fundamentals as well as microcontrollers and basic circuits, and demonstrate these skills through projects in sensing, visualization, and robotics. A final project design competition determines who can build thefastest skittle sorting machine.