Best way to create a reminders system (like backpack's)

Hey all,

I have some idea's floating around in my head and I'd like any opinions
on the best way to go about it and how to do it.

I'm basically wanting to create a simple reminders system in my apps.
Ideally it would be something similar to backpacks reminders, though
now all I'm looking for is just email alert functionality.

The process for the user I want to be as simple as:

1.) Click create
2.) Enter title, reminder note, due date and reminder (i.e 1 hour
before, 1 day before, 1 week before etc..)
3.) Click save
(#4 in the future) Email gets sent out based on when they want the

What I'm trying to figure out is how best to "poll" the table rows of
saved reminders to send out the actual emails in an accurate way. Do I
use something like backgroundrb? Do I make a method that scans the db
once a day via cron and "schedules" the reminders coming up to send out
via ActionMailer? I don't know how they designed the system in
backpack but I wouldn't think it would be too hard.

Thanks for any ideas or advice in advance.

I believe the new version of BackgrounDrb has a scheduler task built
into. According to Ezra's page 'The new release comes with a brand new
job scheduler. You can use simple triggers like repeat_every or you can
get more complex and use full cron compatible syntax.'

I haven't used it so I can't say how well it fits your needs. It may
be a good Ruby based alternative to cron.

excellent guys, thanks for the info. I will definitely check it out.

Another option I was thinking about after checking out all this stuff
was perhaps to just write a single method to do it all and put a runner
that calls it in cron and have that set for every 5 minutes or so.

But from a efficiency and simplicity standpoint are there some bad
points to that idea?