Stainless Improving By Leaps and Bounds!

When I first wrote about Stainless, I indicated that it provided impressive features/functionalities for a version 0.1 release. In a subsequent post, I elaborated on Stainless’ strengths and weaknesses. 

Stainless is now at version 0.2.5. And in the space of a few weeks, Mesa Dynamics has addressed a number of the weaknesses I previously noted. Specifically:

  • Download capability – It just works now! Thanks!
  • Offline mode – Via Google Gears. Interestingly, I predicted this might take some time. I am so happy to be wrong!!
The release notes for Stainless provide the details on these and numerous other improvements.
So, what’s left? In order for me to shift to Stainless as my ‘production browser’, I really need:
  • Interaction with Google Notebook – Even via the bookmarklet is fine! 
  • URL Caching/Auto-Completion – As noted previously … 
Even with these production must-haves, Stainless is well worth a look today.

Synced-Data Applications: The Bastard Child of Convergence

At the Search Engine Strategies Conference in August 2006, in an informal conversation, Google CEO Eric Schmidt stated:

What’s interesting [now] is that there is an emergent new model, and you all are here because you are part of that new model. I don’t think people have really understood how big this opportunity really is. It starts with the premise that the data services and architecture should be on servers. We call it cloud computing – they should be in a “cloud” somewhere. And that if you have the right kind of browser or the right kind of access, it doesn’t matter whether you have a PC or a Mac or a mobile phone or a BlackBerry or what have you – or new devices still to be developed – you can get access to the cloud. There are a number of companies that have benefited from that. Obviously, Google, Yahoo!, eBay, Amazon come to mind. The computation and the data and so forth are in the servers.

My interpretation of cloud computing is summarized in the following figure.


Yesterday, I introduced the concept of Synced-Data Applications (SDAs). SDAs are summarized in the following figure.


SDAs owe their existence to the convergence of the cloud and the desktop/handheld.

Synced-Data Applications: The Future of End-User Software?

I recently asked: Is desktop software is dead?

Increasingly, I am of the opinion that desktop software is well on its way to extinction.

In its place, Synced-Data Applications (SDAs) have emerged.

One of the best examples I’ve recently run across is Evernote. Native Evernote applications exist for desktops (as well as handhelds) and for the cloud (e.g., via a Web browser). Your data is replicated between the cloud (in this example, Evernote’s Webstores) and your desktop(s)/handheld(s). Synced-Data Applications.

And with Google Gears, Google Docs has also entered the SDA software paradigm.

With SDAs, it’s not just about the cloud, and it’s not just about the desktop/handheld. It’s all about the convergence that this software paradigm brings.

A revised version of the figure I shared in the previous post on this thread is included below.

Once again, it emphasizes that interest is focused on the convergence between the isolated realm of the desktop/handheld on the one hand, and the cloud (I previously referred to this as the network) on the other.

It’s much, much less about commercial versus Open Source software. And yes, I remain unaware of SDA examples that live purely in the Open Source realm …

Is Desktop Software Dead?

When was the last time you were impressed by desktop software?

Really impressed?

After seeing (in chronological order) Steve Jobs, Al Gore and Tim Bray make use of Apple Keynote, I absolutely had to give it a try. And impressed I was – and to some extent, still am. For me, this revelation happened about a year ago. I cannot recall the previous instance – i.e., the time I was truly impressed by desktop software.

Although I may be premature, I can’t help but ask: Is desktop software dead?
A few data points:
  • Wikipedia states: “There is no page titled “desktop software”.” What?! I suppose you could argue I’m hedging my bets by choosing an obscure phrase (not!), but seriously, it is remarkable that there is no Wikipedia entry for “desktop software”!
  • Microsoft, easily the leading purveyor of desktop software, is apparently in trouble. Although Gartner’s recent observations target Microsoft Windows Vista, this indirectly spells trouble for all Windows applications as they rely heavily on the platform provided by Vista.
  • There’s an innovation’s hiatus. And that’s diplomatically generous! Who really cares about the feature/functionality improvements in, e.g., Microsoft Office? When was the last time a whole new desktop software category appeared? Even in the Apple Keynote example I shared above, I was impressed by Apple’s spin on presentation software. Although Keynote required me to unlearn habits developed through years of use Microsoft PowerPoint, I was under no delusions of having entered some new genre of desktop software.
  • Thin is in! The bloatware that is modern desktop software is crumbling under its own weight. It must be nothing short of embarrassing to see this proven on a daily basis by the likes of Google Docs. Hardware vendors must be crying in their beers as well, as for years consumers have been forced to upgrade their desktops to accommodate the latest revs of their favorite desktop OS and apps. And of course, this became a negatively reinforcing cycle, as the hardware upgrades masked the inefficiencies inherent in the bloated desktop software. Thin is in! And thin, these days, doesn’t necessarily translate to a penalty in performance.
  • Desktop software is reaching out to the network. Despite efforts like Microsoft Office Online, the lacklustre results speak for themselves. It’s 2008, and Microsoft is still playing catch up with upstarts like Google. Even desktop software behemoth Adobe has shown better signs of getting it (network-wise) with recent entres such as Adobe Air. (And of course, with the arrival of Google Gears, providers of networked software are reaching out to the desktop.)

