« January 2008 | Main | August 2008 »

February 09, 2008

Dissertation framework

After some more research on embeddable databases and offline RIA and offline AJAX (or LAJAX as some refer to it - see http://blogs.sun.com/FrancoisOrsini/entry/client_side_services_in_the and http://cse-mjmcl.cse.bris.ac.uk/blog/2006/10/30/1162236580795.html) I have come to the conclusion that, considering my requirements (see below), I should drop both of the two alternatives presented in my previous post. The first one relies on Javascript which isn't, to say the least, among my preferred programming languages. The other one involves far too many potential road bumps concerning sequrity (applet needs to be signed to be allowed access to the locl file system) or OS idiosynchrasies (if the applet is not signed it needs to be installed in the lib/ext directory of the JRE). I want the chosen solution to be:

  • Easy to install.
  • Have a minimum of requirements on the hardware and software.

My current plan is to supply a small program that implements an embedded database server (Apache Derby DB) and a small XML-RPC servlet (Apache XML-RPC). This program responds to requests sent from the WebbApp written using Google WebToolKit. With these technologies I restrict all the implementation to Java, which I know well and have grown familiar to. Further, these concepts blend in well with some of the ideas I have for offline browsing of Integra XML archives and some of the code is likely to be re-usable in the Integra project. Finally, I have chosen well established and widely used libraries for my framework (Apache and Google). Further, the WebApp can easily be made to redirect its RPC requests to an online server if so demanded. IOW, with the extra layer of abstraction between the WebApp and the database, I can easily have a more developed database sitting on a server somewhere (Postgres or MySQL) in which updates and ammendments are being made and still keep the local, embedded database engine small and simple.

Posted by henrikfr at 10:39 PM | Comments (0)

February 04, 2008

Choosing framework for my dissertation

Though my dissertation was just moved from May to September, I neww desperately to decide on the framework for which the material will be presented in. I want all my work (texts, music, videos, software demos) to be contained on a DVD and accessible in a non-linear, inter-linked and searchable fashion. These are my design considerations:

  • The repository must...
    • ...run in a standard web browser (possibly limited to Firefox).
    • ...be accessible off-line.
    • ...only rely on open formats.
    • ...require a minimal install effort on the part of the user,
  • It would be nice if...
    • ...it could be syncable with an on-line server.
    • ...it allowed for basic local persistent changes (comments, mark-as-read, etc)
Offline RIAs (which is basically what I want) is a hot potato these days with initiatives such as Firefox 3, Microsoft Silverlight, Adobe Air and Google Gears. But rather than relying on a large external framework such as these I would prefer to have something simple that is entirely embeddable.

I have found two solutions that may work for me:

  1. Junction - a part of Google Gears and designed to be a JavaScript only version of Ruby on Rails.
  2. Embedding Apache Derby in a Java Applet and letting JavaScript retrieve content and insert it in the HTML similar to this demo.
I'm leaning towards the second solution and I'm working on a proof-of-concept. My concerns are how to deal with the local storage and the installation and signature of the applet.

Any suggestions are greatly appreciated!

Posted by henrikfr at 02:32 PM | Comments (0)