Getting past the question to solving the problem, episode 2014.06.25


Today is another example where the right thing to do is not to answer the customer's question but rather to solve the customer's problem.

A customer liaison asked, "What do the registry keys X and Y do? We noticed that they are both read from and written to when you open a common file dialog. Just curious."

I replied, "I'm curious as to your curiousity. I'm afraid that you are curious because your customer is curious, and then the customer will start relying on the keys in a strange and unsupported way." The format of those keys has varied from one version of Windows to another, so there is nothing there applications can rely on. But maybe we can figure out why the customer is snooping there so we can solve the customer's problem.

The customer liaison was kind enough to explain. "The customer wants to know how to set the default folder shown in the Open and Save As dialogs."

The algorithm for choosing the default folder shown in the Open and Save As dialogs is spelled out in the documentation of the OPEN­FILE­NAME structure. There is no registry key that can force all dialogs to use a particular folder. But what is the customer's actual problem?

The customer liaison explained, "The customer wants to change the default save location for Paint and Notepad."

Okay, now we're getting closer to a solvable problem. Paint defaults to saving in the user's Pictures folder, and Notepad defaults to saving in the user's Documents folder, so you can use folder redirection to point the Pictures and Documents folders to locations of your choosing, noting of course that this will affect all applications which look for those folders.

It turns out that this was what the customer actually needed. They redirected the user's Pictures and Documents folders to their preferred location via GPO, and everybody was happy.

