A Django site.
August 19, 2008
» TFS & FQDN problems

I've seen a rash of reports lately with people having problems with TFS when configured to use a Fully Qualified Domain Name (FQDN).  There are certain extranet scenarios when you need to configure TFS this way.  The problem has been isolated to a change in Windows 2003 SP1.

The symptom is error messages that look like the following in your event log:

Exception Message: TF30063: You are not authorized to access https://teamsystem.contoso.co.uk:8081/. (type TeamFoundationServerUnauthorizedException)

Read the following KB article to understand the issue and learn how to correct it: http://support.microsoft.com/kb/926642

Brian

August 18, 2008
» New TFS Sidekicks release available

I've been remiss in my blogging responsibilities for the past few weeks - sorry about that.  Between summer vacations, work travel and a new power tool I'm working on, I've just haven't been able to find any time to blog.  In my job, I don't get to spend a ton to time coding - too many other things to do.  But I decided to take on this Power Tool and I'm having a blast.  The problem is that, for me, programming is all consuming.  I was half joking to someone the other day that, for me, programming is incompatible with everything else in my life.  It's in compatible with eating, sleeping, meetings, email, blogging and everything else I'm supposed to do :)  Within the next week I should have this new Power Tool far enough along that I can talk about it.

In the mean time, back to the topic of this post...  A few weeks ago, Attrice corporation released a new version of their TFS Sidekicks tools.  They fill a similar need as the Power Tools that we release and I generally hear very good things about them.  I've heard some particularly positive buzz about their new Permissions sidekick.  Here's a screenshot of it...

 

The tools are available for free and you should check them out. 

Brian

August 12, 2008
» More things to know about installing SP1

I'll let this post be a running list of issues that I hear about as people try installing SP1.  So far I've heard mostly good things about the installation process but a few problems as well.  Here's a few things to know:

1) If you get a Windows Update prompt to reboot during SP1 installation, ignore it (don't reboot).  Wait until after the SP1 installation completes and then reboot.

2) If you have a prerelease of the Team System for Database Development GDR (that supports SQL 2008) installed, you will need to uninstall and 2reinstall it after upgrading to SP1.

3) Apparently you can't create the admin mode/slipstream TFS installer when running on a Vista 64-bit OS.  I suspect it won't work on any 64-bit OS but the customer report I saw said it was 64-bit Vista but it worked on 32-bit Vista.  Of course TFS itself can only be installed on Windows 2003 or Windows 2008 and the application tier still only supports 32 bit.  Yes, I know, I know.  We've gotten tons of feedback about how bad it is not supporting 64-bit.  That's coming in our Rosario release.

4) We've had numerous reports of checkin notification failures when users user tfsadminutil configureconnections to configure a Team System Web Access Url.  We have confirmed that this is a bug and and working on a patch now.  Watch for it on Code Gallery here: http://code.msdn.microsoft.com/Project/ProjectDirectory.aspx?TagName=Hotfix%2ctfs.

Good luck and let me know what you learn so we can share it with others,

Brian

August 11, 2008
» VS/VSTS/TFS/.NET 3.5 SP1 is shipping!

Following on the release last week of SQLServer 2008, we are proud to announce the release of Visual Studio/Visual Studio Team System 2008 SP1, Team Foundation Server 2008 SP1 and the .NET Framework 3.5 SP1.  You can download them here.  Bootstrappers are for online installs and iso is if you want to download the whole thing and install offline or share it with several people.  The TFS download is an iso.  I'm not sure about the .NET 3.5 one.

These updates bring some unbelievably good value.  If you've been following my commentary, then you already know these are not our traditional service pack.  In addition to new platform support (like support for the newly released SQLServer 2008) and the traditional roll up of hot fixes and other high priority bug fixes, these service packs are packed full of new value.  I would have write I book to enumerate everything we have.  At a very high level, the improvements include:

  • Improved WPF designers
  • SQLServer 2008 support
  • ADO.NET Entity designer
  • Visual Basic & Visual C++ improvements (including an MFC-based Office 2007 style 'Ribbon')
  • Team Foundation Server improvements - detailed here
  • Richer JavaScript support, enhanced AJAX and data tools and web site deployment improvements
  • A new .NET profile for client applications that is much smaller and installs much faster
  • Substantial .NET performance improvements (particularly in startup time)
  • And much, much more...

