Wow, where does the time go? Here I am, sitting in the Memphis airport on Sunday evening, waiting for my flight to Atlanta for Tech Ed 2011 – North America.  I love going to Tech Ed, as it is the conference that really re-energizes me for the year.  And this year especially, as I’m speaking again on one of the biggest stages in the world.

This year I am speaking on IntelliTrace, formerly known as “Historical Debugging”.  The main idea behind IntelliTrace is that you no longer run into the “un-reproducable bug” scenario.  But, as you’ll see in my talk, you can do so much more with it than that.  And for the extremely hard-core, you can even customize the information that is collected.  All of which will be touched on in some form or fashion in my talk.

In addition to IntelliTrace, I’ll also be talking about debugging tips in general.  Some people don’t realize all the power that the debugger in Visual Studio 2010 can give you, so we are going to look at some tips and tricks around the debugger, and especially breakpoints, that can make your life easier.

I speak on Wednesday at 3:15, and I’d love to see a packed crowd.  And remember, I’m not above bribing people to come to my session!  So, in addition to some T-Shirts, and anything else I can drum up before Wednesday, I also have a copy of “Professional Application Lifecycle Management with Visual Studio 2010”, signed by all four authors.  There are not very many copies out there signed by all four of us, so this is definitely a must-have! Smile

Keep a watch on my blog and my twitter feed this week.  I’ll be tweeting from Tech Ed, and posting information about my talk here.  And don’t be a stranger!  If you are at Tech Ed and want to meet up, send me an email (mickey_gousset at yahoo dot com) or a tweet or a text message, come to the TLC, or come to my session.  I’d love to meet up with you.  Let’s grab some breakfast or lunch!

As I mentioned in a previous blog post, I’ll be speaking on IntelliTrace at Tech Ed 2001 – North America. This blog post is the first in a series that I’ll publish as I delve into IntelliTrace in more detail, in preparation for my talk.

IntelliTrace is enabled by default in Visual Studio 2010 Ultimate, but it is configured so as to only capture some basic information, so as to not impact application performance.  I thought a good starting point would be to look and see what the different configuration options for IntelliTrace are.

To access the IntelliTrace options in Visual Studio 2010 Ultimate, select Tools | Options. This will open the Options window.  Scroll down until you see the IntelliTrace node.  Expand the IntelliTrace node and select General.

image

The General tab is where you can enable/disable IntelliTrace by checking/unchecking the Enable IntelliTrace checkbox.  By default, the checkbox is checked, indicating that IntelliTrace is turned on.

You have two options for collecting IntelliTrace information:

  • IntelliTrace events only – Selecting this radio button tells IntelliTrace to only collect information related to IntelliTrace events.  This is the default mode, and the one that has a minimal effect on performance.
  • IntelliTrace events and call information – Selecting this radio button tells IntelliTrace to collect both event information, and call stack information.  The call stack information can include method names, method parameters, and return values.  As you can imagine, depending on the amount of information collected, this can lead to performance issues with the application.

image

The image above shows the two warning messages that appear if you select IntelliTrace events and call information. The first is a general warning that the change you have made will not take effect until the next debugging session.  The second warnings lets you know that Edit and Continue is disabled when collecting Call Information, so if you like to use Edit and Continue, you can’t collect Call Information.

image

The Advanced tab allows you to control some of the more advanced options around IntelliTrace.  Whenever IntelliTrace runs, it creates a .iTrace file.  These files are deleted when you close Visual Studio.  The Advanced tab can be used to set the location of the files, as well as the maximum file size.

There are also three checkbox options on this screen:

  • Display the navigation gutter while in debug mode – The navigation gutter is a control that we will look at in a future post, that can be used for navigating through your code and the IntelliTrace data.
  • Enable Team Foundation Server symbol path lookup – If you have an iTrace file that is configured with the correct Team Build information, then when this box is checked, IntelliTrace can automatically pull down the PDB files for the build related to this IntelliTrace iTrace file.
  • Prompt to enable source server support – If this box is checked, then when you open an IntelliTrace iTrace file that has PDBs that support source server lookup, you will be prompted, asking if you want to use them or not.

image

The IntelliTrace Events tab is used to configure what events debug information will be collected on.  You have the ability to enable blocks of events, or individual events.  Consider carefully what events you enable, as you do not want to cause any more performance degradation than is necessary.

