Please contact me on Google+.
Even when using the latest and greatest frameworks and disciplines, writing fast, highly interactive web applications involves a lot of complexity. It is time consuming and web applications are often considered too slow, that is, by end users. I wondered whether we could build a programming system for developing ridiculously fast HTML5 applications (as in happy end users) in which we would just need to write the essential stuff (as in easy to learn, easy to maintain, flexible to change).
When writing a complex, highly-responsive web application, there are all kinds of really difficult programming tasks that you end up doing over and over again for every feature you want to write. These are pains all too familiar to authors of Web 2.0-style software.
Let's have a look at a classical architecture.
First you need server code to figure out what data the browser needs. Hopefully you have an ORM layer (Object-Relational Mapping), but you still need to carefully structure your code to minimize your backend dispatches, and you need to carefully keep that in sync with your front-end code lest you don't fetch enough data or hurt performance by fetching too much.
This is not a one-off task: it's rote work that adds error-prone complexity to every feature that you build in every application. By the time you're done with all this, the important and novel parts of your application are only around 10% of your code.