A few notes on this SP from a TFS perspective...

  • As always, please read the readme file.  It will contain valuable information.
  • Download and read the updated TFS Installation guide.  You will find a link to it on the TFS 2008 SP1 download page.
  • If you are going to install .NET 3.5 SP1 on your TFS 2008 server, you MUST install TFS 2008 SP1.  There is a small incompatibility that results in the version control permissions dialog being empty if you don't upgrade to TFS 2008 SP1 at the same time.  You can install .NET 3.5 SP1 on your TFS 2005 SP1 server without experiencing this issue and without requiring any TFS 2005 update.
  • This release of TFS supports SQLServer 2008, however, there are some important things to know.
    • You can't install the original TFS 2008 release on SQLServer 2008 - it will fail.  And this is a service pack can must be installed on top of an existing TFS installation - so how can we make this work?  You have two options:
      1. If you already have TFS 2008 installed with a SQLServer 2005 database, you can install TFS 2008 SP1 and then upgrade your SQLServer 2005 database to SQLServer 2008.
      2. If you already have TFS 2005 installed with a SQLServer 2005 database, you must upgrade to TFS 2008 (requires purchasing it, of course) and then upgrade to TFS 2008 SP1 and finally upgrade to SQLServer 2008 (also requires purchasing it).
      3. If you don't yet have TFS installed and want to do a fresh install of TFS and use SQLServer 2008, you need to install TFS in a "special" way.  You need to use what we call "slipstream" install or "admin mode" install.  What you do is run a series of commands to merge the TFS 2008 SP1 into a copy of the original TFS 2008 installation media.  This creates a new "setup" that can then be run and installed against a SQL 2008 database.  You will find detailed instructions for this in the update TFS installation guide referenced from the TFS 2008 SP1 download page.
    • There have been some reports of a few of our reports breaking with the final build of SQLServer 2008.  We are investigating that now and I will update you as soon as we know more.
  • There are a couple of other reasons you may want to use the "admin mode" installer approach described above...
    • If you are upgrading from TFS 2005 to TFS 2008 and you have a lot (like > 1,000) builds created by TFS Build on your server, the TFS 2008 install had a bug that would cause it to fail.  The "admin mode" installer of SP1 has fixed this problem and should allow you to do a one step upgrade from TFS 2005 to TFS 2008 SP1, side stepping this problem.
    • Because of the timing of the TFS 2008 and Windows Server 2008 releases, we had to remove the ability for the TFS 2008 installer to install and configure Sharepoint Server on a Windows 2008 server.  We have added it back in TFS 2008 SP1.  So, if you'd like to do an install of TFS 2008 on a Windows 2008 server and avoid installing Sharepoint yourself, you can use the "admin mode" installation experience and have TFS install and configure Sharepoint for you.  None of this applies to Windows Server 2003 - TFS 2008 would install Sharepoint on a Windows 2003 server just fine.

I really think you are going to love this service pack.  It's very compatible with what you are already using and yet delivers a ton of new things to make your life better.  As always, let me know about any issues or questions you have and I will find someone to help you if I can't.

If you have setup issues, a great first resource is Heath's blog: http://blogs.msdn.com/heaths/archive/tags/VS+2008+SP1/default.aspx.  Here's a useful entry about collecting setup log information: http://go.microsoft.com/?LinkId=8967044

Brian

July 16, 2008
» July '08 Power Tools are available!

You can download them here: http://www.microsoft.com/downloads/details.aspx?FamilyID=00803636-1d16-4df1-8a3d-ef1ad4f4bbab&displaylang=en

You can read all about them in the preview I wrote a couple of weeks ago: http://blogs.msdn.com/bharry/archive/2008/07/08/july-08-tfs-power-tool-preview.aspx

