Archive for the ‘Windows’ Category

Testing IE6 on Vista Using Virtual PC

Sep 07
13

If you’re a web developer you may need to test on IE6, Firefox and IE7 while running Vista. The last two are easy the first one is a little trickier. Here are the steps needed:

  1. Download Virtual PC 2004
  2. Download the Internet Explorer 6 Testing VPC Image
  3. Unzip and setup everything and launch Virtual PC.
  4. Create a new virtual machine for Windows XP, click next, name your virtual PC image and then continue to add the “Hard Drive Image” you downloaded in step 2.
  5. Run the image and get the basics working. You’ll now notice that XP has no memory and can’t get on the network.
  6. To increase the paging file you have to right click on My computer, go to properties, advanced, performance, settings, advanced and set the virtual memory using the change button.
  7. If you get a firewall dialog box make sure you allow access.
  8. To get the VPC on the network you need to open up internet explorer and go to the options tab. Then go to connections tab and select LAN settings. Here you will need to uncheck the Proxy Server checkbox. ITGProxy is the internal proxy that needs to be used within Microsoft internally. It’s clear that this was never tested outside of Microsoft as this setting should never have been set. This drove me crazy for about an hour as I checked all sorts of settings. Hopefully this tip can save you some headaches.

The entire procedure is rather a pain to test for a browser. You have to download a half a gig of software just to test compatibility. In theory it should be possible to run IE6 side by side with IE7 (I do this on XP using a great program called Multiple IE’s) but for whatever reason it doesn’t work on Vista. One step forward two steps back.

Why IE isn’t standards compliant

Sep 07
8

I recently read a post that whines about the fact that Internet Explorer isn’t standards compliant. Boo hoo. Of course it isn’t standards compliant and if people understood how business works we could get IE to be strict on standards in 8 months.

To understand why IE isn’t standards compliant you need to understand how operating systems are sold.

Sales: We have a great new operating system. It has all sorts of great features, it’s more secure, robust, cost effective, it has great ROI, feature, feature, feature.

Business: Will all our business applications, devices and internal websites continue to work?

Sales: Yes. We support 98% of all your core software and our web browser is backward compatible so it won’t break your internal web applications.

Business: Ok, well we’ll roll it out in stages over the next four years and we’ll support both OS’s during the transition.

IT Department: Shit.

The equation is simple. Businesses take a long time to adopt new technologies and they tend to fear change because it tends to break things and cost them money. This creates an incentive for Microsoft to create backward compatible technologies. It’s hard enough to create a standards compliant browser but it’s likely impossible to do so and maintain compatibility with the bugs you had in previous versions of your browser. This is exactly what IE is trying to do. They will happily fix ‘IE hacks’ that require a workaround but they don’t go for the brass ring of passing the acid test because too many businesses want the legacy behavior because they don’t want to update their internal applications.

It’s not about websites asking for change it’s about big business. What can business decision makers, educational institutions and governments agencies do to help impact this type of change quickly?

Simple.

Business: We’ll upgrade the OS when it supports a truly standards compliant web browser.

Get your company, state government or city to say that sentence and you’ll see a new version of IE that’s finally standards compliant in the next 8 months.

Fitts law of mental clicking

Apr 07
27

Fitts law is a basic UI principal that predicts how easy it is to click on something. Larger things that are close to the mouse are easier to click and smaller things that are far away are harder to click. This principal guides a lot of UI design and helps ensure the proper placement of buttons, controls scrollbars and other elements.

It’s perhaps not fair to call it a ‘law’ since many applications and operating systems break the law in many places. One of the artifacts of this rule is that the edges of the screen end up being much easier to click.  In Windows XP & Vista the start button is clickable from the far-most corner even though the pixels in that corner are visually not inside the button area. (However the clock is not clickable, oops)

Fitts law predicts how easy something is to click but it doesn’t predict what you’re actually more likely to click. For example given two buttons that have the same meaning you are more likely to click the larger one.

