![Page 1: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/1.jpg)
User Interface ToolkitsMike Bostock - May 25, 2009
![Page 2: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/2.jpg)
• Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human Interaction, March 2000, pp. 3 - 28.
Reflective physical prototyping through integrated design, test, and analysis, Björn Hartmann, Scott R. Klemmer, Michael Bernstein, Leith Abdulla, Brandon Burr, Avi Robinson-Mosher, Jennifer Gee, UIST 2006: ACM Symposium on User Interface Software and Technology.
A Design Tool for Camera-based Interaction, Jerry Alan Fails and Dan R. Olsen, CHI 2003: ACM Conference on Human Factors in Computing Systems, pp. 449 - 56.
![Page 3: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/3.jpg)
• Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human Interaction, March 2000, pp. 3 - 28.
Reflective physical prototyping through integrated design, test, and analysis, Björn Hartmann, Scott R. Klemmer, Michael Bernstein, Leith Abdulla, Brandon Burr, Avi Robinson-Mosher, Jennifer Gee, UIST 2006: ACM Symposium on User Interface Software and Technology.
A Design Tool for Camera-based Interaction, Jerry Alan Fails and Dan R. Olsen, CHI 2003: ACM Conference on Human Factors in Computing Systems, pp. 449 - 56.
![Page 4: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/4.jpg)
“,,
Toolkits typically provide both a library of interactive components, and an architectural framework to manage the operation of interfaces made up of those components.
![Page 5: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/5.jpg)
components + context
affordances + actions
objects + behavior
![Page 6: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/6.jpg)
components + events
affordances + actions
objects + behavior
![Page 7: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/7.jpg)
[Toolkits] allow user interfaces to be created more quickly. This, in turn, enables more rapid prototyping and therefore more iterations of iterative design.
“,,
![Page 8: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/8.jpg)
Is faster necessarily better?
![Page 9: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/9.jpg)
office bunker by mugley
![Page 10: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/10.jpg)
Façade, ciel, lumière by - Christian & Cie
![Page 11: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/11.jpg)
cadiesingularity.blogspot.com
![Page 12: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/12.jpg)
Another important advantage of tools is that they help achieve a consistent look and feel, since all user interfaces created with a certain tool will be similar.
“,,
![Page 13: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/13.jpg)
Is consistency necessarily good?
![Page 14: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/14.jpg)
“,,
Our tools have a profound effect on how we think about problems. It will remain imperative that our tools make “doing the right thing” easy (in preference to “doing the wrong thing”). This applies both to the structure and organization of the code, as well as to the user interface that results from the code. In other words, the tools should make creating high-quality user interfaces easier than creating low quality ones.
![Page 15: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/15.jpg)
Evaluation Themes
![Page 16: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/16.jpg)
addressed need
predictability
threshold + ceiling
path of least resistance
![Page 17: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/17.jpg)
Promising Approaches
(That Have Not Caught On)
![Page 18: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/18.jpg)
User InterfaceManagement Systems
no low-level control,outmoded abstraction
Formal Language-Based Tools
bad path of least resistance,high threshold
Constraints unpredictable
Model-Based and Automatic Techniques unpredictable
![Page 19: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/19.jpg)
Future Prospects and Visions
(From 1999)
![Page 20: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/20.jpg)
Computers as Commodities
device diversity,cinematic
Ubiquitous Computingvarying input and output,
coordinated
Recognition-BasedUser Interfaces
multimodal,natural interfaces
3D ?
End-User Customization low-threshold scripting
![Page 21: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/21.jpg)
“,,
[Varying input and output capabilities] may encourage a return to the study of some techniques for device-independent user interface specification, so that developers can describe the input and output needs of their applications, vendors can describe the input and output capabilities of their devices, and users can specify their preferences. Then, the system might choose appropriate interaction techniques taking all of these into account.
![Page 22: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/22.jpg)
“,,
Similarly, user interface management systems were to abstract the details of input and output devices, providing standard or automatically generated implementations of interfaces, and generally allowing interfaces to be specified at a higher level of abstraction.
![Page 23: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/23.jpg)
“,,
[An] important motivation for model-based techniques was to provide independence of the input-output specification from the details of the specific user interface characteristics.
![Page 24: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/24.jpg)
“,,
[I]nterface builders ... use graphical means to express graphical concepts (e.g., interface layout). By moving some aspects of user interface implementation from conventional code into an interactive specification system, these aspects ... are made available to those who are not conventional programmers.
![Page 25: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/25.jpg)
• Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human Interaction, March 2000, pp. 3 - 28.
Reflective physical prototyping through integrated design, test, and analysis, Björn Hartmann, Scott R. Klemmer, Michael Bernstein, Leith Abdulla, Brandon Burr, Avi Robinson-Mosher, Jennifer Gee, UIST 2006: ACM Symposium on User Interface Software and Technology.
A Design Tool for Camera-based Interaction, Jerry Alan Fails and Dan R. Olsen, CHI 2003: ACM Conference on Human Factors in Computing Systems, pp. 449 - 56.
![Page 26: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/26.jpg)
![Page 27: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/27.jpg)
“,,
[Prototypes are] approximations of a product along some dimensions of interest. ... Prototypes embody design hypotheses and enable designers to test them. Framing design as a thinking-by-doing activity foregrounds iteration as a central concern.
![Page 28: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/28.jpg)
spore.com/comm/prototypes
![Page 29: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/29.jpg)
Design Goals
![Page 30: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/30.jpg)
low threshold
hardware integration
design + test + analysis cycle
![Page 31: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/31.jpg)
author by demonstration
query by demonstration
![Page 32: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/32.jpg)
“,,
To provide a higher ceiling than is possible with visual programming alone, d.tools augments visual authoring with textual programming.
![Page 33: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/33.jpg)
“,,
We observed that student groups that used solely textual APIs ended up writing long-winded statechart representations using switch or nested conditional statements; the structure of their code could have been more concisely captured in our visual language.
![Page 34: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/34.jpg)
physical vs. virtual
prototype vs. simulation
![Page 35: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/35.jpg)
• Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human Interaction, March 2000, pp. 3 - 28.
Reflective physical prototyping through integrated design, test, and analysis, Björn Hartmann, Scott R. Klemmer, Michael Bernstein, Leith Abdulla, Brandon Burr, Avi Robinson-Mosher, Jennifer Gee, UIST 2006: ACM Symposium on User Interface Software and Technology.
A Design Tool for Camera-based Interaction, Jerry Alan Fails and Dan R. Olsen, CHI 2003: ACM Conference on Human Factors in Computing Systems, pp. 449 - 56.
![Page 36: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/36.jpg)
Crayon Tips by laffy4k
![Page 37: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/37.jpg)
![Page 38: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/38.jpg)
Design Goals
![Page 39: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/39.jpg)
low threshold
interactive
rapid iteration
![Page 40: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/40.jpg)
![Page 41: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/41.jpg)
Is image segmentation enough?
![Page 42: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/42.jpg)
Additional evaluation methods?
![Page 43: User Interface Toolkits - Stanford University · • Past, Present, and Future of User Interface Software Tools, Brad Myers, Scott E. Hudson, Randy Pausch, ACM Transactions on Computer-Human](https://reader030.vdocument.in/reader030/viewer/2022041016/5ec918565263de629b5d9d34/html5/thumbnails/43.jpg)
.