Richard H. Fowler
Classes
Fall 2009 Classes
CSCI 6174: Open Problems in Computer Science
Each Fall semester, all computer science faculty participate in a seminar presenting overviews of their current research areas. The seminar is deisgned to acquaint faculty and students in anticipation of the required Master's Thesis or Project. Students entering the graduate program are required to enroll in this class during their first semester. More detailed information is available at the class web site.
CSCI 6361: Computer Visualization
Visualization is not new. Computer visualization is. The focus of this course is scientific visualization and information visualization, and deals with the use of computer-based graphics techniques for the presentation of data gathered in both physical and semantic domains. In this regard the course has use for students from other disciplines, including biology, physics, chemistry, engineering, etc. This course provides an overview of the field of computer visualization, as well as more focused examinations of selected areas and an introduction to the use of tools and techniques. It is not a course in computer graphics, which deals among other things with the series of transformation of objects for computer display.
As one rationale for the course, among the most oft cited quotes about visualization is from Hamming: “The purpose of computation is insight, not numbers.” We’ll look at the implications of this orientation in the first weeks of the course. It may be a somewhat different take on the discipline of computer science than presented in some of your other courses.
Web site for CSCI 6361: Computer Visualization
Spring 2009 Classes
CSCI 6175: Seminar in Human Computer Interaction
The format of this course is a seminar in which we will read, present, and discuss articles prepresenting the current state of the art in human computer interaction, as well as foundational articles. Each participant will assume responsibility for not only presenting the material of an article, but also initiating, leading, and/or provoking discussion leading to fulfilling the seminar’s goal of developing critical skills in assessing ideas, techniques, and applications in the field. More detailed information is available at the past class web site.
CSCI 6362: Interactive Systems
CSCI/CMPE 4381: Interactive Systems and User Interface Design
The title of this course, “Interactive Systems”, was chosen to indicate a course of study that spans a range of topics in the theory, design, implementation, and evaluation of computing and information systems. Class meetings are typically split between presentation of the more theoretical elements of interactive systems and the implementation of programs using a windowing system api. One of the lessons of the course is that, as computer scientists, most are quite comfortable in developing the skills necessary to effectively implement user interfaces. However, the set of skills required to design and evaluate effective user interfaces are likely to be new to many computer scientists. The course provides both an introduction the broad range of topics used in design, including cognitive ergonomics and theory, usability testing, and the social context of computer use, as well as advanced implementation techniques for interactive systems. More detailed information is available at the past class web site.
Other ClassesCSCI 6363: Human Computer Interaction
This course deals with design, analysis, and implementation of the human computer interface, i.e.,
those elements in a computer system that bring the user of the system together with the
underlying algorithms and data structures used in problem solving or some other task.
It is the only part of a computer system that the user sees. As such, it is critical to success
or failure of the system.
For this reason the user interface is a significant element in all software systems,
and receives attention in courses dealing with software engineering. The science of
human-computer interaction has a particularly rich set of intellectual antecedents that
provide the foundation for theory and evaluation, as described by Shneiderman (p.4):
CSCI 6360: Computer Graphics
Interactive graphics are pervasive in today’s computer systems. Until fairly recently the field was an esoteric specialty using expensive display hardware, significant computing resources, and idiosyncratic software. The continued reduction in hardware price/performance ratio (e.g., personal computers with their standard graphics displays) and the availability of device-independent graphics packages have allowed most commercial programs to take advantage of pictorial communication that facilitates human-computer interaction.
The course has two primary goals. The first goal is to present the terminology and algorithms of pictorial display using computer systems. Essentially all of today’s computer graphics use raster displays. There is an intrinsic difficulty in displaying continuous elements on a discrete device and many of the algorithms we will study are aimed at solving this type of problem. Will also examine the presentation of an inherently three-dimensional world on the two dimensions of a computer display. The second goal is to provide experience using the principles and techniques of graphics and window system programming Today’s applications programs often have one-half of their code devoted to the user interface. This is perhaps not surprising when the complexity of interaction in a modern windowing environment is considered. The course will present window systems programming not only as a practical skill, but also as a means to introduce the concepts of human-computer interface design. Additionally, programming in OGL will be introduced. More detailed information is available in the past syllabus below.
Back to Richard H. Fowler's home page