A Retrospective: CloudPull and Google Reader

With the Google Reader shutdown, I have been reflecting on the CloudPull product decisions I made as they relate to Google Reader in general and to the shutdown in particular. I also thought it would be interesting to share my thoughts with others.

Here is a list of relevant decisions, and what I think about them in retrospect.

May 2011: What to back up

In the beginning, CloudPull backed up:

  • The title and URL for each of your Google Reader feed subscriptions.
  • The title and URL for each of your Google Reader starred articles, shared articles, liked articles.

CloudPull did not back up:

Content from articles: I could have backed up the article content from within the feed, and I could have even made a web archive of the article content from the web site serving the feed. I decided that neither were necessary. The article content from the originating web site is outside of the Google account and therefore outside the scope of what CloudPull should be backing up. The content within a feed is often incomplete, and is almost always mirrored on the originating web site. While the decision not to back up article content seems reasonable to me, I did get feedback shortly after the version 1.4 update asking to back up article content. I can't implement every feature request I get, but in hindsight I should have implemented the ability to back up article content from the feed.

Not backing up tagged articles: Honestly, I did not back up tags because I strongly suspected that they were little-used. In addition, Google Reader automatically applies tags to articles based on their assigned subscriptions. Backing up tags that were assigned to subscriptions would have significantly slowed down backups. I have mixed feelings about this, but I think this was the right decision at the time.

Not backing up all articles Another approach would have been to back up every single article in your feeds that was available via the API. This is not functionality I ever wanted for myself, and I never saw any customer feedback indicating that it would be desirable. More on this later.

November 2011: Liked and Shared Articles

In October or November of 2011, the concepts of “liking” and “sharing” articles were removed from Google Reader. In its place was new functionality to share articles via Google Plus. I adapted to this by keeping existing liked and shared articles, but no longer updating the lists or backing them up for new customers and accounts. While the API still provided the ability to back up this data, the Google Reader API was never supported by Google and I had little confidence that this aspect of the API would keep working. I think this was the right decision.

February 2012: Liked and Shared Articles

CloudPull 2 introduced the concept of snapshots. Since liked and shared articles were gone from the Google Reader user interface, and since no new customers had asked for this ability in CloudPull 1 after they had been removed for new customers in November, I decided to treat liked and shared articles as deleted data. From a user's perspective, they essentially had been deleted from Google Reader, and no one seemed to miss them. I handled this by treating liked and shared articles as items that had been deleted from Google as of the first CloudPull 2 backup. The items were available via old snapshots until (by default) 90 days later when the snapshot was deleted. I think this was the right decision, and never got a single bit of feedback that suggested otherwise.

January/March 2013: Free version of CloudPull

In January of 2013, I added a version of CloudPull to the Mac App Store that was free for a single account. With an in-app purchase, you could unlock premium features such as the ability to back up multiple accounts. In March, I changed the way the Direct Download edition works so that, instead of providing a free 30-day demo, it had the same free-for-one-account free trial model.

In general, changing the sales model provided a significant reduction in Mac App Store sales and a significant improvement in direct download sales. I may never understand why customers from the two sales channels reacted so differently to what is effectively the same change.

Both free trial models have significant limitations as they relate to the Google Reader shutdown. With a 30-day trial period, CloudPull would perform continuous backup for 30 days and then stop backing up your accounts. However, it would continue to provide full access to your backups indefinitely. The ability to perform continuous backup is no incentive at all for customers looking to create a one-time archive of a service that is going away.

The single account model is also difficult, because I strongly suspect that using multiple Google accounts for Google Reader is very uncommon.

Considering I did not know until afterward that Google Reader was shutdown, I do not regret either the original 30-day free trial demo model or later changing that to a single-account sales model. But I should have reconsidered them later on.

March 13, 2013: Google Reader shutdown announced

The day the Google Reader shutdown was announced, I pre-announced an update that would restore the ability to back up shared and liked articles and that would allow these articles to be exported into HTML Bookmarks files. This was a very good decision; the only thing I question is why I did not include the ability to export article links into HTML Bookmarks files on day one.

I ordinarily live by the cardinal rule of never, ever, ever pre-announcing a ship date on a software feature that I have not written. But in this case it was the right decision. I knew I could easily meet my own deadline, and I knew that customers would be asking for information.

Also, on this day, I came across a tweet from Tom Church pleading for some way to retrieve tagged articles. The next day, T.J. Usiyan posted a complaint about Google Takeout not offering export of Google Reader tagged articles. I knew I needed to do something, and I also knew I could not get it into the update that I had already pre-announced. So, a subsequent update was born.

I also realized that, primarily as a side-effect of keeping XML blobs around for diagnostic purposes, CloudPull did have a copy of article content from within the feeds. It never exposed that data, but it was there. So, I changed the way Quick Look previews work to expose that content. I heard from several customers who really wanted that content, because Google Reader had the only copy of some articles whose original sites had shut down. I am extremely happy that I added this functionality; I only wish I had included it from day one. I also wish that CloudPull provided a better reading experience for that content, but I can add better reading functionality in a future update for customers that have CloudPull-based Google Reader backups.

In the end

I am very glad that I released both of these feature updates, but I do have some regrets about my handling of the shutdown.

First, I should have made the improvements in these two updates premium features only available to paying customers. My impression is that many customers have downloaded the app, used it for free to back up their single Google Reader account, and had no need to buy anything from me because I just gave the functionality away. I appreciate that many did buy out of a sense of gratitude and that many others may eventually buy because they now see what the app can do. But not charging money for the new capabilities that I added in these two updates was a missed opportunity. Ideally I would have made backup of Google Reader a premium feature, but there was no good way to do that while grandfathering in existing free customers.

Second, I regret that the app never backed up all articles. Honestly, I never saw this as meaningful, and this is not functionality that I ever wanted. But based on feedback I saw during the last week of Google Reader's existence, and based on the popularity of Mihai Parparita's reader_archive tool, I think this would have been functionality that many would have appreciated. But I did not realize this until it was too late.

Finally, I grossly underestimated the extent to which people would have moved on to other reading systems long before the July 1 date. I originally announced that I would release an update that disabled backup of Google Reader on Friday, June 28. I later updated the date to June 30. But that week and throughout that weekend I saw big increase in web site traffic and sales, largely due to customers looking to back up and archive their Google Reader data. I ended up not releasing the update that disabled Google Reader backup until after the shutdown finally happened. I looked a bit silly delaying the update twice.