My wishlist for Google Desktop Search

" Google Inc. today announced a beta desktop search application that enables users to search their email, files, web history, and chats. Called Google Desktop Search, this new application makes it possible for users to find information on their computers as fast and easily as they can search the web with Google. "

It is so easy to use. It is kind of cool since you can use it to search both local information on your PC and web. I have been using another desktop search engine called X1. Google has several neat features but here are my favorites.

1. You can use filetype: option to search files with a specific extension. I was able to type "invoices filetype:doc" and was able to locate all the invoices I raised to my cusotmers on my disk.

2. You can search web pages visited. This allows me to go back to a page I was browsing but forgot to bookmark, by just typing some content string.

I hope Google publishes an API so that the product can be integrated into my other desktop apps.

Here is my wishlist for Google Desktop Search:

1. Support the search API without any restrictions (can be the same as the one they have for the websearch).

This will allow several applications to be built using the search API and plug them into Office applications like Word and Outlook.

2. Support a set of saved searches and book mark them using my browser. Will be nice to have support in both in IE and Firefox since I use both.

3. Support a way to get search results as RSS feeds.

Ink Markup Language

“InkML supports a complete and accurate representation of digital ink. For instance, in addition to the pen position over time, InkML allows recording of information about transducer device characteristics and detailed dynamic behavior to support applications such as handwriting recognition and authentication. For example, there is support for recording additional channels such as pen tilt, or pen tip force (often referred to as pressure in manufacturers’ documentation).

InkML provides means for extension. By virtue of being an XML-based language, users may easily add application-specific information to ink files to suit the needs of the application at hand.”

Ink Markup Language

With SVG for drawing and InkML for markup, we will have some interesting components to build handwritten applications.

XML and Eclipse Modeling Framwork

EMF is a modeling framework and code generation facility for building tools and other applications based on a structured data model. From a model specification described in XMI, EMF provides tools and runtime support to produce a set of Java classes for the model, a set of adapter classes that enable viewing and command-based editing of the model, and a basic editor. Models can be specified using annotated Java, XML documents, or modeling tools like Rational Rose, then imported into EMF. Most important of all, EMF provides the foundation for interoperability with other EMF-based tools and applications. ”

Yet another application of XML. It is nice too see inexpensive modeling tools on popular development environments.

Bill Gates on Blogs as Business Tools

Microsoft’s Gates Touts Blogging as Business Tool.

Gates described to his audience, which included Warren Buffett, Jeff Bezos, Michael Dell, Carly Fiorina, Barry Diller and other top business executives, how blogs worked and suggested that they could be used as a tool for businesses to communicate with customers.

“It’s getting away from the drawbacks of e-mail and the drawbacks of a Web site,’ Gates said, “We’re progressively getting better and better at it.”

Ever since I started using Bloglines my life has changed a bit. Now it has become my morning newspaper.

Before I started reading blogs I used our company’s product InfoMinder to track more than 400 web pages. Since InfoMinder alerts you to changes in web pages, it was the best way for me to keep track of topics, people (and their blogs), companies and products. Now I supplement it with blogs and I get something more than mere items of news and information. I get perspectives that I enjoy.

Blogging is already becoming popular in knowledge sharing ( see K-Logs) and project logs (Plogs). You learn a lot from blogs and blogrolls .

Documents for Everyone

Documents for Every One – Simple, Obvious, Designed for Humans

Documents for every one seems to be theme of this conference. Jon Udell said it yesterday and Adam said it again today. Jean Paoli provided probably the most compelling evidence of this theme in his presentation towards the end of the day.

“We need to make things simpler”, says Adam maintaining that XML and web services are becoming too complex. “Why does it have to be this hard” he repeatedly asked the audience. His plea for simplicity resonates so well with Jon’s theme yesterday. “Because there is no information model, every one is building their own”, he said. Like Jon’s talk , it is one of those sessions that makes you reflect deeply. Adam blogs and I hope he will continue this theme in his writings.

There were many other intersting sessions. One I particularly liked, was from Joshua Fox from Unicorn titled Know what your schemas mean. He pointed out the problem of multiple overlapping vocabularies and proposed a solution based on “Semantic Information Management”. There was another talk about “Combining Multiple Vocabularies without tears”.

For me, personally, the highlight of the day was James Clark’s talk on Incremental XML Parsing and Validation in a Text Editor. He is a legend. I went to the talk to listen to him about how he implemented an incremental XML parser in emacs. I am not an emacs guy but I am interested in incremental parsing. I think this is just the tip of the ice berg. Many of his ideas can be embedded in document editors.

Jean Paoli’s talk Real Applications of XML on the Desktop: A New Era for XML in the Mass Market was not technical but very useful. He talked about how there is a bottom up movement towards the adoption of XML for every day tasks. He described different cases of XML use with Office 2003 in simple day to day apps. This of course, is Microsoft at its best. They take something as powerful as XML and hide it behind an application as simple as Word or Excel. What makes it so interesting is that most of the apps were built in weeks.

