ACELA: Interactive Books
Slides from a Presentation
Steven Pemberton
CWI, Amsterdam
ACELA
Acela is a co-operative project between mathematicians and computer-scientists.
Aims to produce:
- An architecture of interactive books
- An architecture for an implementation
- An implementation of a reader
- An authoring system
- An example book: Lie Algebras
- PhDs
Overview
Interactive Learning
- Traditional Computer Aided Instruction:
-
uses directed study to replace the teacher
the system decides the order
- Interactive Books:
-
lets the reader decide
uses the reader's motivation
Interactive Books
Present material in a book-like form with added advantages, such as:
- Hypertext (cross-references, indexes, access to related or defining information, etc.)
- Compression of information to give a better overview of the material (folding etc.)
- Tailoring of information
- Different reading orders
- Annotations
- Searching
- Interactive examples
- Interactive exercises
Different Reading Orders
Here is an image of the table of contents of a (paper) book from the 1970's
"An Informal Introuction to Algol 68" by Lindsey and van der
Meulen, that offered two reading orders (row-wise
was more formal, column-wise was more tutorial).
Disadvantages of I-books
- Slower reading speeds
- Quality of screens
- Portability of reader
(can't take an I-book to read in the train - or in the bath...)
- There are features of a paper publication that
are inherent in the medium, e.g.:
- seeing at a glance a publication's size
- scanning to get an idea of the contents
Claim: 300 dpi screens will have as great an effect on electronic publications as the 300 dpi laser printer had on desk-top publishing.
The First Book
The Acela system is for all types of books:
- Mathematics
- Programming
- Music
- Cookery
- ...
A series of mathematics books are planned, with as first example one on Lie algebras.
This requires access to external mathematics packages.
Other Properties of the System
Presentation independence:
inv(A)
A-1
__
A
External processes with transparency
Platform independence
Unified reader and authoring system
The User
Few online publications seem to have done an analysis of the user, which only compounds the problems of reading them.
Book-independent tasks and requirements include:
- Browsing
- Skimming
- Getting an overview
- Finding out where you are
- Serial reading
- Finding related material
- ...
Example: Latex2HTML
There are many examples of bad user interfaces to online publications,
but one of the worst is the default behaviour of the
program Latex2HTML, which splits a document into lots of
tiny pages.
Here is the structure of an example translated document:
And here a sample page from that document: you quickly lose any idea
of where you are:
The User
Book-dependent tasks include:
- Mathematics:
-
- What do I need to understand this equation?
- What is the proof of this equation?
- Evaluate this
- Music:
-
- Show me the tenor part only
- Play this section
- Cookery:
-
- This is what I've got, which recipes can I use?
- Please make me a shopping list for this recipe for 8 people
- Create an event list for a meal consisting of these dishes
The Implementation
Based on Views technology:
- Presentation and content are sharply separated
- User interface is in a separate layer
- Data representation is in a separate layer
Documents
Documents are represented internally as content-only, structured values.
For instance the date and time:
(1996, 9, 9), (11, 17, 16)
Separating the content from the presentation means you can present the same information in several ways, simultaneously:
Functionality
Functionality is supplied via linear equality invariants.
Example: a clock
clock= (h, m, s) presented h, ":", m, ":", s
s= system:seconds mod 60
m= system:seconds 60 mod 60
h = system:seconds 3600 mod 24
Interaction
Interaction is done via a general-purpose editor:
- Tries to work according to structure
- Otherwise uses presentation
- `Hints' can come from presentation (for instance presenting value as a button)
Presentation
Presentation is done using the invariant mechanism:
- Each type has a document describing its look
- When documents are `visited', presentation invariants are set up
Advantages
Some advantages of this approach are:
- Presentation is not hardwired
- You can edit the presentation on the fly
- Several presentations simultaneously
- Applications do no input or output!
- Consistent user interface
- Unify authoring system and reader
The architecture
The State of Play
Here is a screen-dump of a current version of the prototype: