Khurram,

I wanted to give you some (belated) reaction to your initial release.

First, congratulations on getting it out and involving the community. That's a great first step.

While you included documentation (good!), the package is missing developer-focused API documentation. End-user documentation makes less sense here, at least in my opinion.

I would expect a document that would explain to an OpenLaszlo developer

* What they can do with Laszlo on Gears
* How they can do it -- sample code showing features, simply
* Description for taking an existing OpenLaszlo application and enabling it for offline use with Laszlo on Gears
* Installation docs

Another thing I'd suggest you focus on as you refine these APIs is to make them very simple and very familiar to OpenLaszlo developers. OpenLaszlo data APIs are XML-centric -- unlike the SQL./Javascript data provided by Google Gears. The key is to make it so that an OL developer can take advantage of these persistence features without having to learn another framework.

Max's work with the database API was designed such that an OpenLaszlo dataset could be "persistence-enabled" so that changes to the dataset will be persisted into a data store automatically -- without any idea of how the database or other persistent store works. That is the key to its value -- an OpenLaszlo developer should not need to learn a new API to get the benefit of a persistence framework.

I'd like to give you a view of the "competition" here -- see below. Note the concise expression of the package's value; the developer- focused introduction, the way the value-added features are called out. You may not have enough time/resources to compete with Dojo's efforts here, but I believe this is what developers expect.

How do plan to proceed with this effort?

- D.





Dojo is proud to announce a new beta release of Dojo Offline. This release has a huge amount of exciting new functionality, including a full port to
Google Gears, a port from Dojo 0.4 to 0.9, and more.

Dojo Offline is an open-source toolkit that makes it easy to create
sophisticated, offline
web applications. It sits on top of Google Gears [http:// gears.google.com], a plugin from Google that helps extend web browsers with new functionality. Dojo Offline makes working with Google Gears easier; extends it with important functionality; creates a higher-level API than Google Gears provides; and exposes developer productivity features. In particular, Dojo Offline provides
the following functionality:

  * An offline widget
[http://docs.google.com/View?docid=dhkhksk4_8gdp9gr#widget]
    that you can easily embed in your web page with just a
few lines of code, automatically providing the user with network feedback,
    sync messages, offline instructions, and more

  * A sync framework
[http://docs.google.com/View?docid=dhkhksk4_8gdp9gr#sync] to
    help you store actions done while offline and sync
    them with a server once back on the network

  * Automatic network and application-availability detection
[http://docs.google.com/View?docid=dhkhksk4_8gdp9gr#network_status]
     to determine when your application is on- or off-line so that you
can take appropriate action

  * A slurp() method
[http://docs.google.com/View?docid=dhkhksk4_8gdp9gr#slurp] that
    automatically scans the page and figures out all the
resources that you need offline, including images, stylesheets, scripts, etc.; this is much easier than having to manually maintain which resources
    should be available offline, especially during development.

  * Dojo Storage
[http://docs.google.com/View?docid=dhkhksk4_8gdp9gr#dojo_storage],
    an easy to use hashtable abstraction for storing offline data
for when you don't need the heaviness of Google Gear's SQL abstraction;
    under the covers Dojo Storage saves its data into Google Gears

* Dojo SQL [http://docs.google.com/View? docid=dhkhksk4_8gdp9gr#dojo_sql], an easy to use SQL layer that executes SQL statements and returns them as
     ordinary JavaScript objects

  * New ENCRYPT() and DECRYPT() SQL keywords
[http://docs.google.com/View?docid=dhkhksk4_8gdp9gr#crypto]
    that you can mix in when using Dojo
SQL, to get transparent cryptography for columns of data. Cryptography is done on a Google Worker Pool thread, so that the browser UI is responsive.

  * Integration with the rest of Dojo, such as the Dojo Event system

To get started: See the Dojo Offline home page
[http://dojotoolkit.org/offline];
read the new tutorial titled "Creating Offline Web Applications With
Dojo Offline" [http://docs.google.com/View?docid=dhkhksk4_8gdp9gr];
download [http://download.dojotoolkit.org/experimental/offline/ offline_sdk_0.9.zip]
the new
Dojo Offline 0.9 beta SDK;
and play [http://docs.google.com/View?docid=dhkhksk4_8gdp9gr#demos]
with the demos.

Best.
  Brad




Reply via email to