NYCPHP Meetup

NYPHP.org

[nycphp-talk] AJAX and State

Kenneth Downs ken at secdat.com
Tue Sep 4 13:41:18 EDT 2007


I have not looked at Dojo yet, though they have been on "the list" for 
awhile.

The firefox extensions are now looking really exciting.  I am looking to 
download or write an extension that will let me ship photographs from a 
camera directly to the database, and also to intercept bar code scans 
and do some intelligent page routing.  Fun stuff.

Jon Baer wrote:
> Personally ... I think even broader ideas like Dojo Offline 
> (http://dojotoolkit.org/offline) and Google Gears 
> (http://gears.google.com/) takes it to an even further level which has 
> not been tapped (yet).  Now if only you can sneak it into a project ;-)
>
> - Jon
>
> On Sep 4, 2007, at 8:50 AM, Kenneth Downs wrote:
>
>> One thing that seems to have gone unsaid in the praise for Ajax is 
>> its ability to radically transform how we maintain state.
>>
>> The web server session is our basic mechanism for storing information 
>> between requests.  But it gets clumsier and clumsier to try to 
>> maintain complex state across many page requests when you use a 
>> session.  Ingenious minds have put their will to the problem and come 
>> up with workable systems, but all of them are complicated because of 
>> the nature of the problem.
>>
>> That problem, stated here, is simply the problem of tracking what 
>> I'll call the "context" of a user's session.  Some elements of a 
>> session are fixed: the user id, the password, a few other things, but 
>> almost everything that we need to track is always changing.  A basic 
>> example: a list of search results.  Where do you store it?  When the 
>> user hits, "NEXT PAGE", how do you know what to do?  If you are using 
>> a session, what happens if he opens a new window and has two search 
>> results sets up for two different tables?
>>
>> Ajax solves this problem neatly by letting you move all state [1] 
>> into the browser.  This makes sense from an architectural viewpoint 
>> because we are putting this context information close to where it is 
>> needed, the UI.
>> I've been converting the basic Andromeda UI code over to a completely 
>> AJAX system [1], and have found my code radically simplified and far 
>> smoother, due almost entirely to the moving of all state information 
>> to the browser.  Hurray for Ajax!
>>
>> [1] Here I'll use "state" to mean the changing context of user 
>> requests, and assume we are still using the session for User_id and 
>> password.
>>
>> [2] Andromeda is used to make database applications for businesses, 
>> we don't care in this case about google following our links.
>>
>>
>> --Kenneth Downs
>> Secure Data Software, Inc.
>> www.secdat.com    www.andromeda-project.org
>> 631-689-7200   Fax: 631-689-0527
>> cell: 631-379-0010
>>
>> _______________________________________________
>> New York PHP Community Talk Mailing List
>> http://lists.nyphp.org/mailman/listinfo/talk
>>
>> NYPHPCon 2006 Presentations Online
>> http://www.nyphpcon.com
>>
>> Show Your Participation in New York PHP
>> http://www.nyphp.org/show_participation.php
>
> _______________________________________________
> New York PHP Community Talk Mailing List
> http://lists.nyphp.org/mailman/listinfo/talk
>
> NYPHPCon 2006 Presentations Online
> http://www.nyphpcon.com
>
> Show Your Participation in New York PHP
> http://www.nyphp.org/show_participation.php


-- 
Kenneth Downs
Secure Data Software, Inc.
www.secdat.com    www.andromeda-project.org
631-689-7200   Fax: 631-689-0527
cell: 631-379-0010




More information about the talk mailing list