ChapterPDF Available

A Manifesto for User and Automation Interfaces for Hyperlinking

Authors:

Abstract and Figures

We present an urgent need for software to enable users, through their user interface and an application programming interface, to access the name and URLs of documents or objects processed by the software. While this capability is customary in web browsers, it needs to be extended to all kinds of software (such as PDF readers, tasks managers and editors) even if the objects reside locally. This would greatly facilitate information access and personal information management. The Hook productivity app by CogSci Apps Corp. illustrates and helps realize this concept.
Content may be subject to copyright.
THE FUTURE OF TEXT
Edited by Frode Alexander Hegland
First Published 2020.
All articles are © Copyright of their respective authors.
is collected work is © Copyright ‘Future Text Publishing’ and Frode Alexander Hegland.
e PDF edition of this work is made available at no cost and the printed book is available from
‘Future Text Publishing (futuretextpublishing.com) a trading name of ‘e Liquid Information
Company’.
is work is freely available digitally, permitting any users to read, download, copy, distribute,
print, search, or link to the full texts of these articles, crawl them for indexing, pass them as
data to software, or use them for any other lawful purpose, without nancial, legal, or technical
barriers other than those inseparable from gaining access to the internet itself. e only
constraint on reproduction and distribution, and the only role for copyright in this domain,
should be to give authors control over the integrity of their work and the right to be properly
acknowledged and cited.
Typeset in Adobe Caslon Pro and Shinglewoode by Timothy Donaldson except for Kindle.
ISBN: 9798556866782
DOI: https://doi.org/10.48197/fot2020a
Luc Beaudoin & Daniel Jomphe
A Manifesto For User And Automation Interfaces For Hyperlinking:
How Hypertext Can Enhance Cognitive Productivity
Deep knowledge work typically involves interacting, via web browsers and manifold
apps, with many pragmatically related local and remote information resources.
For instance, when writing a document one typically processes a task list, edits
documents (e.g., a draft, outline, gures, notes, spreadsheets), and reviews reference
material, notes about them and communications. For peak performance and because
information in the brain’s working memory[1] decays rapidly, one must rapidly access
such information. Searching for information and navigating folders replaces working
memory content with trivial information, breaking ow[2]. Navigating apt links, in
contrast, is relatively quick and easy, extending long-term working memory[3] which
underpins expertise. It would therefore be immensely useful for any resource, whether
local or remote, to easily be linked to any other.
Figure 1. Typical creative project involving manifold related resources
In his Conceptual Framework for Augmenting Human Intellect (AHI)[4], Douglas
Engelbart stipulated that in hypertext “Every Object [ must be ] Intrinsically
Addressable (Linkable to)” (p. 30). Unfortunately, many of the most popular apps still
do not provide a way for users to copy a hyperlink to the resource that is currently open
or selected by the user! Yet copying links is arguably as important as copying text. And
of those that do, many do not provide an application programming interface (API) to
obtain hyperlinks for their data.
ese limitations could easily be overcome, which would yield immense cognitive
productivity[5] benets.
MODERN HYPERTEXT IS STILL IN SILOS
For a resource to be linkable one must be able to get its address and name in a format
one can later use — ideally a hyperlink (“link”). URLs are a standard addressing format
for web links (see RFC 3986[6]).
Increasingly mobile and desktop apps provide a user interface (“UI”) command
to copy an “app link” to the current item. An app link is a link that opens in a local app,
as opposed to the web. For example, the OmniFocus app by OmniGroup provides a
Copy Link command that yields links of the form OmniFocus://… . Users can then
conveniently paste such links in their notes, todo lists, emails, etc.
Modern operating systems like Apple’s macOS 10.14 and iOS 13 enable apps to
register themselves as servers of URLs of a specic scheme. For example, OmniFocus
can register itself to serve OmniFocus:// links.
267
Copying links is one of the most important and fundamental hypertext functions. Yet
even today, many apps do not provide a UI for getting a link to the current object.
Consider three examples on macOS. First, Apple Mail, Microsoft Outlook for Mac,
and many of their competitors do not provide a Copy Link function for emails. Yet a
URL scheme could be created for it based on the email’s IDs, since every email has
a unique ID (per RFC 5322- Internet Message Format[7]). Nor do they provide a
command to copy the RFC message-ID or one to open the message by ID. Second, on
macOS, there is no UI command to get a URL of a le, let alone a stable one. Many
task management and note taking apps, like Apple’s Reminders, do not expose a Copy
Link function. Moreover, often, when a Copy Link command is supported, it returns a
universal https:// URL that may take the user to a web service (Dropbox v 102.4.431
and Todoist 7.3.2 (12025) are but two examples). Confounding users even more, Copy
Link commands are inconsistently placed across apps, often requiring several gestures to
access.
HYPERLINKING USABILITY REQUIREMENTS FOR OS AND
APP DEVELOPERS
To provide the benets of links to their users, developers should provide a Copy Link
command for their apps' data. For apps that store data locally, it must normally be
possible for the user to get either an app link or a locally resolvable universal link[8].
For software whose data is both accessible via a web browser or other app, it should be
possible and easy through a setting or gesture for users to choose whether any (and all)
link(s) of a given scheme is(are) served via a web browser or the app.
OS vendors should provide guidelines for the Copy Link command to be
presented in a specic location. On macOS, it is most commonly in the Edit menu.
Users must also be able to assign a keyboard shortcut to this command globally and per
app.
LINK API AUTOMATION REQUIREMENTS FOR OS AND APP
DEVELOPERS
To enable their users to create, extend and navigate networks of information that
includes the app data they generate, apps must provide APIs to :
1. return a link (name and URL) of the current selection (for document-based
resources, a parameter may specify whether a deep or document-wide URL is
returned);
2. open or reveal the item at such URLs; and
3. for apps that create documents or data: to create an item of the specied
name (optionally in a given context) and return the new item’s URL.
It would not be realistic, however, for this manifesto to impose or seek a standard API
or schema for link data beyond standard URL syntax (RFC 3986). Whether the APIs
are command line, JavaScript or other matters not to this manifesto, so long as they
are professionally implemented and documented. e APIs would allow developers to
develop truly universal bookmark and link managers.
HOOK PRODUCTIVITY: A WORKING PROOF OF CONCEPT OF
UNIVERSAL CONTEXTSENSITIVE BOOKMARKING, LINKING
AND INFORMATION NAVIGATION
For linking operations to be instantly accessible they should be presented by an app
that interacts with all linkable apps. Enough macOS apps already support linking APIs
to render possible this new type of software: truly universal (URL-scheme agnostic)
context-sensitive bookmarking and link management. We have developed such an app
(on macOS and coming to other OS’s), Hook productivity[9]. e contextual resource
is dened as the resource that is currently open or selected in the foreground app (such
as a web browser, email or task management app). Hook provides consistently located
linking commands, keyboard shortcuts and automation to:
1. simultaneously copy and bookmark a link to the contextual resource,
2. “hook” (bidirectionally link) two resources together,
3. simultaneously create, store and name new items in the app of the
user’s choice, while hooking the new item to the contextual resource,
4. navigate the network of information hooked to the current resource,
or other resources, whether local or remote,
5. search for bookmarked items (escaping contextual resource), and
6. more.
Hook denes a URL sub-scheme(hook://le) for les, robustly serving such
URLs even if the le has been moved, and for emails (hook://email, based on their
RFC ID) usable by several email clients; its links are shareable enabling recipients to
access sender-referenced local copies of emails and les. When the contextual app
denes its own URL scheme, Hook’s Copy Link function normally returns the app’s
URL.
Figure 2. Universal link management functionality, provided by Hook, built on modest linking APIs
269
Hook represents a signicant step towards demonstrating and achieving the value of
Engelbart’s hyperlinking vision, transcending the limitations of web browsers that he
lamented.
CODA
Enabling users to rapidly address and navigate information across apps and services
enables them to be cognitively productive: remembering, understanding, analyzing,
applying, synthesizing and creating solutions, knowledge and other products.
We therefore strongly encourage all developers to ensure their software provide
APIs and easily accessible user interfaces for getting and serving links to their data.
References
1. Working memory: https://en.wikipedia.org/wiki/Working_memory
2. Flow: https://en.wikipedia.org/wiki/Flow_(psychology)
3. Extending long-term working memory: http://kantor.comminfo.rutgers.edu/t/MLIS/551/public_dump/morris_a_11.
html
4. Conceptual Framework for Augmenting Human Intellect (AHI): https://www.dougengelbart.org/pubs/papers/scanned/
Doug_Engelbart-AugmentingHumanIntellect.pdf
5. Cognitive Productivity: https://leanpub.com/cognitiveproductivity/
6. RFC 3986: https://tools.ietf.org/html/rfc3986
7. RFC 5322: Internet Message Format: https://tools.ietf.org/html/rfc5322#section-3.6.4
8. Universal links: https://developer.apple.com/ios/universal-links/
9. Hook productivity: https://hookproductivity.com
ResearchGate has not been able to resolve any citations for this publication.
ResearchGate has not been able to resolve any references for this publication.