This is the first release of the Power Tools that we did some limited pre-release testing with our MVPs.  It was very valuable because they helped find a few bugs that would have otherwise been in the release.  The Team System Web Access update and the SCOM management pack are still in the works and should be available shortly.  Also, for those of you looking for an eScrum update for TFS 2008, it's getting close to being ready too.

Although it's not as big a release as Dec or Mar, the feedback so far has been very positive.  We've started development on the next set already.  I hope to have them available in the Sept/Oct timeframe.  I'm building one of them myself and I'm really psyched about it.  I think you are really going to love this release.  I'll give you a preview some time in the next month or so.  Until then, enjoy the latest release and let us know what you think!

Brian

July 9, 2008
» Working on TFS SDK improvements

We are working on improving the TFS SDK to make it easier for people who want to write extensions.  There are many areas for improvement so it's hard to pick a place to start.  We chose, for the first project, a sample VS add-in that demonstrates a pretty wide array of ways in which you can integrate with TFS, inside VS.  It includes the sample VS add-in infrastructure, examples of invoking the TFS API, querying selection and receiving events.

This sample is focused on version control and we are working on another one more targeted at work item tracking.  It is not intended to be a useful tool in and of itself, but rather a demonstration of how to access each of these extensibility points.  I've included a screen shot below that shows that it's just a dialog with a bunch of buttons that allows you to exercise the various extensibility points.  Accompanying the sample is a pretty thorough document outlining how to use it and what it is doing. 

image

We are still finalizing the sample but I'm interested in getting early feedback on it.  I've attached a zip file with the sample in it to this blog post.  If you have the inclination, try it out and let us know if it is something that is useful to you or if there is something you'd really like us to add or change.  I'm expecting we will publish an official "final" version in the next few weeks.

Thanks,

Brian

» Tickled by a Rosario feature

Today, I'm finally getting around to working on something I've been wanting to do for a while.  Rosario is a big release with a ton of great stuff and I've been thinking for a while that I really need to work on figuring out how to articulate all of that value in a way that people can really understand and be excited about.  To make sure I'm not forgetting anything, I decided to peruse our feature list to refresh my memory on everything we are doing.  In the process I got to use one of the new Rosario features (after all, we already dogfooding Rosario for some scenarios) and I was just so tickled I had to share it.

There are a thousand or more features in the Rosario feature database in various states, some related to each other, others not.  To help make sense of all of the features, we group related features into "Deliverables" that are a set of features we build and deliver at the same time.  So I really want to see the list of deliverables (there are far fewer of them) but I want to see the feature detail easily in the event I can't remember what is in the deliverable.  So, what I want is:

