I just had the strangest idea or relevelation depending who you ask. Are you still programming in a way that everything that happens on the screen must come from backend. Let me explain: You have a database interface with grids and columns. You do ajax powered interface that reads and writes from the database. Now when visitor changes something, do you process POST variables, save to database and refresh the value on the UI. But why? This creates lag and unnecessary server load. You could almost as easily to update the changed value in DOM so UI stays current and then just save it to the database. I mean all normal applications do is to display character information. Why can't you just do like 1 jQuery call for your own jQuery function that updates value in #id. There's probably already jQuery native API call for this and that's what I'm studying next. With this you just cut your requests in half. I know this doesn't really concern 99.8% of the webapps because with their userbases, they can run in the cheapest shared hosting you can find but it's a big deal if you design system that needs to scale. Less tasks for processing, less power needed when scaling.
Am I the only one didn't update UI with javascript and instead just relied on ajax reading with polling the server or with COMET server? I mean it's no wonder that most of the webapps seems sluggish if you have to communicate every change with the server when the inferface could be done in the browser with user's CPU or GPU if you use that experimental JS library and server could process mostly data writing instead of generating websites.
Web-development seems so "young" compared to operating system development. In OS world it's kinda obvious that you update the UI separately when action happens and you save data when it needs to be saved. It's little bit puzzling because to me it appears that web development is much easier than OS so why there isn't a proper framework with this mentality? And as for SproutCore and Capuccino it seems that those frameworks will only make my life more difficult because I have to learn Objective-C for Cappuccino and Ruby for SproutCore which doesn't make any sense. Isn't framework's job to make my life easier and not require me to learn something much harder than what I'm currently doing? Great example for great "framework" is jQuery. It's javascript library but the way it makes things easier. In PHP world I would say CodeIgnitor. The way it handles database stuff, it's just excellent and so fast to use.
Lunascript seems exactly what I'm trying to describe.