I'm about to hit a point in my pet project where I need something but I havn't chosen my approach yet. I've ehard Pyres is better than Celery.
Celery does what it's supposed to; that's about all I can say for it. I'd suggest writing a few simple jobs and testing them in similar environments under as much load as you can. Look for things like consistency of logging and running tasks exactly once across multiple consumers despite the semantics of the queue you pick.
I never really saw the point of that part of celery anyway. Cron's perfectly adequate on its own (and installed just about everywhere).
I agree that you should keep the code itself in python, but that can be handled just by making it a management command that gets called by cron.
Sysadmins understand and love cron, too. I think celery reinventing the wheel might make some of them a bit mad.
- being able to modify the task frequency from the admin
- cron needs special care with setting the environment variables like PATH
celery is definitely nice, but it does have its limitations (like everything else).