These Lab Notes document my research in progress. My current research area is on the future of personal computing.
General purpose personal computing software
User-created application and system views
User-created item views
Browsing contexts & recent paths
Universal reference containers
Universal data portability
Building apps in minutes, not months
Introduction to these Lab Notes
In last week’s lab note, we explored the first principle for the operating system of the future: Universal data portability.
So much of our lives now exists as digital things (notes, tasks, events, invites, images, documents, etc.) which are all siloed within their various apps. With universal data portability, we are able to pull these things out of the rigid containers which once held them and bring them wherever we wish.
One of last week’s examples of this principle in action: you could take a podcast episode and pull it into your note where you are jotting down your thoughts as you listen.
The note is a natural container; it is fairly obvious to users of today’s operating systems that a note might be such a place where they can put any of their things in this new system. But notes aren’t the only things which can contain other things. In fact, all things can.
This brings us to our second principle for the future OS: Universal reference containers.
All items can contain other items. How those things might be displayed to a user depends on both the containing item and the contained item, which inherently shapes the functionality different types of things might offer to users.
For example, a todo list and a note function similarly: they are both lists of text. But they offer interaction with their items in slightly different ways: unlike a note, a todo list offers checkboxes along the side next to each item within it.
Things get even more interesting when we start to create new items within (or encapsulating) other items.
Consider: Say you notice an unexpected pending charge in your bank account. You could create a reminder and put the charge item within it, to check into it in a few days when it posts. When the reminder comes up, you would be able to directly open the charge to see all the details, like the merchant name and phone number.
Or: Say you have an upcoming meeting, during which you’ll need to reference a PDF with the meeting agenda, a project board with the current status, and a few other things. You can put all of these things — even the active email thread regarding the meeting — into the event on your calendar. During the meeting, these items will all be gathered together and ready to go.
Or, for a simpler example: Say you have a gate code you need to get into your public storage facility. You could create a note within the business’ map location card to save the gate code. Whenever you’ve mapped to the location, upon arrival, the location card would already be up with your gate code ready to go.
A final thought to consider:
All items can contain a note, a reminder, or a link to a webpage. These features are often added to every app over time (an event in a calendar app gains the feature to add notes and URLs to it, for example).
But with this inverted OS setup, each individual app doesn’t need to build each of these features. The system inherently provides them, and the user is able to choose exactly what kinds of things (and rendered by what kinds of apps) they want. For example, a user might want to use an app that operates reminders on some other heuristic than just a simple date and time (current location for example, or spaced repetition).
My own email app brought what felt like a ground-breaking feature to email almost ten years ago when we introduced adding reminders to emails. In this operating system of the future, no app would have to build such a feature, as a reminder can be added to anything the user wants.