Let’s take an actual example:

Example of vista taskbar button

Here I’m showing the mouse as it hovers along the taskbar. The user is moving their mouse along the bottom looking for a particular application. Once they see that application there is a strong instinct to want to click on the actual object that they see because it’s larger. This is what I call “Fitts Mental Law” the user will want to click the larger button. From the users perspective the image is the application so this maps to what they want.

Unfortunately on Vista this doesn’t work. As soon as you move your mouse toward the large image it disapears.  Add another little frustration to my growing list.

Things to Love & Hate about Vista

Apr 07
18

Love

  • New start menu – In general the new start menu is easier to navigate. By typing a few letters you can quickly find an application. Alternativly you can navigate the menu structure without filling the screen with cascading menus.
  • Better system searching. Finally. – You get relatively fast results without too much pain. It has room for improvement but it’s 100x better then XP searching.
  • File-system meta-data tagging – You no longer have to create sub-folders for everything. Just save all your stuff into one core location and use tags and meta-data to find it. This in conjunction with searching moves away from hierarchical storage. This makes it much easier to manage 100,000′s of files without having overly nested folders.
  • Better photo browser – Along with the generic file-system meta data there are photo specific attributes and a photo browser that makes it easier to look at large collections of pictures.
  • Other things I loved? Nothing really.
    • Tablet and Media Center are great if you’re using Vista as either a tablet or a media center. Having these features built in didn’t really change anything.
    • Aero is nice. It looks better then the XP theme but doesn’t dramatically impact how you use the computer. Flip-3D is also nice but slower then the traditional Alt+Tab. Whenever I see Flip3D it reminds me of the “Window->Cascade” menu in Windows 3.1. The more things change the more they stay the same.

Hate

  • Security dialogs, warnings and confirmations. I generally don’t turn security features off but it’s so awful I just had to disable it in order to actually use my computer. Security shouldn’t impact the user experience unless the user is actually doing something that could harm the computer. These security dialogs are now all over the place.
  • Stuff that used to work in XP may no-longer works (my scanner from HP doesn’t work, my web-cam from Logitech doesn’t work, certain software applications such as Quickbooks’05 are not supported, my standard dell sound card driver didn’t work without a lot of tweaking. etc, etc.)
  • Stuff that changed but didn’t improve. There are many example of dialogs and interface screens that got re-vamped and didn’t add significant improvements. In fact many of these seem to have lost some features or gotten unnecessarily complex.
    • Windows explorer used to have a film-strip view when viewing photos – gone
    • You used to be able to select the photos you wanted to print from the photo printing wizard – gone
    • You used to be able to change the date/time from one dialog, now it’s four separate screens .
    • You used to be able to adjust your screen/display/theme from one dialog, now it’s five separate screen.
    • Remote desktop forgets my multi-monitor resolution when I re-connect to the desktop.
  • There are now 50 different control panels. That’s 50 different places that you could screw up a setting. (Win2000 and XP had about 23)
  • Sidebar. – Anything that takes up permanent screen space should help users work with their computer. The sidebar is a classic example of a distractor. Google desktop and Yahoo both have their own versions of this same ‘tool.’
  • Business/Home/Ultimate differentiation. – Business should be a super-set of home so if you wanted home plus some other stuff you would get business. Now certain features aren’t in business but they are in home. You can’t have Windows business and still play games during lunch like solitaire.


Should I upgrade?

Probably not. Unless you like living on the edge or are developing Vista sotware there really isn’t a compelling reason to migrate. Tools like Google and Yahoo desktop fill the gap for desktop search and ‘sidebar widgets’ (if you like that sort of thing) Picassa is a good photo stop-gap for XP machines. The time saved by other improvements across the system are outweighed by the time lost due to security dialogs, re-learning and incompatibilities.

If you are really itching to improve productivity I would instead recommend the upgrade to Office 2007.

