I was looking at Am I allowed to use/create robots to track questions? just now and started wondering whether my current userscript to help with reviewing has quite the right internal rate limits. It reloads the page* every so often (30 seconds on SO, 5 minutes elsewhere) if there's no review ready to go, but since I have access to a number of queues, that loads things down a bit more.

On the other hand, because it makes no attempt to maintain the lock on any items, it's really limited as much by my manual review speed as anything else, except in times where there's nothing to review for a while in any queue. Max load at present would be about 13 per minute across three sites.

I'm not aware of any specific rate limits that would apply, so this is really more a matter of good manners, I suppose. It's not as though one user loading ~10 extra pages/min is a problem; it's the principle of the thing.

Is this script sanely self-limited? Or should I tweak the timing some more?

(Note: For clarity's sake, although I really hope I don't actually need to say this, I do not have any scripts to automate any review actions. That would be a remarkably stupid idea.)

(In case anyone on SO is wondering, yes, this is how I manage to cap Late Answers first each day. Gasp!)


*One of these days I'll try again to get the AJAX loading to work. It's oddly less trivial than I'd expect.

  • I don't see a question. Please add a 1-sentence summary. See also "Is it possible to access data in real-time using the Stack Exchange API?". You just need to worry about the quota, the API throttles, and the backoff flag (if you are using the API). If you are using pure JS techniques, reloading a page every 30 seconds is probably okay, but many things only update every 60 seconds. – Brock Adams May 7 '15 at 21:20
  • @BrockAdams: OK, thanks; I've edited. – Nathan Tuggy May 7 '15 at 21:23

From my personal observation and from the occasional SE dev statement, many items update every 60 seconds (cached at server).

Also the page AJAX updates every 60 seconds.
(using JS like: setInterval(updateRelativeDates, 60000);)

So, per sampling theory, sampling more than once every 30 seconds gives diminishing returns.

Personally, I would just reload every 59 to 61 seconds. Since that's the same interval that the page uses, you can hardly get in trouble, right?

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .