[python-advocacy] [python] Re: The python way to write web applications

Michael Foord fuzzyman at voidspace.org.uk
Sun Oct 14 17:23:00 CEST 2007


In summary - I agree. :-)

Javascript has the *potential* for creating a much richer and smoother 
web experience. Whether it does or not depends on how it is used...

(I've seen plenty of places where it does work, as well as those where 
it doesn't of course.)

Michael

Paul Boddie wrote:
> On Sunday 14 October 2007 15:18:49 Michael Foord wrote:
>   
>> For all the Javascript scaremongering it can be used to create extremely
>> intuitive and responsive web applications that stand head and shoulders
>> above their predecessors.
>>     
>
> That's true if the JavaScript actually works. For example, I've used Picasa on 
> various browsers and it has been broken at some time on all of them 
> (technically, that is - the terms and conditions are broken in other ways), 
> although it seems to work for me today on some of the galleries I've 
> previously failed to navigate. AJAX stuff can provide a nicer experience - I 
> don't deny this - but nobody seems to question whether reproducing a 
> desktop-like interface is desirable for stuff like e-commerce applications: 
> people want to be able to press a button and have a dependable "old school" 
> transaction occur when sending their credit card information or booking their 
> tickets, not be left wondering whether some AJAX request has transmitted 
> their details and either not bothered to update the display or failed 
> silently with an error appearing in some log (assuming it were enabled).
>
>   
>> I'm afraid that users without Javascript are in an ever decreasing
>> minority and despite there being plenty of horror stories the growth of
>> powerful Javascript toolkits have led to a vastly 'richer' web.
>>     
>
> The "richer" Web is all very well if it doesn't lead to...
>
>   * One's browser crashing due to a flaw in the JavaScript implementation.
>   * One's browser burning CPU at around 100% because some JavaScript is
>     spinning in some loop or other, locking up the entire application
>     (including all the other tabs).
>   * The user pressing an obviously JavaScript-laden form button only to
>     experience nothing as a result because the developers used some IE-only
>     convenience properties on the document object.
>   * Lots of Web pages requiring some proprietary plugin which works in one or
>     two browsers on two or so platforms across one-and-a-half architectures.
>
> On the subject of "RIA", I've seen a lot of applications needing stuff like 
> Flash where it's been totally unnecessary; the last one of any significance 
> to me being an application where I had to select colours on a T-shirt 
> design - something where some buttons or links on a Web page would have been 
> adequate.
>
>   
>> I still prefer writing Javascript than generating Javascript, but 'the
>> competition' (notably Rails) is leading the way in integrated AJAX
>> support in web frameworks. Hopefully that gap is already starting to close.
>>     
>
> It's totally possible to leverage various cross-browser JavaScript libraries, 
> paying continuous attention to compatibility issues, and have some mostly 
> reliable AJAX support in the browser. What I've done myself really only 
> covers optimisations in the way forms are used, and I've tried to make those 
> features fit into the same framework that non-AJAX interactions employ, so 
> that the user can turn JavaScript off and everything still works. I don't aim 
> to support all sorts of drag-and-drop stuff, but if I were aiming to do so 
> it'd be done using generic code in the browser to support the concept, with 
> integration to the server-side code through the established mechanisms for 
> handling requests from the browser. From what I've seen of Rails' "AJAX 
> helpers", whether they are the state of the art or otherwise, I can't see 
> what they offer that something like Nevow didn't offer several years ago.
>
> If Python and its frameworks were really an innovating force in the RIA-like 
> field, there'd not only be a focus on Python as a client-side language (as 
> previously discussed), but also support for open standards such as SVG, if 
> only for server-side applications to be able to manipulate such objects and 
> render them for SVG-incapable browsers. Better support for less fashionable 
> Web standards like WebDAV wouldn't exactly hurt, either.
>
> Paul
>
>   



More information about the Advocacy mailing list