Archive for February, 2007

A few days ago I was showing a couple of colleagues the Human Productivity Lab’s work on the future of the desktop. Some of them joked about not settle for anything less than a Minority Report style GUI (you know the one Tom Cruise used in order to track criminals).

Well, unfortunately for them the technology exists and from what is seems it’s really not so far away before we start seeing production GUIs like those.

I’m a huge fan of dilbert cartoon so when I found out that there is a Daily Dilbert Vista Sidebar Gadget I raced and installed it.

Why isn’t this posted on

Kudos to Quartz

I recently developed two gadgets for my employer, a Newspaper Stand (gadget showing the front pages of Greek newspapers) and a Custom Calendar that displays information about TV Shows, currently playing shows, events etc. from the Greek portal

The problem I faced during development was that I had no way of daily refreshing the content assuming that the user didn’t turn off the computer e.g. computer was put into sleep or hibernation mode during inactivity. The MSDN gadget development reference did not mention anything that could help me resolve these issues, so I ended up checking manually for date changes each time a timer’s interval was met. Even this way thow when the user opened the computer on the morning though, he/she had to wait for the first timer’s interval to see the current content.

Looking around for a while I finally found the information I was looking on the Sidebar Gadget Blog. There is actually an event System.Gadget.visibilityChanged which occurs when:

  • The gadget is docked to the sidebar and has been scrolled off-screen.

  • The gadget is docked to the sidebar and the sidebar has been minimized.

  • The workstation is locked or the user has “fast-user-switched” to another session on the console.

  • The power management timeout for the monitor has elapsed and the monitor is turned off.

And a property System.Gadget.visible which returns true if the gadget is visible. So using a simple code like:
function onload()
  System.Gadget.visibilityChanged = checkVisibility;
function checkVisibility()

you can update the content of your gadget the moment it becomes visible.

P.S. Anyone knows a reason or have a good explanation for this information not being in the Gadget Development Reference?


Several events occurred this week making it a truly WOW week:

Microsoft’s much awaited, new operating system, Windows Vista, was finally launched.

British Library published a great WPF application that presents old historical books. The user experience is so rich that you think you’re actually holding the book. I think I had already seen a demo of this app on Mix06, but nothing compares with the real thing.

A few days after the final release of Microsoft’s Ajax library, MS opened up its Source Code under the Microsoft Reference License (Ms-RL).

Microsoft released a new version of its browser enhancement module that enables browsers to render rich content in addition to HTM codename “WPF/E”. Note, that you’ll need the new February CTP release to run WPF/E applications since the previous version has a time bomb that disables it.

After installing the February CTP of WPF/E take a look at a simulation of the Vista Aero interface from inside your Web browser. [Thanks Savas]

And since we’re talking about desktops, have a look at the future of the desktop as the Human Productivity Lab imagines it. SO COOL!

Speaking of WOW experiences, send your WOW and get a chance to win a computer from Microsoft. Haven’t seen any Greek submissions so far. Are we not interested?