nextwebgen.com

The Next Generation Web Now

Surveying open-source AJAX toolkits

Filed under: Web 2.0 News, Front Page, Articles, Toolkit — Chris Cornutt at 5:50 pm on Tuesday, August 1, 2006

In this new article from InfoWorld today, they look around the web and take stock of some of the more well-developed, strong Ajax toolkits around - six to be exact - and give an overview of them all.

If you want to add AJAX to the magic collection of buzzwords supported by your Web site (and who can resist the siren call of the latest buzzword?), then you have two major options: purchase a proprietary package or experiment with open source libraries.

InfoWorld has covered a number of excellent proprietary AJAX toolkits in the past, and now we’re turning our attention to some of their open source rivals. Are they worth exploring for enterprise use?

The six frameworks/toolkits they cover are:

  • Dojo
  • Zimbra Kabuki Ajax Toolkit
  • Google Web Toolkit
  • Open Rico and Prototype
  • Microsoft Atlas
  • Yahoo Ajax Library

They start with their reasoning behind their choices before even getting into the descriptions. They also have a reminder that these are their opinions on these toolkits, not to be taken as law - a toolkit is a personal choice.

For each of the toolkits, they talk about what it is, who makes it, how it works (all of the boring stuff) as well as their thoughts on its functionality, ease of development, and include screenshots for those more visually oriented. And, for the even more impatient in the bunch, you can skip right on down to the last page for six “cheat sheets” on the different toolkits, spotlighting the points made before.

Juggernaut: Comet for Rails?

Filed under: Web 2.0 News, Front Page, Toolkit, Ruby, Comet — Dion Almaer at 8:41 am on Thursday, July 20, 2006

Alex MacCaw has released a plugin for Ruby on Rails that “aims to revolutionize your Rails app by letting the server initiate a connection and push data to the client. In other words your app can have a real time connection to the server with the advantage of instant updates.”

The plugin Juggernaut initiates a flash xmlsocket between server and browser allowing real time communication between the two. The open socket connection allows the server to ‘push’ base64 encoded javascript to the browser which is subsequently decoded and evaluated.

I see this as Comet for Rails, as it is about the interaction model not technology (e.g. if Flash or not). Alex may disagree :)

Frequently Asked Questions

What flash version does Juggernaut use?

Flash socket uses version 6 which is supported by more than 95% of users.

Does it work in all browsers?

It works in all the major ones: Firefox 1+, IE 6+ and Safari 2+.

What are the advantages/disadvantages of using a flash socket over other methods?

It’s better than comet because:

  • It’s much less of a hack
  • It doesn’t crash your browser (Comet can do this after a while)
  • 95% of browsers support it (flash 6).
  • It’s much easier to implement
  • It can use a different port - unlike comet - so you don’t need any custom dispatch servlets for forwarding messages through rails to the push server - it can connect directly.

It’s better than polling because:

  • Much cleaner
  • Doesn’t use as many server resources

Y! UI Carousel Component

Filed under: Web 2.0 News, Front Page, Toolkit, UI, Yahoo!, Component — Dion Almaer at 9:36 am on Friday, July 14, 2006

Bill Scott of Yahoo! has written up a nice new component on top of the Yahoo! UI library.

The Carousel component lets you flick left and right through content (images).

You will quickly see that there is a lot of documentation and a real API that allows for many uses:

  • Static HTML - Carousel content expressed
    solely in HTML markup.
  • DTHML Load - Carousel content loaded via
    JavaScript (client side load) displayed horizontally.
  • DTHML Load (Vertical) - Carousel
    content loaded via JavaScript (client side load) displayed horizontally.
  • Bounded DHTML Load - Loading
    Carousel via JavaScript (client side load) with the size constrained.
  • Ajax Load - Loading Carousel via Ajax (server side load).
  • Ajax Load - Two Carousels - Loading two Carousels on same page via Ajax (server side load).
  • Slide Show - Showing a carousel managing one large image at a time.
  • No Animation - Carousel configured for no animation.
  • Module Scrolling - Example of a news module supporting scrolling of content.
  • Module Tabset - Example of showing one page of
    content at at time in tabs.

Carousel

Safari gets a Javascript debugger

Filed under: Web 2.0 News, Front Page, JavaScript, Toolkit, Programming, Safari — Rob Sanheim at 11:16 am on Wednesday, June 28, 2006

Its about time - Webkit - the development version of Safari, has gotten a real javascript debugger. Its called Drosera, and the Surfin Safari blog has the announcement. Or you can just download the latest nightly of Webkit and go. Its interesting to note that this and the Web Inspector tool for Safari are about 90% plain HTML and Javascript. Hows that for a something that isn’t even a “real programming language”?

Drosera javascript debugger for Safari

Interview with ZK Creator Tom Yeh

Filed under: Web 2.0 News, Front Page, Java, Toolkit, Ajax, Server, Framework — Rob Sanheim at 10:44 am on Wednesday, June 28, 2006

Agile Ajax has posted an interview with the creator of ZK, the server-side GUI framework for writing ajax apps with “no javascript and little programming”. ZK has some similiarities to Echo2 and GWT, though Tom Yeh, the creator, discusses the differences:
on Echo2:

Echo2 assumes UI designers are Swing programmers, while ZK assumes they are mostly non-programmers

on GWT:

From a technological viewpoint, [GWT] is a complement. GWT is a client-side solution and quite good for developing Ajax components. It is never a good idea to replicate the business logic to the client, which eventually brings us back to the maintenance headache of fat clients. In addition, loading and evaluating huge JavaScript files into the client is not fun at all.

The interview goes on to cover the strengths and weaknesses of ZK, Dojo and Atlas, and future plans for the framework. He also closes with a common complaint about the Ajax community - the over abundance of frameworks and resulting confusion. A chart breaking down the major players and their pros and cons would be a great help to many developers who are trying to figure out where to start.

Jitsu: New XML Markup Based Ajax Framework

Filed under: Web 2.0 News, Front Page, JavaScript, Library, Toolkit — Dion Almaer at 9:02 am on Friday, June 23, 2006

We have a new Ajax framework just released.

Jitsu contains an integrated set of tools to enable developers to build and deploy sophisticated user interfaces for web applications. These include an Xml markup language, page compiler, data binding engine, JavaScript runtime, control library, runtime inspector, animation engine, cross-platform library, Ajax, and back button support.

The framework focuses on offering:

  • Designer friendly
  • Rapid iterations
  • Open source

Hello World looks like:

<html xmlns='http://www.w3.org/1999/xhtml'
      xmlns:j='http://www.jitsu.org/schemas/2006'>

<body>
    My first application:
    <j :App>
        Hello World!
    </j>
</body>
</html>
 

Jitsu

Autcompletion Issues with Yahoo, Scriptaculous Libraries

Filed under: Web 2.0 News, Front Page, Toolkit, Remoting, Yahoo!, Scriptaculous — Michael Mahemoff at 6:26 am on Thursday, June 22, 2006

Cheng Guangnan reports on a potential issue with the autocompletion/suggestion support offered by both Yahoo UI and Scriptaculous libraries. The problem involves parallel calls - there's the potential for an initial list of suggestions to be displayed after a subequent list. His screencasts show what's going on.

1. “2006” is typed.
2. A request of “2006” sent to the server.
3. User continues typing and now “200607” typed.
4. Another request of “200607” sent to the server.
5. User waiting for feedback.
6. The second request return, it show the popup.
7. The first request return, it show the popup with data returned for “2006”.

If that's the case (and we haven't verified it!), the problem could be solved by some form of Call Tracking. If the first call comes back after the second, simply discard it.