Wednesday, May 10th, 2006

The Ajax Experience: Day 1 Panel

Category: The Ajax Experience

The Ajax Experience has begun! Ben and Dion just gave their opening keynote, and we’ve now got the following panel taking questions from the floor:

  • Stuart Halloway
  • Glenn Vanderburg
  • Brent Ashley
  • Alex Russell
  • Greg Murray
  • Brett McLaughlin
  • David Geary
  • Joe Walker

Here are some notes from the panel …

Accessibility – Doesn’t seem too easy with Ajax

Joe: Lots of issues. Some can be ignored in some circumstances.
Stuart: If keep wits about you, can make it work without Javascript etc. “Ajax on the edges” rather than full-on Ajax – that’s where a lot of development will be over the next 18 months.

Audience capabilities – What browsers are people using?
Alex: Dojo falls back to standard HTML if no JS present, that’s what we view as the way forward.
Glen: Most frameworks do a good job at backward-compatibility. e.g. Rails as well as Dojo.
Brett: It’s about, “What do you care about?”
Greg: At Sun, have to worry about selling to the gov’t. “508 compliance” – can’t ignore accessibility.

Is the browser ready to be used for productivity suites, all day long?
Joe: Worked on such an app. There’s always issues with browsers. Helps that you can sometimes pick your browser.
Stuart: IE sticks out in some ways, but these issues are always going to be there with or without Ajax.
Glen: Early apps were toys, but still some work to be done, and memory model is a big part of that. Installed base of IE will take a long time to outgrow these issues.
Brent: Not just memory model. More evolution needs to be had with XMLHttp. Alex Bosworth wrote the other day above this, e.g. have to build in sequencing. readystate=3 doesn’t fire properly.
Stuart: This illustrates importance of using libraries. A lot of books emphasise building by hand to avoid being tied to a particular library.
Brett: However, still need to have that info, e.g. if you don’t know what readystate=3 means, you’ll eventually run into a problem.
Ben: Need better tools to measure memory etc.

Previously 90% of programming on server, 10% on client. Where is it today and where will it be in a year?
Dion: Sometimes blends, can’t always say “this is on the server”, “this is on the client”.
Alex: Browsers can now do state in the browser, so we should let them. Pendulum swinging slowly back to client.
Glen: We’ve seen an explosion of power on both sides – server and browser. Standard patterns of usage have evolved quickly and there are frameworks to take care of this.

Security concerns
Joe: Discovered that it makes the …
Alex: The fundamental problems with browser security and web security haven’t changed in the past 5 years. Cross-site scripting still the issue etc. Ajax itself doesn’t change things, cross-domain might, but there’s not much news here.
Brett: Ajax exposes holes more readily. Can’t think of a problem that’s truly Ajax-specific, the short version is still Don’t Trust the Client.
Brent: Douglas Crockford’s JSONRequest proposal – no exchange of cookies, thus reducing cross-domain risk. Also Flex has crossdomain.xml file that a site can have in its root, that says “it’s okay for these sites can access me via Flex XML sockets”. Let’s start collaborating to free us of constraints like this, like the JSONRequest proposal.
Dion: See SQL Engine posted to Ajaxian (the dailyajaxian post).

Various: Vi, Vim, Emacs …
Dion:†Designers would be using similar kinds of notation as before.
Glen: We’re starting to see some encouraging things, but there’s no one tool that does everything. Mac: Safari Buddy. Firefox: Firebug, etc. These do 30-40% and are overlapping, but altogether leave another 30% that nothing is covering. Expect we’ll see a lot happen in the next couple of years.
David: Low-level tools coming fast and furious. Venkman, Javascript Shell, Web Developer Toolbar, Selenium.
Dion: If only there was a site that talked about the new stuff as it happened ;-)

There’s a lot of cool stuff moving forward, but what will we do about IE?
Joe: To an extent, Ajax is a hack, so we shouldn’t get too purist about it.
Alex: IE7 is a significant disappointment. We should be making a noise about it.
Ben: Good news is MS does appear to be listening. The huge installed base will be a big problem.

I don’t like how many Ajax apps use innerHTML. Not because of standards compliance, but because you don’t know exactly what’s going to happen. But we do use it because there’s often no other way to go. How do you use it, what would you like to see?
Brent: DOM Load and Save spec is a good W3C standard that offers a good solution, but possibly only Opera has implemented it.
Alex: I hope we have consistency with these other things too, XMLHttp, etc.

Which framework’s going to win?
Alex: Peaceful coexistence is probably the right solution.
Stuart:†Remarkably easy to combine them together.
Brett: It’s a classic open-source situation, probably don’t want a winner, because do better with them competing.

Comment about W3C Standards emerging
Brett: Good if standards are there to help, not if they’re telling you what you should do.

When I talk to managers about client-side scripting/Ajax, always get the same objections: accessibility and search engine optimisation.
Joe: Must be careful about getting a black mark from Google. In many cases though, rich Ajax apps are often not the kind of thing you need to make available to spiders, etc. Would you want a search engine to crawl GMail?

Comment about combining frameworks. Would be great if I could use feature X, but I have to swallow the whole elephant? Are we building up walls?
Joe: Aware of these issues, there’s definitely the intention to work with them.
Alex: Mochikit and Dojo coexisting is probably the best example I can think of. Can easily work with one or both.

Aren’t MS the ones who invented XMLHttp, etc. Shouldn’t we hear more about Atlas?
Ben: We (Ben and Dion) don’t have a bias against MS. Working with them, etc.

Mobile Ajax.
Greg: Sun’s looking at it with J2ME group.

Posted by Michael Mahemoff at 11:21 pm

4.3 rating from 18 votes


Comments feed TrackBack URI

Thanks Michael, you beat me to this. I had something written up but it wasn’t as nice as yours.

One note on the Microsoft thing – there is a member of the IE team who will be joining the panel on Friday to give their perspective. We also have Brad Abrams from the Atlas team doing a session on that.

Comment by Rob Sanheim — May 11, 2006

what is safari buddy — mentioned above as one of the tools? i can’t find any reference to it anywhere

Comment by alex — May 11, 2006

what is safari buddy — mentioned above as one of the tools? i can’t find any reference to it anywhere.

Comment by alex — May 11, 2006

just a FYI….XSLT framework from Adobe.

Spry is a JavaScript framework for creating Ajax applications, a library that makes it easy to incorporate XML data into HTML pages using HTML, CSS, and JavaScript.

Want to learn more? Paul Gubbay has written an introduction to Spry ( ).
Spry examples ( ) are posted on Labs.
And you can download Spry ( ) from Labs.

Comment by Patrick Whittingham — May 11, 2006

I second Alex’s question. I tried to find some info regarding safari buddy but couldn’t find anything relevant out there.

Comment by Didier — May 11, 2006

Memory tools – JavaScript Memory Validator

Windows and Firefox only at present.

Comment by Stephen Kellett — May 12, 2006

[…] The first level was the conference where the presenters put on a terrific show for the attendees, with lots and lots of presentations about tools and techniques and a number of expert discussion panels. […]

Pingback by brentashley » Blog Archive » Ajax Experience - a play within a play — May 15, 2006

A really exciting and fresh blog !

Comment by Aaron — July 3, 2006

Leave a comment

You must be logged in to post a comment.