This is a linkpostāI recommend reading it at the original URL for a better reading UX
I have a somewhat elaborate process for reading things that I find on the web. Iāve been inspired to share it because after many a long iteration it finally feels adequate!
Reading things on the web seems like it should be easy, and yetāIāve been failing at it for years! š
In this article I explore my current workflow and challenges that made it into what it is today.
Highlights and notes are synced into Roam and selectively become SRS items
The goal of the workflow is to: Enable you to reliably read things you want to read (and retain learnings from it) while minimizing effort and attention spent.
Discovery
This is part of the pipeline that received relatively less optimization attention, mostly by virtue of me suffering from abundance of content rather than scarcity. I include it primarily for completenessā sake.
Some ways in which discovery is happening for me are as follows:
Follow-up from previous things I read
people often link related content
Ampie extension is helpful to discover the broader conversation about a given pieceāwhich includes links to related content
Recommendations from friendsāsent directly or via social media
The first problem of reading things on the internet is that there are too many things out there one is tempted to read.
Even if you have a good curation process there is always too much content and too little time.
My first approach to managing the reading inbox was to keep things I want to read in endless browser tabs and breathe a sigh of relief when my browser crashed and all the open tabs disappeared
When I noticed that this process didnāt actually achieve the goal of helping me to read things I wanted to readāI started pushing myself to add things to Pocket/āInstapaper to have a clear backlog of things to read
Which put me in a situation when I had hundreds of articles in Instapaper instead of as persistently open tabs (somehow that only marginally impacted number of open tabs I had š )
The result wasnāt amazingāI went from not reading things and having them eating into my attention to not reading them and forgetting about them.
Arguably it was an improvement, as attention is an important and scarce resource, but as the point of this workflow is to help me actually read things instead of collecting the things I wish I have readāit was a failure.
A better way to direct my limited attention was called for! And I found it in Spaced Repetition
When the item is originally added to Roamāitās scheduled for a review in one of the next few days
During my daily reading time, I review each suggested item. If I want to read it, I do so right then. Otherwise, I either:
I reschedule it further into the future
Or mark it as ādoneā if Iām not interested in the piece anymore
It proved to be a good match for reading inbox handling. The above process has the effect of:
keeping the things I want to read salient
sorting them by excitementāthings that Iām repeatedly not excited to read end up scheduled exponentially further in the future
Listen to content in audio form first
For any new piece of content I want to engage withālisten to an audio version of it first
This is often sufficient to get what I was hoping for from a piece ā
If notāit serves as a first-pass skim read before deeper engagement
This is one of the core pillars of my reading flow ā I think reading things in audio form is underappreciated.
Audio form dramatically extends the range of environments and situations when itās convenient for you to read.
I listen to audiobooks, podcasts and TTS version of articles when I bike to places, do chores and sometimes even while taking a shower (though Iāve been avoiding the latter lately).
This allows me to read moreāin fact it increases my reading throughput to a degree that I can first-pass read things faster than I find new things to read!
Read it once mindset
An important stepping stone to make audio form work well for me was overcoming āonly read a given thing onceā mindset.
What I mean by that is that when I originally started using TTS to read thingsāafter listening to an articleāI felt like āI read this, Iām done with it an and donāt need to engage with it anymoreā.
And while itās actually true for many types of content (opinion pieces, news articles, fiction) - I found it that for deeper, more technical piecesājust listening to something once, often wasnāt quite satisfactory. I wanted to highlight paragraphs, add notes, play with presented models.
As a consequence I was avoiding listening to all content as I had a vague sense of unease ābut what if itās a piece I want to engage deeper with and by listening to it, Iād lose an opportunity to derive full benefit from itā.
Eventually I realized that it was silly š
My new process is:
listen to all the content that comes my way first
this is sufficient level of engagement for a large chunk of what I want to read
for things that need deeper engagement
put them on top of the queue of the to-read things
read them again (likely in text form this time), highlight and annotate them, play with models they present, find follow-up reading
Spaced Repetition reminds me to engage with the piece until I mark it as fully processed
Iāve since transitioned to mostly using Readwise Reader TTS.
The reason for having custom setup was a better UX for playing audio inside the podcast apps and a better voice quality. Reader TTS got both of those things to a āgood enoughā stage.
In-depth reading
For items that survived this far in the pipelineāIāll read them at a designated reading time (usually)
I do most of my reading on an iPad and use Readwise Reader or Hypothes.is for annotation purposes.
Highlights and notes sync to Readwise, then to Roam. The next day I review them in Roam, converting notes that I want to engage with more into SRS items for ongoing review.
Support structures
Some things that I found helpful to make focused reading something that I do reliably and in a productive way
Incorporate āfocused reading timeā to be a stable part of my daily routine
I devote 30+ focused minutes to reading every day after lunch.
Getting an iPad and using it as my primary reading device
Having a dedicated device with good reading UX affordances elevates the overall experience considerably.
Iāve primarily used a phone or a laptop prior to getting a tablet, but both provide a subpar experience for reading.
Iāve also had a Kindle for a while, but I found it frustrating to use for web and PDF content and so it mostly languished in my drawer.
Physical books have nice aesthetics, but overall unsatisfactory UX, so reading a print book is something that Iād do occasionally, but it requires additional effort/āaccommodation for the sake of the experience.
Beeminder was very useful as a way to introduce daily reading habit
But when I relied just on Beeminderāit was an āeffortfulā habit. What I mean by that isāIād do it because I committed to it, but it wasnāt part of a routine, which constantly made me scramble to fulfill Beeminder requirements last moment.
I have a keyboard case for the iPad, but I read things in portrait mode and itās annoying to get it in and out of the case each time I want to take a note.
Plausibly I should just have an external keyboard on-hand
Audio notes are created out of context and I need to manually tie them to the original piece later
Having the SRS around what should I read to be in an external app (Roam) is a bit awkward
The two places are disconnected after the original SRS item creation, and so I need to mark any given article as read twiceāonce in SRS system and once in Reader.
Ideally a domain-specific SRS implementation would be a part of the reading app experience.
Generallyāincorporating learnings from this WF into one tool would be great.
Readwise Reader is getting there, but still has ways to go before itād be an ideal reading app for me.
I make due by building automations and tweaks around the core experience. But the degree to which I can do that is limited and makes me wish once again for a world with more malleable software
Conclusion
Overall Iām finally happy with this workflow, which prompts me to share it š.
I imagine some of its aspects are peculiar to how I interact with the information out there. But I hope that people can adopt chunks of the workflow that work well for their peculiarities. And that if you recognize some of the struggles I went through in yourselfāyou may find my solutions useful.
If you do give it a try or if you have your own peculiar ways of interacting with the information you find on the internetāIād be curious to know
Misc
More things I do or have tried around reading
Display highlights & notes on the page when I visit it at a later point
When I revisit a web page that Iāve previously readāI want to be able to see how I have interacted with itāsee highlights Iāve made, notes Iāve taken etc.
There are several tools that afford for that, but I havenāt found a perfect solution so far.
Readwise Reader has a browser extension that allows you to save things to read later and annotate the web-page in-place
Itād then display the highlights and notes when you visit the page later. Unfortunately itād only be the annotations taken within the reader.
I hope that eventually theyāll have a better integration with āReadwise 1.0ā which is what I use to manage all my highlights from different sources.
Hyphothes.is
Inherently displayed as part of original page. But you have to remember to trigger it to see the annotations.
Only highlights made in Hypothes.is are displayed.
I was interested in reading using Spritz/āRSVP (at least for the first pass)
Itās currently redundant though, as audio serves the role of āfirst pass/āquick skimā.
And if the piece needs a second passāI want to engage with it deeper.
Copying things into Roam and reading them there
The idea was to use Roamās linking facilities for a deeper engagement with the piece. Roam is not a great environment to read in though, and copying fidelity is subpar.
How do I read things on the internet
Link post
I have a somewhat elaborate process for reading things that I find on the web. Iāve been inspired to share it because after many a long iteration it finally feels adequate!
Reading things on the web seems like it should be easy, and yetāIāve been failing at it for years! š
In this article I explore my current workflow and challenges that made it into what it is today.
Workflow
When I see something new I want to readāsave it to Readwise Reader (it also becomes an SRS item in Roam)
When in āpodcast modeā (doing house chores, biking, etc) - queue up a TTS version of an article.
Each day after lunchāread one or more pieces suggested by Spaced Repetition in Roamāreschedule others
Highlights and notes are synced into Roam and selectively become SRS items
The goal of the workflow is to: Enable you to reliably read things you want to read (and retain learnings from it) while minimizing effort and attention spent.
Discovery
This is part of the pipeline that received relatively less optimization attention, mostly by virtue of me suffering from abundance of content rather than scarcity. I include it primarily for completenessā sake.
Some ways in which discovery is happening for me are as follows:
Follow-up from previous things I read
people often link related content
Ampie extension is helpful to discover the broader conversation about a given pieceāwhich includes links to related content
Recommendations from friendsāsent directly or via social media
Aggregator newsletters (Indie Hackers, https://āārationalnewsletter.com/āā)
I like aggregator newsletters because they introduce an additional layer of curation over raw subscription streams like RSS.
Iām also subscribed to a few ānormalā newsletters
Iād love to see a Goodreads-style platform created for discovering and tracking articles.
Ampie gives me some of the same benefits, but less systematically
Curius.app is a more social version of Hypothes.is and also covers some of the similar ground
Reading Inbox
The first problem of reading things on the internet is that there are too many things out there one is tempted to read.
Even if you have a good curation process there is always too much content and too little time.
My first approach to managing the reading inbox was to keep things I want to read in endless browser tabs and breathe a sigh of relief when my browser crashed and all the open tabs disappeared
When I noticed that this process didnāt actually achieve the goal of helping me to read things I wanted to readāI started pushing myself to add things to Pocket/āInstapaper to have a clear backlog of things to read
Which put me in a situation when I had hundreds of articles in Instapaper instead of as persistently open tabs (somehow that only marginally impacted number of open tabs I had š )
The result wasnāt amazingāI went from not reading things and having them eating into my attention to not reading them and forgetting about them.
Arguably it was an improvement, as attention is an important and scarce resource, but as the point of this workflow is to help me actually read things instead of collecting the things I wish I have readāit was a failure.
A better way to direct my limited attention was called for! And I found it in Spaced Repetition
Spaced Repetition in Roam
The core pillar of directing my attention programmatically is Spaced RepetitionāI use it extensively for inbox processing, engaging with content over time and developing habits.
How does this work:
When the item is originally added to Roamāitās scheduled for a review in one of the next few days
During my daily reading time, I review each suggested item. If I want to read it, I do so right then. Otherwise, I either:
I reschedule it further into the future
Or mark it as ādoneā if Iām not interested in the piece anymore
It proved to be a good match for reading inbox handling. The above process has the effect of:
keeping the things I want to read salient
sorting them by excitementāthings that Iām repeatedly not excited to read end up scheduled exponentially further in the future
Listen to content in audio form first
This is one of the core pillars of my reading flow ā I think reading things in audio form is underappreciated.
Audio form dramatically extends the range of environments and situations when itās convenient for you to read.
I listen to audiobooks, podcasts and TTS version of articles when I bike to places, do chores and sometimes even while taking a shower (though Iāve been avoiding the latter lately).
This allows me to read moreāin fact it increases my reading throughput to a degree that I can first-pass read things faster than I find new things to read!
Read it
oncemindsetAn important stepping stone to make audio form work well for me was overcoming āonly read a given thing onceā mindset.
What I mean by that is that when I originally started using TTS to read thingsāafter listening to an articleāI felt like āI read this, Iām done with it an and donāt need to engage with it anymoreā.
I was doing a kind of symbolic representation of reading
And while itās actually true for many types of content (opinion pieces, news articles, fiction) - I found it that for deeper, more technical piecesājust listening to something once, often wasnāt quite satisfactory. I wanted to highlight paragraphs, add notes, play with presented models.
As a consequence I was avoiding listening to all content as I had a vague sense of unease ābut what if itās a piece I want to engage deeper with and by listening to it, Iād lose an opportunity to derive full benefit from itā.
Eventually I realized that it was silly š
My new process is:
listen to all the content that comes my way first
this is sufficient level of engagement for a large chunk of what I want to read
for things that need deeper engagement
put them on top of the queue of the to-read things
read them again (likely in text form this time), highlight and annotate them, play with models they present, find follow-up reading
Iāve been previously using a custom automation setup that allowed me to create a podcast feed of transcribed articles from things saved to Instapaper (https://āāgithub.com/āāStvad/āāpollycast/āā ).
Iāve since transitioned to mostly using Readwise Reader TTS.
The reason for having custom setup was a better UX for playing audio inside the podcast apps and a better voice quality. Reader TTS got both of those things to a āgood enoughā stage.
In-depth reading
For items that survived this far in the pipelineāIāll read them at a designated reading time (usually)
I do most of my reading on an iPad and use Readwise Reader or Hypothes.is for annotation purposes.
Highlights and notes sync to Readwise, then to Roam. The next day I review them in Roam, converting notes that I want to engage with more into SRS items for ongoing review.
Support structures
Incorporate āfocused reading timeā to be a stable part of my daily routine
I devote 30+ focused minutes to reading every day after lunch.
Getting an iPad and using it as my primary reading device
Having a dedicated device with good reading UX affordances elevates the overall experience considerably.
Iāve primarily used a phone or a laptop prior to getting a tablet, but both provide a subpar experience for reading.
Iāve also had a Kindle for a while, but I found it frustrating to use for web and PDF content and so it mostly languished in my drawer.
Physical books have nice aesthetics, but overall unsatisfactory UX, so reading a print book is something that Iād do occasionally, but it requires additional effort/āaccommodation for the sake of the experience.
Beeminder was very useful as a way to introduce daily reading habit
But when I relied just on Beeminderāit was an āeffortfulā habit. What I mean by that isāIād do it because I committed to it, but it wasnāt part of a routine, which constantly made me scramble to fulfill Beeminder requirements last moment.
Making it into a predictable routine is what made it āeffortlessā, Beeminder has applied optimization pressure to help me get there though.
Switch in mindset around listening to a TTS version of an article as necessarily a final step in the process to potentially an intermediate step of pipeline
Things Iām still unhappy about
Taking notes alongside reading
I have a keyboard case for the iPad, but I read things in portrait mode and itās annoying to get it in and out of the case each time I want to take a note.
Plausibly I should just have an external keyboard on-hand
Handwriting sucks
voice keyboards are meh
Audio notes are created out of context and I need to manually tie them to the original piece later
Having the SRS around what should I read to be in an external app (Roam) is a bit awkward
The two places are disconnected after the original SRS item creation, and so I need to mark any given article as read twiceāonce in SRS system and once in Reader.
Ideally a domain-specific SRS implementation would be a part of the reading app experience.
Generallyāincorporating learnings from this WF into one tool would be great.
Readwise Reader is getting there, but still has ways to go before itād be an ideal reading app for me.
I make due by building automations and tweaks around the core experience. But the degree to which I can do that is limited and makes me wish once again for a world with more malleable software
Conclusion
Overall Iām finally happy with this workflow, which prompts me to share it š.
I imagine some of its aspects are peculiar to how I interact with the information out there. But I hope that people can adopt chunks of the workflow that work well for their peculiarities. And that if you recognize some of the struggles I went through in yourselfāyou may find my solutions useful.
If you do give it a try or if you have your own peculiar ways of interacting with the information you find on the internetāIād be curious to know
Misc
Display highlights & notes on the page when I visit it at a later point
When I revisit a web page that Iāve previously readāI want to be able to see how I have interacted with itāsee highlights Iāve made, notes Iāve taken etc.
There are several tools that afford for that, but I havenāt found a perfect solution so far.
Readwise Reader has a browser extension that allows you to save things to read later and annotate the web-page in-place
Itād then display the highlights and notes when you visit the page later. Unfortunately itād only be the annotations taken within the reader.
I hope that eventually theyāll have a better integration with āReadwise 1.0ā which is what I use to manage all my highlights from different sources.
Hyphothes.is
Inherently displayed as part of original page. But you have to remember to trigger it to see the annotations.
Only highlights made in Hypothes.is are displayed.
Promnesia
Browser extension to augment your browsing experience with additional context
Theoretically this can support annotations from arbitrary sources, in practice it currently only pulls in highlights from an Instapaper export data.
Failed experiments
I experimented with improving iPad web annotation UX
https://āāwww.youtube.com/āāwatch?v=S1HJFI66b8c
spritz speed reading
I was interested in reading using Spritz/āRSVP (at least for the first pass)
Itās currently redundant though, as audio serves the role of āfirst pass/āquick skimā.
And if the piece needs a second passāI want to engage with it deeper.
Copying things into Roam and reading them there
The idea was to use Roamās linking facilities for a deeper engagement with the piece. Roam is not a great environment to read in though, and copying fidelity is subpar.
Kindle