39264003
HyperAT: HCI and Web Authoring
We review HCI problems with hypertext, and for authoring World Wide Web documents in particular. We suggest that a framework is required to understand the usability issues, and that these issues cannot be seen as psychological or computing: they are multi-disciplinary. We discuss HyperAT, a protorype authoring tool, being implemented to test these ideas.
39410616
Theme issue on interactive mobile information access
This paper introduces this issue on interactive mobile information access. Papers are presented issues relating to a diversity of user groups and environments, with a central theme of accessing information whilst on the move.
7930341
StoryBank: an indian village community digital library
This paper considers information access styles for a community digital library in an Indian village. We present our impressions of the community gathered during a field-study and show how these have influenced the interaction design. The prototype aims to overcome low-textual literacy and lack of computing experience by combining touch-based interaction, engaging visual presentations and drawing on villagers' familiarity with radio listening.
3300534
Improving mobile internet usability
Mobile internet technologies, such as WAP, are important for pervasive, anytime, anywhere computing. Although much progress has been made in terms of technological innovation, many of mobile internet systems are difficult to use, lack flexibility and robustness. They give a poor user experience. Evaluation and theoretical analysis of usability combined with innovative design can achieve significant improvements in user performance and satisfaction. Using such multidisciplinary methods explains the negative reactions to WAP, and — more constructively — suggest ways of developing more effective and efficient devices and services.
15818085
An evaluation of integrated zooming and scrolling on small screens
Abstract Speed-dependent automatic zooming (SDAZ) has been proposed for standard desktop displays as a means of overcoming problems associated with the navigation of large information spaces. SDAZ combines zooming and panning facilities into a single operation, with the magnitude of both factors dependent on simple user interaction. Previous research indicated dramatic user performance improvements when using the technique for document and map navigation tasks. In this paper, we propose algorithmic extensions to the technique for application on small-screen devices and present a comparative experimental evaluation of user performance with the system and a normative scroll–zoom–pan interface. Users responded positively to the system, particularly in relation to reduced physical navigational workload. However, the reduced screen space reduced the impact of SDAZ in comparison to that reported in previous studies. In fact, for one-dimensional navigation (vertical document navigation) the normative interface out-performed SDAZ. For navigation in two dimensions (map browsing) SDAZ supports more accurate target location, and also produces longer task completion times. Some SDAZ users became lost within the information space and were unable to recover navigational context. We discuss the reasons for these observations and suggest ways in which limitations of SDAZ in the small-screen context may be overcome.
3871712
CPU reservations and time constraints: efficient, predictable scheduling of independent activities
Workstations and personal computers are increasingly being used for applications with real-time characteristics such as speech understanding and synthesis, media computations and I/O, and animation, often concurrently executed with traditional non-real-time workloads. This paper presents a system that can schedule multiple independent activities so that: . activities can obtain minimum guaranteed execution rates with application-specified reservation granularities via CPU Reservations, CPU Reservations, which are of the form reserve X units of time out of every Y units, provide not just an average case execution rate of X/Y over long periods of time, but the stronger guarantee that from any instant of time, by Y time units later, the activity will have executed for at least X time units, . applications can use Time Constraints to schedule tasks by deadlines, with on-time completion guaranteed for tasks with accepted constraints, and . both CPU Reservations and Time Constraints are implemented very efficiently. In particular, . CPU scheduling overhead is bounded by a constant and is not a function of the number of schedulable tasks. Other key scheduler properties are: . activities cannot violate other activities' guarantees, . time constraints and CPU reservations may be used together, separately, or not at all (which gives a round-robin schedule), with well-defined interactions between all combinations, and . spare CPU time is fairly shared among all activities. The Rialto operating system, developed at Microsoft Research, achieves these goals by using a precomputed schedule, which is the fundamental basis of this work.
41482626
A New Approach to the Construction of Surfaces from Contour Data
This paper presents a new approach to the construction of a surface from a stack of contour slices. Unlike most existing methods, this new approach handles ambiguous conditions consistently without employing an algorithm to establish a correspondence between vertices on one contour and those on the next. It is easy to implement and fast to compute, requiring only basic geometric properties, namely closedness and simplicity, to be available with contour data. The advantages of this new approach have also been demonstrated with solutions to a few classical problems from the literature and some practical problems in medical imaging. It can also be applied to geographical surveying and keyframe animations.
2346657
ML Typing, Explicit Polymorphism and Qualified Types
The ML type system was originally introduced as a means of identifying a class of terms in a simple untyped language, often referred to as core-ML, whose evaluation could be guaranteed not to “go wrong”. In subsequent work, the terms of core-ML have also been viewed as a ‘convenient shorthand’ for programs in typed languages. Notable examples include studies of ML polymorphism and investigations of overloading, motivated by the use of type classes in Haskell.
1424753
Monad transformers and modular interpreters
We show how a set of building blocks can be used to construct programming language interpreters, and present implementations of such building blocks capable of supporting many commonly known features, including simple expressions, three different function call mechanisms (call-by-name, call-by-value and lazy evaluation), references and assignment, nondeterminism, first-class continuations, and program tracing.
The underlying mechanism of our system is monad transformers, a simple form of abstraction for introducing a wide range of computational behaviors, such as state, I/O, continuations, and exceptions.
Our work is significant in the following respects. First, we have succeeded in designing a fully modular interpreter based on monad transformers that incudes features missing from Steele's, Espinosa's, and Wadler's earlier efforts. Second, we have found new ways to lift monad operations through monad transformers, in particular difficult cases not achieved in Moggi's original work. Third, we have demonstrated that interactions between features are reflected in liftings and that semantics can be changed by reordering monad transformers. Finally, we have implemented our interpreter in Gofer, whose constructor classes provide just the added power over Haskell's type classes to allow precise and convenient expression of our ideas. This implementation includes a method for constructing extensible unions and a form of subtyping that is interesting in its own right.
2264317
Web Mash-ups and Patchwork Prototyping: User-driven technological innovation with Web 2.0 and Open Source Software
The recent emergence of Web mash-ups and open source software is driving the development of new practices in software and systems development. In this paper we explore novel practices of user-driven innovation through an examination of several case studies which illustrate how users and developers are exploiting the proliferation of open APIs and open source systems. Developers can rapidly create proofs of concept that are robust enough for actual use by combining preexisting software components. The underlying programming processes involved make use of tried-and-true software development techniques, and may not appear innovative at first. However, the application of these practices and techniques to problem solving by non-programmers shows a high degree of creative innovation, giving rise to new ways of thinking about technology design and production