[linux-elitists] Can we woo you first? [Was: How MS could woo me]

Aaron Lehmann aaronl@vitelus.com
Wed Dec 24 00:56:34 PST 2003

On Wed, Dec 24, 2003 at 04:42:41PM +1100, Jeff Waugh wrote:
> Okay, so, throw a desktop-wide message bus into the mix (D-BUS,
> which is being taken very seriously by freedesktop.org contributors
> and the kernel community),

I hope you weren't implying that it would have kernelside support,
because that would be a bad idea.

> and you get a stream of context that any application can listen and
> contribute to. No more dashboard-specific cluepacket patches,
> everyone's on the same bus.

Sounds like a cool proposition but I think the security implications
should be discussed. I know that X gives free access to the display to
a lot of applications, but this is one of the things I dislike about
X. I think any "desktop" being designed now has the potential to
outlast X or at least its current security mechanism, thus it should
preemptively allow for sandboxed applications without access to the
metadata stream. Just a thought.

> Most cluepackets are generated as things happen in the user
> interface, such as you actively typing in an email address, or when
> one of your friends sends you an instant message. Lots of raw
> context. Dashboard tries to make sense of this by displaying
> cut-down, relevant portions of the information - a photo of the
> person contacting you, their latest emails sent to you, a few blog
> headlines, a few contact details like their phone number and email
> address, appointments with them in your calendar, etc.

Needs Google integration ;).

A big problem would be doing this would be performance. Most desktops
seem sluggish on older hardware, so this would not be easy to do
efficiently even on very powerful machines. I know you're only giving
a high level overview and this is probably a lot more thought out, but
there are all kinds of performance questions that arise in my mind. Do
all running applications suddenly stampede through their databases
every event to find useful information, causing lots of competition
for the hard disk and introducing many seeks? (BTW, what happens if
you aren't running your mail client at the time?) On a laptop, this
kind of system would prevent the hard disk from ever spinning down.
On the other hand, if no one builds software that places heavy demands
on the hardware, we'll stop having such fast new CPU's to play with
every year. I probably would have cast off GUI's as impractical in the
seventies, yet the original Macintosh from 1984 has a very snappy feel
for such a groundbreaking technology.

> Most of these, in turn, are hyperlinks. So if your friend messages
> you, "Oi, you didn't reply to my email!" there's a link to it
> sitting in your dashboard right there, ready to go. ;-) But none of
> this works well if you don't have searchable access to useful
> information for dashboard to contextualise.

Unfortunately, this kind of thing sounds like it could get much more
annoying than Clippy very quickly. Every time your boss IM's you, you
might have a picture of his ugly face pop up. I think that to turn
this system into something worthwhile, you would need a very good
metric for deciding what should be shown. The only way I can really
imagine it not frustrating me is with artificial intelligence. A very
good bayesian filter that learns from contextualized user choices
might come close, but don't ask me how to do that efficiently.

> So, we need to make standard user-oriented data accessible to
> everything in the desktop. Evolution's next release will include
> evolution-data-server, which provides a standard C/glib API for
> getting to contact and calendaring information (which includes
> different backends too, btw). Apple does this pretty well in OS X
> with iCal and Address Book APIs, MS are planning a deep solution to
> this in Longhorn, which will basically make these kinds of very
> structured records first-class items in WinFS. We can't do all of
> that right now; we're being realistic (the Ximian dudes would like
> Evolution to be included in GNOME 2.6, which is being released in
> March), and a C API is a good start. (For other apps, there would
> most likely be cluepacket data provision plugins, like current
> dashboard stuff.)

A C API is certainly a good start. I expected that any project of this
scale would be doused in .NET, C# XML, CORBA, and whatever else is in
fashion for desktop systems nowadays. I'm pleasantly surprised that
such a traditional, accessible, low-overhead API will be available.

> All of that will give us massive amounts of real-time context, and a
> decent chunk of useful information accessible to everything on the
> desktop. Then we'll see what people do with it. I'm sure there will
> be a dashboard-like interface, but remember that *any* application
> can take advantage of the bus... What else can we do? :-)
> I'm not sure we're going to do a mass defection away from WIMP any
> time soon, but there are lots of infrastructural changes being made
> throughout the software world that are evolving away from *reliance*
> on classic WIMP metaphors. That's pretty sweet, for users, babies
> and bathwater.
> The most important thing to remember about all of this is that we
> can make *massive* infrastructural, cross-desktop improvements at a
> fraction of the time that MS can.

In fact GNOME specializes in making infastructural changes. ;)

> Having the source, relatively co-ordinated desktop projects, and so
> on, can really make a huge difference for us. The ground work is
> already done, we're already competitive: "... and then you win."

On the first read I found the Dashboard idea quite attractive; now I'm
not so sure. The big problem will be filtering results effectively.
Besides, when I envision what the UI would look like, I always see the
dialog in http://www.luc.edu/infotech/document/xp/images/xpdesk-search.gif
in my mind for some reason (I think that's just my brain's way of
telling me that this is going to be implemented as some big stylized
multimedia extravaganza that's distracting rather than a tiny window
with url's scrolling by).

FWIW Microsoft has two current projects named Dashboard so I hope
that name doesn't ever get used officially.

More information about the linux-elitists mailing list