Computer Science Assistant Professor

rpastel at mtu dot edu
204 Rekhi CS Hall

     
 
Research
 
Primarily, my research is in the broad area of Human-Computer Interaction, HCI. I choose to study HCI deliberately. Foremost HCI combines artistic sensibility with mathematical precision. An interface designer must use programming languages to create an interface to the computer which is both efficient and pleasant for the user. But HCI is more than static art work; a user interface is intended to have utilitarian value and interact with both the user and the computer. Consequently, the interface designer should understand the user’s goals, and their cognitive processes. Finally, HCI is an under appreciated field in academic computer science but not in industry. I believe there are many opportunities in HCI research and industry.
Human - Computer Interface
  HCI research can be divided into three broad areas: interface design and implementation, interface software and hardware tool development, and interface theory and evaluation. These three areas (theory, design and tools) form the three supports that all user interface must be based on to be successful. My research spans all three areas.
Interface Design and Implementation
HCI is a particularly approachable research area because using the computer we all are exposed to many user interfaces, and we naturally criticize and evaluate them. The interface that most of us use most of the time is the desktop environment. The desktop environment is an essential interface for personal computers; it should act as a natural interface to the operating system and file system, besides providing basic utilities. I have been frustrated with all desktop environments, so naturally, a redesign of the desktop was my first endeavor. The paper “Desktop Environment as a Problem Solving Tool,” considers the design of a zoom desktop that uses a graph data structure to associate windows.
 
  Because of their portability, personal digital assistants are attractive platforms for users that benefit from mobility, for example conducting laboratory or field experiments. Nathan Skalsky and I proposed a PDA-based science laboratory, PBL, and designed Experimental Assistant an application for the TRIcorder.
 
Although I do not have much time to play computer games, I would enjoy moding or developing computer games. I believe that computer games push the frontier of computer technology and demonstrate new possibilities for more utilitarian HCI. Interface designers must consider that many future computer users are introduced to the computer via games and therefore are acquainted with alternative interfaces. I believe that a fun research area is interfacing open source game engines to common applications.
Interface Software and Hardware Tools
Computer mice and touch pads are unique peripheral devices and perform an essential function in HCI. They provide rapid and intuitive user input to the computer. The mouse was invented in 1964 by Engelbart, and by 1981 became popular in WIMP (windows, icons, menus and pointer) interfaces that have become ubiquitous in user interfaces. Pointing devices have developed little from point and click inputting, selection utility. Seldom do interfaces use direct manipulation techniques, for example drag and drop manipulation of icons. Direct manipulation techniques begin to make use of the pointer’s full potential by incorporating the pointer’s motion to interpret the user’s intent. Gesturers are natural human acts and interfaces using gestural input are potentially more humane and efficient. I believe that developing gestural interfaces is a fruitful HCI research area.
 
  The personal digital assistant, PDA, is a challenging platform for interface design because of the restrictions imposed by the limited screen size and lack of keyboard. Gesturing interface can overcome many of the PDA challenges. In the paper “Demonstrating Information in Simple Gestures” I introduced the Simple Gesturing User Interface, SGUI, an application programming interface, API, for writing gestural interfaces on the palm pilot. SGUI is fast and light weight gesture interpreter by tracking only the gesture bound box. I would like to port SGUI to Java.
 

Kyle Erickson, a student, compared alternative gesture interpreter, and programmed one of the interpreter that classifies the gesture by tracking the gesture through 9 regions of the gesture’s bounding box.

Although the mouse appears to be under direct control of the user, mouse motions are interpreted by the drivers and the operating system before the cursor is moved on the screen. Seldom is the cursor motion linear with the mouse motion. Frequently the cursor is accelerated, for example moved trice as far, for large mouse motions and not accelerated for small mouse motions. This mouse-cursor transformation allows the user to move the cursor quickly for gross motions while still retaining accurate cursor control for fine motion. This separation of cursor from the mouse allows for the intelligent interfaces to assist the user. The interface knows the location of buttons; it can accelerate the cursor towards the button. A student, Chris Fuller, wrote the Java GravityMouse class and a test platform for GravityMouse. I believe that the basic gravity mouse is useful for users with disability using interfaces with a small number of buttons.

Desktop environment development in linux requires modify XFree86 and installing the new version. Chris Balzek developed procedures for running multiple versions of XFree86 on the same computer. Student installation of XFree86 required that Chris set up and maintain the first HCI lab at MTU. Chris has also prepared linked documentation web pages for the XFree86 source code.

Typical touch pads can locate only a single area on the pad because the electrodes are arranged in columns and rows that extend across the pad. Dr. Westerman developed the software for interpreting gestures on pads that use inputs from a grid of electrodes. More than a single area can be determined; in fact a proximity image of the both hands is created. FingerWorks has developed a touch pad that can be simultaneously used as a keyboard a mouse. I believe that this device can be used for many applications.

Interface Theory and Evaluation
  Designing Experimental Assistant, a graphing application using SGUI, to use gestures required new design approach. Particular attention needed to be focused on the action of the interface objects. I called this design model object-action association.
 

There are few quantitative measures in HCI to determine interface effectiveness. One of the few quantitative measures is the time to perform tasks on the computer. A simple task is moving the cursor to a button. Many computer scientists have measured the time to move the cursor to a button, and confirmed that the time is governed by Fitts's law. The Fitts's law states that the time to move to a button is logarithmically proportional to the initial cursor target separation divided by the target width. Joe Vaillancourt developed a test platform for verifying Fitts's law.

Johnny Accot and Shumin Zhai at IBM developed the steering law, which extends Fitts’s law to guiding the cursor through a prescribed path on the screen. The steering law and the accompany theory provides a means for measure the efficiency of gesturing interfaces. Robert Moore, Jake Camplin, and Scott Gross have developed a test platform for verifying the steering law. Dmitry Podkuiko is currently administrating steering law tests and Dr. Struther is analyzing the data.

Computer Science Education
Because a large part of my job is teaching, data structures and HCI, I have the opportunity to conduct research in computer science education, and the computer science education research has generated new ideas for HCI research.
Human-Computer Interface Education

HCI is a neglected area in computer science pedagogy. The academics are debating what and how HCI should be taught. I have proposed integrating science and research in an HCI design course.

I am now considering developing an HCI course, which focuses on the web and applications on the web. This focus will allow HCI students to learn in detail tools and techniques in popular HCI venue, the web.

Data Structures Education
Attendees at a publisher’s symposium were interested in the development of group labs for the introductory data structures course. Because I have developed physics group labs, I thought I am qualified to develop group labs for the data structures course. I have written 4 data structures group labs and this year I will evaluate their pedagogical effectiveness.
Specific Research Opportunities:
 
  • Port SGUI to Java
  • Analyze Gravity Mouse user testing results and develop Gravity Mouse algorithm
  • Administer group labs and analyze results
  • Develop web profiling techiques and tools
  • Converting test platforms to applets
  • Administer steering law tests and analyze results
 

If you are interested in any these research areas, or have research ideas of your own in HCI or computer science education, please see me. Undergraduate students can earn independent study credits and and graduate students can earn research credits.