DCSIMG
December 2007 - Posts - Team Foundation Sidekicks

December 2007 - Posts

MSBuild Sidekick v2 Q&A session

With the release of MSBuild Sidekick v2, several questions have been asked repeatedly. But what is the better venue to have a semblance of dialog than blog? So here is a short list of Questions and Answers:

Q: What does "limited-time beta version" mean?
A:
The version released has a time bomb in it that will expire on December 31st (meaning that the application will not work past this date). That's as far as "limited-time" is concerned; "beta" means that since it is a first public release it is not free of bugs. However, the feedback we have received to this day is very positive (either people are getting ready for holidays or there are no bugs!)

Q: Why would you do something like that - release the beta and have an expiration date on that?
A: On one hand, we wanted to make sure that the application will not float around in its beta version and will be promptly superceded by the better version. On the other hand, the upcoming release is planned as a commercial release, and having fully functional version in free access defeats that model.

Q: What, have you said the C-word? Freeware and open source are the way to the future! Why are you doing that to the community? 
A: Why, yes, the v2 is going to be a commercial application. But no worries - at the same time, MSBuild Sidekick v1 is going to be supported and available free, and the license price is going to be very affordable. Now to the question why - while the application may seem very simple, there is actually quite a lot of development effort in the current version. And the only way for us both to support the application and develop new features is to go commercial - not to earn a million of $$$ but just to pay the pizza, beer and electricity bills.

Q: Who is the main developer of MSBuild Sidekick? Is that a one man show?
A: Contrary to some information available on the net, I do not develop MSBuild Sidekick myself. My role is the PR contact, and also I am involved in planning the current and the future application development. There is a dedicated team doing the development, and they provide the support for you guys, even while I am writing this blog post.

Q: Are you Microsoft or what? What's that MSBuild in the name?
A: MSBuild Sidekick is not a Microsoft product, and is not supported by Microsoft in any way. We enjoy cooperation with Micorosoft (thanks go to MSBuild and MSDN teams) on certain issues, but MSBuild in "MSBuild Sidekick" means only that the application works with MSBuild, not that it is related to MSBuild makers.

Q: What are Microsoft plans regarding MSBuild editing experience?
A: Microsoft (public) future plans are pretty unclear at that point. You may wish to have a look at the post from MSBuild team regarding the future of MSBuild in Visual Studio 10. For MSBuild Sidekick I can say, that visualization and debugging experience are one of the main areas we are going to concentrate on for the next versions (in conjunction with providing the best authoring environment for MSBuild projects )

Q: The beta released support only .NET 2.0 builds. What about VS2008 and .NET 3.5?
A: Next release will feature the support for .NET 3.5 toolset builds and MSBuild 3.5 elements.

Q: What about the debugger? If one may whip up the debugger in a week, how come it is not included in your v2?
A: I will elaborate more on our view of the debugger (and how to debug MSBuild projects using MSBuild Sidekick v2) in the future posts, but it may be helpful to give a short summary. While the full-blown debugger is certainly very helpful feature, MSBuild object model for the current version does not support debugging per se. The best you can do is to employ logger interfaces to hook into MSBuild as it executes. While valid approach, in v2 we opted out for better logging support rather than debugger because we believe that in trying to make complex script work the appropriate logging support is easier to employ than step-by-step debugging. Think of logging as automated printf statement called in every line of code executed - then by reviewing the log one may readily see the whole "stack" without setting breakpoints. If the log may be filtered and is easy to navigate, it may be a better starting point than the traditional debugger. Of course for advanced scenarios debugger be inavailable; in the next versions of MSBuild Sidekick we shall certainly explore the opportunity to the full.

I think that covers most questions about MSBuild Sidekick v2. If you have any unanswered questions, opinions or bug reports, be welcome to leave a comment or send an email to msbuild_at_attrice_dot_info.

Posted by Eugene Zakhareyev | 1 comment(s)
תגים:

Vista installation problem fixed

Great thanks to John Robbins for identifying the issue with the installation of MSBuild Sidekick v2 on Vista (the installation on Vista without admin privileges failed). As of December 7th, the issue was fixed.

The updated installer can be downloaded here.

Posted by Eugene Zakhareyev | with no comments
תגים:,

Visualization in MSBuild Sidekick v2

I have decided that I am going to blog a bit about new features we have in v2 of our tool; the first feature selected is target visualization.

The rational behind this feature goes like that - what if my build script takes lots of time to execute? Then changing it, running it, changing again to fix issues etc. becomes bothesome very quickly. So ideally one should be able to preview the build script execution (similar perhaps to EXPLAIN PLAN Oracle command, if you know what I mean).

 In MSBuild Sidekick v2 we provide Target Diagram view; when project is loaded, the menu "Tools"->"View Targets DIagram" will display visualization screen

When the window first opened, the targets selected for visualization are project default targets. It is possible to select one or more targets different from the defaults.

For the selected target(s), execution tree is displayed graphically; tasks may be shown or hidden using corresponding toolbar button. The graphical diagram may be zoomed in or out, printed or saved to file. The elements on the diagram may be also rearranged; mouse right click on the element will invoke context menu.

On targets and tasks in the diagram there may appear two kinds of additional indicators - whether element is imported (relative to currently loaded project) and whether element has condition defined. For elements with condition set, condition will be eventually evaluated at run-time, diagram indicating what targets/tasks may be skipped due to condition.

Putting the cursor over the element (or selecting element, right-clicking it and selecting info) will show element details such as condition etc. in hint baloon.

We hope that feature will allow MSBuild project developer to gain better understanding of project structure without building it.