What’s a Linkable App and Why Does Linkability Matter?

At CogSci Apps, we believe that all apps should make it extremely easy for users to get (copy) and open hyperlinks to the data they present or manage. In other words, all apps that deal with resources should be truly linkable. A hyperlink specifies the name and address [URL] of a resource.

We believe users have a right to easily and automatically get links to their data.

Truly linkable apps

A truly linkable app is an app that provides both a user interface and API for linking. This API makes it possible for apps to communicate with each other about what matters most: each app’s content (documents and objects). We maintain a list of linkable apps —it’s not complete; but it’s reasonably extensive. If your app is linkable but not listed there, please get in touch with us.

More specifically, linkable apps provide an API to

  1. Return the name of the current foreground document or object.
  2. Return the URL of the current foreground document or object. One could define a single method that returns both the name and the address of the current object or document.
  3. Of course, an app’s URLs are only helpful if the app can resolve and open them. For example an OmniFocus:// URL is helpful because OmniFocus can open OmniFocus:// URLs.
  4. So, if an app has universal or other web URLs and local URLs they need to clearly inform their users how the URLs can be mapped. That is to say, they must indicate how the universal (or web) URL can be utilized locally.
  5. Apps that enable the creation of new resources need to provide an API to create resources, given a specific name, and this method must return the URL of the newly created resource.

However, we are not advocating for a specific API. Interoperability can sufficiently be achieved if developers provide human readable documentation for their APIs such that a human can understand how their API adheres to the conceptual linking requirements. For instance, an API might state that its copyLink method returns a markdown (plaintext) link, and/or that it returns a link in some other formalism (such as RTF or HTML).

This flexibility is helpful for app developers providing the API. They can use AppleScript, JavaScript, a command line interface, an x-callback-url scheme, or anything reasonable that they document. These flexible requirements mean that interoperable linking can rapidly be implemented by many apps, without a standard body slowing down what can be a rapid process. (Compare the fate for instance of SCORM). It is easy for automators, whether or not they are professional software developers, to read such APIs and to develop their own code to use them.

User interfaces

Methods to copy links should be in a standard location in the user interface, very easy for users to access. Moreover, there should be a keyboard shortcut to get the link of objects.

State of hyperlinking today and the importance of linkability

I don’t think a developer would, let alone should, doubt the importance of linking on the web.

And so, a large number of Mac apps are in fact linkable. The apps that have are marked with √👍 on the Linkable Mac Apps web page are truly linkable.

Unfortunately, many apps still do not even provide a user interface for copying links to their local (including cloud-synced) data. Of those that do, the user interfaces often require several clicks, and do not have a keyboard shortcut, nor even allow a keyboard shortcut to be defined for them.

Moreover, many apps do not provide an API for anything. In macOS APIs can be written in AppleScript or JavaScript. They can also be made available via the command line.

People have become so accustomed to the weird fact that, without Hook, information resources are not easily addressable on the Mac that they tend not to realize that its just as important to be able to address local (or cloud synced) resources as it is to address remote resources.

We feel that the Copy Link command is just as important as Copy and Paste. Copy and Paste commands are almost always located in an Edit menu, which makes them very easy to find. And they have a standard keyboard shortcut: ⌘C and ⌘V.

By making link access commands easy for users and software (via API) to apply, the full potential of interlinking can be realized.

We have described many of these cognitive productivity benefits on Hook’s benefits web page. The power of human brains comes from their massive interconnectedness and intra-connectedness. Being able to connect knowledge resources together can improve one’s cognitive productivity — or efficiency and effectiveness at using knowledge.

Manifesto for truly linkable apps

Our co-founder, Luc P. Beaudoin, has co-authored a manifesto chapter in the upcoming book, the Future Of Text edited by Frode Hegland. The chapter’s title is

A manifesto for user and automation interfaces for hyperlinking: How hypertext can enhance cognitive productivity

The Future of Text will be published in November 2020 by the Future of Text Publishing.

CogSci Apps and like-minded thinkers intend to publish a new manifesto, based on the above. We invite software developers, journalists and professors in the information retrieval space to provide feedback on and co-sign this manifesto. If you would like to join, please email us at linking-manifesto “at” our CogSci Apps domain name or via the Hook productivity forum.

Not only for Hook

This manifesto is not merely for CogSci Apps and Hook. In fact Hook and CogSci Apps actively support interoperability. The manifesto aims to make it possible and easy for all users and developers to get the full value of their data — in all the apps they use.

Help Contents

Help > Integration :