markjgsmith

2023/06/29 #

Revisiting Instapaper for offline reading

Following on from Monday's piece about the issues reading web development content offline with Safari Reading Lists and Pocket, I wondered again about Instapaper. I had previously tried it but gave up after getting frustrated with the experience. There was a lot going on last time I tried it. I was having to jump around between apps, and was also in a bit of a rush. It's easy to get lost in a sea of features sometimes. Was the overall app experience really as bad as I remembered?

I re-opened the app to have another look. The default screen on opening the app is the saved article list. The first thing I noticed was that it just sort of looks a bit classier than Pocket's listing page. The title font and the layout of each item results in a vaguely newspaperish vibe. The content just seems to fit the available space a bit better. There are both titles and descriptions and less white space around the thumbnails. The article titles all seemed to be correct too. When an item does get saved, it looks kind of nice. I decided to give Instapaper another try.

Let’s look at the same screenshots:

Top of page - Reading Lists
Top of page - Reading Lists
Top of page - Pocket
Top of page - Pocket
Top of page - Instapaper
Top of page - Instapaper

As with the Pocket, the article saved in Instapaper has most of the page styling removed. It looks much the same as Pocket’s version. The site’s style is lost but the page is still readable. I guess some folks like the consistency. Personally I prefer being able to see the original website styling.

Logical Properties & Layout - Reading Lists
Logical Properties & Layout - Reading Lists
Logical Properties & Layout - Pocket
Logical Properties & Layout - Pocket
Logical Properties & Layout - Instapaper
Logical Properties & Layout - Instapaper

As with Pocket, the article saved in Instapaper is missing images. In fact it’s a bit worse because literally all the images are missing. It’s already game over as far as learning CSS. There’s not much point continuing to read the article. But let’s continue for the sake of comparison.

Code Snippets - Reading Lists
Code Snippets - Reading Lists
Code Snippets - Pocket
Code Snippets - Pocket
Code Snippets - Instapaper
Code Snippets - Instapaper

Code snippets are looking better than in Pocket. At least the newlines haven’t been removed, but syntax highlighting has, and that has exposed the style hint meant only to inform the syntax highlighter what language is being used (CSS in this case). Readable but looks kind of ugly. An entire article full of these would be a real slog to get through. Syntax highlighting really makes a big difference when trying to comprehend code.

Article listing - Reading Lists
Article listing - Reading Lists
Article listing - Pocket
Article listing - Pocket
Article listing - Instapaper
Article listing - Instapaper

The listing page for Instapaper looks pretty good, though notice it’s still “downloading”. That never completed by the way, nice though it is to have a progress indicator. I don’t have a screenshot of my Bitcoin article, but the title did get correctly saved. So it seems Instapaper has the better webpage parser, or at least it works better with my website.

Article page - Reading Lists
Article page - Reading Lists
Article page - Pocket
Article page - Pocket
Article page - Instapaper
Article page - Instapaper

The article page for Instapaper is very similar to that of Pocket’s, though I think I prefer Pocket’s version, less wasted space. But as previously described, Pocket gets the title wrong, at least for my website.

The overall Instapaper experience is better than I remember but the following issues are still there:

  • Images still missing much of the time
  • Code snippets are there and readable, but look weird, no syntax highlighting
  • You can’t copy and paste article titles on an article page, that’s really annoying
  • When images do get saved, there is no way to zoom, so anything with detail is unreadable

This time I figured out how to ensure the Instapaper icon always appeared in the Share Sheet. That’s the box with the arrow emerging from it that you tap to share things throughout iOS. I think of it as the share button, no idea why they call it Share Sheet. Previously it was there sometimes, other times it wasn’t. I installed the bookmarklet too, very difficult installation procedure, and I found it didn’t always work. There was a 3rd way to post via email, which might be useful but it wanted access to my contacts and I’ve had bad experiences with that.

The thing that struck me was how confusing setup was. That’s what got me last time. It never felt like I got to a safe place during setup. Even after completing setup it still felt like there were two many ways to post and when it didn’t work I wasn’t sure if it was me, or the setup, or iOS config. Eventually I gave up.

I’ve been using Instapaper for a few days now, and for non-web development content it’s actually quite decent. The item download indicator is the biggest improvement over Pocket. The classier look is a big draw too. It’s nice when apps have the right vibe.

Overall though for reading web development content while offline, none of these apps are adequate. If you are relying on them to learn web development you will be at a profound disadvantage compared to being online. That’s currently a certainty. #

Ideal offline reading app for web development content

I've spent the early part of the week exploring various Read Later apps for reading web development content offline. First I compared Safari Reading Lists, Pocket and then I added a comparison of Instapaper. These are the most popular. What I found was that none of them were adequate. It's important because it's one of those things you don't realise you might need until you do, at which point if it doesn't work, well it's too late.

