1 / 18

Toolkits and Languages

Toolkits and Languages. CSE 490JL Section Dec 1 st & 3 rd 2004 Richard C. Davis & Kate Everitt. Outline. Definitions Language Toolkit History Evaluation Breadth/Depth Path of least resistance Ease of Use Future The Big Picture. The Power of Language.

Download Presentation

Toolkits and Languages

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Toolkits and Languages CSE 490JL Section Dec 1st & 3rd 2004 Richard C. Davis & Kate Everitt

  2. Outline • Definitions • Language • Toolkit • History • Evaluation • Breadth/Depth • Path of least resistance • Ease of Use • Future • The Big Picture

  3. The Power of Language • Language has value imbued in it • Words of a language limit what is expressible • Examples • Eskimo (Inuit) words for “snow” • Greek words for “love”

  4. What is a Toolkit? • A set of reusable components built in a language • Language: Java • Toolkits: AWT, Swing

  5. Why Build Toolkits? • Quality of interfaces • Speed of creation • Determines expressible applications

  6. Discussion • By this time, you have all used a wide variety of tools & languages • Which belong in the hall of fame and which in the hall of shame?

  7. History of Toolkits:UIMS • UIMS • User Interface Management System • Term coined by David Kasik (Boeing 1982) • Early UIMS • William Newman's Reaction Handler (Imperial College, London 1966) • Smalltalk Window Manager (PARC 1974)

  8. History of Toolkits:Toolkits go “Mainstream” • First Widely Adopted Toolkits • XLib (MIT, 1984) • Mac Toolbox (Apple, 1984) • Win16 (Microsoft 1990) • Toolkits evolve • Win16->Win32->MFC • XLib->Motif Widget Set

  9. History of Toolkits:Today • Desktop • Windows Forms • Cocoa (Mac OS X) • Rapid Prototyping • Visual Basic • Tk (Tcl, Perl, Python) • Cross-platform • Swing • GTK, GTK+ • QT • Web • HTML, CSS • Flash • AWT, Swing

  10. Evaluation • What do we want in a toolkit? • Depth / Breadth • Path of least resistance • Ease of use • Robustness

  11. Breadth/Depth • Toolkits have value imbued in them • Depth: how powerful the methods are • Breadth: the coverage of the methods • Methods and objects of a toolkit limit what is expressible

  12. Path of Least Resistance • Apart from what is possible, even if functionality is there, toolkits afford the creation of different kinds of programs • Path of least resistance (Myers et al) • Consider: Creating a webpage in flash vs html

  13. Ease of Use: Toolkit as UI • We can consider the toolkit as a UI with programmers as the users. How do standard UI principles hold for toolkits? • Visibility of system status (is that object really gone?) • Consistency • Conceptual model • Affordances • Relationship to the real world

  14. Ease of Use: Toolkit as UI • Can we test the usability of toolkits? • HE’s? • Usability Testing? (Papier Mache) • “Paper prototyping”? • Papier-Mâché (Klemmer et al 2004) • Heuristics • Ease of Use • Facilitating Reuse • Schemas Yield Similar Code

  15. Future • Ubiquitous computing, Speech UI’s, Pen-based UI’s, Physical UI’s • Need for new paradigms, new ideas, new toolkits

  16. Discussion • What is the importance of controlling the design of a new toolkit or language?

  17. The Big Picture • Market forces often determine the language/toolkit used in a project • But engineers have some say • Hard to choose a toolkit • How to evaluate without programming? • Toolkits are constantly changing • Try to keep toolkit knowledge current • Listen for other programmers’ comments • Get experience with a broad range

  18. References • Brad Myers, Scott E. Hudson, and Randy Pausch, "Past, Present and Future of User Interface Software Tools," ACM Transactions on Computer Human Interaction, To Appear in the Special Millennium Issue • Brad Myers, User Interface Software Tools, ACM Transactions on Computer-Human Interaction, Vol 2, No 1, March 1995, pp 64-103 • Scott R. Klemmer, Jack Li, James Lin, and James A. Landay, Papier-Mâché: Toolkit Support for Tangible Input. CHI Letters, Human Factors in Computing Systems: CHI2004. 6(1).

More Related