A robust & resilient link-checker

Introducing Rubunkulous, a delicious link-checker using Yehuda’s moneta gem (specifically the  xattr storage module) to find and record dead links in large bookmark collections.

Many scripts and apps purport to check your delicious links but all of them fall to their knees when confronted with my massive 14,000+ link bookmark collection. Rubunkulous was designed to perform well with big link collections like mine. It caches API responses and tracks its own progress so you can interrupt and resume it whenever you like without losing data or wasting time re-checking links.

I used this project to teach myself:

  • loading values from Yaml
  • persisting to and reading from Moneta stores
  • parsing XML in ruby
  • handling ctl-C interrupts and recovering
  • opening and modifying classes with class_eval (this project began as extensions to a library for Ruby called “ridiculous”, but the Ridiculous code had bugs and did some things I didn’t need, so I gave up modifying that and wrote my own (simpler) interface to the Delicious API)
  • handling network exceptions

I hope you enjoy it. May your links be clean as the driven snow!