The macosxhints Rating:
[Score: 9 out of 10]
- Developer: Peter Borg/ Product page
- Price: Free (Open Source)
Lingon is a GUI interface (10.5 only) to the launchd process in OS X. launchd is a way to run things on a schedule -- previously, cron could be used to to this (and it still can, but launchd is the preferred solution). As a user, I found cron relatively simple (if not somewhat obtuse). launchd, however, was another story -- I couldn't understand the need to write an XML file to handle a simple scheduled task. Lingon takes care of all that, though. Using its GUI, you set the action you'd like to run, the times you'd like it run, and any other conditions under which you want your task to run, and Lingon does the hard stuff.
The interface is amazingly simple -- section one is the name for your task (must be unique), section two is the command or program to run, and section three controls the conditions under which it runs. After you have everything set up, click Save, and you're done. Not everyone may need to use Lingon, but if you need to run a recurring task, it's a simple way to get the job done. (It's also a great way to understand launchd better, as you can look at the XML files Lingon creates to see how things work.) You can read any of the linked hints to get a sense of how it works, or just download it and give it a shot.
The only downside to Lingon is that it makes you logout and login to effect the changes to launchd. If you're comfortable with the Terminal, however, you can use launchctl to do this without a logout/login. I hope the ability to have new events take effect immediately is added in a future Lingon release, however -- it'd be nice to skip the Terminal bits.