All deliverables for my team that have not been cut (no point in looking at the ones we've already decided not to do) and all of the related features that are also not cut.  I want them grouped by "feature team" and include the current state of the deliverable.  It turns out that in Rosario, this is an unbelievably easy thing to do and after 15-20 minutes of poking through it, I have a good overview of what we are doing :)  To make things even better, this functionality is in the Rosario CTPs we've already released so you can try this kind of thing out yourself just for kicks.

Here's the query that I wrote (in Team System Web Access).  Note we have a custom link type called "Produces" which is a relationship from a deliverable to the list of features that the deliverable will produce.

image

Running that query produces a really nice hierarchical list of deliverables and the related features...  A few of these, you'll notice we ended up deciding to release early in SP1 :)

image

The new features for helping you manage lots of work items with complex relationships are really just truly amazing.  I really think you are going to like it a lot.

Brian

July 8, 2008
» July '08 TFS Power Tool Preview

We are approaching the release date of our next release of the Team Foundation Server Power Tools.  We are targeting to have it available in about 3 weeks.  As I've mentioned before this is a smaller Power Tools release than we typically have done.  This is because so much of our effort has been on getting TFS 2008 SP1 done.  I am expecting that our Sept Power Tools release will have a lot more in it.  We'll start planning that feature set soon.  The other thing is that this Power Tools release is going to be more of a "wave" than a point in time release.  A few of the components are being released at different times and in different vehicles.

The main components of this release are:

  • A new UI for subscribing for TFS Alerts - This new UI is a VS plugin (and therefore much more friendly than the BisSubscribe command line tool) and enables much more flexible subscriptions.  This is, perhaps, the premier end-user feature in the July release.

The first thing you will notice is a new node in Team Explorer for "Alerts" that will open the Alerts Editor window.  The Alerts Editor can also be opened from a menu item on the Team menu.

image

The alerts editor contains your alerts categorized by the event type the alert is based on (Checkin, Work item change or build completion).  From here you can easily add or remove subscriptions.  When you create or edit a subscription, you get a query builder like experience for describing the conditions that will trigger the alert.  You can build very sophisticated queries and can also flip to the Filter Expression tab to see what XPath expression is being generated (the underlying subscription engine works on XPath queries).

image

Here's an alert definition that will notify me if any new work is assigned to "my team"...

image

When you first start out, the flexibility of the query builder will be a bit daunting.  To make it easy, we have several handy short cuts.  You can right click on a folder in the Source Control Explorer and select the "Alert on Change..." menu item.  You will be presented with the following dialog and after hitting Ok, you will be notified of all subsequent checkins under that folder.

image

In a work item query results list or in an open work item, you can right click and select "Alert on Change..." to configure an alert for that selected work item(s).  This includes an easy way to configure the alert for "Anything changes", "State changes" or "Assignment changes".

image

If these shortcuts are too constraining, we have more... When you add a new alert, you are presented with a list of templates to choose from.  For example, choosing "Check-In to a specific folder with a policy overridden" will fill out the query builder with the right clauses and all you have to do is fill in what folder you want to be alerted on.

image

I wish I could say the list of templates was customizable but it is not for now.  We'll certainly take suggestions for new templates and I hope that at some point we can make it admin or end-user editable.

One other thing people are likely to find confusing and/or frustrating is one particular characteristic of the work item tracking events.  There are two kinds of fields in work item tracking (for the purposes of eventing) "Core fields" and "non-Core fields".  Core fields are inherent to every work item type - State, Activated by, Activated date, Area path, Assigned to, Attached file count, Authorized as, Changed by, Changed date, Created by, Created date, Description, ID, Iteration Path, PortfolioProject, Reason, State, Title, Work Item Type and non-Core fields are all of the others.  The eventing system works by creating an XML message for every change that happens in the system.  Subscriptions work by running an XPath query over the XML message and sending alerts when the XPath query matches the message.  In order to reduce the data volume and overhead of processing events, the XML message for work item tracking changes contains only core fields and any field that changes.  It does not contain non-core fields that did not change.  When using the Alerts Editor query builder, you will observe this distinction in the list of operators that are available for different fields.  For non-core fields, you will only find "Changes", "Changes From" and "Changes To" because they are only available for matching if they change.  For core fields, you will find =, <>, and other equality operators in addition to the "change" based operators.  You can do this because they are always included in every message.  There is no way to identify additional fields to be included in every message and I suspect you will find this limitation frustrating.  We'll look at improving this in the future but that's going to require server changes.  Despite this limitation, you can create some powerful new subscriptions with the Alerts Editor.

I really hope this feature will go a long way to making the power of the notification system more available and approachable.  There are a bunch of features we'd still like to add to the alert system - enabling people to more easily subscribe for their whole team, scheduled summary notifications, etc but I hope this is a good step in the right direction.

  • TFS Best Practices Analyzer support for SQLServer 2008 - It wasn't ton of new work but this new version of the BPA tool now supports correctly identifying configuration issues when your TFS server is installed using SQLServer 2008.  We've done a variety of bug fixes and rule improvements along with that.

 

  • Support for changing user's names - One of the support issues we get from time to time is that administrators want to change the names of some of their users (in Windows or Active Directory).  What they find is that TFS doesn't cope with this very well and your work items, event subscriptions and a few other things get left behind with the old user name.  This release of the Power Tools contains a new tool called TFSUsers that enables you to update TFS's understanding of user name changes.  Ideally this would just be automatic (and we plan for it to be in our next release) but until then, the TFSUsers tool will help you.

"TFSUsers update" takes a mapping file and will update the user names as described in the mapping file.

"TFSUsers computedelta" can generate a mapping file for you by comparing the current Windows/Active Directory user names to a previously captured baseline set and automatically generate the mapping file needed for "TFSUsers update".

  • Team System Web Access Update - You can read more about the specific updates in my post on the CTP we released in April.  Due to our requirement (in this release) to simultaneously release in all 10 languages, the TSWA update is going to trail the July Power Tools release by about a month.

 

  • TFS SCOM Management Pack - In this wave, we are also releasing a SCOM management pack (the successor to MOM Management packs).  This is designed to help an IT operations team who is using System Center Operations Manager and managing TFS servers to setup automated health monitoring of the TFS server and take full advantage of the System Center features.  This tool will also not ship directly in the Power Tools release because there is already a defined web release mechanism for management packs and there's no point in creating a new one.  It is in limited "Beta testing" now with a couple of customers (the early feedback is good) and should be available on the System Center Operations Manager 2007 Catalog by mid August.

image

  • Bug fixes in WIT Templates and the Process Template Editor Power Tools

  • Improvements in TFPT.EXE
    • tfpt treeclean was an existing command that will delete files on your local disk that are in source controlled folders but are not in source control.  The primary difference is that it is now dramatically faster.  tfpt treeclean now replaces tfpt online /purge, which is no longer available.
    • A new tfpt scorch command - scorch is like treeclean except that additionally it re-downloads content that has been changed locally without pending an edit and content that has been deleted locally without pending a delete.
    • Important bug fixes in tfpt unshelve /migrate where the base versions for a 3 way merge were sometimes being computed incorrectly.
    • Improvements in online, scorch and treeclean to now handle folders as well as files, to properly handle single file mappings and proper treatment of items with pending changes other than "edit".

 

Well, that's it.  I think there's something in there for just about everyone.  I'll do a final announcement when each of the pieces are available for download.  Over the next few weeks we'll scope out what will be in the Sept Power Tools release and by sometime in August I should be able to give you an early heads-up.  Feedback is welcome, as always.

Brian

July 5, 2008
» Power Tools and Software Assurance

I love our Power Tool program.  I really enjoy the opportunity to deliver stuff that people are wanting every few months.  I also really like the very positive feedback we get on them.  I'm always looking for the next "killer" Power Tool feature that we can build.

One of the lingering questions that has never been answered and we mostly ignore is "How are Power Tools monetized?"  Right now, it kind of works like this...  Power Tools generally support the latest release of TFS.  So one of the benefits of buying the latest release is a new stream of Power Tools until the next TFS release.

The biggest lingering question is what about Software Assurance?  People who purchase Software Assurance are paying "extra" to make sure they get all the latest updates at no additional charge.  Many times, over the last few years, we've asked ourselves, "Should the right to use the Power Tools be tied to Software Assurance?".  From the customer's perspective, it would make them feel like they are getting even more for their money.  From our perspective, it would increase the likelihood customers would buy SA.

Why do I care if customers buy SA?  Well, of course I like the revenue but it's more than that.  We make decisions all of the time about how to release things, what to charge for them, etc.  When customers are on SA, it makes these decisions much easier.  We can simply release them to all licensed customers and not worrry about it.  Otherwise, we're left debating whether we should hold onto it for the next "big" release.  A great example is the features we put in service packs.  Every feature we put in there becomes one less feature in the next paid upgrade - meaning less stuff we can make a big deal about when the product ships and use to encourage people to upgrade.  However, if everyone is on SA, it's easier for us to accept because we can convince ourselves that people paid for it by having SA.

For these kinds of reasons, my goal it to have all of our customers on SA - then I don't need to spend any time worrying about how we are going to monetize things and I can spend all my time thinking about the next set of features we are going to get in your hands.

Anyway, there's no action right now.  However, I wanted to let you know this issue is on my mind.  The thing that brought it back to the top was a recent conversation with one of our sales people about a conversation with a customer who didn't want to buy SA and one of their reasons was that they get Power Tools without it and therefore they couldn't see sufficient value.  I'm going to continue to think about this issue and try to figure out how to have my cake and eat it too.  One idea that has flitted across my brain is releasing Power Tools to SA customers "first".  Perhaps we give SA customers access to Power Tools 3 or 6 months before non-SA customers.  I don't know...

If you have thoughts you'd like to share, I'm all ears.

Brian

July 2, 2008
» Another innovation in the evolution of Hotfixes

I've been keeping you all abreast of changes in our Hotfix plans.  More than a year ago, we introduced the notion of advertising hotfixes and enabling people to browse and download the hotfixes the find most useful.  Prior to that, the only way to get a hotfix was to call customer support with a problem and have them determine that one of our available hotfixes would solve it.  Six months or so ago, we introduced a new and much improved site (MSDN Code Gallery) for searching for and browsing hotfixes.  We also enabled notification via an RSS feed.

We have just added a new capability - localization of all Hotfix information.  Hotfix descriptions are now available in 10 languages (including English).  When you go to MSDN Code Gallery, you will now see a page with links for each of the supported languages.

clip_image002

I hope our international customers will find this to be a big help in keeping their VS, VSTS and TFS products up to date.

Brian

June 30, 2008
» Expression and TFS

Warning - this is early information and is subject to change but the Expression team cleared me to say something about it.

We get a lot of feedback from customers who would like more seamless integration between Expression and the rest of their development team using TFS.  Last week I saw a demo of work being done that will result in TFS source control integration into Expression Web and Expression Blend.  It was very nice.  All of the basic operations were there - add, checkout, undo checkout, history, diff, checkin, etc.  Checkin even used the same dialog as Team Explorer so you get full fidelity - work item integration, checkin policies, etc.

It was exciting to see us making progress in this key area.  I'm told this is all going to be in the next version of Expression - of course, I don't have any release date to announce :).  However, keep your eyes open for pre-releases (like CTPs) and check out the TFS integration.  We'll be eager to hear your feedback.