The figure below attempts to graphically represent some of the data points I’ve ranted about above.

In addition to providing a summary, the figure suggests:

  • An opportunity for networked, Open Source software. AFAIK, that upper-right quadrant is completely open. I haven’t done an exhaustive search, so any input would be appreciated.
  • A new battle ground. Going forward, the battle will be less about commercial versus Open Source software. The battle will be more about desktop versus networked software.

So: Is desktop software dead?

Feel free to chime in!

To Do for Microsoft: Create a Wikipedia entry for “desktop software”.

Collaborative, Browser-Based Mind Mapping with MindMeister

I serendipitously happened across MindMeister about thirty minutes ago.

Since then, I’ve created a mind map from scratch, plus imported and exported maps with FreeMind – my incumbent mind-mapping software. (The importing/exporting appears to work very well. This is one of the capabilities of Google Docs & Spreadsheets that makes it a keeper, so kudos to the MindMeister team infor getting this right in a beta version!)

So, based on less-than-an-hour’s experience, I am quite impressed. This is yet another example of a browser-based application that performs as if it’s installed locally – on a powerful laptop/desktop! Although I haven’t been able to confirm this yet, I suspect that MindMeister is based on AJAX – just like Google Docs & Spreadsheets.

As you can read for yourself from more-comprehensive reviews, others are also impressed with MindMeister even though it lacks a number of features/functionalities. For example as a former use of Mindjet MindMapper, and current, frequent user of FreeMind, what I’m missing the most in MindMeister (so far) is the ability to attach notes and hyperlinks to my nodes. I’m sure that capabilities such as these aren’t far away.

In addition to being intuitive and responsive, the online aspect of MindMeister is impressive. Taking another page out of the Google Docs & Spreadsheets’ book, this inherently online element is used to enable collaboration.

And just to close with some wild speculation … MindMeister would make a nice acquisition target for Google. It’d be a complimentary inclusion in their expanding online productivity portfolio. I would also expect it to be an interesting fit with Google’s JotSpot wiki and even Google Notebook.

Annozilla: A Firefox Plug-in for Annotation

In early August I wrote: “… the only Web browser that I know of that supports annotation is the W3C’s Amaya.”

I am delighted to report that there is a Firefox plug-in for annotation:

This is the the Annozilla project, designed to view and create annotations associated with a web page, as defined by the W3C Annotea project. The idea is to store annotations as RDF on a server, using XPointer (or at least XPointer-like constructs) to identify the region of the document being annotated.

It’s aligned with the W3C – it makes use of W3C standards like XPointer and RDF.

This is precisely what I was goading Google into doing with Google Notebook.

Google Docs: A Tool for Annotation

Google Docs supports comments.

First you select text, or place the cursor somewhere in your document.

Then you click on the “Insert” tab and finally on “Comment”. (“Ctrl-M” also works as a keyboard shortcut.)

You can now type directly into the comment area. The comment area is clearly delineated by a color of your choosing.

I’ve attached an example (oars_abstract) produced with Google Docs. It’s rendered here in PDF so that the comment can be viewed.

For additional help with comments, you can have a look at the Google Docs & Spreadsheets Help Center.

As I’ve blogged elsewhere, this is an example of annotation in the context of word processing.

In the case of Google Docs, this is precisely where I’d love to see an integration with Google Notebook. More specifically, extend the Google Docs notion of a comment by allowing for a Web-addressable comment. In delivering a comment that can be identified by a URL (or even better a URI), we’re closer to having an annotation.

And while we’re at it, one more thing. I’d like the resulting annotation to make use of XPointer 😉

Google Apps & Google Notebook

Although my enthusiasm for Google Apps for Your Domain (GAFYD) may appear lukewarm at best, I do hope that this venture leads to mass-market adoption.

Why?

Google’s intersection with office-productivity suites is likely to stimulate innovation.

For example, I’ve blogged a fair bit recently about annotation. Google has a mechanism for annotation in Google Notebook, as does Microsoft Word. GAFYD will allow annotations to be recontextualized for the Web-enabled office. In fairness, and to avoid the Google vs. Microsoft double standard, I expect all of this will also apply to Microsoft Office Live.

It’ll be interesting to watch this unfold.

Microsoft Word: A Tool for Annotation

Not too long ago I blogged about Google Notebook as a tool for annotation.

Of course, annotation isn’t a new concept, and therefore there are other tools that allow for it.