Stateless Computing – Application Hibernation

Jan 07
20

Traditional operating systems have application that are ‘running.’ Applications use system resources, memory and CPU time. When you minimize the application it’s still running. If you have to reboot you have to stop all running applications.

What if the OS could save any running application to a file. Re-open the file and the application continues to run. When an application is stored as a file it’s not taking any CPU resources, it’s hibernating but only for a single application. There are a lot of potential uses for something like this.

- Reboot whenever you need to, no need to close your applications, just pause them.
- The system doesn’t slow down as you open more applications. You simply put them away until you need them again.
- You could move an application between computers without loosing your settings. You could even make a copy of the application and see what would happen under two scenarios.
- If an application is having problems you could send it to the developer to investigate or send it to tech support.

It’s an interesting concept but there are potential problems. Epecially if the program grabs unique system resources (files, ports, connections, full screen) but the concept of hibernating at the application level not just the OS level could be useful in many scenarios.

Our relationship with computers

Nov 06
19

Dear Computer,
Enough with the pop-ups, the alerts, the toast notifications, the email dings, the buzzers, the bells the RSS notifications and messages. You do nothing but nag me all day. I’m done with your blinking battery indicator, and your endless yes / no questions.

When did we lose sight of our direction? Don’t you dare tell me you can’t delete the file. If I said I want it deleted, don’t argue with me. How can you ask me if I want the file saved? Of course I want to save it! I’ve been working on it for hours.

You don’t understand me. You never did. I wonder if you ever will. We don’t have conversations, we don’t interface. Two monologues doesn’t make a dialog. You have a great memory but you never remember what I like. You’re always off running random errands and other nonsense.

I don’t know if it’s going to work out. I’m asking you to change.

- Your Humans

Why did Vista Slip?

Apr 06
20

1 – The project was neither driven by schedule, well defined feature goals or quality. There’s no way to tell when the project is done if there aren’t clear metrics for at least two out of these three.

2 – Security is one of those things that will never be done. Microsoft stopped progress on Vista to focus on security. So much time was spent looking at security that it became a feature area of focus. Even if 10 years was spent on security there is always something more you could do. Once security is a feature it’s hard to tell when it’s ‘done’.

3 – Little incentive to ship ontime. Large organizations that purchased service contracts for new versions of Windows have already paid their money so there is little financial incentive to ship a new version of windows. The upgrade market is relatively small compared to the OEM market. Missing a release in holiday ’03, 04′, 05′, and 06′ hurt OEM’s more then it hurt Microsoft.

4 – Shipping a dud is worse then not shipping. A release as big as Vista needs to be solid. This is especially true since the product cycle is now approaching 6 years.

5 – No competition biting at the heals of the OS market. Competition drives innovation. Microsoft does it’s best work when it’s trying to take over a new market. (Better at offense then defense) . With Apple now shipping an x86 compatible OS the preasure is now rising.

6 – A good product release should have a theme. The theme is the primary reason that people are excited or interested in the product. The theme helps you tell the story. A good story has a beginning, middle and end. A product story is the same way. You have a key theme, and this theme has a key feature that begins your story. Sub-features help with the middle and end of the story. Once your product has a compelling story the team can rally around the design and bring it to completion. One of the main reasons that Vista is so late is that the story characters changed at every scene. At first it was about a database file system, then it was about security, then it was about a side-bar feature, then it was about gadgets, then it was about Avalon… But don’t forget about IE7, RSS, and assorted other themes.

The technologies are great and I have a lot of respect for everyone over in Redmond (hey everyone.) However to have a compelling OS release and do so in a reasonable amount of time the product needs to be about something important. Only then does it become a priority to ship it.

Dangerous Features

Jan 06
15

Dangerous Features

Word with toolbar docked to the left

