Blog - Title

Playing back the help feedback

Playing back the help feedback

Rate This
  • Comments 18

This has been a really good conversation.  I've also gotten some excellent off line emails articulating the issues.  As I have been reading the feedback, noodling over it and discussing it with the help team, I've come the the following summary conclusion:

We set out to create an improved help platform that is open, standards based and extensible.  The primary benefits we were after were a good online experience, a very customizable off line experience without redundant content authoring, the ability for others to contribute to the offline content, a simple default UI and a customizable presentation experience (the new help SDK makes it easy to build alternate help clients).  In doing so, we took a step backwards on some valuable help features.  Over time, we will add back many of those features and refine the help system to provide an even more seamless help experience.  The difference is that it will be built on this open and extensible platform that enables innovations not possible before.

I do believe we talked to a lot of customers about the experience we were building but I also believe that what I'll call the "power help user" may have been under-represented.  Much of the feedback has helped me understand the kind of experience that the power help user is looking for.  I believe the help team has internalized much of the feedback and has ideas on how to continue to improve the experience.

There were a number of questions/comments on my last post on help that I think were misconceptions about the new help system (in part based on behvior of the last).

1) The new help system is asynchronous.  Your IDE does not lock up while help is launching.  Also, it's generally pretty fast, by the way, so even if it weren't asynchronous, most of the time you wouldn't notice.

2) It does support offline.  I realize the natural assumption of using a browser to host the content is that it is accessing the internet.  While it can, it can also serve the content from the local machine.

3) I think I really get now why some of you are so wed to the index, I can see how it can be very helpful.

4) I totally agree that relying exclusively on the browser for the window management probably isn't going to be a great experience and we will need to provide an alternate one.

I'm not going to respond to each and every comment/question (there were quite a few), but I'm grateful for the feedback and if you think I've missed something important or misinterpreted something, please let me know.

Thanks,

Brian

