DRAs and Hybrids

This is not a post about sound-alike odd science fiction creatures or fuel-efficient vehicles, though I was tempted.

Instead, this is a short aside on two of the proverbial questions of web application development (or more likely, at least for the first, any software development):

  1. Should we build “it”
  2. Is a browser the best place to implement/operate/or use “it”

Where “it” is variously a feature, tool, or whole application.

On the first, this is usually summed up as “Don’t Re-invent the Wheel” or woven in to the various aspects of DRY and YAGNI. Here, I’m thinking of coining “Don’t Repeat Anyone (else)” too.

The second recognizes the trend of many web apps and technologies that sometimes the usability that you can get in a browser just isn’t all it could be (yet). Things like Adobe AIR, Google Gears, and apps like Google’s Ad-words Editor show the potential benefits to working with hybrids.

As we have continued to build out the back-end of the BuildingWebApps.com platform, we’ve continued to run in to both of these time and time again. Here is a recent example.

BuildingWebApps.com works in part by collecting external knowledge about the Ruby on Rails domain. One aspect of this is that we the human editors of the site read a lot of blogs, articles, and the like, and cherry pick those items that are particularly useful or interesting. From there, we add links to them from our site and categorize these links against our taxonomy.

The workflow has been very much a typical Blog reading exercise, but with very efficient link making thrown in. Think del.icio.us bookmarkleting on steroids. When you need to review hundreds or more things a day, you want the workflow to be fast.

At first, we started building a custom RSS feed harvesting and specialized reader implementation in Rails. After playing with this for a little while, we had one of those do’h! moments: “Let’s not build a full featured reader, we all have our favorites, let’s build something that glues those to our web service instead”. Yes, I know, profound.

With the most excellent assistance of Chris Bailey of Cobalt Edge LLC, we now have a nifty Ruby/Cocoa hybrid app that Chris discusses in his Code Intensity Blog. This new little app lets us use our favorite readers (I’m still a NetNewsWire fan) or even a browser, and harvest links with a minimum of fuss. I’m hopefully that someday if there is interest that this would be a good start to a public means of contributing links too.

His write-up gives some useful tidbits about using Ruby in the Mac OS X Cocoa world, creating a really sweet hybrid app in no time that, repeat after me, Doesn’t Repeat Anyone.

Add Your Comments

(not published)


Sponsored By

New Relic Rails Performance Monitoring