Combine this with the recent release of TFS integration for Dynamics developers and we are really making progress on ensuring everyone can participate in team development regardless of what kind of development you do.

Brian

June 27, 2008
» TFS on Hyper-V

With the announcement of the release of the new Microsoft Hyper-V virtualization technology, I've seen a surge of questions about TFS support for Hyper-V.  We have tested TFS running in a Hyper-V virtual machine.  It works well and is officially supported.

TFS Components & Support

One thing to keep in mind is that there are 2 major components of a TFS server.  The first is the TFS application tier.  It runs fine in Hyper-V, Virtual Server and VMWare.  You must remember that the TFS application tier in TFS 2005 and TFS 2008 is 32-bit only - so, if you are going to use it on a 64-bit Win2008 machine running Hyper-V, for example, you will need to run a 32-bit OS in its VM.  Our support team will work with you on support issues regardless of which virtualization technology you use.  However, we may ask you to reproduce problems outside of the virtual environment if we suspect it is causing a problem.  The exception to this is Hyper-V.  With Hyper-V, we are introducing full support on the virtual environment.  We (Microsoft) are also working on a certification program so that all virtualization technologies that meet the requirements can achieve the same level of support.

The second major component of a TFS server is the data tier.  The data tier is a SQLServer and the only TFS code that runs on it is TSQL stored procedures.  Of course, in a single server TFS install the application tier and the data tier run on the same machine.  My understanding is that SQL server 2005 and before do not officially support any virtualization technology.  SQL is introducing virtualization support with SQL 2008.  If you are going to use TFS with SQLServer 2008, make sure you use TFS 2008 SP1 (to be released this summer).  In general, my advice to TFS customers has been that it's fine to run the TFS application tier in a 32-bit VM but always run the SQLServer on native hardware (preferably on 64-bit if you need the system to scale).  One reason for this is for performance (see more below).  Another reason is that I have seen one or two instances of data corruption problems with SQLServer running in an improperly configured VM - the one that comes to mind was a customer who was running SQLServer in a VMWare VM and had delayed I/O enabled in the VM.  Delayed I/O is not something you want at all on a SQLServer machine - it violates key guarantees that SQL relies on to guarantee data durability.

