Bart

Software Engineer - Red Gate Software

ANTS Profiler 4: Where are we now?

Published Tuesday, July 08, 2008 5:15 PM

Over the past week or so there has been a definite sea change in the way we’ve been working on the project. Up until now we’ve been focussing on getting the major functionality implemented, collecting user feedback through the early access programme, and using remote usability sessions—sometimes with hilarious results—and then making changes based on that feedback. But now we’re definitely in release mode, and looking hard at what we need to do, and what milestones we need to hit, to get the product ready to ship. The change is subtle but definite.

 

The first milestone will be an official beta of ANTS Profiler 4. This might not sound like a particularly big deal, because we’ve been releasing early access builds regularly since the end of May, but up until now we've done no QA specifically targeting these builds, except to try and pick those that don’t crash in some really obvious way. We certainly weren’t expecting release quality from any of them. I should say that we have done plenty of testing, just not the kind of testing we do leading up to a release. The exception is that our installer has been much more thoroughly tested than would normally be the case at this point. I’m hopeful this will pay dividends in a few weeks by making release testing a lot less painful than usual.

 

We've implemented most of the major functionality:

 

  • Timeline and events bar.
  • Call tree, showing the most expensive stack traces through the application.
  • Methods grid.
  • Call graph, allowing you to focus your analysis on a particular method in terms of what it calls, and—just as importantly—what calls it, and the relative contribution callers and callees make to its execution time.

 

If you haven’t seen the call graph yet, here’s a screenshot (click on the attachment link at the bottom for a larger, clearer version):


It’s well worth having a play with, so go and get the latest build—at the time of writing this is around ten days old—from:

 

http://www.red-gate.com/messageboard/viewforum.php?f=80

 

Our last early access build will go out on Thursday or Friday this week. As usual, we’ll announce it in the forum. It will incorporate printing support for call graphs, along with a lot of bug fixes. It will also—hopefully—include the new Visual Studio add-in, which supports Visual Studio 2005 and Visual Studio 2008. You should should see an improvement over the old add-in because for many applications you won’t need to go through any further setup steps, and even if you do, it’s just that one step setup dialog, as opposed to a four step wizard. We no longer support Visual Studio 2003, although you can still profile .NET 1.1 applications; you’ll just need to start the profiler manually and run your application from there.

 

So, subscribe to the RSS feed and grab the last build later this week:

 

http://www.red-gate.com/messageboard/viewforum.php?f=80

 

Once that’s done, we need to add a few more things before the beta:

 

  • Saving and loading projects.
  • Saving and loading results.
  • Performance counter selection.
  • Some context menus.
  • Getting the memory profiler working.
  • Putting in all the context sensitive help, which is being written right now.
  • Loads more bug fixes.
  • Licensing; there will be the usual 14-day evaluation period, but to continue after this with the beta you’ll need some sort of license. We haven’t decided whether that will be a version 3 license, or whether you’ll need a version 4 license. In the latter case, if you have a support and upgrades contract your existing license key should work.

 

The beta should be functionally complete, and contain no known major bugs, although that’s potentially contentious because it really depends what you think constitutes “major”. Like the early access builds, it will be timebombed, and should expire around the time we release the final version. If all goes well, we’ll get the beta out sometime around the beginning of August. If all doesn’t go well I’ll find some weaselly way to interpret that sentence as meaning there’s no possible way that anybody could have expected us to get a beta out at the beginning of August, and no justification for interpreting it as a commitment to do so. Just you watch me. ;)

 

After that it all starts to look very much like any other Red Gate product release, in as much as there is a typical Red Gate product release any more. Increasingly, the development and release cycles are tailored for each product, to suit our evolving understanding of the market, customer needs, and the risks involved, which—by the way—we’re still learning to do. You probably think that’s a really obvious thing to do, and you’re probably right, but if that's the case you do wonder why it isn’t done that way more often by more people.

 

Anyway, I digress.

 

A couple of weeks after the beta, there should be a release candidate, unless something really heinous happens. Unfortunately, this is software, so that's always a possibility, but when it does appear it won’t contain any bugs that we intend to fix for the final release. None that we know about anyway. If anything serious comes up we will fix it, and if it's that serious we may even do another release candidate before the final release.

 

Ideally we’ll release the final version ANTS Profiler 4 into the wild roughly one calendar month after the beta. And then we’ll have a breather.


