Notes on comments.
Welcome to our blog dedicated to the engineering of Microsoft Windows 7
Where to Start? In this post, Chaitanya Sareen, a senior program manager on the Core User Experience team, sets the engineering context for the most frequently used user-interface elements in Windows – the Windows Taskbar. -- Steven
It should come as no surprise that we receive lots of feedback about the taskbar and its functionality in general. It should also come as no surprise that we are constantly trying to raise the bar and improve the taskbar experience for our customers, while making sure we bring forward the familiarity and benefits (and compatibility) of the existing implementation and design. In this post, the we would like to provide some insight into that unassuming bar most likely at the bottom of your Windows desktop. Let’s take a closer look at its various parts, data we’ve collected and how this learning will inform the engineering of Windows 7.
Our taskbar made its debut way back in Windows 95 and its core functionality remains the same to this day. In short, it provides launching, switching and “whispering” functionality. Figure 1 shows the Vista taskbar and calls out its basic anatomy. Notable pieces are the taskband, Quick Launch, the Start Menu, Desktop Toolbars (aka Deskbands) and the Notification Area. Collectively, these components afford some of the most fundamental controls for customers to start, manage and monitor their tasks.
Fig. 1: Windows Taskbar Anatomy
The taskband is one of the most important parts of the taskbar. It hosts buttons which represent most of the windows open on the desktop. Think of the taskband as a remote control for your computer—you can switch windows just like switching channels on a TV. The idea of switching windows is the most fundamental aspect of the Windows taskbar. Other operating systems also have bars at the bottom of their screen, although theirs may have different goals. For example, Mac OS X has a Dock which is primarily a program launcher and a program switcher. Clicking on an icon on the Dock usually brings up all the windows of a running program. In 2003 Apple introduced a window switcher known as Exposé which provides a different visual approach to our long-standing Alt-tab interface (Vista’s Flip 3D is yet another visual approach). These dedicated window switchers all aim to provide customers with a broad view of their open windows, but they each require the customer to first invoke them. The taskband on the other hand, is designed to always be visible so that windows remain within quick access of the mouse. This makes the taskbar the most prominent window switcher of the Windows operating system.
Two noteworthy taskbar changes were introduced in the last eight years. Windows XP ushered in grouping which allows taskbar buttons to collapse into a single button to save space and organize windows by their process. Vista presented taskbar thumbnails. These visual representations give customers more information about the window they are looking for. While valuable, interfaces like the taskbar, Alt-tab and even Apple’s own Exposé reveal that thumbnails are not always large enough to guarantee recognition of a window. Their value further degrades when they have to shrink to accommodate many open windows, which is feedback we receive from those that often have lots of running programs x lots of open windows.
The Start Menu has always been anchored off the taskbar as a starting point for the customer’s key tasks such as launching or accessing system functionality. Microsoft of course used term “Start” and prominently labeled the Start Menu’s button as such. You may even recall the huge marketing campaign for Windows 95 which featured the Rolling Stone’s “Start Me Up”. In all seriousness though, our research showed that many customers didn’t always know where to go on their computer to start a task. When a customer was placed in front of a Windows 95 machine she now had a clearly labeled place to start. And yes, we’ve heard the joke that you click start to shutdown your machine. Speaking of shutdown, we did encounter some challenges with the power options in Vista’s Start Menu. The goal was to bubble-up and advertise the sleep option so that customers enjoy a faster resume. However, we now know despite our good intentions, customers are opening that fly-out menu and selecting other options. We’re looking into improving this experience.
The Start Menu has undergone many changes over the years. One notable change was the appearance of a MFU (most frequently used) section in Windows XP that suggests commonly (well frequently) used programs. The goal here was to save the customer time by not having to always go to All Programs. Since these items appear automatically based on usage, no manual customization was even required. All Programs itself has undergone several iterations. Customer feedback revealed that people encountered difficulty in traversing the original All Programs fly-out menu. It wasn’t uncommon to have your mouse “fall off” the menu and then you’d have your restart the task all over again. This was particularly the case for laptop customers using a trackpad. It also didn’t help that expanding this menu suddenly filled the entire desktop which looked visually noisy and it also required lots of mouse movement. And of course, for machines with large number of items and/or groups it was especially complex, and even more so on small screens. Vista introduced a single menu that requires less mouse acrobatics.
Search was another important addition to the Start Menu that makes launching even easier. This new feature in Vista provides fast access to programs and files without the need to use a mouse at all. Typing in a phrase quickly surfaces programs, files and even e-mails. We’ve received many positive comments from enthusiasts who feel this is a key performance win in terms of “time to launch”. It may be interesting to note that Start Menu’s search is optimized to first return program results as this was viewed as the most common scenario among our customers (using some of the Desktop Search technology). Search even permits customers to use parameters to further scope their queries. For instance, one can use “to:john” or “from:jane” to find a specific mail directly from the Start Menu. Our advanced customers also enjoy the benefit of using the Start Menu’s search as a replacement of the Run Dialog. Just as they would type the name of an executable along with some switches in the dialog, they can now just type this directly into the search field. We could (and will) dedicate an entire blog post to search alone, but hopefully you get a sense of how search certainly provides a powerful launch alternative to mouse navigation.
Quick Launch provides a way for customers to launch commonly used programs, files, folders and websites directly off the taskbar. It was introduced to Windows 95 by Internet Explorer 4.0 with the Windows Desktop Update. Customizing Quick Launch is as simple as dragging shortcuts into to this area. It saves you a trip to the Start Menu, the desktop or a folder when you want to launch something. An interesting feature of Quick Launch that you may not be aware of is that it has always supported large icons (unlock the taskbar, right-click on Quick Launch and click on large icons under “View”) as seen in figure 2. Of course growing the icons begins to intrude on the real-estate of the taskband which is one of the reasons we have not enabled this configuration by default. As an aside, Windows XP had Quick Launch turned off by default in an attempt to reduce the number of different launching surfaces throughout Windows. Based on your feedback, we quickly rectified this faux pas and Quick Launch was turned on by default again. Don’t mess with quick access to things people use every day! We heard you loud and clear.
Fig. 2: Large Icons in Quick Launch. Large icons on the taskbar have been supported since Windows 95 with IE 4
Desktop Toolbars offer extensible and specialized functionality at the top-level of the taskbar. This functionality also came to the taskbar via Internet Explorer 4.0 back in the ‘90s. You can access toolbars by right-clicking on your taskbar and expanding “Toolbars”. Personally, I like to think of Desktop Toolbars as an early type of gadgets for the Windows platform. Over the years developers have written various toolbars including controls for background music (e.g. Windows Media Player’s mini-mode shown in figure 1), search fields, richer views of laptop batteries, weather forecasts and many more.
One of the original scenarios of Desktop Toolbars was to allow customers to launch items directly off the taskbar. In fact, Quick Launch itself is a special type of toolbar that surfaces shortcuts in the Quick Launch folder. Did you know you can even create your own toolbar for any folder on your computer so that you have quick access to its contents (from the Toolbar menu, select “New Toolbar” and just choose the folder you’d like to access)? Apple’s latest OS introduced similar functionality to the Dock called Stacks. While I think their implementation of this feature is generally more visually appealing, it is interesting to note they recently released a new list representation that matches our original functionality. Seems like we both agree a simple list is usually the most efficient way to parse and navigate lots of items.
After extolling all the greatness of Desktop Toolbars, we must also admit they introduce several challenges. For starters, they aren’t the easiest thing to discover. They also take up valuable space on an already busy taskbar. Most importantly though, they don’t always solve the customer goal. Sure you can have a folder’s contents accessible off your taskbar, but what if the files you want quick access to aren’t located in a single place? These are design challenges we intend to tackle.
The Notification Area is pretty much what you expect—an area for notifications. It was an original part of the taskbar and it was designed to whisper information to the customer. Here you can easily monitor the system, be alerted to the state of a program or even check the time. Icons were the predominant way to convey information until later versions of Windows introduced notification balloons that provide descriptive alerts with text. Also added was a collapsible UI that hid inactive icons so the taskbar would appear cleaner.
With more developers leveraging its functionality, the Notification Area has grown in popularity over the years. Some may observe that it has changed from a subtle whisperer to something louder. Based upon the feedback we’ve collected from customers, we recognize the Notification Area could benefit from being less noisy and something more controllable by the end-user.
Earlier posts to this blog discussed how customers can voluntarily and anonymously send us data on how they use our features. We use these findings to help guide our designs. Please note that data do not design features for us, but they certainly help us prioritize our investments as well as validate our approach. All to often we’re all guilty of saying something like “we know everyone does <x>” or “all users do <y>”. Given the reliability and statistical accuracy of this data, we can speak with more real-world accuracy about how things are in used in practice. Let’s look at some interesting information we have collected about how our customers use the taskbar.
Figure 3 provides some of the most important data about the taskbar—window count. On average, we know that a vast majority of our customers encounter up to 6-9 simultaneous windows during a session (a session is defined as a log in / log out or 24 hours—whichever occurs first). It goes without saying that the taskbar should work for the entire distribution of this graph, but identifying the “sweet spot” helps focus our efforts on the area that matters most to the most amount of customers. So, we know that if we nail the 6-9 case and we work well for the 0-5 as well as the 10-14 scenarios, we’ve addressed almost 90% of typical sessions.
Fig. 3: What’s the maximum number of windows opened at a time?
Figures 4 and 5 help us understand how customers customize their taskbars. We could probably spend an entire post focused solely on how we determine the options we expose. Perhaps another time we’ll tackle the paradox of choice and how options stress our engineering process yet also make the product more fun for a set of customers. Until then, let’s see what conclusions we can draw from these findings. The most obvious takeaway is that most customers do not change the default settings, which are a simple right-click Properties away. For example, it may be interesting to note how often end-users relocate the taskbar to other regions of the screen—less than 2% of sessions have a taskbar that’s not at the bottom of the screen. We also know that some small percentage of machines accidently relocate the taskbar and more often than not end-users have difficulty undoing such a state—though our data does not differentiate this situation. This data does not necessarily mean we would remove relocation functionality, but rather we could prioritize investments in a default horizontal taskbar over other configurations.
Fig. 4: How do people customize their taskbar? The red number indicates percentage of sessions in which the corresponding checkbox is enabled.
Fig. 5: Where do people put their taskbar?
Figure 6 provides some insight into the Windows Media Player Desktop Toolbar. The Windows UX Guidelines prescribe that to create a toolbar on the customer’s taskbar, you must call a Windows Shell API that asks the customer for permission. Looking at the Windows Media Player usage we found that only 10% sessions show that the customer consented. Even more surprising is that only 3% of sessions see the toolbar at all (you still need to minimize Media Player to see the controls). In other words, 97% of sessions aren’t even enjoying this functionality at all! Since we do believe the scenario has value, we know to look into alternative designs. We’d like to surface this functionality to a larger set of customers while making sure the customer remains in control of her experience.
Toolbar enabled and visible
Fig. 6: How many people use the Windows Media toolbar? Enabled means user consented to the toolbar, visible means the toolbar actually appeared on the taskbar.
Before the team even sat down to brainstorm ideas about improving the taskbar, we all took time to first respect the UI. The taskbar is almost 15 years old, everyone uses it, people are used to it and many consider it good enough. We also recognized that if we were to improve it, we could not afford to introduce usability failures where none existed. This automatically sets a very high bar. We proceeded carefully by first looking into areas for improvement.
Here’s a small sample of some things we’ve learned from our data, heard from our customers and what we’ve observed ourselves. One of favorite ways of gaining verbatim comments in a lab setting where we can validate the instrumented data but also gain in-depth context via interviews and questionnaires. In engineering Windows 7 we have hundreds of hours of studies like these. Please remember this is just a glimpse of some feedback—this is not an exhaustive list nor it is implied that we will, or should, act upon all of these concepts.
In the abstract, we can summarize this feedback with a few principles:
We hope this post provides a little more insight into the taskbar as well as our process of collecting and reacting to customer feedback. Stay tuned for more details in the future.
This also answers any productivity issues concerned with the desktop. You basically need to start handling workflow.
The start menu should also be based on roles and subclassed from there dealing with the clutter.
The role concept should be a theme i.e. work across the entire set of user interfaces so you i.e. could uninstall any applications and tools subclassing i.e. developer\web role, artist\graphics etc.
Some of this profiling or factoring have already made it into when you install using server manager in Windows Server 2008.
With Windows Installer you can currently only use something like mutating the arp comment to represent app classification and then try to use sort-by arp comment in the Vista uninstaller to see any custom classifications. The basic problem is that when you open the uninstaller you usually have no idea what applications are used for. You need to infer that based on your knowledge.
So you need a new conceptual layer above the application layer concerned with roles, organization etc.
I extensively use the Desktop Toolbars in XP, however I can't seem to use them in the same way on Vista.
I undock the toolbars from the TaskBar and dock them to the edge of the screen instead with them always on top and auto-hidden (my taskbar auto-hides as well).
As far as I can tell you can no longer undock the toolbars from the TaskBar in Vista which will be a pain when I start using it. It seems their functionality has been replaced by the SideBar which might be ok if you could Auto-hide it. As it stands it's either behind everything so that you have to keep minimising all your apps, or on top of everything so it gets in the way. I also don't know if you can add random links to it.
The toolbars I use are 'My Computer' (for easy access to drives), Quicklaunch, Desktop Icons (so I don't have to keep minimizing applications to run a new program), and toolbars with links to folders, batch files, and other programs. I have enough to fill the height of a 1600x1200 display :-).
Againg, taking history into account the quantity of open windows should be perceived as a change in the user context. If we do not help user organize their work the system will be perceived a less and less productive or effective work environment. Also with Mac and Linux - however currently Windows is the productivity platform of choice and should be concerned with this position. Handling that complexity could also allow for more software to come into the platform (i.e. currently workstations may get positioned into a role - however different for consumers - they need to virtualize what they have ... and in many ways companies are seeking to do that too ... roaming or mobile users etc - we have ms desktop application virtualization (softgrid) as well coming up).
Like tab-sorting, a popular feature in browsers, we need to be able to re-arrange our taskband buttons (simple click-and-drag).
This is one of the most basic features we've been missing in Windows for quite some time.
The ability to drag toolbars off the taskbar is nice, but we need more functionality added to that as well. Color coding them, allowing them to contain their own nested toolbars, slide-out menus, and customized "start menus".
Much of the second option might be considered "advanced" functionality, but if combined with a wizard when doing something (like making a new toolbar or moving the start-bar), many people in many environments would not doubt find it incredibly useful.
(Tabbed toolbar containing Excel files/word files/shortcuts/links, all organized and sorted by whatever arrangement suits the user.)
"I undock the toolbars from the TaskBar and dock them to the edge of the screen instead with them always on top and auto-hidden (my taskbar auto-hides as well)."
i do the same, as i mentioned in my comments and no, you can't do this in vista. i have my computer and my network places toolbars docked on the right and autohidden. i have 1 click access to any of these resources. this is a lot more productive than some gadget that shows a slideshow of my pictures folder.
I am part of that one-percent of users who places the task bar at the top of the window. The ability to place the task bar at the top of the window is very important to me as a user. I hope that the development team continues to keep the preferences of user's who may do things differently from the majority in mind.
Personally I like the taskbar. Can't complain about it, it gets the job done. I would love to see a few improvements, some of which have been mentioned here.
1. Span multiple monitors, or better yet, give me a new taskbar on the second monitor that only shows windows open on that monitor.
2. Don't allow any popup windows down by the clock. Supremely annoying because software vendors abuse it.
3. I want a multi-desktop manager like Apple and Linux have.
I am one of the few who has the taskbar on the left hand edge of teh screen (widescreen monitor and old dekstop publishing habits) this works fine and allows me to have a lot more programmes open before you can't see them on the bar. I don't like grouping. What does annoy me is that having the bar on the left means that you can not drag programs from the start menu to quick launcher as it is covered up as soon as you click on start. Why does this have to happen ? it is not the case when the taskbar is on the bottom. One other thin it would be nice to have the option to flip the bar so that the start button can still be at the bottom of the screen even if the task bar is vertical.
I love the taskbar. I really think it's THE best solution to giving a user access to various items while not taking too much real estate away. I think the taskbar in KDE for Linux is too big; The taskbars in Gnome take up too much space; the Dock in OS X isn't useful enough. The Windows Taskbar is COMPLETELY where it's at. :)
I agree with the first result of your study: Allow users to rearrange taskbar tasks. I use 3rd-party software to accomplish this and it works fine, but it's really something that'd be nice to have built-in to the OS. Look at Taskbar Shuffle or Taskix for examples.
One thing I don't like about the Windows Media Player Toolbar is that you have to minimize WMP to use it. I would like to see it there all the time when WMP is open. I would also like to minimize WMP to the System Tray (Notification Area) so that I can see that it's open and go to the next random song without opening the giant window. But if I want WMP open, it's nice to see the song that's come up before I click next. I have been a long-time user of Winamp and I had a Winamp Deskband that worked well for a while. Unfortunately it's old and causes the Taskbar to be not translucent because the programmer hasn't updated it for Vista, so I don't use that anymore. What I'm getting at is that it's nice to have the option of having controls ALWAYS on the taskbar.
While I use the 'Recently Used Programs' list in the Start fly-out, one thing about it I don't like is that the order changes. Obstensibly, it's supposed to be the items I use the most, I understand that, but I feel like it would allow quicker access to start programs if I could define the order (Sort by Name?) or perhaps even define the programs that get listed there (Like a 'Favorites'... something slower than Quick Launch, but faster than 'All Programs'). Of course, customizing it then becomes another level of complexity that isn't present at the moment since that area defines itself. Looking through a list of programs is nice, but since I have to mentally take-in every program listed there before I can choose the one I want to start, it feels slower than either Searching (which I *love*) or going through All Programs where everything IS sorted alphabetically.
(While I'm on the topic of Alphabetical sorting, here's something I've wanted since XP first started the 'grouped Control Panel' look. PLEASE allow a user to sort the Grouped Control Panel view alphabetaically. Alpha sorting makes things SO much easier to find for me. I'm sure tha'ts not true for someone else, though...)
The only thing I can think about changing in the Taskbar would be to allow a user to define an order to the icons in the System Tray (Notification Area). It owuld be nice if I could define an hierarchy that would always put the icons in an order of my choosing. It seems to happen now for the most part, but there are times when the icons are in different orders than I'm used to.
Overall, I love the Taskbar and think it's a great solution. Please don't change it *too* much. :)
I for one would LOVE to see Dual Monitor setups given some extra tlc in Windwos "7" It is just awful that the taskbar does not span, the windows size is funky if you turn one monitor off, ect.
I would like to echo a few things that have been said here in regards to places the taskbar can improve, plus add a couple of my own.
- Interaction with the sidebar. Being able to drag the Quick Launch, notification area, various toolbars, or Time/Date display over to the Sidebar would be nice and make a lot of sense. They could default back to the taskbar when the Sidebar is closed.
- Window rearranging. Being able to reorganize the buttons for the window would be nice sometimes. Implementing a manual grouping functionality would help to visually fence off a particular task. Perhaps by way of making your own group similar to same-program groups, naming it, then dragging items to it. Perhaps via a tab system.
- Full customization. Let users position the start menu and notification area if they want.
- Resizing. Give an accurate feel while resizing things of how it will look locked. Currently I need to resize until just after two quicklaunch items are forced into the extra menu to get a Locked size that fits snugly and shows everything.
- Multiple monitors, which are becoming more common, can make things much easier. It is an area that can be capitalized on. Mainly this centers around customization.
- One aspect is the taskbar. Extend it across the second monitor and have it relate to the first taskbar. Allow users to specify if it shows up on the extra monitors at all, and how it behaves. Does the notification area show up on one monitor at a time? Multiple? How about the system clock? Do the open windows spill over when one window is full? Does the user want the same ones available on all screens?
- Frequently used programs. It would be really nice to be able to peg a program on the list regardless of how often I open it. I (and presumably others) put my most used programs on the quicklaunch and it's nice to have certain less frequently used programs avaible within two clicks even if I don't open it as often as others.
- All Programs. Just as having the entire huge list expanded in a tree can be daunting, having the whole thing confined to a relatively small box can inhibit visibility. I prefer the Vista approach, but being able to resize the box would be nice. Maybe have it resizable (and remember how it was last sized) when in All Programs and revert to normal when in default or search modes. Width for long names, height and maybe a second column would be valued customizations.
- Remember choices of what is hidden. Not so much an issue for me now that internet connections can't be customizable in this way, but I got it a lot with my laptop's ethernet connection. Whenever I plugged into a network or unplugged, the icon would pop up no matter what I had set. If you give the option to customize, make sure it's obeyed.
- Revert to having Properties available on right-clicking a network icon. There are only three things I have ever wanted to do from the network icon's context menu: Connect to a wireless network, cycle power on the thing by choosing Repair (should really have a more informative name, by the way), and go to Properties.
- Show Hidden Icons. Particularly on a default-height taskbar, it takes a while to get your bearings when the [often myriad] icons fly out across half of your screen. Ensure that there is enough time for the user to find the one they need. Maybe implement a setting for Minimum Time Expanded. Maybe expand the Hit Box for the mouse in determining if the user is still looking through the list for the desired icon.
- USB peripherals. It's not uncommon to have more than one USB drive/stick connected to the system at one time, and it's easy to forget which drive letter was assigned to which. Better identifiers for the devices would be handy when using the Notification icon rather than right-clicking the drive from My Computer. Maybe use the names assigned to the drives, maybe display the capacity.
Whew. Long list. I hope it's helpful and brought up some good, actionable points for you guys.
I love the taskbar. However, I am one of those users who frequently have 50+ windows open, turns off window grouping, and docks my taskbar on the left. Unfortunately, when working at this scale, there are two changes in Vista from XP that have significantly degraded my user experience with the taskbar:
1) The windows no longer stay in a well-defined order when windows grouping is disabled. In XP, the windows were arranged by the time they were opened. However, in Vista, if a program stops responding for a few seconds (usually due to a network IO call on the UI thread), the taskbar re-arranges the order of the windows, or sometimes even hides them! This means I take 5-10 times longer to find the window I am looking for, which is incredibly frustrating.
2) With 50+ windows open on a regular basis, the desktop window manager becomes an resource hog, and the thumbnail preview often fails :(
I've since disabled the previews (and Flip3D) and seen very significant perf gains on my machine as a result.
Any hints on if these problems can be adressed in Vista (or if they will be addressed in future versions)? Both are distracting enough to make me want to switch back to XP + Desktop Search.
Thanks, and please don't over-optimize for the 99% case. Those of us in the 1% bucket would like to believe we still matter :)
Here are some ideas I have.
- Task Thumbnails
Why not have the thumbnail animated? It would quickly zoom from the top to the middle and then out of the window, and varying speeds depending on the speed of the mouse.
This would let me see what web page or document was open for a few split seconds, and then show me the overall picture.
Maybe this wouldn't look as good as I imagine in practise, would be interested to see it though.
- Notification Area Icons
Please introduce a standard API to remove icons. So any icon can be dragged out of the notification area, and whatever program would stop placing it there.
- Task Bar Height
I am surprised hardly anyone I observe have more than one row on the taskbar. Use two rows! You get much more space and you even get the day of the week !
Lack of space is why I think people don't like desk bands. Having a Media Player control vs. suddenly having a popup menu for all of IE's windows is for me a no brainer, I'd rather switch to media player to change song and keep quick access to other windows.