Virtual Machine Performance Guidance

I often get asked about recommendations about hardware configuration for virtualization.  I generally focus on 2 things: memory and disk I/O.  The memory recommendation is pretty easy.  If you want to run TFS in a VM, remember that there is also a host OS running.  Sum up the memory requirements of every app in every VM you are running on the system and add about 1GB for the host OS.  I've generally found that algorithm to work well for people and I expect it will work well for Hyper-V as well.

The more complicated one is I/O.  One of the historical problems with virtualization technology is that it adds overhead when virtualizing I/O (in this case I'm mostly concerned about disk I/O).  A high scale TFS server performs a ton of I/O and any overhead can be a problem.  Fortunately, disk I/O on the application tier is generally not too high (except in the most high scale systems).  The only major source of I/O is a file cache that reduces the load on the SQLServer for commonly requested files.  TFS's use of SQLServer, however, can be very I/O intensive.  My advice to anyone running any I/O intensive application in a VM is to make sure you have a high performance disk subsystem.  Error on the side of extra disk performance.  For example, use 10K RPM or better drives, consider using RAID 10 that enables more concurrent I/O.  Make sure you have a good disk controller card.  If your system is particularly high scale, consider using a high performance SAN.

Some of this guidance may change over time with Hyper-V.  Hyper-V is a very efficient virtualization technology but I don't have enough experience with it yet to say for sure how it will affect these recommendations.  As I learn more I'll keep you up to date.

Good luck and let me know if you have good or bad experiences with TFS and Hyper-V.

Brian

June 23, 2008
» Automating the creation of Team Projects

Since I announced the ability to automate the creation of Team Projects in my TFS SP1 feature set post and my March Power Tools post, I've gotten several questions about the format of the XML file you need to create and pass to:

tfpt createteamproject /settingsfile:"filename.xml"

I've attached the XML schema to this blog post and included a sample settings file.

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="ProjectCreationSettingsFileSchema.xsd">

    <TFSName>A Valid TFS server</TFSName>

    <LogFolder>
      c:\RemoteTFSProjectStarte
    </LogFolder>

    <ProjectName>
      Batch Project Creation Demo 23
    </ProjectName>
    <ProjectSiteTitle>
      <!-- default to project name if not specified -->
      Batch Project Creation Demo 23   
    </ProjectSiteTitle>
    <ProjectSiteDescription>
      <!-- default to empty string if not specified -->
      Project Description
    </ProjectSiteDescription>
    <SccCreateType>
      <!-- none | new | branch -->
      Branch
    </SccCreateType>
    <SccBranchFromPath>
      <!-- string.Empty for none and new; supplied for branch -->
      $/test44
    </SccBranchFromPath>
    <ProcessTemplateName>
      MSF for Agile Software Development - v4.2
    </ProcessTemplateName>
</Project>

Hopefully this helps make it more clear,

Brian

» Rally connects to TFS for Agile project management

Today Rally is announcing that they have built a connector to enable its web based Agile project management tool to connect to TFS.  This new connection enable source code checkins and TFS builds to be tied to the project management features in Rally, enabling a more comprehensive picture of the state of your projects.

Rally is hosting a web cast on June 25th at 10AM PDT.  Click here to read more and to register for this web cast.

Here's Rally's press release: http://www.rallydev.com/press_release_080623.jsp

Brian

June 18, 2008
» TFS support for Dynamics developers

Less than a month ago, Dynamics AX 2009 was released.  This new version enables Dynamics developers to store their source code and have an integrated experience for checkout, check in, get and history - the basic version control operations in TFS.  I'm excited about this because I get the question fairly often and people are always surprised when I tell them we don't have a solution.  Now I don't have to disappoint any longer.

It's great to be able to bring a whole new community of developers into the Team System collaborative development fold.  You can get a peek at what is there today by viewing this screencast.  I expect future versions of Dynamics AX will integrate additional TFS features.

If you are interested in giving this new combo a try, you can look at this whitepaper for how to set it up: http://www.microsoft.com/downloads/details.aspx?FamilyId=EFC24EDC-522E-40AA-8F36-6367ED7AB92D&displaylang=en

Let me know what you think,

Brian

June 16, 2008
» PDC 2008 & precons

Preparation is in full swing for the Microsoft PDC this fall (Oct 27 - 30).  PDCs are the primary event where we talk about the future (as opposed to events like TechEd where we primarily talk about the present).  This PDC promised to have a great deal of new content for developers.  Among them, I think this will be the first conference where we really talk in depth about what is coming in the Team System release code named "Rosario".  If you are passionate about ALM, it will be a great show.

In addition to the core PDC event, there will be a set of pre-conference presentations the preceding day.  Among them will be sessions on VSTS today to position you to really understand the "tomorrow" stuff coming in the PDC.  There is also a great session on Agile development.  Check them out if you are interested.

I'm planning on being at the PDC and look forward to seeing you there.

Brian

June 10, 2008
» TFS & Teamprise for enterprises doing serious cross platform development

We recently published a case study with Thomson Reuters on their experiences adoption TFS in a cross platform development team using Teamprise for their Java developers.  It's a great testament to how the combination of these two products can work together to create a comprehensive ALM solution for a significant development team.  I frequently get asked about how well TFS + Teamprise can meet the needs of a Java development team.  I'm really glad to actually have something concrete to point at instead of having to ask you to take my word for it :)