I am looking forward to Dave Thomas’ key note on Open Augment. It is a very complementary to our own effort on HyperScope at the Bootstrap Alliance.

107103666581305010

XML 2003

Today is the first day of the event. Jon Udell gave a great keynote speech. He makes some very good points. He proposes that we pay attention to the human factor in all our attempts to automate. As Doug Engelbart says, it is about “Augmenting human intellect” and not merely automating functions.

Jon has his own unique presentation format. It is not some static HTML pages or PPT. It is a cute XML App built using very simple technologies. He demonstrated dynamic queries on his own slides using simple XPATH expressions. He definitely practices what he preaches.

I went to a vendor presentation by Amazon about their use of Web Services. They have a SOAP interface and a REST based interface (XML on http). Surprised to find that only about 15% of the traffic is based on SOAP requests.

There were a couple of other interesting presentations. One was about adding a third dimention to SVG. The one on Information Architecture with XML: From Lingua Ubiquita to Lingua Franca was pretty interesting.

I was at the News Summit yesterday. It was a full day affair and covered some of the major News XML standards like NewsML, NITF, PRISM, RSS, Atom, ICE, XMP. I am still trying to digest all that stuff. There seems to be some overlap between these different standards. I did not make it to all the post lunch sessions. Had a dream last night that they decided to merge all these things into one standard.

Collective Intelligence

Imagination is more important than knowledge
— Albert Einstein

I believe this more than ever. Blogs are a good example. I enjoy reading blogs. In them, you get a glimpse into the imaginative mind of the blogger. Because I am a bit of a techie, Jon Udell is one of my favorites. I personally think he is an idea machine.

Talking about idea machines, I am privileged to spend some time with Doug. I met him almost a year ago and it is one of the most transforming events in my life. He is the closest to a real genius I ever met. His thinking is refreshingly different.

He is well known as the inventor of the mouse. There are lot of other ideas of his that do not get as much attention. I plan to blog a bit about some of these in the coming weeks. If you have not done so, it is worth reading a few of his papers.

I will close with a few things to ponder about.

What is Collective IQ?
How do you Augment Human Intellect?
What is a Networked Improvement Community?
How do you build a Dynamic Knowledge Repository?

XDocs

XDocs and the age of new XStars ( X* ?)

Last week Microsoft executive started talking about XDocs. Here is Microsoft’s description. “XDocs,” a code name for the newest member of the Microsoft Office family, streamlines the process of gathering information by enabling teams and organizations to easily create and work with rich, dynamic forms. . A few usage scenarios on this page talk about some sample applications.

Here is my wishlist for XDocs or similar technology.

XDocs web component ( an .net component, activex control, java applet or some similar web object). This will allow me to insert an XDoc anywhere in a webpage. This means, all the website interactions with the visitors will be based on custom schemas and will have better semantics.

XDocs Office Component. Imagine the ability to click on File/New in Microsoft Word and see a bunch of XDoc style sheets. When I pick one, it looks like a Word document with sections. For example, as a marketing dude, I choose a document called Customer Visit. This document contains sections where I can type customer contact information, feature requests, reactions to prototypes I presented etc. Once I enter this document, different parts of the documents are streamed as XML to different applications. For example, the feature requests may be automatically inserted in a product database.

XDocs mail component. Somewhat similar to the scenario above, except that when I Compose/Create a new mail, I get to pick one of the pre-defined formats (each one based on an XDocs format). Let us say that it is a simple meeting request. When I send it out, it goes to my colleague. When my colleague opens the mail he is prompted to Accept/Reject/Request Postponement. The last option appears only if he has a conflict in his calendar (magically performed by an plug-in in the email client which can process XML). I know that this stuff works in outlook. But I would like it work in yahoo, hotmail or any other mail system or webmail client. When my colleague clicks Accept, his calendar is updated automatically. A development kit to allow me to define my own sequence of actions for each type of mail I receive would make it even more extensible.

Let us assume that have a new collaborative environment called XGroups based on XDocs as the underlying format. It has the ability to create your own message types. If I want to compose a plain old message, I simply pick normal as the type and I get the conventional email style message. But think of what can happen in this group. This is an extensible infrastructure. Let us decide that our XGroups decide to share a bunch of bookmarks. We simply design an XDoc called Bookmark. When I compose a message, I pick Bookmark style and simply enter a web page address. As a product team, we may decide to have message type called Feature Request. Everytime someone enters a feature request, it looks a like a normal message but is automatically tagged with the product name, the source of the request (customer, internal etc) and the request text. As we interact using XGroups, we are building a knowledge base behind the scenes.

What will have next? XMail (XML based email), XMTP ( like SMTP except it is structured with XML messages), XTTP ( like HTTP but will get/send xml streams for apps). With all this we may really need an XVM (an XML virtual machine).