DEWD: Desktop Editing of Web-based Data

A proposal and working proof of concept for convenient desktop editing of data stored in web based applications.
By Tony Landis on Tuesday November 27, 2007

The Problem - Editing and Saving Modifications to Online Data

You are designing a web application that will enable the user to modify some data (HTML Content, Excel Spreadsheet, Word Document, etc). The goal is to make this experience as simple as possible for the user: one click to open the content, editing in a familiar environment, and one click to send the changes back to your application.

However, there is no inline editing tool (Java, Javascript, Flash) readily available that will work in all browsers/platforms and offer the user this familiar and convenient editing experience.

This scenario forces you to offer the User a non-familiar inline editing solution, or alternatively implement some round-about method to enable the user to edit the content, such as manual FTP or HTTP download, and manual re-upload after editing on the desktop.

The Proposal: Desktop Editing for Web Based Data (DEWD)

The solution is so simple I am amazed it has not already been developed to the point of perfection. We need an application on the Client side that runs on all platforms to receive the content to be edited from the Server. This application opens the file in the appropriate application on the desktop, listens for changes, and pushes the changes back to the Server.

Advantages of DEWD

 

The Camtasia Studio video content presented here requires JavaScript to be enabled and the latest version of the Macromedia Flash Player. If you are you using a browser with JavaScript disabled please enable it now. Otherwise, please update your version of the free Flash Player by .

 

Example of DEWD In Use

The problems addressed by the DEWD proposal became apparent to me while working on a simple CMS (Content Managment System) for HTML data. This HTML data needed to be edited online through the application. While researching the many Javascript HTML editors, I quickly became aware of the shortcomings of these scripts. They were simply not versatile enough, did not offer a stable/convenient/familiar enough environment, and added to much overhead to the application footprint.

This scenario gave a good example of the need for the user to be able to choose his editing application: one group of users needed a WYSIWYG type editing interface (ie: DreamWeaver, FrontPage) while another group of users will prefer a code based editor with syntax highlighting (ie: Textmate, E Texteditor). No web-based HTML editor I could locate would satisfy both user groups as well as myself as the application engineer.

So thats when I began to conceptualize DEWD - it would solve all these challenges by bypassing the limitations of the web browser via a bridge between my application and the desktop, thus granting the User total control over their editing environment without sacrificing convenience.

I wrote an Windows client implementation of DEWD in , which is a dynamic language for the Java Virtual Machine. I hope this proposal draws enough attention to result in a more robust Java or C version.

View the screencast of the working Groovy implementation above, implemented with a very basic CMS application.

Implementing DEWD on the Desktop and Server

Client Side DEWD Implementation in Groovy

Integrating DEWD into a web-based application (PHP)