Brian

June 9, 2008
» Sharing Team System Process Templates

There are as many processes for software development as there are software teams.  Ever since we shipped TFS, I have hoped that a community would form for sharing process ideas and for sharing process templates.  Creating new process templates can be a significant undertaking.  It's way easier if you can start with a process template that's reasonably close to what you want and just tweak it.  Wouldn't it be nice if there was a library of process templates available and an easy way to share ones you create?

We'll a new CodePlex project has just been created for this purpose.  It's too early to tell whether or not it will thrive.  It will depend on how many people decide to contribute something and how actively it is managed.  If this is an area that interests you, then I encourage you to check it out.

http://www.codeplex.com/templex

Brian

May 28, 2008
» Translating Team System Web Access to your langauge

We have gotten some requests for translations of Team System Web Access into additional languages (beyond the 9 we already do).  I am speculating that the additional interest here comes from the fact that TSWA targets a broader audience beyond the core development team and as such translations are even more valuable than for Visual Studio itself.

We aren't set up to create and test these translations, however, we would like to satisfy the demand.  Fortunately, translating TSWA is not a massive undertaking.  In all, it only involves translating a few hundred strings.  For our own localization effort, we have already separated these strings into separate .resx files that are compiled into satellite assemblies.  In short this means that if we give out the .resx files and a relatively short instructional document, it should be reasonably straight forward for you to localize TSWA into any language you choose.

