Sneak Preview - KnowledgeTree Explorer CP

martin's picture

When we sat down to architect our next generation KnowledgeTree Explorer, we agreed on several design and business principles that we regarded as must-have, fundamental cornerstones of our new product: cross-platform availability, component re-use, maintainability, Rich Internet Application (RIA), thin client architecture.

A sneak preview of our new KnowledgeTree Explorer (running on a Mac no less):

Platform independency
We realized very early that “desktop” is no longer synonymous with “Windows”, and saw from our diverse customer base that users require client (desktop) applications that run on Linux and Mac as well as on Windows. The most obvious choice of technology to deliver a truly cross-(OS) platform desktop application was Adobe AIR (http://www.adobe.com/products/air) since AIR applications run on any platform and operating system that support the AIR runtime (which includes Mac OS X, Linux, and Windows).

AIR implements WebKit (http://webkit.org), an open source web browser engine, which allows desktop applications to run in a scaled-down browser on the desktop. And since this browser is platform-independent, KnowledgeTree Explorer can run on any OS that supports the browser.

Rich Internet Application (RIA)
RIAs offer the user a richer, more engaging interface experience. Hosting the application in a scaled-down browser also allows us to incorporate JavaScript into the application, which opens up the use of AJAX as our client-server communication protocol. The advantage of this is a smoother, more intuitive interaction between the desktop application and the server. And of course more joy for the user :).

Desktop integration
By its nature, KnowledgeTree Explorer needs to interact with the user’s desktop and file system (downloading files from KnoweldgeTree to the local computer and vice versa), and ease-of-use demands implementation of standard and expected computer operations like Cut, Copy & Paste (including their standard keyboard shortcuts). Although most of these actions (and their keyboard shortcuts) are supported natively by Adobe AIR, some innovation was required by the engineering team to implement the full complement of actions. (I won’t give away all our secrets quite yet, but watch this space for some Derren Brown-esque (http://derrenbrown.co.uk) revelations ;) )

Drag & Drop from the desktop to KnowledgeTree Explorer CP in action:

And an upload in progress:

Thin client architecture
Moving the business logic from the client to the server is a good software design principle for a number of reasons, including: separation of business logic and presentation, code re-use, lightweight client install, ease of maintainability and updatability. However, this separation did introduce a couple of extra hurdles for the engineering team to overcome, especially overcoming AIR’s sandbox, which prohibited the server-side JavaScript directly invoking the AIR/client-side code that allows desktop interaction.

The solution was to implement a JavaScript “bridge” that manages the communication between the (server-side) JavaScript code and the code accessing the local file system.

Component re-use
A feature-rich JavaScript codebase had already been created for the KnowledgeTree Office 2007 Add-in; the majority of this code was reused (with some massaging) in the new KnowledgeTree Explorer. This has the added benefit that both of these client applications can be maintained in tandem. The integration into the existing server code was also reused, which meant that (other than for some code optimization), all current (and future clients) run off the same server code.

Ease of maintainability
AIR and KnowledgeTree Explorer updates can be centrally administered using AIR’s Update Framework, and can be configured to be updated over the web (which suits the KnowledgeTree Explorer version that will be released for KnowledgeTree Live - our SAAS offering), or from local KnowledgeTree installations (which suits the KnowledgeTree Explorer version that will be released for on-premise KnowledgeTree installations).

version 3.7 for knowledgetreelive

All of this 3.7 based functionality looks terrific. When do ktlive customers get to try it?

Re: version 3.7 for KnowledgeTree Live

Hi Eric,

Great to hear that you're as excited as we are about Knowledgetree 3.7!

Upgraded 3.7 KnowledgeTree Live instances are currently being rolled out to all existing accounts.

You will be notified of this upgrade over the next few days.

Best Regards,
Damien Williams

Being platform independent

Being platform independent and desktop integration have made this KT Explorer CP a necessary integration tools for KnowledgeTree.

Is the Alpha working?

I set up a trial version of KT Commercial and everything works except Explorer CP. Specifically, it sees the server, but never recognizes the server. I'm using version .9.live.

Re: Is the Alpha working?

Hi

If you are connecting to an on-premise installation, please ensure that you use http(s)://serveraddres/knowledgetree (where serveraddress is your specific server address) to connect to the server. The /knowledgetree is vital.

(Please post questions on all KnowledgeTree Client Applications (including Explorer CP) to the appropriate topic in http://forums.knowledgetree.com for speediest response.)

Video: KnowledgeTree Explorer CP Alpha

A while ago, we gave you a sneak preview of KnowledgeTree Explorer CP, the next generation of our KnowledgeTree Explorer desktop tool. Now you get the chance to see it in action!

We've prepared a quick video demonstrating its platform independency, pow