Partager via


Introducing Debugger Canvas

Over the past several months I’ve been working on a new Power Tool for Visual Studio with Andrew Bragdon and Brown University.  The purpose of the power tool is to get feedback from users (that means you!) about using a Code Bubbles like experience for debugging through code inside Visual Studio.  The Power Tool will be called Debugger Canvas and will be available for download on Microsoft DevLabs early next month.  It will require Visual Studio 2010 Ultimate SP1 (or the trial version), and there will be a DevLabs forum for public feedback, discussion, questions and answers, etc.  In the mean time you can find out more information on https://research.microsoft.com/debuggercanvas and also watch the demo video below.

Comments

  • Anonymous
    May 21, 2011
    Very cool stuff! As for your example of looking for a parameter value's origin - this feature also exists in Resharper, the "Value Origins" feature. I think it would be wonderful if the code bubbles UI were to do a similar dataflow analysis, so that if my caret is over a name of a parameter in one bubble, the origins of that parameter should be highlighted in bold on the bubbles that connect to it. Also, if the caret is currently on a variable or expression that is later passed as a parameter to a method that appears in another bubble, those parameters should be highlighted as well.

  • Anonymous
    May 21, 2011
    This look like a very interesting tool for delving into unknown code bases. Does it honor the DebuggerStepThroughAttribute and its sibling attributes in System.Diagnostics?

  • Anonymous
    May 22, 2011
    @Omer: That is great feedback, thanks! @OskarK: Yes, we are tied directly to the Visual Studio debugger so if the debugger skips some code (like it does with DebuggerStepThrough or DebuggerNonUserCode) then we don't show the code for it.

  • Anonymous
    May 22, 2011
    Why does it only run with the ultimate version, would be nice to run it also with the Premium

  • Anonymous
    May 22, 2011
    @Kael Another point I wanted to make was that Value Origins/Destination should also be a tool to navigate from one bubble to another - ie, to answer "what does this value come from?" or "where is this value going to?" I should be able to just hit some shortcut (say Alt+Ctrl+< or >), and then I will move either to next place in the current bubble where that variable is read, or to a new bubble, of the method calls that take this value as a parameter, and my caret will automatically be placed on that variable. I strongly feel that the full advantages of a code-bubbles type experience will only truly come to fruition when these sort of dataflow analysis features are intergrated and easy to use. Good luck!

  • Anonymous
    May 22, 2011
    Ultimate only? That seems like a perfect way to limit feedback...

  • Anonymous
    May 22, 2011
    The comment has been removed

  • Anonymous
    May 23, 2011
    Very interesting tool. Just very sad that it run exclusively on Ultimate.

  • Anonymous
    May 23, 2011
    i need it now guys! please release asap

  • Anonymous
    May 23, 2011
    i need it now guys! please release asap

  • Anonymous
    May 23, 2011
    Agree with Ultimate restriction - I regarded Ultimate as mainly a repository for ALM parts, but now it seems MS want to dump everything in there - maybe the ALM isn't selling very well - probably because most people only want the source control, and its a bit steep for that.

  • Anonymous
    May 23, 2011
    Why just for Visual Studio 2010 Ultimate SP1? :( That thing costs 10k. Most companies, including mine, can't afford to buy dozens of licenses of Ultimate and buy instead the Professional/Premium. It's just sad to have this limitation and it's a sure way to limit feedback to only really-big companies who can afford the Ultimate. Please make it available for the other versions too.

  • Anonymous
    May 23, 2011
    "Ultimate only? That seems like a perfect way to limit feedback..." Completely agree.  It might be an incredible tool; but if 99% of the community can't use it what's the point in trying it since it can only result in grief when we can't use it for anything else.

  • Anonymous
    May 23, 2011
    Ultimate only??? well I won't be giving feedback then. Nothing for the Pro version?

  • Anonymous
    May 23, 2011
    +1 for Why is this only available in Ultimate?  Looks really cool.

  • Anonymous
    May 23, 2011
    The ultimate question is answered on the research site: Why does Debugger Canvas require Visual Studio Ultimate? The Debugger Canvas is built on technologies that only ship with Visual Studio Ultimate, such as IntelliTrace and the code analysis features in the Architecture tools.

  • Anonymous
    May 23, 2011
    According to the debuggercanvas page, this depends on IntelliTrace. I assume this means it will not be usable in unmanaged code, e.g., C++?

  • Anonymous
    May 23, 2011
    The comment has been removed

  • Anonymous
    May 24, 2011
    I would argue that the 'ultimate question' is 'Why does Microsoft think only Ultimate customers should benefit from code analysis technologies?'   As a 'Premium' user,  I would very much like a less steep drop-off, and the ability to do the kinds of things Eclipse users can do without a $10,000 invesment decision made by someone else.

  • Anonymous
    May 24, 2011
    I thought intellitrace was in professional version as well. If not, they really need to come out with version of thes not reliant on intelli-trace.  Otherwise, like others hsve stated 90% of .Net developers cannot use it.

  • Anonymous
    May 24, 2011
    Looks great. A shame I'll never get to try it. Cheers to Brown, but raspberries to Microsoft for making this "Ultimate" feature carry an $8,000 price premium.

  • Anonymous
    May 24, 2011
    Wow.. Ultimate only? I think a large number of developers are using the Professional edition. I've been using Pro ever since VB3.0. I've got VS2010 Pro now. At all of my prior jobs, they had Pro installed for developers. I can understand that it relies on functionality only in Ultimate, but another version should be made for the Professional edition. We'd love to have it!

  • Anonymous
    May 24, 2011
    Wow... I would love to see some similar tool for GNU GDB for Linux... :(

  • Anonymous
    May 24, 2011
    The comment has been removed

  • Anonymous
    May 24, 2011
    Very nice!   Adds a great visual to help in understanding the program structure.

  • Anonymous
    May 24, 2011
    This looks awesome! Great Job!!

  • Anonymous
    May 24, 2011
    The comment has been removed

  • Anonymous
    May 25, 2011
    +1000 for Why is this only available in Ultimate?

  • Anonymous
    May 25, 2011
    No point in even looking - no matter how cool - because I use pro via MSDN and I struggle to find much justification (cost/benefit) for even a single step up in version (allowing that I get office and some other tools via Action Pack). Pity.

  • Anonymous
    May 25, 2011
    Superb. Thanks for the efforts.

  • Anonymous
    May 25, 2011
    It would be great if I could attach an XPS of the canvas to the bug when I check in the fix. That would be a nice opportunity for integration with TFS.

  • Anonymous
    May 26, 2011
    @Jim: Indeed, that's one of the main reasons we added the Debug -> Debugger Canvas -> Save as XPS command.  It's pretty cool!

  • Anonymous
    June 03, 2011
    Super cool!!! Can't wait to use Debugger Canvas

  • Anonymous
    June 06, 2011
    I do really want this to be applied to C++ development  !!!

  • Anonymous
    June 09, 2011
    I'm a little disappointed that the blog author/developer hasn't responded to any of the statements about Ultimate and because it's going to be mid June soon and there are no more updates. You really didn't aid the developer community in any way by restricting this to Visual Studio Ultimate.

  • Anonymous
    June 10, 2011
    The comment has been removed

  • Anonymous
    June 12, 2011
    The comment has been removed

  • Anonymous
    June 13, 2011
    Boo on only making this available for ultimate!

  • Anonymous
    June 13, 2011
    OMG : this is something that I've been missing sooo long...

  • Anonymous
    June 15, 2011
    We definitely want this in Premium and Pro.

  • Anonymous
    June 15, 2011
    I can almost see this meaning more to first year CS courses than professional dev environments. Really incredible stuff.

  • Anonymous
    August 25, 2011
    Looks really cool, but... Another down vote for ultimate only. Not all of us have that much money I am disappoint.

  • Anonymous
    August 25, 2011
    Gosh dang it-- too cool to only be in ultimate version

  • Anonymous
    August 25, 2011
    Impressive! Even if I'm not a VS user (Emacs one here) I really liked this idea!, I guess is the 1rst thing I like about VS :D

  • Anonymous
    August 25, 2011
    wooow .. it is so cool

  • Anonymous
    August 25, 2011
    That's beautiful.  I regularly  oh...ultimate?  nm.

  • Anonymous
    August 26, 2011
    Ultimate only excludes me too... /sigh Well, it sounded exciting.