image

Finally, the last tab is the Modules tab.  This tab allows you to control what modules you collect information over.  If you collected information over EVERYTHING, then you would build up way too much data, and would be pretty much overwhelmed.  This tab allows you to exclude certain modules, or only include certain modules, allowing you to tailor your debugging efforts.  By default, all the Microsoft .NET binaries are blocked.

So, in touring through these options, I need to play with IntelliTrace for both just event collecting, as well as event and call collecting.  I may or may not want to play around with Team Build, to see how it pulls down the PDBs automatically.  And I’ll definitely want to enable some more IntelliTrace events for some of my examples.  I’m a big fan of creating simple console applications for my demos, so I suspect I’ll be turning on some of the console events.  And to wrap things up, I should also play with the inclusion/exclusion of modules.

Ok, now I have a gameplan.  Next, I’m going to create a simple console application and do some “IntelliTracing” on it.

TENA2011_S_Attending

Wow! I’m thrilled to announce that I’ll be speaking at Tech Ed 2011 – North America this year.  The past couple of years I’ve spoken on Web Testing with Visual Studio Team System Visual Studio 2008.  Now, I’m moving into the 2010 world.  This year, I’ll be speaking on Intellitrace with Visual Studio 2010

Here is the abstract for the session:

Visual Studio 2010 Ultimate provides a wealth of functionality for figuring out what is happening with your application or even being able to debug what happened up to that point with IntelliTrace. But for most developers pressing F5, adding the odd breakpoint and stepping through the application is about as far as they get when debugging. Come to this session if you want to learn more about how to use the debugger and also IntelliTrace to track down those hard to spot errors fast, leaving you more time to write the code you want to be writing.

This is going to be a really cool session and I’m very excited about it.  I’m starting to ramp up development of the session now, so, as I do on most topics that I speak on, I want to solicit from the community what they would be interested in hearing about, based on the session abstract.

Do you use Intellitrace at all?  Do you have any horror stories, or success stories, about Intellitrace?  Any examples that you want to share?

Ultimately, the success of my session will depend on delivering the content that you, the attendee, find both intelligent and helpful.  So help me do that.  Email me at mickey underscore gousset at yahoo dot com with any suggestions you might have around what you think would be interesting on the Intellitrace talk.

As I start to put the talk together, I’ll post what I can to my blog, so ya’ll can see how things are going, and can provide feedback.

Finally, I’m going to have some good giveaways at Tech Ed, either at my session, if they’ll let me, or afterwards at the booths.  Some items I’ll be giving away include:

I’d love to have a packed session, so spread the word!  And don’t forget to send me your thoughts on Intellitrace.  I’d love to have a slide that presents the community’s thoughts and feelings.

Jul 142010

I am SUPER excited to back at Devlink this year speaking.  There are still tickets available for the conference, but it is expected to sell out soon, so if you are interested in one of the best conferences in the South-East, go hit the website right now and register.

I’ll be speaking on two topics:

8/5/2010 12:00:00 PM
"Yes Virginia, You Do Care How Your Version Control Repository Is Configured"

"Having the best version control software in the world doesn’t do you any good if you don’t know how to configure it correctly. In this session, we will look at how Team Foundation Server Version Control works, and give out some best practices on how to configure your version control repository, as well as look at different change management and branching strategies, that apply not just to TFS 2010, but any version control system."

Room: E109

8/6/2010 4:00:00 PM
”These Aren’t Your Daddy’s Testing Tools”

"Visual Studio 2010 delivers a new crop of testing tools that raise the bar for testing, as well as provide testers with everything they need to do their job right. And the best thing is, they don’t even have to go into Visual Studio 2010 to use them! In this session we will look at some of the new testing tools available with Visual Studio 2010, including the Manual Test Runner, Test Cases, and Coded UI Tests. Once you watch a test run using the Manual Test Recorder, and see all the information it collects for you, as well as the video playback, you’ll wonder how you ever lived without these tools!"

Room: E109

I’d love to have a packed crowd at both.  I’ll have a couple of things to give away as well.

I’m still refining both presentations at this point, so if you have anything that fits into these topics that you would like to see discussed or mentioned, or if you have specific questions you would like to be addressed, contact me and I’ll do my best to incorporate it into the talk.

© 2012 ALM Rocks! Suffusion theme by Sayontan Sinha