As We May Communicate Carson Reynolds Department of Technical Communication University of Washington
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Vcf Pnw 2019
VCF PNW 2019 http://vcfed.org/vcf-pnw/ Schedule Saturday 10:00 AM Museum opens and VCF PNW 2019 starts 11:00 AM Erik Klein, opening comments from VCFed.org Stephen M. Jones, opening comments from Living Computers:Museum+Labs 1:00 PM Joe Decuir, IEEE Fellow, Three generations of animation machines: Atari and Amiga 2:30 PM Geoff Pool, From Minix to GNU/Linux - A Retrospective 4:00 PM Chris Rutkowski, The birth of the Business PC - How volatile markets evolve 5:00 PM Museum closes - come back tomorrow! Sunday 10:00 AM Day two of VCF PNW 2019 begins 11:00 AM John Durno, The Lost Art of Telidon 1:00 PM Lars Brinkhoff, ITS: Incompatible Timesharing System 2:30 PM Steve Jamieson, A Brief History of British Computing 4:00 PM Presentation of show awards and wrap-up Exhibitors One of the defining attributes of a Vintage Computer Festival is that exhibits are interactive; VCF exhibitors put in an amazing amount of effort to not only bring their favorite pieces of computing history, but to make them come alive. Be sure to visit all of them, ask questions, play, learn, take pictures, etc. And consider coming back one day as an exhibitor yourself! Rick Bensene, Wang Laboratories’ Electronic Calculators, An exhibit of Wang Labs electronic calculators from their first mass-market calculator, the Wang LOCI-2, through the last of their calculators, the C-Series. The exhibit includes examples of nearly every series of electronic calculator that Wang Laboratories sold, unusual and rare peripheral devices, documentation, and ephemera relating to Wang Labs calculator business. -
The Development of Smalltalk Topic Paper #7
The Development of Smalltalk Topic Paper #7 Alex Laird Max Earn Peer CS-3210-01 Reviewer On Time/Format 1 2/4/09 Survey of Programming Languages Correct 5 Spring 2009 Clear 2 Computer Science, (319) 360-8771 Concise 2 [email protected] Grading Rubric Grading Total 10 pts ABSTRACT Dynamically typed languages are easier on the compiler because This paper describes the development of the Smalltalk it has to make fewer passes and the brunt of checking is done on programming language. the syntax of the code. Compilation of Smalltalk is just-in-time compilation, also known Keywords as dynamic translation. It means that upon compilation, Smalltalk code is translated into byte code that is interpreted upon usage and Development, Smalltalk, Programming, Language at that point the interpreter converts the code to machine language and the code is executed. Dynamic translations work very well 1. INTRODUCTION with dynamic typing. Smalltalk, yet another programming language originally developed for educational purposes and now having a much 5. IMPLEMENTATIONS broader horizon, first appeared publically in the computing Smalltalk has been implemented in numerous ways and has been industry in 1980 as a dynamically-typed object-oriented language the influence of many future languages such as Java, Python, based largely on message-passing in Simula and Lisp. Object-C, and Ruby, just to name a few. Athena is a Smalltalk scripting engine for Java. Little Smalltalk 2. EARLY HISTORY was the first interpreter of the programming language to be used Development for Smalltalk started in 1969, but the language outside of the Xerox PARC. -
Beyond the Desktop: a New Look at the Pad Metaphor for Information Organization
Beyond the Desktop: A new look at the Pad metaphor for Information Organization By Isaac Fehr Abstract Digital User interface design is currently dominated by the windows metaphor. However, alternatives for this metaphor, as the core of large user interfaces have been proposed in the history of Human-computer interaction and thoroughly explored. One of these is the Pad metaphor, which has spawned many examples such as Pad++. While the the Pad metaphor, implemented as zoomable user interfaces, has shown some serious drawbacks as the basis for an operating system, and limited success outside of image-based environments, literature has pointed to an opportunity for innovation in other domains. In this study, we apply the the design and interactions of a ZUI to Wikipedia, a platform consisting mostly of lengthy, linear, hypertext-based documents. We utilize a human centered design approach, and create an alternative, ZUI-based interface for Wikipedia, and observe the use by real users using mixed methods. These methods include qualitative user research, as well as a novel paradigm used to measure a user’s comprehension of the structure of a document. We validate some assumptions about the strengths of ZUIs in a new domain, and look forward to future research questions and methods. Introduction and Background Windows-based user interfaces have dominated the market of multipurpose, screen-based computers since the introduction of the first windowed system in the Stanford oN-Line System (NLS)[3]. From Desktop computers to smartphones, most popular operating systems are based upon at least the window and icon aspects of the WIMP (Window, Icon, Menu, Pointer) paradigm. -
The Cedar Programming Environment: a Midterm Report and Examination
The Cedar Programming Environment: A Midterm Report and Examination Warren Teitelman The Cedar Programming Environment: A Midterm Report and Examination Warren Teitelman t CSL-83-11 June 1984 [P83-00012] © Copyright 1984 Xerox Corporation. All rights reserved. CR Categories and Subject Descriptors: D.2_6 [Software Engineering]: Programming environments. Additional Keywords and Phrases: integrated programming environment, experimental programming, display oriented user interface, strongly typed programming language environment, personal computing. t The author's present address is: Sun Microsystems, Inc., 2550 Garcia Avenue, Mountain View, Ca. 94043. The work described here was performed while employed by Xerox Corporation. XEROX Xerox Corporation Palo Alto Research Center 3333 Coyote Hill Road Palo Alto, California 94304 1 Abstract: This collection of papers comprises a report on Cedar, a state-of-the-art programming system. Cedar combines in a single integrated environment: high-quality graphics, a sophisticated editor and document preparation facility, and a variety of tools for the programmer to use in the construction and debugging of his programs. The Cedar Programming Language is a strongly-typed, compiler-oriented language of the Pascal family. What is especially interesting about the Ce~ar project is that it is one of the few examples where an interactive, experimental programming environment has been built for this kind of language. In the past, such environments have been confined to dynamically typed languages like Lisp and Smalltalk. The first paper, "The Roots of Cedar," describes the conditions in 1978 in the Xerox Palo Alto Research Center's Computer Science Laboratory that led us to embark on the Cedar project and helped to define its objectives and goals. -
MVC Revival on the Web
MVC Revival on the Web Janko Mivšek [email protected] @mivsek @aidaweb ESUG 2013 Motivation 30 years of Smalltalk, 30 years of MVC 34 years exa!tly, sin!e "#$# %ot in JavaScri&t MVC frameworks 'or Sin(le)*age and +ealtime web a&&s ,e Smalltalkers s-ould respe!t and revive our &earls better Contents MVC e &lained %istory /sa(e in !.rrent JavaScri&t frameworks /sa(e in Smalltalk C.rrent and f.t.re MVC in 0ida/Web MVC Explained events Ar!hite!tural desi(n &attern - Model for domain s&e!ifi! data and logi! View updates Controller ) View for &resentation to t-e .ser ) Controller for intera!tions wit- t-e .ser UI and .&datin( domain model Domain changes Main benefit: actions observing ) se&aration of !on!erns Model MVC based on Observer pattern subscribe ) 3bserver looks at observee Observer changed - 3bservee is not aware of t-at s u 4e&enden!y me!-anism2 B t n - 3bserver is de&endent on 3bservee state e observing v - 3bservee m.st re&ort state !-an(es to 3bserver E b - *.b/S.b Event 6.s de!ou&les 3bservee from u S / 3bserver to &reserve its .nawarnes of observation b u changed P Observee Main benefit: (Observable) ) se&aration of !on!erns Multiple observers subscribe - M.lti&le observers of t-e same 3bservee Observer changed - 7n MVC an 3bservee is View and 3bservee is domain Model, t-erefore2 s u B t - many views of t-e same model n e observing v - many a&&s E b - many .sers u S / - mix of all t-ree !ases b u Observee changed P (Observable) Example: Counter demo in Aida/Web M.lti.ser realtime web !ounter exam&le -ttp://demo.aidaweb.si – !li!k Realtime on t-e left – !li!k De!rease or In!rease to c-an(e counter – !ounter is c-an(ed on all ot-er8s browsers History of MVC (1) 7nvented by 9rygve +eenska.g w-en -e worked in "#$:1$# wit- Alan ;ay's group on <ero *arc on Smalltalk and Dynabook – 'inal term Model)View)Controller !oined 10. -
Dynamic Object-Oriented Programming with Smalltalk
Dynamic Object-Oriented Programming with Smalltalk 1. Introduction Prof. O. Nierstrasz Autumn Semester 2009 LECTURE TITLE What is surprising about Smalltalk > Everything is an object > Everything happens by sending messages > All the source code is there all the time > You can't lose code > You can change everything > You can change things without restarting the system > The Debugger is your Friend © Oscar Nierstrasz 2 ST — Introduction Why Smalltalk? > Pure object-oriented language and environment — “Everything is an object” > Origin of many innovations in OO development — RDD, IDE, MVC, XUnit … > Improves on many of its successors — Fully interactive and dynamic © Oscar Nierstrasz 1.3 ST — Introduction What is Smalltalk? > Pure OO language — Single inheritance — Dynamically typed > Language and environment — Guiding principle: “Everything is an Object” — Class browser, debugger, inspector, … — Mature class library and tools > Virtual machine — Objects exist in a persistent image [+ changes] — Incremental compilation © Oscar Nierstrasz 1.4 ST — Introduction Smalltalk vs. C++ vs. Java Smalltalk C++ Java Object model Pure Hybrid Hybrid Garbage collection Automatic Manual Automatic Inheritance Single Multiple Single Types Dynamic Static Static Reflection Fully reflective Introspection Introspection Semaphores, Some libraries Monitors Concurrency Monitors Categories, Namespaces Packages Modules namespaces © Oscar Nierstrasz 1.5 ST — Introduction Smalltalk: a State of Mind > Small and uniform language — Syntax fits on one sheet of paper > -
Metaphor in User Interface Design: a View from the Trenches
METAPHOR IN USER INTERFACE DESIGN: A VIEW FROM THE TRENCHES William Hudson Syntagm Ltd 10 Oxford Road Abingdon, UK, OX14 2DS [email protected] ABSTRACT mental models. While different theories of metaphor and The application of metaphor to user interface design is analogy abound, Dedre Gentner’s structure-mapping poorly understood and with only a few exceptions, badly theory is one of the most compelling for UI design executed. Yet metaphor has great potential to help users purposes [3]. In structure mapping, Gentner suggests it is acquire appropriate mental models of interactive systems. the relationship between entities that carries useful In this paper I examine some of the issues that plague information from the source domain to the target, not metaphoric user interfaces and suggest solutions that could similarities between the entities themselves. In her example lead to greater rates of success. of Rutherford’s analogy between the hydrogen atom and the solar system, it is the relationship between the planets Keywords and the sun that provides the mental model useful in the Metaphor; user-interface design; mental models; structure- target domain of the hydrogen atom. The physical mapping theory attributes of the entities are of no concern. Naturally, we are interested in the surface aspects of a 1. INTRODUCTION metaphor when it comes to designing a GUI, but this The popularity of metaphor in user interface design largely should always take a secondary role to that of structure. In coincided with the development of graphical user particular, metaphors that offer attractive graphics at the interfaces, most notably the desktop metaphor from Xerox expense of a useful structure or efficient interface are PARC [1]. -
Re-Framing the Desktop Interface Around the Activities of Knowledge Work
Re-framing the Desktop Interface Around the Activities of Knowledge Work Stephen Voida Elizabeth D. Mynatt, W. Keith Edwards Department of Computer Science GVU Center, College of Computing University of Calgary Georgia Institute of Technology Calgary, AB, Canada T2N 1N4 Atlanta, GA, USA 33032-0760 [email protected] {mynatt, keith}@cc.gatech.edu ABSTRACT Our prototype system, Giornata, demonstrates how the The venerable desktop metaphor is beginning to show signs traditional desktop metaphor can be re-framed to retain the of strain in supporting modern knowledge work. In this spirit of simplified interaction with applications and files paper, we examine how the desktop metaphor can be re- and yet better support contemporary knowledge workers’ framed, shifting the focus away from a low-level (and practices by emphasizing activity as the primary organizing increasingly obsolete) focus on documents and applications principle in the interface. Giornata’s enhanced desktop to an interface based upon the creation of and interaction serves not only as a display space for application windows, with manually declared, semantically meaningful activities. but also serves as an active folder for documents and other We begin by unpacking some of the foundational information items associated with the current activity assumptions of desktop interface design, describe an (Figure 1). Giornata utilizes lightweight activity- and activity-based model for organizing the desktop interface document-tagging capabilities that enable informal and based on theories of cognition and observations of real- evolutionary resource organization. Finally, Giornata world practice, and identify a series of high-level system integrates collaboration tools directly into the desktop to requirements for interfaces that use activity as their primary support group information sharing and activity awareness. -
Session 1: Introducing Extreme Java
Extreme Java G22.3033-006 Session 1 – Main Theme Introducing Extreme Java Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences Agenda • Course Logistics, Structure and Objectives • Java Programming Language Features • Java Environment Limitations • Upcoming Features in “Tiger” 1.5 • Model Driven Architectures for Java Systems • Java Enterprise Application Enabling • Agile Modeling & eXtreme Programming • Aspect-Oriented Programming & Refactoring • Java Application Performance Enhancement • Readings, Class Project, and Assignment #1a 2 1 Course Logistics • Course Web Site • http://cs.nyu.edu/courses/spring03/G22.3033-006/index.htm • http://www.nyu.edu/classes/jcf/g22.3033-007/ • (Password: extjava) • Course Structure, Objectives, and References • See detailed syllabus on the course Web site under handouts • See ordered list of references on the course Web site • Textbooks • Mastering Java 2, J2SE 1.4 • J2EE: The Complete Reference • Expert One-on-One: J2EE Design and Development 3 Part I Java Features 4 2 Java Features Review • Language Categories • Imperative • Functional • Logic-based • Model-based PL Comparison Framework • Data Model • Behavioral Model • Event Model • Execution, Persistence, etc. • See Session 1 Handout on Java Review 5 J2SE 1.4 Features http://java.sun.com/j2se/1.4/index.html 6 3 J2SE 1.4 Features (continued) • HotSpot virtual machine • Full 64-bit support • Improved garbage collection • Ability to exploit multiprocessing • Optimization of the Java2D -
Creating Graphical User Interfaces
i i \main" 2004/6/14 page 355 i i C H A P T E R 15 Creating Graphical User Interfaces 15.1 WHERE DO GRAPHICAL USER INTERFACES COME FROM? 15.2 CREATING A BASIC GRAPHICAL USER INTERFACE 15.3 CALLBACKS AND LAYOUT MANAGERS 15.4 USING SCROLLING LISTS Chapter Learning Objectives ² To make graphical user interfaces out of components such as windows, text ¯elds, buttons, and scrolling lists. ² To use callbacks to handle user interface events. ² To use trees for conceptualizing user interface structure. 15.1 WHERE DO GRAPHICAL USER INTERFACES COME FROM? The ¯rst computers were incredibly painful and tedious to work with. You \pro- grammed" them by literally rewiring them. There wasn't a screen, so you couldn't have a \graphical" user interface at all. Our common experience of using a keyboard to interact with the computer didn't come until much later. In the late 1960's, the dominant mode of interaction with the computer was through punched cards. Using a keyboard on a card punch machine, you prepared your instructions for the computer on pieces of cardboard that were then ordered in the right sequence and loaded into the computer. Heaven help the person who dropped her stack of cards and had to re-order hundreds of cards of a large program! The output from the computer back to the programmer was typically large piles of paper printouts, though was some starting work with computer music and computer graphics (on specialized, expensive monitors). In the 1960's and 1970's, computer scientists began envisioning a new role for the computer in its interaction with humans. -
Preparation of Papers in Two-Column Format for the Proceedings in A4
PakPao 3D: The Design and Implementation of a Three-Dimensional User Interface for an Operating System Using a Game Engine Satidchoke Phosaard and Jessada Tanthanuch School of Information Technology, Institute of Social Technology School of Mathematics, Institute of Science Suranaree University of Technology 111 University Ave., Muang District, Nakhon Ratchasima 30000, THAILAND [email protected], [email protected] Abstract-PakPao 3D is a novel 3-dimensional user interface. We propose a complement of a 3D user interface desktop metaphor of the operating system. The augmented virtual reality replaces the 2-dimensional desktop user interface, while the launched applications are still in 2D windows. This allows the user to immerse oneself in the screen, viewing as the first person, and travel through the world instead of looking at the screen as from a bird’s-eye view over the desktop. To interact with the interface, basic input devices are used. Traveling in the virtual environment utilizes the keyboard, while selecting and manipulating objects employs a mouse. The distinction of this 3D interface is that the application and file icons are also true 3D objects which can be manipulated in addition to the animated and realistic environment elements added to the interface. General functionalities of the desktop can be performed including creating customized application shortcuts. To accomplish this, a state-of-the-art game engine is used to Figure 1. PakPao 3D: The beach virtual environment. implement the interface. While introduced as an augmented virtual reality environment desktop and maintaining full usage system in the world, Microsoft Windows. Windows Vista, of unaltered launched applications in 2D windows, the users the latest version of Microsoft Windows released in early found the interface attractive and demonstrated that using 2007, has a new eye-catching task switching utility using such an interface was enjoyable. -
PERQ Workstations by R. D. Davis
PERQ Workstations R. D. Davis Last Updated: November 6, 2003 from the Sept. 7, 1991 edition. 2 Contents 1 Preface and Dedication 11 2 History 13 2.1 PERQ History as Told by Those Who Were There . 13 2.2 PERQ History as Otherwise Researched . 16 2.3 Late 1960's . 16 2.4 1972/1973 . 17 2.5 1973 . 17 2.6 1974 . 17 2.7 1975 . 18 2.8 1976 . 18 2.9 Late 1970's . 18 2.10 1978 . 18 2.11 1979 . 19 2.12 1980 . 19 2.13 1981 . 20 2.14 1982/1983: . 22 2.15 1983-1984? . 22 2.16 1984: . 23 2.17 1985 . 24 2.18 1986: . 25 2.19 1986/1987 . 26 2.20 1997 . 27 2.21 Things whose time period is questionable . 27 3 Accent Systems Corp. 31 4 More PERQ History 33 4.1 Graphic Wonder . 33 3 4 CONTENTS 4.1.1 Historical notes from Chris Lamb . 35 4.2 Alt.sys.perq . 36 4.3 PERQ-Fanatics Mailing Lists . 36 4.4 Original uCode . 37 5 The Accent OS 39 5.1 The Accent Kernel . 42 5.2 Co-Equal Environments . 44 5.3 Accent Window Manager: Sapphire . 44 5.4 Matchmaker . 45 5.5 Microprogramming . 45 5.6 Other Info. 46 5.7 Accent and Printing/Publishing . 46 5.8 Porting POS Code to Accent . 47 5.9 Accent S5 . 47 5.10 Naming of Accent . 47 6 The Action List 49 7 Adverts and Etc. 53 7.1 PERQ-1 . 53 7.1.1 PERQ Systems and cooperative agreements: .