1. A method for executing an application at a client, the method comprising the steps of: transmitting a first portion of code for the application to the client over a network; executing said first portion of code at said client to generate a user interface comprising one or more user interface objects that is displayed by said client, wherein each user interface object has attributes that are independent of any data used to populate the user interface; detect user interaction with said user interface; and generate and transmit from said client over said network a first message that indicates said user interaction with said user interface; executing a second portion of code for the application at a node of said network other than said client, said second portion of code responding to said first message by performing the steps of: determining how the attributes of at least one of the one or more user interface objects are to be changed in response to the detected user interaction with the user interface; generating, based on said user interaction indicated by the first message, at least one record that indicates one or more changes to be made to the attributes of the at least one of the one or more user interface objects in response to the detected user interaction with the user interface; and transmitting said at least one record to said first portion of code in a second message; said first portion of code responding to said second message by performing the one or more changes to the attributes of the at least one of the one or more user interface objects indicated by the at least one record.