I'd also like to make it possible for you to contribute your translations back to the community for others to use if you choose to do so.

Our thinking is that we will create a CodePlex project for TSWA translations.  We will upload all of the .resx files for the 9 languages we currently support and a document explaining how to create and install translations.  You can download the files, translate, build, install, test, and use them.  If you choose to contribute your translations back to the community, we will provide a way for you to request contributor rights to the CodePlex project and you will be able to upload your translation to CodePlex for others to download.

We're still working through the plans but this is the rough idea.  I expect it will take a few weeks to get this all set up - we're still working out the schedule so I'm not sure but I don't think it's going to take a long time.

I hope this will be helpful to you.  If you have any thoughts and/or comments, I'd love to hear them.  Keep an eye on my blog for further announcements as we get this ready.

Brian

» Professional Developers Conference this fall

We'll be holding a PDC this fall in Los Angeles Oct 27 - 30.  Registration opens today at: http://www.microsoftpdc.com/.  There are many developer oriented conferences that present an opportunity to learn about Microsoft technologies.  The PDC is the most forward looking of those conferences.  It is an opportunity to learn what our plans and directions are for the next several years.  It's a unique glimps into the future and a chance to mold your plans.

This PDC is going to be the first really big splash for the Rosario release of Team System.  We'll be holding quite a few talks, doing lots of demos, etc.  Whether you are a customer or a partner, it should provide some valuable information.

I look forward to seeing you there.

Brian