« The Future of Browsers | Main | Finding a White Audio Patch Cable »

September 19, 2008

Ajaxian: State of the Web Development

Ben Galbraith and Dion Almair from Ajaxian talking about where things are in the web.

Even though we've been in the winter of browser development, there are some good tools that we can use to move the web forward.

In the talk today, it's all about the user experience. Ajax really came from a designer, not an engineer. Most users don't care what their car engine is, just want it to go when the press the gas.

Bertran Serlet, Apple, recently said that first software was just to get something done, then it was to have a good experience, now they need to be wowed. Shows an example of browsing a backpack on the Apple store and getting all kinds of seamless changes in the views.

To create great user experience you need to understand the user's expectations and exceed them.

Shows a huge list of JavaScript frameworks now out there. The old taxonomy was that for little widgets, prototype was the choice, GWT was for enterprise, and jQuery was for DOM manipulation. Finally, dojo was the soup to nuts, all-encompassing.

The new taxonomy is that all of the old taxonomy has expanded to include more things from other libraries, have created plugins and added communities. They get lots of emails saying there's a new JavaScript library that is better than all the older ones. Ajaxian doesn't take time to review all of these, but suggests you pick one of the ones that have been around and go with it. They all cover the basics.

Some of the higher level stuff is dogo charting and John Resig's Processing.js.

The second wave of Ajax, new frameworks that offer GUI on top of the processing. jQuery User interface, Ext JS, and dijit are some examples. SproutCore and 280 Slides are other examples where some really powerful and interesting approaches have been taken. SproutCore is organized in a MVC approach with web services.

There's an entire interface design side of all of this. The fashion pieces of doing web apps isn't Ajaxian's expertise, so want to be careful to say this is mostly about the underneath. Visual design and interaction design need to work together. The interaction design needs to provide low-latency.

We need to providing quick response to users. The limits of the OS and browser make it difficult to ensure responsiveness. The OS has threads, but JavaScript doesn't. Google gears provide a solution for this. Gives you a worker pool. (Running a really cool example of using JavaScript to calculate prime numbers while showing a slider going back and forth. Running it in the foreground of the browser causes the slider to get frozen here and there. With gears they can run two prime calculators at the same time without having any visual pause in the slider movement.)

Shows this great example of Greasemonkey getting into Campfire to provide OS-level notification when new messages are posted.

HTML 5 Canvas is pretty cool. Shows some examples of games and photo manipulation.

Posted by mike at September 19, 2008 12:07 PM