But not too much of a breather, because next on the agenda is a new version of the memory profiler, and like the performance profiler, this won’t be a minor facelift: it will be a complete transformation. Now Bullfighter's just whinged at me for using the word transformation ("Not a bad word, but a transformation refers to extensive change, and consultants are ridiculed for using words like 'transformation' for pretty much anything. Like sticking a motor on a Bianchi bicycle and transforming it into a Harley Davidson."), but hey, I'm not a consultant, and in this case I think it's entirely justified.

 

So, take home message: we want to release ANTS Profiler 4 as soon as we can. We know a lot of you are waiting for it, so we’re focussed on getting a solid beta out. Our last early access build will go out at the end of this week, so get it whilst you still can. Here’s that URL again:

 

http://www.red-gate.com/messageboard/viewforum.php?f=80



Finally, I want to say a big thanks to everyone who has been involved in the early access program and provided feedback to us, particularly those of you who've taken part in the usability sessions, which have been absolutely brilliant. They've helped in two massive ways:

  1. They've largely validated the UI design, which was already based on incredibly extensive customer feedback. We wanted these sessions to either show us we were doing the right thing, or show us we were doing the wrong thing early enough to do something about it without having over-committed. We were always willing to go back to the drawing board if this happened. This has worked really well.
  2. They've shown up a number of problem areas, along with a few omissions, that we've been able to correct fairly easily because we got the feedback early enough in the development cycle. I cannot overemphasise the importance of this. It's made the project roughly a month longer than anticipated, but I think it's been worth it to make the right product. If we hadn't run the EA program, and had got this feedback later on (say during the beta) it's likely we wouldn't have been in a position to make some of the changes we've made.

I'd also say that actually watching somebody using your software is a really good antidote to getting too precious or possessive about it, because you can objectively see whether something works well or not.

Thanks again!
by Bart Read
Filed Under: ,
Attachment(s): Call Graph.png

Comments

 

TadRichard said:

As someone who has downloaded previous versions of the ANTS profiler and become hopelessly confused, I am wondering if you will be creating any recorded demonstrations or examples on how to get the most out of it?

I get the concept of a profiler, its the details of using ANTS that I never could master...

FWIW

--Tad
July 11, 2008 5:13 PM
 

James said:

Hi Tad,

We will be doing some demo video's as part of the release cycle showing how to use ANTS Profiler 4. The majority of these should be done at the time of or close to release so keep an eye on our product pages when we annouce the final release.

In the mean time I would encourage you to give AP4 a try. Bart and the team have done a great job of presenting the information we collect in a much more understandable way.

Any questions post here or on our forum and we will do our best to answer them for you.

James
--  
James Moore
General Manager, .NET Developer Tools Division,
Red Gate Software
July 13, 2008 10:48 AM
 

Bart Read said:

Hi Tad,


I'd echo James' comments. There *will* be videos, but if you have time, I'd encourage you to download the early access release:

http://www.red-gate.com/messageboard/viewforum.php?f=80

We'd love to know what you think of it.


Thanks,
Bart

July 15, 2008 8:34 AM
 

Bart said:

ANTS Profiler 4 is finally out! We're really excited, obviously, and in this article we share some of the highlights of working on it.
September 2, 2008 11:10 AM
You need to sign in to comment on this blog

About Bart Read

I've had a few jobs since graduating, but for the last four years I've been settled at Red Gate Software in Cambridge, UK. Over that time I've worked on a wide range of products, both as a developer and as a project manager, including 18 months on SQL Prompt; right now I'm finishing up with ANTS Profiler 4, which we think is going to be amazing - hopefully you will too.

















<July 2008>
SuMoTuWeThFrSa
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789
Virtual Exchange Servers
 Microsoft now supports running Exchange Server 2007 in server virtualization environments, not just on... Read more...

Virtualizing Exchange: points for discussion
 With the increasing acceptance of the use of Virtualization as a means of providing server... Read more...

Encouraging .NET Reflector Add-ins
 Jason Haley is well-known for the resources he's provided to developers who wish to extend Reflector's... Read more...

Using .NET Reflector Add-ins
 .NET Reflector by itself is great, but it really comes into its own with the help of some add-ins. Here... Read more...

Unique Experiences!
 You'd have thought that a unique constraint was an easy concept - Not a bit of it; it can cause a lot... Read more...