E2 is a dumb client of itself for all apparent purposes. If you think of the Everything Engine as a server application, with the data it holds for the user and all of the like, and the browser as the client, we are really dumb about the data transfer. We give everything to the client in one chunk, no matter if they interact with a node, the chatterbox, a superdoc, etc. All the data at one time is in "scope", even though the user doesn't care about all of it.

What The_Cow is suggesting (from what I'm reading) is to make E2 less "responsive" to the users. This would be a bad decision in general for a few reasons; the utmost of which would be the look and feel of the place would change. It wouldn't be a place where you enter a writeup, or vote, and then get the feedback from it right away... It would get queued up and then reduced to being as exciting as one's interactions with an office printer. The site would be less "fun".

Other than that, there are other ramifications:
  • The code changes would be huge. There would be a lot of JavaScript involved, making the site less [compatible. Right now we don't rely on JS to do anything (but use it for a few perks). E2 doesn't currently pop up new windows, and I really like that about it. I really want it to stay that way.
  • The opcode queuing would change the way it all works. Right now the engine works kinda like (from my understanding...) one opcode == one result. You put something in, you get back the results of your operation. Stacking them up is something the server doesn't support.
  • You probably aren't shaving off that many cycles for the huge code hit you are talking about. To me, the amount needed to put in doesn't equal the amount gotten in return.


You have however, identified a few problems here that others have seen. There are a few ways, that I can see that would allow you to make an impact on this sort of thing:
  • An I-Framed (I-Layered chatterbox). The chatterbox may be something that would be a great candidate for an IFRAME (under IE), or an ILAYER (under Netscape). Something that is able to be refreshed without having to redo the entire page. This would shave cycles from chatterbox users who are only getting the results back. This would fall under the category of quick confirmation for the pages, but only for the catbox. The entire site wouldn't work well as frames (I, for one, would snap), but an IFRAME / ILAYER solution may work just fine, without being instrusive.
  • More items that intelligently use the XML Ticker, similar to N-Wing's Java Chatterbox. How many people actually use something that minimizes the strain put on the the server by actually using a Ticker product or what not? These things can cut valuable cycles off of the server if used properly... It's not a browser solution, but it is a solution.
Changing the way E2 works for such a small gain wouldn't be worth the hassle of doing this, even if it were simply a user preference. Admittedly, I wouldn't want to use it, and I don't know how many other people would, under your current description.