Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Zoho Leverages Google Gears to Provide Offline Support for Ajax Applications

Zoho Leverages Google Gears to Provide Offline Support for Ajax Applications

This item in japanese

Zoho, a online office productivity software company, recently extended its flagship AJAX based RIA product Zoho Writer with offline capabilities. spoke to Raju Vegesna of Zoho to learn more about the motivation of the offline offering, technology platform consideration, lessons learned and the future of the Zoho product suite in  the on/off line space.


To Zoho, as Raju stated, the reason going offline is very simple:

We believe there are ten percent of online users would like to continue their works when they are offline. We'd like to support those ten percent of web users.

Then, Raju provided some background information about extending Zoho Writer offline:

After decided to move Zoho Writer offline, we took a good look at all the available technical options and platforms, including Adobe AIR, Microsoft Silverlight, even the up coming Firefox 3, which should come with offline capability. However, as a AJAX based RIA web applications provider, we believe a real web application should natively support web standards such as HTML and CSS. The biggest reason we started out with Javascript is that it is native to the web - in the sense its core object model for Javascript is the HTML/CSS Document Object Model. Flash, for all its advantages, sits in a separate space from the browser. In that sense, Flash is not that different from Java-on-the-client. In fact, Flash is Java-on-the-client-done-right. Also, Open Source library support is a big one to us. The depth and variety of libraries available in Javascript just keeps getting better.

So, we decided to develop something on our own, utilizing technologies like SQLLite. Then, just in time, Google Gears was released. It's open source and Javascript based. We particular like the BSD license. We thought, instead of developing something new, why not utilize Google Gears and contribute back to it too. That's how Google Gears became our offline platform and we are very happy about this decision.

Recognizing RIA technologies are enabling the trend of crossing online/offline barriers for web applications, asked Vegesna what Zoho learned was the best approach for adding offline support:

A phase based incremental approach is very critical to our success. We didn't go all the way offline. In the first phase Zoho Writer was in read only mode when offline. Then we worked on the second phase, which was released recently to enable the offline document editing. In general, Zoho products are server based web applications. Most of the features are from the server side processes. To do it right, carefully designing and incrementally adding features to offline is very important. We wouldn't do it differently.

Zoho is also in the SaaS (software as a service) space where, in addition to end products like Zoho Writer, it's a application development platform via Zoho APIs. On the impacts of going offline to applications developed using Zoho APIs Vegesna replied:

For now, the offline features are disabled as APIs. It means that all third party applications are online only. Even with our Zoho Writer, there are features won't be available offline for now, such as PDF file export. As a web application we focus a great deal on user experience. We don't want to make the product complicated to the user by introducing every feature offline.

On moving forward:

We are committed on using Google Gears. We have two major categories of products, one is file centric apps and another is database centric apps. Zoho Writer is file centric based, and once we've done Zoho Writer, the next thing will be extending other tools in the category to offline. We will go through the same approach on database centric tools such as the CRM product.

In the end, Vegesna gave some insights on their server side environment:

On server side we are a open source shop. We use MySQL to manage the data. The server side processes are all written in Java. The application server is a highly tuned version of Apache Tomcat. We host applications by ourselves on about 400 servers, which are a Linux based 64bit environment.

Zoho, as a office productivity suite tool provider, has been pushing the  limit on both user experience and platform development. InfoQ will continue coverage as their platform evolves.


Rate this Article