Comments (28)
  1. Paul? says:

    A customer actually giving useful answers to a request to describe their problem further?!? Is that even possible?

  2. Alex Cohn says:

    What I find surprising, that a corporation which can escalate its question to such level, still relies on Notepad and Paint in their business process.

  3. James says:

    @Alex, It is highly likely that Raymond changed the names of the applications.  you don't need to know the actual application name to get the idea.  

  4. Z? says:

    Wouldn't it read from X to initialise the dialog, and write to Y->X to save the most recently chosen preference(s)? And maybe just writing (the whole chain) always was deemed (right or wrong) easier than testing for changes before committing?

  5. Kirillenseer says:

    This is scary. Are people that stupid actually allowed to use and even administrate PCs? Heck…

  6. Brian_EE says:

    @Kirillenseer: "Are people that stupid…."

    That's a pretty elitist statement.

  7. Ken Hagan says:

    "That's a pretty elitist statement."

    Given that the solution was to use Group Policy, I'd say not. If your use of Windows is on a large enough scale that you've got a domain and an administrator putting GPOs together, I don't think it is elitist to hope that they might understand about the perils of hacking random registry keys.

  8. John Ludlow says:

    @Ken Hagan

    "I don't think it is elitist to hope that they might understand about the perils of hacking random registry keys."

    To be fair, they didn't exactly do that, did they? They asked for more information about how those keys were used.

    On a more general note, based on the "solve the customer's problem" principle, this isn't the end of the story. There's another level here – why did the customer want to redirect the Pictures and Documents folders? My guess is that they wanted these locations to be on a network share, but that can cause no end of trouble, not least a pause every time you launch a new Explorer.exe while it enumerates these folders.

  9. alegr1 says:

    @Kirillenseer:

    >Are people that stupid actually allowed to use and even administrate PCs?

    You need to get out to the real world more often.

  10. Antonio 'Grijan' says:

    <snarky mode>How does Microsoft dare changing the format of a registry key other developers may be relying on? It's a clear case of keeping competitors out!</snarky mode>

  11. @T. West: I once had the opposite of this problem. I tried to install patch 1.21 on WarCraft III but it kept giving me a strange error; something about failure to build some sort of tree. I contacted Blizzard Support and asked "what does this error message mean?". Instead they started rambling about how to defrag my hard disk and how to run a chkdsk. Eventually, I got tired of their rambling and run Process Explorer and found out that CRC check had failed; the downloaded patch was corrupt. If only they hadn't been wasting my time and answered my question… I logged onto Battle.net and re-downloaded manually.

  12. A clear example of the fact that asking "why" repeatedly is a good idea. The real problem is often not what is first being discussed.

  13. T. West says:

    <i>Today is another example where the right thing to do is not to answer the customer's question but rather to solve the customer's problem. </i>

    I have to say that that approach is *exceedingly* rare in tech support (at least non-MS tech support).  If I ask tech support about my general problem, I'll usually get no reply, but if I ask a question that has an unambiguous, *short* answer, there's at least some chance that I can get an answer.

    Thus, we're trained by the industry *not* to ask a question about our problem.  

    People like yourself who provide tech support at your level are rare indeed.

  14. Simon says:

    Of course, the real question is why this kind of thing escalates to Raymond's level. Why isn't it the liaison who's going back to the customer and asking "what problem are you actually trying to solve?"? This kind of thing should never be reaching the technical experts without at least basic filtering…

  15. steven says:

    Kinda like what Marcus said, it seems that a good tech supporter is like that annoying little kid that asks "why?" to every answer given. Unlike that kid, I suppose the real trick is knowing when to stop…

  16. Dave Bacher says:

    I've had a mixed bag with this on Microsoft support — and I've had managers that insist I ask "their" questions instead of the questions that actually need to be asked as well, in the past.

    Raymond can correct me on this if I'm way off base.

    I get this impression that his day is a lot of interruptions, with a few minutes of blissful flow here and there.  I think he's got 10 minutes between the last person leaving his office, and his next meeting — and so he's going to the Microsoft newsgroups, mailing lists, etc. — the internal ones — and finding problems he thinks are going to train wreck, or that are simply something he can resolve in that 10 minute block, and acting on that.

    Generally, he strikes me as that sort of a person.  

    [Nope, this question came in through the standard support channel. (I get the impression that customer liaisons are not technical, so they don't know how to dig into a customer's question to figure out what the problem is. They are just middle men who protect the engineering team from direct customer contact.) -Raymond]
  17. cheong00 says:

    I think the customer possibly have said something like "The customer wants to change the default save location for <ul>programs like</ul> Paint and Notepad." The effect that changing paths pointed by Documents and Pictures affects all other application fixes it all.

    Notepad… maybe. Paint… I can't think of a case companies actually automate it to create files at all. People would usually use something that provides automation interface or macro support. That's why I think it's a nice coincidence that it solves user problem.

  18. pagefault says:

    @Kirillenseer and the others:

    http://xkcd.com/1386/

  19. @Alex Cohn: My reading of Raymond's post is the following:

    > the customer wanted to redirect saves that normally go to Pictures and Documents (and possibly the other user locations too);

    > they noticed that Paint defaults to save to Pictures and Notepad defaults to save to Documents

    > they continued their investigation by looking at registry keys accessed by these applications when activating the standard file dialogs.

    So I doubt Paint and Notepad were core to their workflow — instead they were just mentioned because they are common and reproduce the scenario they wish to change.

  20. @Dave Bacher: You're way off. It's well-known that Raymond Chen isn't a real person, but a persona used by various Microsoft developers on the Windows team.

  21. Alex Cohn says:

    @C-12: my copy of the post reads: «The customer liaison explained, "The customer wants to change the default save location for Paint and Notepad."» I don't think your interpretation is justified.

  22. Alex Cohn says:

    «customer liaisons are not technical, so they don't know how to dig into a customer's question to figure out what the problem is. They are just middle men who protect the engineering team from direct customer contact.»

    I believe that's true. I also believe that suchmn liaisons cause more hassle than they resolve. Not that everybody   be technical, and I must confess that I was often blessed to have very helpful coworkers who had no programming education at all, but I also experienced more than once these middle men, most of them with some  managerial badge or at least ambition, who could double the work load on the team, out of pure arrogant ignorance.

  23. Joshua says:

    [I get the impression that customer liaisons are not technical …]

    So do I, from the experience on my end.

  24. dave says:

    >It's well-known that Raymond Chen isn't a real person, but a persona used by various Microsoft developers on the Windows team.

    The same way that "D.N.Cutler" wasn't a real person, but a persona used by the team of programmers that originated most of the RSX11M exec?

    ;-)

  25. cheong00 says:

    [Nope, this question came in through the standard support channel. (I get the impression that customer liaisons are not technical, so they don't know how to dig into a customer's question to figure out what the problem is. They are just middle men who protect the engineering team from direct customer contact.) -Raymond]

    I'd think it would be more productive had Microsoft provide training to them on "how to ask questions the smart way". At least it'll reduce the time lost on back-and-forwards.

    Many of my colleagues did have frustration on contacting with Microsoft supports.

  26. vtsj says:

    How is this solution not another case of using a global setting to solve a local problem? Sure, now Paint and Notepad point to your intended directory, but so does everything else.

    [I pointed this out, and they were okay with it, which tells me that they actually wanted a global solution. -Raymond]
  27. @vtsj because the customer liaison was reporting only a small part of the customer's actual problem.

  28. Interalia says:

    I faced this exact problem and the solution was setting the default folder for my EXE in the registry key "ComDlg32LastVisitedPidlMRU" or "ComDlg32LastVisitedMRU" if  <= XP. My program was hosting the Web Browser Control and for web page <INPUT TYPE=File> controls I wanted the to set the default folder. The code was from Vb6 days and worked as VB.Net so it remains, maybe there is another way?

    The moral remains an excellent one. I think of it as "don't just give the customer what he asks for, try to figure out what he needs".

Comments are closed.

Skip to main content