I agree. Unfortunately, I think the "basic expectation" aspect means that users really will <i>not</i> "love it and thank you for it". They'll just go "meh".
I think that frameworks like Rails or Django are not built to solve this problem out-of-the-box. Thus if you're not careful enough you'll end up with some messy ass JavaScript code (and I have seen it everywhere).<p>Lately though, I've started to build apps using Backbone (I guess you can use Knockout or Batman too) and Django (or Rails) just to build the API, and it's very simple to do this.<p>All you have to do is:<p><pre><code> // Poll every 10 seconds to keep the channel model up-to-date.
setInterval(function() {
channel.fetch();
}, 10000);
</code></pre>
At least in Backbone <a href="http://documentcloud.github.com/backbone/#Model-fetch" rel="nofollow">http://documentcloud.github.com/backbone/#Model-fetch</a>
Yea that's nice and all but every new feature requires time, adds complication, needs to be maintained forever, and is a potential source of bugs.<p>Like everything else it should be a cost/benefit decision.