This is a screenshot of the menu bar in office being docked to the left side of the window.
You may ask, why would someone want to do that? The short answer is that they probably wouldn’t. The long answer may have something to do with Far East languages that read top to bottom. In short I don’t know why this feature exists in the english version of Office but I’m pretty sure it’s a bad feature.

What makes a bad feature?

  • The feature can be turned on by accident
  • If the feature is turned on there’s no obvious way to turn it off
  • The number of people who use the feature is small, and the number of people who absolutely need the feature is close to zero.
  • The feature is asthetic but can cause functional errors

When working on Windows XP the usability team discovered a similar problem in Window 98-2000. The problem was that users would click-drag the taskbar when they thought they clicked on a program icon. This would either cause the taskbar to shrink to be a tiny pixel bar at the bottom of the screen or it would accidently get dragged to take up 1/2 the entire screen.

The solution was to keep the taskbar locked by default:

Advanced users would be able to unlock the taskbar and resize it to their hearts content but beginners wouldn’t drag the taskbar into oblivion.

Think about your own software, are there any dangerous features? Have you protected your users from mistakes?

Twas the night before meltdown

Dec 05
8

Twas a night such as this one and all through the office,
Not a creature was stirring, not even the bosses.

The servers were hung on the blue screen with care,
In hopes that the updates soon would be there.

The employees were nestled away from their cubes,
While strange infomercials danced on their tubes.

My desktop and Tivo, my laptop and Mac,
Had just powered down for a long winter’s nap.

When out on my hard drive there arose such a clatter,
I sprang from the bed to save the bits from the platter.

Away to the tower I flew like a flash,
Removed my peripherals and emptied my cache.

The drive sputtered down and as the smoke cleared,
My data was lost I hadn’t backed up in years.

When, what to my caffeine filled eyes should appear,
But a miniature thumb-drive, and a couple of beers.

With a little old driver, so lively and quick,
I knew in a moment it could just do the trick.

More rapid than Google the futility came,
I shouted and cursed as I called them by name.

Now, Windows! Now, Dell! Now, Intel and Segate!
For such a disaster I deserve quite a rebate

A stack of CD’s to the top of the wall!
Now crash away! crash away! crash away all!”

So on through the night the curses they flew,
I wish I had backed up a sector or two

And then, in a twinkling morning of day,
I found some of my data squirreled away.

I sprang from my desk to try to re-make,
The dashed broken bits of a hard-drive mistake.
And just as I finish you’ll hear me explain

Run your backups by night or suffer my pain.

- Happy Holidays from Greg “yes I crashed my hard drive” Raiz

Permission Denied – Dead end UI

Nov 05
25

Anyone who has ever tried to share a computer file between two computers has probably seem the ‘permission denied’ dialog. This is what I call a ‘dead-end-dialog.’ The dialog informs you of a problem but doesn’t help you solve it.

“xyz is not accessible. You might not have permission to use this network resource. Contact the administrator of this server to find out if you have access permissions.”

OK so as a user who exactly am I supposed to contact? I may not know who the system administrator is, and even if I do… The system administrator claims that I do have access permissions. So where is the disconnect? The dialog is a dead-end because the user doesn’t know where to go and neither does the administrator. Even if ‘everybody’ is given permissions that doesn’t mean it will work.

In security UI design there is a common mistake that is made. The belief is that keeping ‘bad’ people out is more important then anything. In fact many designs take this so far that they don’t design for the opposite case. You need to make sure that the ‘good’ people can actually get in. The dialog is a dead-end because it doesn’t provide a mechanism to request permissions.

Web 1.0 security- Setup groups, permissions, security and settings so that the right people have access. If they get denied they are out of luck or they have to contact the admin to fix the problem.

Web 2.0 security – People request permissions for the resources that they need right from the UI. As people make requests administrators approve/deny requests and the groups and settings are built automatically. The admin doesn’t have to hunt for the right place or the right setting, they don’t have to worry about allow/deny groups and ultimately they can setup auto-rules for certain resources.