Archive for May, 2007

Upcoming talks, Ignite Boston & Desktop Linux 4

May 07
30

This Thursday I’ll be speaking at Boston Ignite, an event organized by O’reilly.

“Mingle and talk tech with your fellow FOOs, alpha geeks, and techies from the greater Boston area.”

The events looks like it’ll be a lot of fun. If you’re in the Boston area I hope to see you there. I’ll be giving a 5-min talk on organizing chaos. The basic idea is that technology can turn us into digital librarians instead of data creators and consumers. Learn more here.

Next month I’ll be at Google in Mountain View, CA talking at the 4th Desktop Linux Architects Conference. I’ll be speaking about how Linux is chasing desktop developers while all the desktop developers have moved on to write web applications. If you think of the web as the application platform then migration becomes much easier. The challenge is bridging the gap and creating the stepping stones that people need. (This one is still brewing in Greg’s Head so your comments and input are welcome)

Uncanny Valley of GUI doesn’t exist

May 07
26

Bill Higgins has an interesting discussion about the convergence of desktop and web applications. The basic idea he suggests is that bad things happen when you break expectations for the interaction model of your application.

Web applications should act like web applications.
Desktop application should act like desktop application. Right?

I personally disagree. A good design recognizes the things that work on the web and the things that work on the desktop and uses both to their advantage. For example…

Things that are good/intuative about the web…
- The back button
- Single clicking
- Rich graphics
- Hypertext

Things that are good/intuative about desktop applications…
- Drag/Drop (when you need it)
- Right clicking objects for advanced actions
- Advanced common controls
- Improved performance (hopefully)

The reason Zimbra has the ‘uncanny’ feeling is because it’s borrowing a bunch of desktop interactions that are known to be difficult. They are also tossing out a bunch of good things from the web experience.
- Double click an email to open it. (Many users don’t realize when to double click, even on the desktop)
- Click-drag to create an appointment. (Instead of single click, a click drag isn’t intuative)
- Broken back button
- Object centric design instead of task centric design

Gmail gets it. It’s interface uses many of the good things from both web and desktop.

Let’s talk about ‘Active Desktop.’ The whole active desktop thing was about trying to fix the ‘double click’ issue and introduce the back button into the desktop interface. It wanted to create some consistency between Explorer and IE.
This effort was half successful. The back button is now in file browsers in both Windows and OSX. The part that didn’t work out and was ‘uncanney’ was a feature called ‘hover-select.’

Hover-select failed because it was a bad design. You can’t find hover selection on the web, this was a new design concept and it just didn’t work. It is possible to have a single click desktop experience it was just done the wrong way in Win98.

I don’t believe there is an uncanney valley of UI. I think there are just poorly designed applications. The best of breed applications will utilize the best aspects of the desktop and the web experience.

BTW: Did I mention we’re developing a desktop application? A new demo is posted of our PicMe photo product.

Linux and Patents

May 07
16

People in the Linux community are asking Microsoft to “show me the patents.” Microsoft is certainly creating some uncertainty but they are very likely on solid footing on some of their many patents. The reason that Microsoft isn’t making a move is because it’s not yet clear who to go after. The desktops? The distributions? The corporations deploying the software? A legal battle would likely cost them more then they could gain.

Many of the patents in the MS portfolio cover core design and implementation details that would not be trivial to code arround. Three examples that I suspect are undoubtably part of the list:

  1. The start menu
  2. Long file names
  3. Plug and Play

Each of these covers a different area of design and protection. The start menu is clearly a distinct visual element that is very recognizable as a fundemental part of windows.

Long file names is a level deeper in the OS. This describes how a file can have spaces and still be used to traverse folders using traditional commands with quotation marks. The use of quotation marks is not-obvious and the duplication of the feature (even though it’s a separate implementation) is likely an infringement.

Lastly Plug and Play is down in the guts of the OS. This is core to how the OS deals with hardware devices. In order for Linux to be compatible with hardware it’s necessary to be compatible with the way that Windows does plug and play.

Of course this is likely the tip of the iceberg. Hundreds if not thousands of additional patents lie just beneath the surface.
The best defense is a good offense

There are many technologies that are invented and created by individuals in the open source community. These technologies are invented, designed and made popular. Many of these inventions make their way into Linux and other products. The best defense is to build up an ‘open patent portfolio.’ This would allows contributors (IBM, Dell, Novel, Adobe, Ubuntu, KDE, Gnome, etc.) to include patents in a community portfolio. The portfolio would be open and cross-licensed to other organizations that provide reciprical agreements.

Basically companies can use the open patent portfolio without cost as long as they don’t sue the patent contributors.

What ends up happening is you have a ‘cold war’ on patents. Both sides build up an arsenal of 100′s of patents and neither side will sue because it’s a no win situation.

(A crazier idea is to enact software patent reform, but that’s just pie-in-the-sky long-term thinking.)

Digital Home Sweet Home

May 07
13

About a year back I was asked to explore some concepts for a digital home of the future. The following are some concept notes I thought I’d share.