The main reason the current apps all fail is their handling of images and code snippets. A huge part of web development content is diagrams, screenshots and of course code and configuration examples. Without these it's very difficult to understand what the author is attempting to communicate. Most of the current apps remove page styling in order to save on space and apparently to create a consistent reading experience.

That's all well and good but by removing the styling they also remove the code syntax highlighting and occasionally the formatting, including newlines. Without newlines the entire code snippet is squashed onto 1 really long line. That makes it really really difficult, nay impossible, to comprehend web development articles with any kind of complexity.

The code snippets problem is bad enough to make things really terrible, but on top of that, very often images from the saved articles don't get saved. Instead either empty rectangles where the images used to be, or indeed, nothing at all. You might not even know that something important is missing. Both these bugs together make reading web development content offline effectively impossible.

I put together an opinionated list of features I think is necessary for a Read Later app in order for it to be useful for reading web development content.

Basics

  • Setup should be easy, install the app and you are ready to start saving articles
  • It should be totally obvious how to save a page from Safari, no wondering if you have to use a bookmarklet or the "share sheet", whatever that is
  • No need to configure anything in iOS settings
  • Saving always at least adds a new item, or displays an error somewhere if there was an issue, a viewable activity stream for all modifying operations performed would be useful
  • All images in a page get saved no matter what
  • Code snippets and config file examples remain untouched, with syntax highlighting, newlines etc
  • App displays when it is downloading / synching items
  • App downloads and syncs in the background so you never have to check that it synched before you go offline, no surprises when you get offline, the articles you saved should be there ready for you to read
  • Clear docs with guidelines / best practices for website devs so they know how to structure their pages in order to have their pages save correctly
  • App doesn’t randomly refresh pages, once the page is downloaded / synched, you can switch between pages quickly and easily without the page going blank or loosing content
  • App doesn’t insist on restarting every time you bring it to the foreground
  • Title, description and website address are always saved and displayed correctly on saved articles listing screen
  • All text of an article can be copy pasted, including author, date/time, title, images and code snippets
  • Images can be zoomed
  • Listing page has a thumbnail next to item

Nice to haves

  • The page looks identical to the page you saved, don’t remove styling
  • In the background save copies of pages linked to by the saved page, and be able to read these pages offline when you click on associated link in the saved page
  • Videos get saved for offline viewing
  • Widget to easily see the list of items being downloaded / synching
  • Automatically create an archive of the page using an archive service like archive.md or archive.org way back machine

I think that a Read Later app with these features would be good enough for reading web development articles offline. Reading articles offline is not only extremely convenient in a busy world but it could even prove vital should you experience internet connectivity issues. Hopefully that's something that many of us have learnt, having now got through the many pandemic lock downs of the past couple of years. App builders please consider making your apps ready for these types of scenarios. #

Today’s links:

  • Six more companies competing with OpenAI - Adept AI, Inflection AI, Runway, Alph Alpha, AI21 Labs, BAAI - The magic film visual effects tools company sounds very cool, uses generative AI to add all sorts of effects from text prompts. There also appears to be a trend in training models in non-english languages, which of course makes sense. I'd also like to try out the AI gramerly tool. Which one of these companies is going to be the next google, microsoft, apple or meta? aisupremacy.substack.com #

  • 🚀 New Post: Revisiting Instapaper for offline reading - A continuation of the exploration of Read Later apps that I did earlier in the week. This time I decided to try Instapaper again. The aim here is to have a way to read web development content offline. So far the results from using Safari Reading Lists and Pocket have been very variable. How about Instapaper, is it as bad as I remember? markjgsmith.com #

  • The Mac Pro’s biggest problem is the MacBook - I started out reading this article thinking I wasn't that interested in the topic, but as I read, memories of jobs past, and various digital collaboration environment infras I helped setup, flooded my thoughts. Turns out I actually have quite a lot to say about high end mac hardware. Most of the VFX shops I worked for used Windows and Linux, because of upgradeability/modularity but also because it was easier to integrate them into the workflows. The folks running macs tended to be one offs, on their own island so to speak, with their own custom setup. From a sysadmin perspective, those systems were harder to maintain. At one place all the engineers actually got Mac Pros because then we could have any OS we wanted by running Parallels, which made sense given we were supporting artists running all 3 OSs. I loved my silver tower, it was freaking awesome! But probably way more power than I actually needed at the time. Oh how things change. Dear lord how I wish I had enough power to not have to wait 5 minutes switching feature branches or pushing to remote. Life is waiting for progress bar atm. www.theverge.com #

For enquiries about my consulting, development, training and writing services, aswell as sponsorship opportunities contact me directly via email. More details about me here.