Not surprisingly, Microsoft Word is one of these tools. By use of comments, Word allows for annotation. I’ve made available Word and PDF examples elsewhere. In addition to annotations via Word comments being author and date stamped, my example illustrates how annotations via Word comments:

  • Can indicate a specific point in a document – The start or end of the orignal blog post in my example
  • Can span a number of document elements – A few paragraphs and an item of a bulleted list in my example

My example also illustrates how annotations via comments are distinct from tracked changes, the latter being another very powerful capabilty in Word.

Although Word can annotate to at least the degree described here, there is one aspect that is limiting. To be wholly useful in the context of annotation, Microsoft needs to expose its mechanism of fragment identification. This is the Word equivalent of an XPointer entry. (The same applies to Google Notebook. Microsoft and Google may have already allowed for this through some API, Application Programming Interface. I just haven’t spent any time looking for them.) Using my Mac, I converted the Word example into HTML. (Sorry, WordPress wouldn’t allow me to upload it!) Comments become linked footnotes. Although this is understandable, aspects of the annotation are lost in translation. I’ll look at an XML-based representation next time I’m at my desktop PC to see if that does any better. Stay tuned.

In closing, it’s important to note that Word is representative of current office productivity software in its ability to convey annotations. In other words, I would expect that OpenOffice and others could do the same. Somewhat related Adobe Acrobat also allows for a similar capability in the case of PDF documents.

Google Notebook: A Tool for Annotation

According to one source, “… annotation means adding information (such as notes, commentary, links to source material, and so on) to existing web-accessible documents without changing the originals.”

Wikipedia defines it this way: “Annotation is extra information associated with a particular point in a document or other piece of information.”

My introduction to the term occurred when I worked for Platform Computing. While I was there, we worked on several projects whose aim was to annotate genomes.

Later on, working with Keith Aldridge of York University, I became interested in annotating data from The Global Geodynamics Project (GGP). Briefly, GGP data is collected by instruments called Superconducting Gravimeters (SGs). These instruments are incredibly sensitive to relative changes in Earth’s acceleration due to gravity. GGP is in fact a network of SGs that are distributed across the planet. Each instrument, each month provides three data files:

  • Gravity and pressure data – The primary observables sampled regularly in time
  • Auxilliary data – Complimentary observables (like groundwater levels) sampled regularly in time
  • Log data – Other observables (like service events) that occur at irregular intervals

When Keith and I first started work on introducing an XML-based data model for the GGP, we thought it made sense to automatically represent each of these files separately, and then combine them using XIncude or XSLT. (This XML-based data model is described in detail elsewhere.) After additional exposure to the XML spectrum, XPointer emerged as another option. (I alluded to this in a follow-up paper with Keith.) XML Pointer Language (XPointer) is “… the language to be used as the basis for a fragment identifier for any URI reference that locates a resource …” It’s not by coincidence that the Wikipedia definition for annotation reads similarly to this definition of XPointer from the W3C. XPointer is the W3C’s vehicle for annotation.

It’s still my take that adoption of XPointer is rather slow. For example, the only Web browser that I know of that supports annotation is the W3C’s Amaya. When browsing annotated Web pages with Amaya, clickable icons of pencils provide a link to the annotations.

The utility of annotations, taken together with the poor adoption of XPointer in mass-market Web browsers, makes for exciting possibilities for Google Notebook. What follows are a few data points on Google Notebook:

  • “Google Notebook makes web research of all kinds – from planning a vacation to researching a school paper to buying a car – easier and more efficient by enabling you to clip and gather information even while you’re browsing the web.”
  • Google Notebook lives in your Web browser
  • Google Notebook organizes, in an easily accessible way, your Web findings
  • Google Notebook is accessible from any Internetworked computer
  • Google Notebook is another prototype emerging from the Google Labs
  • Google Notebook is searchable (of course, doh!)
  • Google Notebook is publishable – click here for an example

In other words, Google Notebook is a tool for annotation!

Enthusiasm aside, I must note that:

  • Google Notebook is not standards based – I assume it’s based on proprietary Googleisms, but this requires further research (Please see the comments on this post for additional dialog on this point.)
  • Google Notebook is not a fragment identifier – The degree of granularity is the Web page itself, not a fragment on a Web page
    (Please see the comments on this post for additional dialog on this point.)
  • Google Notebook is targeted at Mozilla Firefox only – It’s enabled as a plugin (Please see the comments on this post for additional dialog on this point.)
  • Google Notebook makes use of a simple model of authentication – Username and password form the basis
  • Google Notebook doesn’t allow for Access Control Levels (ACLs) – Published notebooks are accessible by anyone who picks up on the lengthy, randomly generated URL

On balance, Google Notebook is useful, and allows for an excellent introduction to annotation. I highly recommend investigating Google Notebook, and providing your feedback to Google on it.