What, exactly, is the reason for having a "time-out" function on this site (I assume it's the site rather than the individual games)? People end up losing all their progress. Is there a way to block/prevent the time-out from occuring in a game I write? And is there any way to keep it from happening on the games I want to play?
Most of the games on this site are badly written, so their code is really inefficient. It's not uncommon to see games that use hundreds of times more processor time (and memory) than they need to for every simple task.
Playing using the desktop player, you wouldn't notice the slowdown. But when you're playing online, all that unnecessary work is being done by a single server. Sometimes it crashes, and any games currently in progress will get dropped; or sometimes a single request might get dropped causing one player's session to time out.
The most realistic way to minimise the problem is to improve the server; which is an expensive proposition.
Most of the games on this site are badly written
Interesting mrangel! I don't think I have a good feel for what is efficient and what is expensive. Can you give some examples?