Leave a Comment
  • Please add 5 and 6 and type the answer here:
  • Post
  • I can't emphasize enough the importance of a *fast* index and table of contents. Just go spend a night answering questions on Stack Overflow without one. I admit, MSDN search has gotten 1000 times better lately but it's still simply not as fast as a locally installed index.

    But like I said on the last post, since most of my lookups are to reference framework classes and methods, just give us a .chm option. I'd actually really like this anyway aside from the help changes just because it would allow me to keep a copy of the docs on a USB stick or what not. I'm sure your publishing process must allow for multiple formats.

    Finally, I should just come out and say it. It just feels "wrong" to fire up a web server to access help. Reminds me of some old very bloated printer drivers that used to do it.

    Thanks again for all your honesty and transparency. #bharry2012

  • questions and answers will help a lot of readers here

  • it is a nightmare to click through all those search result pages without a clue, just to find a function that normally take reasonable amount of time, now you can feel free and dig all the search results to find it. I dont know how that make the cut in productivity. The primary goal of help is to give the developer less amount of time to find something he is looking for, not some online experience, I am not sure how an online experience relates to someone doing actual coding on a daily basis. Again the search results simply out of context most of the time. I would be happy if I get an old type msdn help, insteading search for something and looking inside each  search result pages and clicking the links inside it... ( simply nightmare )

  • "...the "power help user" may have been under-represented."

    I think this is definitely the case. Which is interesting, because usually it is the other way around: the power users are the ones who are most involved in the community and the ones most likely to give feedback, and it is the casual users who end up under-represented.

    I am glad that the more "advanced" use cases of the help system are getting some attention, even if it is too late for them to be addressed by RTM. One question I have: since Visual Studio releases, even service packs, are notoriously few and far between, is the help system capable of being updated out of band? Or will we have to wait for VS 2010 SP1 before seeing any improvements?

    Also, I have to take issue with your post in one respect:

    "The new help system is asynchronous.  Your IDE does not lock up while help is launching.  Also, it's generally pretty fast, by the way, so even if it weren't asynchronous, most of the time you wouldn't notice."

    This is simply not what I have observed. In both Beta 2 and SLCTP1 (I think; 10.0.21205.1 RC1Rel), launching help (F1) appears synchronous: the IDE locks up while the help listener is started AND while the browser is started. Once the browser has started and is loading the help page, the IDE becomes responsive again. Also, it typically takes about 3 seconds for the help listener to start, and then another 10-15 seconds for the default browser to start to load the page; this is true even is the default browser is already open. Moreover, the 10-15 second wait continues even on subsequent help calls, when the help listener is already started. Definitely noticeable.

  • David, I confirmed with the help team that it is asynchronous.  If you are interested in exploring that further, please send me mail and I can get you hooked up with someone on the help team who would like to investigate why it appears to be synchronous for you.

    Yes, it is possible to update the help system out of band.  At the moment we are focused on shipping VS 2010 and not really on the schedule of things to come after so I can't make any promises about when but I think we'll be putting a high priority on reacting to some of the feedback as quickly as we can.

    Brian

  • David, Help Agent is the help engine, so we need to wait until that loads into memory before any help calls can be made. So it is Asynchronous operation once it actually loads and is running.

    In the past, new help content would lockup VS for minutes as it installed/merged. This wont happen now. But I take your point that you had to wait for several seconds for F1 help to respond first time.

    Agent is a .NET app and so we get that customary long delay as the .NET Framework is loaded into memory the first time. But after that Agent will respond quickly. Currently the Beta 2 release is very unstable (beta 2 for VS, but more like Alpha code for Help Viewer). Be assured that you will see a huge improvement in the RC and RTM releases.

    I'm using a pre-RC build and I no longer get Agent crashes. If I manually kill off Agent using the tray icon, Agent reloads and services my request within just a second or two (since framework is now loaded in memory). And once Agent is running I can fire off several help API calls in fast succession (I'm building a full TOC on the fly) and get all responses within 200-300 msec.  Given this help catalog has some half million topics that's quite impressive. And my Win7 test machine is a very old and slow.

    Another comment is that if your default browser is IE or FireFox... These browser can load very slowly for me. I use Chrome and get a much better experience. Once the browser is loaded it's faster of course.

    Also there will be alternative viewers you can use (as Brain was saying). If you haven't tried it yet.. please try my H3Viewer.exe -- this is basically a DExplore style Help Viewer with full TOC and Index. I can set this as the default VS 2010 and MS HV viewer. I just did a test then

    1. Open VS 2010 (default viewer = Chrome). Time for F1 to complete 1.3 seconds.

    2. Open VS 2010 (default viewer = H3Viewer customer viewer). Time for F1 to complete .8 of a second.

    But it all depends on whether software has been recently loaded. If Chrome was not run today it would takes 3 seconds to load the F1 topic. And if help Agent has not been loaded today then add several more seconds for .NET Framework to load.

    --

    Can I just make a general comment (not directed at anyone here). It's great how everyone has offered fantastic feedback. But please be gentle. The first release of help was basically Alpha. This team started to form only 24 months ago and I think what they have done an outstanding job so far.  The API is the best we have ever seen in a help system. The ability to find and display a topic, from a catalog of half a million topics in less than a second is remarkable.

    As Brian was saying this wont be a fully featured release. Please don't expect it to be totally mature for the 1.0 release. 24 months is just not enough time to ramp up a new team, try out various designs, and deliver something with all the bells and whistles. PLEASE BE PATIENT WITH THE TEAM. They are working around the clock to finish this project. From what I have seen so far it's outstanding work. The RTM will be even better.

    IMHO they have been very smart, in that they spent a lot of time designing a kick-arse engine and API (getting the base system right). A lot of people are complaining about losing features. But hey use another viewer. I did my H3Viewer in under a week and it's almost as powerful as DExplorer. It will all get there in the end. BTW Great to see posters in Brian's blog know how to post their opinions without be rude about it.  Nice!! I know the help team have noted all this great feedback. It's probably more effective without the bad language and death threats :-)

    Rob

    MS Help MVP

    helpware.net

  • Rob... thank you for creating a custom viewer! I have been kicking the idea around for a while but have not had the time. MS should toss some bucks your way and bundle it. I am gonna grab it now.

    <br><br>

    I should just say though with regard to your last part... I don't mean to come off like I'm attacking a team or group for not doing a good job... I just think that we were kinda sucker punched with this change. I had seen no discussion of prior to installing the VS beta.

    <br><br>

    I wonder if it's possibly to deploy the help to a central server (a TFS server for example) so that machines that are running a web server all the time anyway can be used to serve the help content instead of firing up a local web server which still smells fishy to me, no matter how fast it performs.

  • Okay, I got Rob's H3Viewer. I am officially putting down my pitchfork. :) Great work Rob. Thanks again! I assume that the default help viewer setting you mentioned is post-beta 2?

  • Rob, I am not simply talking about waiting for the help agent to start or the browser to launch. I am talking about a 10 second hang, before the browser is even invoked, during which the IDE is completely unresponsive.

    And I have to say this: a good API and millisecond response times are minor concerns compared to the usability of the help interface. That is how the vast majority of users will experience and judge the help system. And frankly, I don't particularly care how long ago the help team was formed. The help system is an integral part of the development experience in Visual Studio; and Visual Studio 2010 has removed the most useful feature the help system had, and fundamentally degraded the help experience in every other area compared to Visual Studio 2008. That is not acceptable. I realize that sounds harsh, but that doesn't make it any less true.

    DExplore had problems, but those problems could have been fixed in place. Instead the help team chose to create a new help system from scratch. I am sure they had good reasons for that decision, and I am not opposed to it. But they had a responsibility to not abandon their users in the meantime; and in my opinion, that is exactly what has happened.

    Which individual or group at Microsoft is responsible for this is not my primary concern. Maybe it was the new help team, maybe it was the managers who were responsible for bringing together the new help team; it doesn't matter. Visual Studio 2010 is not produced by any one person or group at Microsoft; it is produced by the company. The company has a responsibility to maintain standards of quality, and the help system does not meet what I would have expected to be minimum quality standards.

    I have already expressed my specific concerns to Barry. Maybe some of them will be addressed by RTM; but most of them, particularly the most important such as the index and the browser interface, will not be. The net result will be a massive disappointment: after years of being promised that better things were coming, what we got was even worse than what we had. I really don't think you can reasonably expect me to be happy about that situation.

  • Regarding H3 Viewer: it looks promising, but it is still pretty rough. I will post the specifics on your blog. I realize that you created it in just a few days, but that is my point: if we have to rely on individual community contributions for our help experience, then it will always be rough, and it is a disservice to Visual Studio users for Microsoft to rely on such contributions. I will continue to evaluate it though; for now it is probably the best I can get.

  • > I wonder if it's possibly to deploy the help to a central server (a TFS server for example)

    Yes Help can be run on say your companies IIS server (it's a .NET app). I think the help team do this now. The last number in that crazy help URL "http://127.0.0.1 /help/1/..." is the session ID. If we both connected to the same help server we would have different session IDs. I assume we will hear more about this feature once this initial release is out of the way.

    To me this makes a lot of sense. Accessing huge databases seems a lot faster when handled by a separate server. As a developer in an age of cheap computers I run 3x dev PCs (XP/Win7/Touch) and a server. I'd be very interested in such a feature.

  • David, if you are using Beta 2 (although I suspect you are a partner on LCTP3), then I can well understand your frustration. Maybe my needs are different. I just want the correct help to open in a timely manner when I press F1 in the VS IDE. A 10 secs wait is unacceptable. It wont be 10 seconds in the next release. My response...

    .

    DExplore... c++ code, a decade old (they probably use VS 6 or a VS 7.0 Beta when they started the project). From what I understand it has had numerous band-aids and rework applied to it over it's life time, yet the majority of developers are still frustrated by it and find Google better. And with good reason: Inaccurate F1 results; Long merge delays that lock up VS UI; Difficult to integrate into; A crazy search page; A proprietary file format and no 3rd party redistribution locks out developers; I'm very happy to see the back end of it!  

    .

    DExplore F1 & search are so poor that most of us now rely on Index and TOC as the primary means of accessing help. MS stats confirm -- Typical access usage is now: Index 48%, TOC 25%, F1 17%, Search 10%. :-(

    .

    So it's easy to understand why users are frustrated and angry over losing both the Index and TOC. Well there is loband TOC which is great for users at the end of the line in China but I personally don't find it helpful in the context of offline help. You can see my motivation for writing H3Viewer. So the help team recognised that more band-aids on DExplore was not the solution. It was time to bite the bullet and rewrite even if that meant taking a step backwards before moving forward again. With DExplore there was no more moving forward (in fact things were moving backwards).

    .

    It may take a while to mature but this new system has a future I think where DExplore was going no where. MS Help Viewer has a good foundation (please wait for the RC or RTM before judging it) and has the potential to become the next general help platform (replacing HTML help). As a general platform the UI will probably be very different. We so desperately need something that will handle large document sets, allows us to write in Unicode, and give developers a rich API (required in an age where UI and UA are blending more and more).

    .

    Is this helpful? We live our days in programs like VS and invest a lot of time in them. Change hurts. We are all watching hoping for a good outcome. Brian this is your territory -- Have I got the history right? Thanks for allowing me to response.

    .

    Re: H3Viewer. I welcome any feedback people care to give please email me. I need feedback. Just remember that the slow access speed (long delays) are due to the current Beta 2 (really Alpha) help engine. The RC release is faster.

    .

    Rob

    MS Help MVP

    www.helpware.net

  • I am using the SLCTPs, and I am still seeing the 10 second hang.

    "Inaccurate F1 results; Long merge delays that lock up VS UI; Difficult to integrate into; A crazy search page; A proprietary file format and no 3rd party redistribution locks out developers"

    I agree that all of these were problems. And you didn't even mention how the dexplore process would stay open and silently keep the operating system from shutting down. I don't know a lot about the underlying technology of Help 2, but I have no trouble believing that it was in a state that did not allow these problems to be easily corrected. Creating a new help engine was quite possibly the right thing to do; I am not disputing that. I am not afraid of change. But change should not be undertaken carelessly. My major concerns are two-fold:

    a) As I said before, the help team has a responsibility to not abandon their users while they are in the process of creating the new help system. If the new help system could not at least be brought up to parity with the old one in time for the release, then they should have stayed with the old system until the new one is ready. In its current state I would gladly take DExplore with all of its flaws over Help 3. It is not acceptable to say "we know you don't like what you have, so we are going to give you something worse while we work on something better."

    b) The help team did not do enough to understand the needs of their users when designing the new system. I don't know where you got the stats you quoted, but if it is true that Microsoft knew that the index represented by far the most significant percentage of help usage, then how is it conceivable that they chose to leave the index out? And the TOC, which is the next most significant percentage of usage, has been considerably degraded due to the minimal loading; exploring TOC topics now takes many more clicks and page loads, and most people will not bother when they can get the same thing a lot faster online. So nearly 75% of the value of the help system has been removed or made virtually unusable. How does this represent forward progress for the help system? Whatever other problems DExplore had, at least the index and the TOC worked!

    c) Using the browser as the primary interface is baffling. The tab management problem alone has been more frustrating than all the problems I ever had with DExplore combined. And the help team's only response is that I should change the tab settings on my *primary web browser* to accommodate the needs of the help system! If the problem here was a lack of time to develop and test a new UI, then at the very least they should acknowledge that. It would NOT make it acceptable; but at least I would know that they plan on fixing it.

  • My concerns WERE two-fold, until I reorganized them :)

  • Thanks David, all valid comments. I think management were aware of the risk in targeting a 2010 release date, given the size of the job and time to do it in. The old help system was so tangled up with VS code that I guess it was all or nothing. Who knows.. we are here now. :-)

    .

    So Brian has assured us that they are not only listening to community feedback (re Index/TOC etc), but they are also acting to address these issues. Now I think the RC bits were frozen a while back so in this next RC release we probably wont see much in the way of UI changes ... which is your main concern. But the 10 sec delay should disappear for you. One of the LCTP releases was very sluggish and made my H3Viewer look pathetic because of the delays. But the January drop (LCTP 3) was very fast. No delays. I'm "robertc at helpware dot net" if you or anyone else wants to compare notes when the RC ships.

    .

    Look I'm very confident that they will deliver something that will please most punters.. most of us have stopped trying to use the VS 2002\2003\2005\2008 help system and now use Google to search MSDN online. If all they do at RTM is deliver a product where F1 and Search work reliably and fast then I will be very happy. :-D

    .

    I know you have a different take on things.  It's valid and I accept that. Hopefully RTM will surprise you :-)

    .

    Cheers

    Rob

Page 1 of 2 (18 items) 12