Australian IT JOBS : Sydney IT jobs, UNIX jobs, Linux jobs, Java jobs, ASP jobs Linux.conf.au Linux.conf.au
Technology news and Jobs arrow Information Technology News arrow Open source's hottest 10 apps part 2
Open source's hottest 10 apps part 2 PDF Print E-mail
Written by David M Williams   
Thursday, 21 June 2007

#5 – ZK – Simply Ajax and Mobile

ZK is a framework to make web sites more dynamic and responsive through Ajax technologies. This can be used by developers and webmasters alike to bridge the gap between so-called fat- and thin-client applications.

Let me explain: web apps have long been known as thin-client due to their very lean requirements on the user's computer - generally nothing more than a web browser. All the processing occurs on the web server hosting the app. If the site is upgraded all users benefit immediately.

By contrast, traditional desktop software has been given the unflattering monicker fat-client due to its bulkier size, consisting of all the necessary libraries and controls and processing logic to do its work. If the software is upgraded, it needs to be deployed to all machines.

It can be seen web apps have a raft of advantages. However, despite this they fall short of desktop software when it comes to a responsive user interface and consequently the user's experience with the program. A web site typically renders a page then sits and waits for the user to take an action be it entering some text, selecting an option or something else. The browser sends this action back to the web server which returns the next page to display.

In some cases this is no biggie. People are used to clicking on links and waiting a small time for the results. Yet, often it really can detract from the site, possibly driving traffic away. We've all seen sign-up forms that ask for an address over a variety of fields. Typically the country is a drop-down list. Selecting particular countries - like the United States - causes the state list to be populated with drop-down options. Sometimes picking a state might even cause the city or suburb drop-down list to be populated too. Each time the country value changes, the browser has to call back to the server and display a new page, just to populate the state box. Imagine a form with many fields all dependant on the last entry. A realistic example is an advertising site to sell used cars. The site asks for the model, then the make, the body type, the engine capacity and on and on. Each choice the user makes results in yet another round-trip to the server and corresponding wait on their part.

So here's where Ajax comes in. Using nothing more than markup and scripting already supported by browsers the site becomes instantly more responsive. There's no flickering as pages change, there's no waiting for controls to change their appearance or content. The magic behind this happens because clever coding changes the usual synchronous manner of web transactions into asynchronous events - allowing more things to happen at once, and allowing the browser to communicate with the server even while the user is still working on the page.

The possibilities are endless but the ultimate result is web apps which are just much more pleasurable to work with and which combine the traditional ease of deployment of the web with the responsiveness of desktop apps. The examples above may be fairly simple but consider this: Google Earth is a web app. What makes it so snappy is Ajax. And that's persuasive!

ZK is a suite of functions and method calls that mask the underlying complexity of Ajax and give coders a straightforward bevy of routines to make it all work in a minimum of fuss.

Although not yet at 1.0 level, the project has a stable release and an active forum and is operating system agnostic.



 
< Prev
Contact , Register , Advertise with iTWire , Links , Register , About iTWire , Feedback , Post your jobs , Events , iTWire site map , Start Blogging
Industry Releases , Submit your release now , Start submitting to iTWire , How to post video