Surfing around the web, I often run into web sites that contain critiques of various aspects of Windows UI.
One of the most common criticisms on those sites is "old style" dialogs. In other words, dialogs that don't have the most up-to-date theming. Here's an example I ran into earlier today:
Windows has a fair number of dialogs like this - they're often fairly old dialogs that were written before new theming elements were added (or contain animations that predate newer theming options). They all work correctly but they're just ... old.
Usually the web site wants the Windows team update the dialog to match the newest styling's because the dialog is "wrong".
Whenever someone asks (or more often insists) that the Windows team update their particular old dialog, I sometimes want to turn around and ask them a question:
"You get to choose: You can get this dialog fixed OR you can cut a feature from Windows, you can't get both. Which feature in Windows would you cut to change this dialog?"
Perhaps an automotive analogy would help explain my rather intemperate reaction:
One of the roads near my house is a cement road and the road is starting to develop a fair number of cracks in it. The folks living near the road got upset at the condition of the road and started a petition drive to get the county to repair the road. Their petition worked and county came out a couple of weeks later and inspected the road and rendered their verdict on the repair (paraphrasing): We've looked at the road surface and it is 60% degraded. The threshold for immediate repairs on county roads is 80% degradation. Your road was built 30 years ago and cement roads in this area have a 40 year expected lifespan. Since the road doesn't meet our threshold for immediate repair and it hasn't met the end of its lifespan, we can't justify moving this section of road up ahead of the hundreds of other sections of road that need immediate repair.
In other words, the county had a limited budget for road repairs and there were a lot of other sections of road in the county that were in a lot worse shape than the one near my house.
The same thing happens in Windows - there are thousands of features in Windows and a limited number of developers who can change those features. Changing a dialog does not happen for free. It takes time for the developers to fix UI bugs. As an example, I just checked in a fix for a particularly tricky UI bug. I started working on that fix in early October and it's now January.
Remember, this dialog works just fine, it's just a visual inconsistency. But it's going to take a developer some amount of time to fix the dialog. Maybe it's only one day. Maybe it's a week. Maybe the fix requires coordination between multiple people (for example, changing an icon usually requires the time of both a developer AND a graphic designer). That time could be spent working on fixing other bugs. Every feature team goes through a triage process on incoming bugs to decide which bugs they should fix. They make choices based on their limited budget (there are n developers on the team, there are m bugs to fix, each bug takes t time to fix on average, that means we need to fix (m*t)/n bugs before we can ship).
Fixing theming bug like this takes time that could be spent fixing other bugs. And (as I've said before) the dialog does work correctly, it's just outdated.
So again I come back to the question: "Is fixing a working but ugly dialog really more important than all the other bugs?" It's unfortunate but you have to make a choice.
PS: Just because we have to make choices like this doesn't mean that you shouldn't send feedback like this. Just like the neighbors complaining to the county about the road, it helps to let the relevant team know about the issue. Feedback like this is invaluable for the Windows team (that's what the "Send Feedback" link is there for after all). Even if the team decides not to fix a particular bug in this release it doesn't mean that it won't be fixed in the next release.
>Because XP doesn't support TaskDialogIndirect, they would >need to author a completely new dialog for Vista and Win7. >That in turn incurs a multitude of costs - localization, test, >etc.
Welcome to the real world...
At least the IE Team knows how it is to have an nice SDK full with functions but can not use them as they still have to support XP or older...
Thanks for the post, Larry. It's interesting to me the level of detail some of these critiques include. Things I would never notice other users notice and document with such specificity you can't help but admire the effort.
As a developer, I can certainly understand the trade-off, but I can also see the other side issue. Microsoft releases UI guidelines with the goal of creating a more consistent user experience. It is not entirely unreasonable to expect that each successive version of Windows would lead the way in the adoption of this experience.
While some users may be unreasonable in their petitions or criticisms, the vast majority simply want to see Windows become an even better product. I think that's a cause we can all rally behind. :-)
As far as I can see, there are exactly TWO developers on this blog.
Myself and Larry.
The rest of you can't possible call yourselves true developers without either telling a fib or trying to make a joke.
As developers, I fully expect all of you to know what it's like to stay up all damn night trying to figure out why a given algorithm, that should work just fine, outright crashes. I would also fully expect each of you to understand what it's like to present a new feature for a software to a customer or your boss only to have them say "I need you to change this, this, and that" and then you shake your head in disbelief at the hours upon hours of work they made for you - and then shake your head in even more disbelief when you try to explain the time needed only to have them shoot back in your face "it doesn't LOOK like it would take all that long."
Honestly, guys, try to learn something here and try to understand and most importantly draw from your own experiences as developers - instead of trying to just win another argument and show up an MS employee.
@JamesNT.. so what ?
You are saying exactly the opposite I think -> that it's better (for your career, your managers, while probably not for the product but it's debatable) if you work on appearance than internals because everyone can tell between a nice dialog and an ugly one, not everyone is able to tell between a good alg. and a terrible one.
I believe JamesNT was making a simple point - "those who live in glass houses shouldn't throw stones" Based on his many previous comments I've read, I think him we'd get along well if we ever met. It's so easy for people to criticize Microsoft but there are business realities at Microsoft just like there are at any company.
It's the constant struggle between the idealists and the pragmatists. Do we complain about other people's products/processes/etc. being imperfect or do try to understand the picture isn't as easy as "fix this, it sure SEEMS easy to fix! C'mon!"
This isn't about being a Microsoft fanboy - and I can't believe people would throw that around as an insult just because some of us recognize throwing lots of money/resources at problems won't magically make everything bug free/perfect. This also isn't about throwing our arms up and saying "okay, don't fix it then." It's simply about understanding there are many pressures (moreso than us Microsoft outsiders probably realize) so our own pet bugs (like an old style user interface) may not get immediate attention. It's not a perfect world, but it's a real world.
I love you.
While I agree with Larry's argument, I think that ONE dialog that would really benefit from an update is the ChooseColor dialog. That dialog has been there, untouched, since Win 3.1, when 4bpp was still the norm. It's simply not much usable as is anymore (tip: it should be more photoshop-like, and custom colors should be global to all apps).
As for people complaining that there is no TaskDialog for XP, think again:
If I could do that in a month, MS sure can too. They could just port the Vista code as well in a redistributable library, should they want to.
@JamesNT: I am speechless. Or were you trolling for fun?
Anyhoo, that said, there are plenty of people who understand there's limited time and resources on any project in any industry. Whether it's your kitchen renovation or the layout of your favourite magazine or the production of a new car or the writing of a blog post: there's a limit to what you can do before you have to move on and either send it to market (or scrap it).
Many people have an unrealistic expectation of MS; are all (or any) non-MS products you use perfect from version to version?
I'm afraid the biggest issue is that since Windows XP, with each windows release the dialog boxes have always been pushed to the back.
If you had planned that with each new windows release we will fix 15 of the easiest dialog boxes, you would be some way to fixing most of them by now.
As it is you have fixed "nought" since Win 98 because of thinking like this.
I always liken this to redecorating your house, and leaving the same grotty carpet in. If you guys really want to stop people complaining, then this is an area you have really failed to grasp the importance of.
Rather than using half a billion dollars on Marketing Vista, use 1% of that fixing your dialogs! You would have found that far more effective, and easier to implement, not to mention cheaper.
Dear Mr Osterman,
I find it quite unappealing to read that my, and some other people’s too, continuous cries towards Microsoft to fix UI are perceived as silly demands while you end with a post-scriptum encouraging to give feedback. For me this blog post was rather discouraging, and after reading Mr Sinofsky’s blog about how wonderful Windows 7 will be and how my input is appreciated, now I feel at least uncertain of what Windows 7 team does with my feedback. I’m disappointed to seem to be just a bothering bug to you.
While I do understand you have limited resources of time, people and so on, I would like to notice that releasing system without bugs is your RESPOSIBILITY. I do not mean system with no bugs, but just without apparent (e.g. Zune crash on New Year’s Day is a type of a bug that I can bear as it happens quite seldom). According to Mr Sinofsky’s words we will not see Windows 7 until its quality would guarantee great experience – therefore I imply that one way or other the bugs will have to be fixed. This way there is no need to choose between fixing bugs and fixing UI – fixing bugs will be necessary so the remaining question is not ‘weather-or’, it is simply ‘will you fix the UI after having prepared the inner experience?’
And the question of how important UI consistency is for users can be surely estimated, at least due to telemetry, I assume.
>>Whenever someone asks (or more often insists) that the Windows team update their particular old dialog, I sometimes want to turn around and ask them a question.
Well, is it not a privilege of the customer to DEMAND something from the product they paid for (or correctly “licensed”)? Look at Japanese culture – even if somebody comes to the shop, watches everything, comments without appreciation and even utters some not nice words towards the shop assistant, still he must be treated with respect and smile and greeted with cheerful “Goodbye! Please do come again!” when he or she leaves having purchased nothing. And no, those people do not get paid God know how much. So your perceived impatience with this kind of behaviour seems not appropriate from your place, as an employee of a vendor of some kind of good (here: operating system). It is just impolite.
And it is not a customer’s problem of how tricky a bug is – it just has to work or look right – the implementation and all problems it brings is an issue for the creator.
Continuing my not so polite tirade with analyzing ‘road problem’. If we do continue that analogy then the people impeach those in power or they stop paying taxes (Montesquieu ’s ‘civil disobedience’), or they move to other count(r)y. There is a means of changing how things work – elections.
However, there is one thing I admit is your biggest problem – compatibility. Microsoft did bring up a multitude of programmers to think they can use some silly tricks and it will work one way or another, and now the consequences are being paid – you spend lots of time to assure backwards compatibility is remained even if breaking it would not be your fault. I do, though, praise Microsoft for the approach it took. Thanks to that I still enjoy some vintage software running quite well.
I would appreciate if you would not neglect the people who do insist on ‘shiny new UI’. Sometimes it’s better to have old UI but consistent within itself. And however I have doubts after writing this comment, I still feel enough upset to post it.
> "You get to choose: You can get this dialog fixed OR you
> can cut a feature from Windows, you can't get both. Which
> feature in Windows would you cut to change this dialog?"
Wouldn't it be great if the developers could focus on implementing new features while the graphics designers could spend time maintaining the layout of the various dialogs. Then you *can* actually get both.
Oh wait, that's called WPF...
Well put. But the problem can be controlled in other ways (i.e. there is one "shop" that disregards recommendations from its clients, and there is another "shop" that you can go to that has a different set of priorities and standards).
P.S. I like you a lot Larry, but this post made my stomach turn over. I used to have hope. Sigh. :(
I say, cut the other feature. Fit 'n' finish work is vastly more important than you seem to think.
Your post reads like a GM engineer saying, "Yeah, we have big panel gaps, and the plastics on the dash don't quite match up and there are some rough edges in the glove box, but guys, that's really hard to get right, and it takes a lot of time, and wouldn't you rather we put in a more powerful engine?"
And meanwhile, the competition has product without the panel gaps, mismatched plastics, and rough edges, and it turns out that now people kind of expect that, and you wonder why they don't like your product so much.
@Mike: It's more like "Yeah, we have a minor issue in which the glovebox interior no longer matches the rest of the car, but wouldn't you rather we focus on improving the instrument panel's readouts?" You make it sound like these dialogs people talk about are commonly seen: they aren't. I would bet a good amount of money that you can find a lot of people who don't even realize they exist.
Honestly, I think that same comment is worth noting to Philip and Mr. Musouka. You're strawmaning his argument and then defeating the strawman.