Core principal
- Technology should augment the experince of being at home. It should not pester, annoy, interfeer or intrude.
- Technology should be there when I need it and hidden otherwise
- Technology should serve a human purpose, it should not be for show
- The cell phone is the primary control device, no extra displays, intercoms or other wall mounted technology

Entering the house
- House detects the car coming home and begins to prep the environment. The house is no longer in hibernation mode saving energy, the boiler warms up, the temperature is increased 5 degrees, the house lights are setup for the time of day.
- Keyless entry, allows a person to walk in with groceries without reaching in their pocket.
- Music from your car playlist is synced with your house music so the song that was halfway done can be resumed (at your request)
- Other people in the house are alterted to your arrival, tv’s & computers show a notification and possibly show video of the entry way
- People who don’t have a key can be buzzed in from a cell phone
- As you enter the center of the house along the floor you can see the household family members names outlined in text and lightly projected on the floor with arrows telling you where different people are in the house. No need to yell or go looking for people. Following the arrows leads you to the people.

Food and Dining
- When you pull up a recipie on the kitchen computer selecting an ingredient illuminates a shelf, the handle to the fridge or a cabinet drawer allowing you to quickly find items for your recipie.
- The computer keeps track of food items in the house via RFID and recommends recipies based on the food you have and the prep-time that you would like. The computer knows when the skillet is on the stove and when food is in the skillet (by weight), it can adjust the temperature to match the recipie, pre-heat the oven, etc.
- If you tell it you want a particular meal it’ll put together a shopping list. You can either pickit up yourself or get the ingredients delivered.

TV and Entertainment
- Your cell phone is the universal remote control with directional controls and a small screen can be used anywhere in the house.
- Point the remote at the TV and you can change channels, use a DVR play music, etc.
- Point the remote at a light and the screen shows you that you can turn the light up/down/off
- Point it at the door and you can open/close/lock
- Point it at a window and you can open/close/ or control the AC in the house
- Point it at a speaker and you can control the volume

Bathroom
- Magic Mirror – shows you what parts of your face you missed while shaving
- Displays your daily calendar in the morning, allows you to start coffee maker as you get out of the shower
- Reminds you to take your pills/vitamins
- Digital newspaper/magazine for when you are sitting down ;)

Wiring
- There is no wiring. Or at least almost no wiring. Typically when someone builds a showcase house or a tech house they like to tought the fact that there are 5000 miles of wires and cables though the house. This is a bad bad thing. This means:
- A no one can maintain or repair the house becuse it’s so complex.
- No one could ever build such a house because of the infrastructure cost.
I true house of the future would just have electrical wiring through the body of the house perhaps a duel plug that supports both AC and DC power. All video, audio and ethernet data should be wireless. A home server should sit in the basement storing files, backing things up and managing the complexity.

Google War Games

May 07
10

I created a little game. If you have an disagreement and need a tie-breaker let Google settle the score:

Boxers OR Briefs
Coke OR Pepsi
Yes OR NO
Good OR Evil
“Great Taste” OR “Less Filling”

Any other good ones?

Footnote: Remember to use capital OR otherwise it doesn’t work right. The reason for this is because in natural language search “or” and “and” can sometimes mean each-other. For example if you say: “I want to see cars that are red or blue” you’re actually asking for cars that are red AND cars that are blue, a logical union.

A/B testing Google’s Redesign

May 07
9

Many companies run A/B tests to evaluate their design changes. An A/B test means that they have multiple products/designs being used by people on a day-to-day basis. One group is the control A and the other group is testing the new design, B. By tracking statistics of both groups you can quantify change between the two.

Recently one of my computers was tagged to view a re-design of Google results page:

The change creates a left hand gutter that has two core functions.

  1. It allows users to change Google search contexts, from web to images, to patents, blogs, Google Scholar and more.
  2. It allows users to refine search queries with other related queries.

The ability to change search contexts is useful however the functionality is redundant with the links that are already there in today’s design. Running the links vertically may be advantageous in quickly reading and presenting a longer list. As Google’s properties grow this may become more of a necessity. Ultimately I think this approach is flawed. As media gets separated into more and more buckets users will be forced to search for content on various properties. Wasn’t the whole point of search to bring things together into one result set? I would love to see a single result list that would allow me to filter down by media type rather then having to make the choice up front. (Google Desktop takes this approach)

The ability to refine a search is somewhat useful. It helps identify similar and related searches. I’m reminded of the Ask.com commercial where a guy shows how Ask.com is a pimped out search engine. From some experimentation it seems that these related searches are showing other large numbered searches, not concepts. This means that this feature will help users refine down but won’t help if the search is too narrow. There are many potential tools to refine searches by organizing data in a logical way. Currently the redesign continues to promote textual refinements rather then exposing tools on the results page to filter results by date, size, author, type, etc, etc.

The real question for me is what metric is Google using to evaluate the A/B test? Are they looking at page views, Ad conversions, number of executed searches or something else. The A/B testing metric is what will ultimately determine if this design is released.