Sketch Recognizers from the End-User’s, the Designer’s, and the Programmer’s Perspective Jason Hong James Landay A.
Download ReportTranscript Sketch Recognizers from the End-User’s, the Designer’s, and the Programmer’s Perspective Jason Hong James Landay A.
Sketch Recognizers from the End-User’s, the Designer’s, and the Programmer’s Perspective Jason Hong James Landay A. Chris Long Jennifer Mankoff
Overview • Lots of existing work on recognizers – Focus on accuracy and robustness • Not as much out there on using recognizers in practice – End-users, designers, programmers • Outline our group's experiences – Building and evaluating sketching apps – Tools for designers and programmers Mar 26 2002 2
Roles in Developing Sketching Apps
Role
End-User
Goals
Accomplish some task with the technology
Concerns
Useful Usable Desirable Designer Create and iteratively evaluate and improve an interface Interaction Feedback Look and Feel Prototyping Programmer Write good code and debug it Recognizers Reusability APIs Debugging Mar 26 2002 3
Overview of Apps and Tools
Role
End-User Designer
Applications and Tools
SILK, Burlap, DENIM Quill Programmer SATIN and OOPS Mar 26 2002 4
Overview of Apps and Tools
Role
End-User Designer
Applications and Tools
SILK, Burlap, DENIM Quill Programmer SATIN and OOPS Mar 26 2002 5
SILK Mar 26 2002 Landay (1996) 6
Burlap Mar 26 2002 Mankoff, Hudson, Abowd (CHI2000) 7
DENIM Mar 26 2002 Lin, Newman, Hong, Landay (CHI2000) 8
Overview of Apps and Tools
Role
End-User Designer
Applications and Tools
SILK, Burlap, DENIM Quill Programmer SATIN and OOPS Mar 26 2002 9
Quill Mar 26 2002 Long, Landay, Rowe, Michiels (CHI2000) 10
Quill Mar 26 2002 11
Overview of Apps and Tools
Role
End-User Designer
Applications and Tools
SILK, Burlap, DENIM Quill Programmer SATIN and OOPS Mar 26 2002 12
SATIN and OOPS • Clear need for APIs and algorithms for strokes and recognizers • Two different toolkits – Focus on pluggability and reusability Mar 26 2002 13
SATIN Mar 26 2002 14
SATIN Libraries Straighten Merge Mar 26 2002 15
Mar 26 2002 SATIN Libraries Split Pen Widgets 16
OOPS • Toolkit-level support for handling ambiguity and recognition errors – Library of mediators – Architectural support • hierarchical events, mediation, and event dispatching Mar 26 2002 17
Mar 26 2002 OOPS
down • • • drag • • • up stroke s c
18
Takeaway Ideas • Still need many tools for creating useful and usable sketching apps – Designers need more prototyping and evaluation tools – Programmers need more toolkits and libraries for making robust applications • Informal user interfaces – Creative or communication tasks • Ambiguity and errors will always occur – Minimize, hide, or defer (and mediate) Mar 26 2002 19
Sketch Recognizers from the End-User’s, the Designer’s, and the Programmer’s Perspective Jason Hong James Landay A. Chris Long Jennifer Mankoff
Mar 26 2002 Backup Slides 21
Mar 26 2002 Backup Slides 22
Mar 26 2002 Backup Slides 23
Backup Slides Mar 26 2002 24
Backup Slides Mar 26 2002 25
Mar 26 2002 Backup Slides 26
Defining Multistrokes
(and (contains-p container containee) (rectangle-p container) (rectangle-p containee) (skinny-p container :vertical)
versus
Mar 26 2002 27