Ask HN: Anyone working on systems to help preserve our attention?
Even in the workplace, there's a constant stream of information and distractions. Where I used to work there was 4 different systems I used on a daily basis, each with its own notifications.
I'm wondering if anyone (companies, researchers, organizations, individual people, etc...) is working to combat this assault on attention. At the extreme I imagine "algorithms to fight back the algorithms", or "synthetic attention" that filters out and aggregates information for you. Surely, lots of simpler and more pragmatic solutions also exist.
Plenty of people at my job did amazing work despite all the distractions. Maybe we could study what these people do and make it easy to do it by default, by integrating it with the company tools. I'm guessing aggregating and holding back notifications and gui updates that aren't related to the task at hand. Or something like an integrated pomodoro timer that would block notifications and instant messages during sprints.
Or, imagine a service like Youtube, but instead of maximizing watch-time, it would maximize some definition of satisfaction. Perhaps it would let you enter your goals, like: not watching more than x hours per day or week, unwinding on workday evening, learning or staying up to date on certain topics, encouraging curiosity or creativity, etc... And it would recommend videos that make you feel satisfied after the allotted time, instead of making you mindlessly watching for hours.
Or something to help me look over and sort all the articles and videos accumulating in my open tabs...
(Just now I heard the sound of a new email and I'm tempted to tab over and look at it...)
I feel like helping preserve our attention can have a huge positive impact in today's world. I'd like to know if anyone is working on this problem, and I would myself like to work on this problem.
10 comments
[ 5.0 ms ] story [ 35.2 ms ] threadTwenty years ago I did undergrad research at a Notification Systems research group[1] with Dr Scott McCrickard. Much of the research had to do with giving people information in efficient ways that limited attention disruption but also took into account the task (like an emergency to act on vs just information).
As part of this research I surveyed the cognitive psych literature. I remember early research in attention in UX had to do with pilots and cockpit system design. A pilot must take in lots of streams of information while still flying/looking out the window. I also remember that there’s a research topic of “vigilance” - boring tasks that require constant attention. Like being on watch on the bridge of a shop at night or guarding something. I remember people can only stay in this state for 20-25 minutes, and must rotate their job or have a game to play or busy work to do to do this at all well. I also studied “cognitive architectures” which at the time made modeling attention a central focus[2]
1 -https://research.cs.vt.edu/ns/ 2 - https://en.m.wikipedia.org/wiki/Cognitive_architecture
You can try it out with a temporary account at https://linklonk.com with invitation code "hn".
Similar to Reddit/HN users submit links and vote on them. The difference is how the votes are used. When you upvote something that was worth your time the system connects you to other users who upvoted it. These are the people who deserve your attention since they have been able to recognize it before you did.
The stronger you are connected to someone - the more weight their future upvotes have for you (ie, their upvoted items show up higher in you list).
Instead of you figuring out what is worth your attention and who to trust, the system takes care of it for you. It keeps track of the signal-to-noise ratio of every user and every RSS feed and then ranks content for you accordingly. All you need to do is:
1. upvote stuff that was worth you time - to connect to good content curators
2. downvote stuff that wasted you time - to disconnect from bad content curators.
This creates a feedback loop that brings you content that is worth your attention. The important part is that it uses your definition of "worth your attention" - whatever you upvoted. You are in control.
Another difference is the pace updates.
Reddit/HN demote items very quickly based on the exponential time-decay component in the ranking score.
On LinkLonk you don't have to keep up with the constantly changing feed. The system shows you the top-20 recommendations and waits for you to mark them as read. Then you get your next top-20 that you have not seen yet. It works at your pace.
There were ~40 new accounts created from this thread. I didn't really expect that many. That's encouraging.
One thing I noticed is that all of the new users skipped the "Welcome" screen which asks users to enter three links they liked recently. So I will likely remove it before doing the "Shown NH".
Personally, I would not use a system like this unless I could vote by category. E.g. I may not trust someone on gardening tips even when I place their taste in music very highly and I would enjoy seeing both topics equally.
But you can create new ones for each of you distinct areas of interest.
For example, you may want to create a collection called "music" and put music links there. When someone upvotes a link that you also upvoted in "music" then they will only connect to your "music" collection, and not your other collections. LinkLonk tracks the trust at the level of collection-to-collection (not user-to-user).
Personally, I put all general interest stuff into the "default" collection, Machine Learning related links into "ML", movies into "movies".
So far I described how organizing what you liked into collections helps others (ie, they get more focused recommendations from you). Why would you want to do this organization in the first place?
There are a couple of reasons:
- When you go to the history of your ratings (https://linklonk.com/ratings) you can filter it by the collection you put it into. This helps you find the article you liked. It is kind of a bookmarking service this way.
- Normally, the recommendations you see are for all of your collections. But you can filter your recommendations to see only items for a specific collection (e.g., music).
Finally, it is not much effort to keep your likes organized once you get started. LinkLonk knows which collection every recommendation is closest to and when you upvote something it will most likely be added to the right collection automatically. For example, if I liked a blog post about an ML topic and put it into "ML", then the future posts from that blog will go to "ML".
As someone who has been working on this for myself for a while, I think the right route starts with personal solutions, then well-documented published personal solutions.
This creates a lot of "taps on the shoulder": a Phd tapping on your shoulder to set up or fix their compute environment, or to get them data, or to deploy their model, or to make a temporary application to show results to a client and make it available "on the internet" behind authentication.
A developer who wants to use a model in an application being dragged into the ML realm when they only want to use the capability of the model, not get intimate with its dependencies and setting it up.
Ad-hoc experiment tracking schemes in spreadsheets, logs, physical notebooks, emails, verbally, and "in my head" that made it almost impossible to know what we did a couple of months ago, or why we did it, or what worked best, etc.
The fact that people needed to know a lot of things about a lot of tools in order to make things work put a lot of stress and overhead to do any work.
So we created our internal machine learning platform[0] to remove as many friction points as possible. Basically, we try to make everything that sucked the responsibility of that system, while maintaining flexibility, as one of the reasons we built our own is that we found the other offerings trying to force us into what they consider to be "The Right Way" or a rigid pipeline, or having to pollute our notebooks with their SDK that tied you to their stack/infrastructure instead of relying on APIs or protocols.
We'll allow notifications and events at some point, but we'll leverage what the users are already using instead of adding yet another distraction channel. For example, we'll enable webhooks and integrations so if people are using Slack, they can tie it to the platform to be notified when a training job's status changes in Slack, rather than asking to enable notifications. If they're not using that, they can tie it to their other systems and do things programmatically, for example. We're very sensitive about these topics.
The result of this is what we've been working with clients without tapping on our colleagues' shoulders for a lot of things, and letting them focus. This is really important as all these interruptions and "urgencies/I need it for yesterday" can devastate a team or a company, push people to quit or burn out, etc.
- [0]: https://iko.ai