Feedbin has been updating articles if they change after they were originally published for a little while. When this was added, Feedbin would also save the original article.
This feature provides a way to see the differences between the article when it was first picked up by Feedbin and the latest version.
I had been thinking about this feature for a while but lacked a way to show differences in HTML markup effectively. There are many libraries for showing the differences in two pieces of text, but most of them don’t take HTML into account. The answer came the other day when I saw this tweet about Discourse’s updated post history interface which included a nice HTML inline diff option. So Feedbin uses the code from Discourse which I packaged into a Gem.
Feedbin now supports the PubSubHubbub or PuSH protocol.
Refreshing feeds without PuSH is inefficient. The process is to download every feed, look at every item in the feed to check for new content, then repeat this many times a day to stay up to date.
PuSH is great because instead of downloading the entire feed over and over again, PuSH sends new content to Feedbin making it so articles show up right after they are published. Feedbin already has thousands of articles getting pushed every hour.
Julien Genestoux from Superfeedr took me up on my offer to pair with me on this. Julien knows the PubSubHubbub protocol well and I could help out with my knowledge of the Feedbin codebase. It was a great experience and I think it came together more quickly than if either of us had attempted to do it alone.
About 20% of feeds in Feedbin support PuSH and it would be great to increase this. If you own a blog or a site that publishes RSS feeds and you want to make sure your updates are propagated faster to Feedbin, you should also implement PubSubHubbub on your end. It’s a completely open (and free!) protocol. You can use a community hub like http://pubsubhubbub.superfeedr.com for this.
Percolate allows you to register queries ahead of time, then whenever you send a new document to be indexed, elasticsearch can tell you if this document matches any saved queries.
Here’s how it works.
Feedbin is a Rails app and uses the tire gem for working with elasticsearch.
Whenever an action is added or updated, it is also sent to elasticsearch as a percolator query.
An array of matched actions ids is returned in result['matches']. So if this entry mentions “kittens” an array like ["3"] would be returned.
Feedbin uses Sidekiq to process background jobs. The ActionsPerform.perform_async part is creating a new background job that performs the actions. A simplified version of this looks like:
Actions are a great way to filter out articles you’re not interested in or surface articles you want to be sure to read.
Because this is based on search you can use some powerful operations. For example if you’re not much of a baseball fan, but still want to see news about your favorite team you could set up an action to mark anything as read that matches baseball NOT yankees, which would mark anything as read that matches baseball but keep baseball AND yankees unread.
If you’re using Safari on OS X Mavericks there is a push notification action. This is the new home for configuring push notifications because it makes the old location redundant. All push notifications that were previously set up have been migrated into actions.
If you have not tried Feedbin before, now is a great time to check it out. There’s a free trial so it’s easier than ever to give it a try.
Feedbin can now take advantage of this by offering push notifications for new articles.
To set it up you will need to be using Safari 7 on Mavericks. Then visit the Feeds page under Settings and there will be an option to enable push notifications. Click that and choose to allow Feedbin to send push notification in the resulting pop-up.
Next you will need to select which feeds you want to enable push for in the Feed Settings list. It’s a per-feed setting because enabling this for all feeds would be overwhelming.
Clicking on a notification will open up the original article and mark the article as read in Feedbin.
I read Frank Chimero’s “The Inferno of Independence” yesterday. It’s a great article, and while I generally have poor reading comprehension, something resonated with me which is that “independence is lonely.”
I’ve been thinking that one thing I miss when working on Feedbin is the opportunity to work with others. Open sourcing Feedbin has helped make the work a bit more social, but I’m still left wanting more.
So I have an experiment I’d like to try.
Do you have an idea for a feature or a bug you would like to fix, but aren’t sure how to approach it or you would like to work on it with someone else? If so, why don’t we work on it together?
To set something up, just send me an email with what you’d like to work on and when you’re available.
The only thing I would ask is that you already have Feedbin running locally and have Screenhero and Skype installed.
The format toolbar has some options for styling the look of articles. There’s a couple of nice font choices including Whitney and Sentinel both from Hoefler & Frere-Jones. You can also change the font size and make the text full width.