<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://loicbaumann.org/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"><channel><title>Loïc Baumann's blog</title><link>http://loicbaumann.org/blogs/</link><description>Stuffs about stuffs...</description><dc:language>en-US</dc:language><generator>CommunityServer 2008 (Build: 30417.1769)</generator><item><title>Setup SharePoint over a TFS 2010 Basic Install</title><link>http://loicbaumann.org/blogs/loic/archive/2010/02/21/setup-sharepoint-over-a-tfs-2010-basic-install.aspx</link><pubDate>Sun, 21 Feb 2010 21:25:41 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:90</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Team Foundation Server 2010 has a great flexibility concerning its configuration. When the binaries are installed, a wizard shows up and propose you many types of installations: Basic, Standard, Custom, etc.&lt;/p&gt;  &lt;p&gt;If you configured your TFS with either Basic or Custom you will be without SharePoint. Now let&amp;#39;s say you changed your mind and you want to setup SharePoint after all, one might think it&amp;#39;s an easy task, but we&amp;#39;re talking about SharePoint, then nothing is ever easy!&lt;/p&gt;  &lt;p&gt;Here is the macro scenario to succeed in this task:&lt;/p&gt;  &lt;p&gt;1) Install WSS 3.0 Manually.&lt;/p&gt;  &lt;p&gt;2) Add the Team Foundation Server SharePoint Extension Console (the non obvious) part.&lt;/p&gt;  &lt;p&gt;3) Let Team Foundation Server grant access to your SharePoint.&lt;/p&gt;  &lt;p&gt;4) Create the association between those two.&lt;/p&gt;  &lt;p&gt;Before a little screencast, let&amp;#39;s explain the step 2 a little bit more. When I first tried to add my SharePoint, it never crossed my mind that I have to do this step, for me (and I think many people will think the same) installing the SharePoint Extensions were only if you have installed the SharePoint server on &lt;b&gt;another server&lt;/b&gt;. But the truth is that you need to install it to get an extra configuration item in the Team Foundation Server Administration Console.&lt;/p&gt;  &lt;h3&gt;Step by step procedure&lt;/h3&gt;  &lt;h4&gt;Install &amp;amp; setup WSS 3.0&lt;/h4&gt;  &lt;p&gt;This is a classic installation of SharePoint 3.0, you&amp;#39;ll find the setup in the Tools directory of your Team Foundation Server installed location:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_25AB1AA3.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_62136980.png" width="467" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Choose the Advanced Installation mode.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_5A3B5111.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_2311C318.png" width="419" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Then choose the Web Front End mode and click “Install Now”.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_273B9ADD.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_5E357916.png" width="419" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_625F50DB.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_005D5ED0.png" width="419" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now your SharePoint is installed you have to create a new Farm. Let the checkbox &amp;quot;Run the SharePoint Products and Technologies Configuration Wizard now&amp;quot; checkbox checked, and close the window.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_2FCBCD9C.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_0F34681D.png" width="416" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Click Next on the next screen, then choose: &amp;quot;No, I want to create a new Server Farm&amp;quot;.&lt;/p&gt;  &lt;p&gt;Setup the screen with the database of your TFS (&amp;lt;yourtfs&amp;gt;\sqlexpress for a basic install), and set the administrator account to access to the database. Click next.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_4A581E1B.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_266F46C1.png" width="413" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;On the next screen, set the SharePoint Central Administration to the port 17012, click next.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_0C1EB7D0.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_06A0215F.png" width="411" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now click next until the Wizard is configuring the Web Farm.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_2C1978F3.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_71FA8646.png" width="413" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Ok SharePoint is installed! Great! Now you have to create a SharePoint Web Application.&lt;/p&gt;  &lt;p&gt;Go to the &amp;quot;Application Management&amp;quot; Panel in the Central Administration, then choose &amp;quot;Create or extend Web Application&amp;quot;, then click on &amp;quot;Create a new Web Application&amp;quot;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_112D074D.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_35DE1EC4.png" width="500" height="279" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_38C35DAA.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_7A0E6043.png" width="500" height="206" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Setup the new Web Application as following. Note that you need to create the TFSSERVICE account if it&amp;#39;s not already done.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_56FDEED3.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_494B32CB.png" width="432" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_63E7A917.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_3A906119.png" width="424" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_05A35BDC.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_4A3FD050.png" width="435" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_635B2A88.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_5A8B223C.png" width="500" height="151" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_7169F3B8.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_3D555465.png" width="500" height="235" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Restart IIS manually.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_6C57903C.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_723233D5.png" width="500" height="88" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now that your Web Application is created, you have to create a Site Collection.&lt;/p&gt;  &lt;p&gt;In &amp;quot;Application Management&amp;quot; click on &amp;quot;Create Site Collection&amp;quot; then fill the page like this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_4579542F.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_5C5825AB.png" width="500" height="272" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_059F47DD.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_22C4EFE7.png" width="500" height="343" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_789541FE.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_7CBF19C3.png" width="500" height="313" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Then click on the &amp;quot;OK&amp;quot; button. Now your Site Collection is created, you&amp;#39;re done with the SharePoint configuration, yey!&lt;/p&gt;  &lt;h4&gt;Add the Team Foundation Server SharePoint extensions&lt;/h4&gt;  &lt;p&gt;Ok, now your SharePoint is setup, you can install the extensions. Run the Team Foundation Server 2010 setup.exe again.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_70F9ACC4.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_3C78DA7C.png" width="500" height="275" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Select &amp;quot;Add or Remove Features&amp;quot;, then a new items appears magically: &amp;quot;Extensions for SharePoint Products and Technologies&amp;quot;, check it and update your installation.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_20C428B9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_6CAF8965.png" width="500" height="253" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_7000FB40.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_2E1A15F2.png" width="500" height="196" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;When it&amp;#39;s update, click the &amp;quot;Configure&amp;quot; button to launch the Team Foundation Server Configuration Center. Select &amp;quot;Configure Extensions for SharePoint Products&amp;quot; and start the wizard then simply click on the &amp;quot;Configure&amp;quot; button. This will load the SharePoint Templates of the TFS Process Templates and do other obscure stuffs...&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_04C2CDF4.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_1C0DD265.png" width="500" height="219" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_594E872C.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_2BECF15C.png" width="477" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_10383F99.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_6342DCBD.png" width="482" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Close both Windows when it&amp;#39;s done.&lt;/p&gt;  &lt;p&gt;The Team Foundation Server Administration Console shows up and this time you&amp;#39;ll be able to attach your SharePoint&lt;/p&gt;  &lt;h4&gt;Configure the SharePoint from the TFS Administration console&lt;/h4&gt;  &lt;p&gt;Click on the new item &amp;quot;Extensions for SharePoint Products&amp;quot; then on the &amp;quot;Grand Access&amp;quot; text on the right:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_592E3B92.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_4534A8FC.png" width="500" height="213" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Fill the following screen with the TFS Server URL and the SharePoint server one too.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_0E0B1B03.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_658C38EE.png" width="390" height="353" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Click ok, and now your SharePoint is configured to use the Team Foundation Server.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_3EDDACA1.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_4F09749A.png" width="500" height="190" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;One more step: add the SharePoint server to the TFS Application Tier. Select &amp;quot;SharePoint Web Applications&amp;quot; under &amp;quot;Application Tier&amp;quot; of your TFS Server in the Team Foundation Server Administration Console. Then click on &amp;quot;Add&amp;quot; in the &amp;quot;SharePoint Web Applications&amp;quot; section.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_2CD16914.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_03E6540B.png" width="500" height="197" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Click on the &amp;quot;Verify Path&amp;quot; button to check your configuration.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_68CD84FC.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_55AC5850.png" width="412" height="143" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Then click on the &amp;quot;OK&amp;quot; button to Add the SharePoint Site Collection.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_149DD8EC.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_56C1416F.png" width="500" height="198" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now you regret that you didn&amp;#39;t choose SharePoint at first during the TFS configuration, don&amp;#39;t you?&lt;/p&gt;  &lt;h4&gt;Bonus: set a SharePoint site Collection to an existing Team Project Collection&lt;/h4&gt;  &lt;p&gt;Ok, one last tip, how to associate your new SharePoint with an existing Team Project Collection (say the Default one for instance).&lt;/p&gt;  &lt;p&gt;In the Team Foundation Server Administration Console, select the &amp;quot;Team Project Collections&amp;quot; item, then the Team Project Collection you want to modify and select the &amp;quot;SharePoint Site&amp;quot; pane.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_348935E9.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_2E61E94E.png" width="500" height="262" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Click on the &amp;quot;Edit Default Site Location&amp;quot; text.&lt;/p&gt;  &lt;p&gt;In the window that appears select the SharePoint web application type the path you&amp;#39;d like to map on your Team Project Collection (typically the name of the collection), then click &amp;quot;OK&amp;quot;. If a message box appears to ask you to create a new site choose &amp;quot;Yes&amp;quot;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_70191EDC.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_1CC1D8B6.png" width="401" height="308" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Job&amp;#39;s done!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_4D74E061.png"&gt;&lt;img style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" title="image" border="0" alt="image" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_59965A88.png" width="459" height="353" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=90" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TFS2010/default.aspx">TFS2010</category></item><item><title>Under the limits</title><link>http://loicbaumann.org/blogs/loic/archive/2010/02/19/under-the-limits.aspx</link><pubDate>Sat, 20 Feb 2010 03:17:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:89</guid><dc:creator>loicbaumann</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;The new release of Team Foundation Server 2010 went out few weeks ago. As I was lazy, I installed a quick VM to test it out, I put 512 Meg of RAM because I was cheap and planned to setup the basic version.&lt;/p&gt;
&lt;p&gt;Well, it didn&amp;rsquo;t go very well at first as the new Team Foundation Server Administration Console rejected my configuration: not enough RAM, 1024 is at least needed!&lt;/p&gt;
&lt;p&gt;Well, I was a bit stubborn on this and thought that 512MB could be fine for my own VPC evaluation (yes, cheap and stubborn, what a guy!), so I tried to find if there was a way to overcome this verification.&lt;/p&gt;
&lt;p&gt;My buddy Reflector helped me to find out what could be done and here&amp;rsquo;s the solution to my problem:&lt;/p&gt;
&lt;p&gt;If there&amp;rsquo;s an error that pops up, you can make the verification mechanism ignores it by setting an environment variable (that&amp;rsquo;s right, a Windows environment variable) corresponding to the criteria you want to bypass.&lt;/p&gt;
&lt;p&gt;In my case the criteria was called &amp;ldquo;VMEMORY&amp;rdquo;, the formulae is not that hard, create a variable TFS_IGNORE_VMEMORY (with a value of 1 for instance, but it doesn&amp;rsquo;t matter), and you&amp;rsquo;re good to go!&lt;/p&gt;
&lt;p&gt;Nice, of course if not recommended to bypass this with prod server, but for evaluation purpose I guess it&amp;rsquo;s all right.&lt;/p&gt;
&lt;p&gt;So, during the check, here&amp;rsquo;s the error TF255157: The amount of RAM available on this computer is not sufficient to complete this process. You must have the following amount of RAM available: 1024 MB.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.fr/wp-content/uploads/fromcs/image_16E6D1A2.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" title="image" alt="image" src="http://loicbaumann.fr/wp-content/uploads/fromcs/image_thumb_0FE71F1D.png" border="0" height="374" width="497" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Then you can check the log to get the criteria that&amp;rsquo;s failing:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.fr/wp-content/uploads/fromcs/image_2C34613D.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" title="image" alt="image" src="http://loicbaumann.fr/wp-content/uploads/fromcs/image_thumb_3B1B9057.png" border="0" height="353" width="500" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Create a System environment variable:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.fr/wp-content/uploads/fromcs/image_34586107.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" title="image" alt="image" src="http://loicbaumann.fr/wp-content/uploads/fromcs/image_thumb_205ECE71.png" border="0" height="285" width="493" /&gt;&lt;/a&gt; &lt;a name="_GoBack"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Restart your Team Foundation Configuration Wizard for the process to see the environment variable!&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;And this time, everything&amp;rsquo;s working like a charm!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.fr/wp-content/uploads/fromcs/image_36653A03.png"&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" title="image" alt="image" src="http://loicbaumann.fr/wp-content/uploads/fromcs/image_thumb_7B315E37.png" border="0" height="371" width="493" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=89" width="1" height="1"&gt;</description></item><item><title>A new Team System MVP out there!</title><link>http://loicbaumann.org/blogs/loic/archive/2009/07/01/a-new-team-system-mvp-out-there.aspx</link><pubDate>Wed, 01 Jul 2009 21:16:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:79</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Just a quick post to say that I became Team System MVP from today!&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m really excited about it and I&amp;rsquo;ll continue hard working for this great community !&lt;/p&gt;
&lt;p&gt;Thanks to all the people that helped on Team System from the early years to now: Eric Le Loc&amp;rsquo;h, Blaise Vignon, Brian Harry and Charles Sterling from Microsoft.&lt;/p&gt;
&lt;p&gt;Also thanks to my company Winwise and the following people I met there for their great support : Florent, Mathieu Sz, Daniel, Etienne and David.&lt;/p&gt;
&lt;p&gt;Last but not the least : my wife Virginie for her patience, support and understanding!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_35891484.png"&gt;&lt;img height="111" width="73" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_5E4479CD.png" align="left" alt="image" border="0" title="image" style="border-bottom:0px;border-left:0px;display:inline;margin-left:0px;border-top:0px;margin-right:0px;border-right:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=79" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category></item><item><title>Welcome to the Team Lab world!</title><link>http://loicbaumann.org/blogs/loic/archive/2009/06/22/welcome-to-the-team-lab-world.aspx</link><pubDate>Mon, 22 Jun 2009 19:57:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:78</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The beta 1 of Visual Studio 2010 and Team System kicked out few weeks ago. As you may know it&amp;rsquo;s a major release of the Microsoft&amp;rsquo;s development tools. Most of the product were already existing in the previous version and was greatly improved (now you want Team Architect, don&amp;rsquo;t you?).&lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s one new tool: Microsoft Team &amp;amp; Lab Manager, formally known as Camano. I won&amp;rsquo;t do an overview of it but for those who are interested to setup Team Lab for demo or testing purpose, this post may be useful.&lt;/p&gt;
&lt;p&gt;So what you need to get Team Lab installed:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A Windows Server 2008 x64 with Hyper-V activated. &lt;/li&gt;
&lt;li&gt;The server must be a member of an Active Directory domain and &lt;span style="text-decoration:underline;"&gt;should be able to connect to it anytime&lt;/span&gt;. &lt;/li&gt;
&lt;li&gt;System Center Virtual Machine Manager 2008. &lt;/li&gt;
&lt;li&gt;Team Foundation Server 2010 beta 1. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So the prerequisites are quite significant, if you plan to install it on a single computer, beware that it&amp;rsquo;s a not an easy task. It can be done, but still, not easy!&lt;/p&gt;
&lt;h4&gt;&lt;/h4&gt;
&lt;h4&gt;Everything on a laptop for roaming demonstrations!&lt;/h4&gt;
&lt;p&gt;Being a consultant is sometime tough, because you best pal weights 4pds and is not as powerful as you wished.&lt;/p&gt;
&lt;p&gt;Still being naive about Team Lab, I decided to get it done on my dear laptop. Well, my best pal is small but sometime the size doesn&amp;rsquo;t matter: 6 GB of RAM, 120GB Vertex SSD, Core 2 Duo T9400 and a newly acquired 120GB internal HDD instead of the useless DVD Drive. Told you it was my best pal? :D&lt;/p&gt;
&lt;p&gt;I guess&amp;nbsp; you can get it done with a 4GB of RAM, 250GB HDD but it will be very limited and slow.&lt;/p&gt;
&lt;h4&gt;You said Active Directory?&lt;/h4&gt;
&lt;p&gt;Before trying Team Lab I had one short experience with SCVMM, I remember the installation wasn&amp;rsquo;t easy and the product required a good amount of resources. At the time it was an installation on a Desktop computer, always plugged to the network through the LAN adapter.&lt;/p&gt;
&lt;p&gt;This time, things are harder, I want to do some demo of Team Lab when I&amp;rsquo;m out from office, so my laptop is not connected to the AD, and when I first installed SCVMM I quickly realized once I got home that when you start it you get an error message telling you the Active Directory controller can&amp;rsquo;t be reached (no kidding!?) and just get kicked out of the software!&lt;/p&gt;
&lt;p&gt;Great! So like I said at the beginning SCVMM needs the AD each time you use it! So if you want to demoing there&amp;rsquo;s only one solution: installing an Active Directory Domain service (with a DNS Server, of course) somewhere in your laptop.&lt;/p&gt;
&lt;p&gt;Two possibilities here:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Install the AD right away on your Windows 2008 Server. &lt;/li&gt;
&lt;li&gt;Install it on a VM hosted by your Windows 2008 Server&amp;rsquo;s Hyper-V (with your host registered to it &amp;ndash; sounds weird). &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I chose to go at the first solution, having my host registered to a DC that it hosts is way to weird for me and when I tried it I got some expected issues, so first one, cleaver choice.&lt;/p&gt;
&lt;h4&gt;&lt;/h4&gt;
&lt;h4&gt;Setup DNS and AD&lt;/h4&gt;
&lt;p&gt;Ok first thing, give up your company&amp;rsquo;s AD, because it can&amp;rsquo;t be done otherwise and install a new one on your Windows 2008 Server. The procedure is fairly easy, just find a name (e.g. &amp;ldquo;demo.local&amp;rdquo; for me), select the LAN Adapter when configuring the DNS, don&amp;rsquo;t be afraid about the warning message about your LAN Adapter not having a static IP set (after all it&amp;rsquo;s just demoing, not prod).&lt;/p&gt;
&lt;p&gt;You should end up with something like that in your Server Manager:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_1A83489F.png"&gt;&lt;img height="248" width="357" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_22D6F829.png" alt="image" border="0" title="image" style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;As you installed the Domain Controller on the Host, the host automatically became a member of the domain.&lt;/p&gt;
&lt;h4&gt;Installation of System Center Virtual Machine Manager 2008&lt;/h4&gt;
&lt;p&gt;This one is a tough one, I went through &lt;strong&gt;major&lt;/strong&gt; headaches just to get it done!&lt;/p&gt;
&lt;p&gt;You will find plenty information about installation failure on the web (yey, I&amp;rsquo;m not the only one) my advices are:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Don&amp;rsquo;t scare him, accept all the default settings and ports. &lt;/li&gt;
&lt;li&gt;Accept the installation of a SQL Server Express (even if you have a top notch SQL Server 2008 Enterprise installed). &lt;/li&gt;
&lt;li&gt;Most of all, installing on the domain controller will improve your rate of success. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Google if you get an error, specially if you get the &amp;ldquo;need attention&amp;rdquo; on the Host that you first add to SCVMM. There&amp;rsquo;s a bunch of things that may lead to this issue, MSDN forum and blogs will give you some advices and fixes.&lt;/p&gt;
&lt;h4&gt;Installation of TFS 2010 beta 1&lt;/h4&gt;
&lt;p&gt;There&amp;rsquo;s again two paths here: you can install TFS on the host operating system or in a virtual machine. I chosen the second one because the beta 1 won&amp;rsquo;t support upgrade to beta 2 so I don&amp;rsquo;t want to waste my host OS.&lt;/p&gt;
&lt;p&gt;I&amp;rsquo;ve create a 1,5 Gig of RAM virtual machine, and installed everything I was told to in that great &lt;a target="_blank" href="http://go.microsoft.com/fwlink/?LinkId=147413"&gt;Team Lab Setup Guide&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;One thing the document doesn&amp;rsquo;t mention is to check in SCVMM 2008 if the Network Location of the Host you added is setup correctly for the network adapter. Ok, a few screenshot may be clearer.&lt;/p&gt;
&lt;p&gt;In the &amp;ldquo;Host&amp;rdquo; section of SCVMM 2008, display the properties of your host:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_64EA3ADF.png"&gt;&lt;img height="188" width="490" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_1628FF73.png" alt="image" border="0" title="image" style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;In the &amp;ldquo;Network Adapters&amp;rdquo; section, select the one used for the communication with your TFS 2010 and check in &amp;ldquo;Network Location&amp;rdquo; that your domain is listed (in my case &amp;ldquo;demo.local). If it&amp;rsquo;s not the case, just check the &amp;ldquo;Override discovered&amp;rdquo; box and type your domain in the edit box above.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_4C4A77C2.png"&gt;&lt;img height="501" width="480" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_194AC18E.png" alt="image" border="0" title="image" style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;border-left-width:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;The location you provide must match the one you give in the Team Foundation Administration console, in the &amp;ldquo;Lab Management&amp;rdquo; section:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_1B5E929D.png" class="null"&gt;&lt;img height="161" width="468" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_1CFF38A4.png" alt="image" border="0" title="image" style="display:inline;border:0;" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You should be fine to play with Team Lab!&lt;/p&gt;
&lt;p&gt;Finally, don&amp;rsquo;t forget to check the &lt;a target="_blank" href="http://blogs.msdn.com/lab_management/default.aspx"&gt;VSTS Lab Management team blog&lt;/a&gt;, it&amp;rsquo;s a great source of information!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=78" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/VSTS_5F00_2010_5F00_Beta_5F00_1/default.aspx">VSTS_2010_Beta_1</category></item><item><title>My eSata port doesn’t work! Another noob issue solved…</title><link>http://loicbaumann.org/blogs/loic/archive/2009/06/18/my-esata-port-doesn-t-work-another-noob-issue-solved.aspx</link><pubDate>Thu, 18 Jun 2009 22:30:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:77</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;I was very excited today because I got my new eSata external drive with a Vertex 120 GB, so I plugged it and&amp;hellip;. nothing happened!&lt;/p&gt;
&lt;p&gt;No way I could put the Vertex in USB: the performances drop big time. So I gotta find a way to solve this issue.&lt;/p&gt;
&lt;p&gt;If you can&amp;rsquo;t get your eSata drive working correctly on your laptop, this post is for you my friend!&lt;/p&gt;
&lt;p&gt;First thing, it took me a little time to realize I had my laptop configured in IDE mode instead of AHCI and that could be a reason why my eSata wasn&amp;rsquo;t working at all. After a bit of wandering through the web it got confirmed.&lt;/p&gt;
&lt;p&gt;So I went to the BIOS and switched the disk controller mode to AHCI, reboot and&amp;hellip;. BOOOM! Blue Screen! &lt;br /&gt;The problem got solved when I found the &lt;a target="_blank" href="http://support.microsoft.com/kb/922976/en-us"&gt;KB 922976&lt;/a&gt;. Basically when you install your Windows in IDE the AHCI drivers are deactivated, so when you switch to AHCI you got the blue screen because it can&amp;rsquo;t handle the Sata device. A simple registry edit solves the problem.&lt;/p&gt;
&lt;p&gt;Ok, now my Windows is booting, so I can plug my eSata device again and&amp;hellip;.yey it works !!!&lt;/p&gt;
&lt;p&gt;First thing first, I bench the eSata Vertex and the result was&amp;hellip;. good but not very good&amp;hellip; :( &lt;br /&gt;I&amp;rsquo;m telling you, the path to achieve true performance is not easy. I noticed during the benching that there was some stalls, so I went to the hypotheses that the driver wasn&amp;rsquo;t that good.&lt;/p&gt;
&lt;p&gt;It turned out that I had the standard (Microsoft) AHCI drivers installed (I reinstalled my OS a lot these past months, a miss can happen). So I went to get the Intel Matrix storage driver for my Dell E6400, install them and two reboots and a bench later&amp;hellip;. &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:medium;"&gt;YEY!&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Here is a little comparison between my SATA Vertex (2 months old, shaken a lot) and the brand new never used Vertex in eSata:&lt;/p&gt;
&lt;table cellpadding="2" cellspacing="0"&gt;

&lt;tr&gt;
&lt;td&gt;Sata&lt;/td&gt;
&lt;td&gt;eSata&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_3994E984.png"&gt;&lt;img height="307" width="354" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_090E3F41.png" alt="image" border="0" title="image" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" /&gt;&lt;/a&gt; &lt;/td&gt;
&lt;td&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_45768E1E.png"&gt;&lt;img height="306" width="353" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_727B551F.png" alt="image" border="0" title="image" style="border-bottom:0px;border-left:0px;display:inline;border-top:0px;border-right:0px;" /&gt;&lt;/a&gt; &lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;p&gt;Of course the newest one should perform better than the oldest one, but even in eSata, man that is great!&lt;/p&gt;
&lt;p&gt;Now there&amp;#39;s a reason to be excited!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=77" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category></item><item><title>How to know the remaining life of your Vertex SSD</title><link>http://loicbaumann.org/blogs/loic/archive/2009/06/18/how-to-know-the-remaining-life-of-your-vertex-ssd.aspx</link><pubDate>Thu, 18 Jun 2009 14:25:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:76</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;MLC SSD have a limited life time, the vertex announced a MTBF (Mean Time Before Failure) of 1.5 million of hours. This number is only based on a statistic of &amp;ldquo;how many gig of data you&amp;rsquo;re writing everyday&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;So if you really want to know the percentage of the remaining life you can do it if you have the firmware 1.30 or newer.&lt;/p&gt;
&lt;p&gt;Again, this procedure is taken from a &lt;a target="_blank" href="http://www.ocztechnologyforum.com/forum/showthread.php?t=57898"&gt;post&lt;/a&gt; of the OCZ forum.&lt;/p&gt;
&lt;p&gt;Download the free tool &lt;a target="_blank" href="http://crystalmark.info/?lang=en"&gt;CrystalDiskInfo&lt;/a&gt;, install it and run:&lt;/p&gt;
&lt;table cellpadding="2" cellspacing="0"&gt;

&lt;tr&gt;
&lt;td&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_7130ABE6.png" class="null"&gt;&lt;img height="462" width="437" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_3DE44CB0.png" alt="image" border="0" title="image" style="display:inline;border:0;" /&gt;&lt;/a&gt; &lt;/td&gt;
&lt;td&gt;The values surrounded by the blue square are meaning what they are supposed to. &lt;br /&gt;&lt;br /&gt;The value squared in green means something different: &lt;br /&gt;D0 = Erase Count Average. &lt;br /&gt;&lt;br /&gt;The value squared in red also means something different: &lt;br /&gt;D1 = Remaining drive life in % by Erase count. &lt;br /&gt;&lt;br /&gt;So if you want to know how much is &amp;ldquo;left in the tank&amp;rdquo; of your SSD, just look to the D1 value. &lt;br /&gt;&lt;br /&gt;As you can see, mine was already used pretty much! :) &lt;br /&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=76" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/SSD/default.aspx">SSD</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Vertex/default.aspx">Vertex</category></item><item><title>How to quickly flash your Vertex SSD from USB</title><link>http://loicbaumann.org/blogs/loic/archive/2009/06/18/how-to-quickly-flash-your-vertex-ssd-from-usb.aspx</link><pubDate>Thu, 18 Jun 2009 13:04:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:74</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;You can flash your Vertex&amp;rsquo;s firmware only from the DOS (under Windows or WinPE won&amp;rsquo;t work).&lt;/p&gt;
&lt;p&gt;Here is the fastest way to create a bootable USB Key containing the DOS version of Windows 98.&lt;/p&gt;
&lt;p&gt;The procedure was stolen form this OCZ forum &lt;a target="_blank" href="http://www.ocztechnologyforum.com/forum/showthread.php?t=29726"&gt;post&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Get &lt;a target="_blank" href="http://www.ocztechnologyforum.com/staff/ryderocz/pendrive/drivekey.zip"&gt;this file&lt;/a&gt; from the OCZ forum, unpack it and execute &amp;ldquo;RunThis.exe&amp;rdquo;, the following dialog form appears:&lt;/p&gt;
&lt;table cellpadding="2" cellspacing="0"&gt;

&lt;tr&gt;
&lt;td&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_6E9D33A9.png" class="null"&gt;&lt;img height="378" width="287" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_7477D742.png" alt="image" border="0" title="image" style="display:inline;border:0;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;/td&gt;
&lt;td&gt;Select the USB key you want to use to create the bootable DOS. &lt;br /&gt;Check &amp;ldquo;Quick Format&amp;rdquo;. &lt;br /&gt;Check &amp;ldquo;Create a DOS startup disk&amp;rdquo; and select the folder &amp;ldquo;Bootfiles&amp;rdquo; in the zip you just unpacked. &lt;br /&gt;&lt;br /&gt;Click &amp;ldquo;Start&amp;rdquo; and in few second the work is done. &lt;br /&gt;&lt;br /&gt;Now you can copy the firmware you want to flash in you USB key and all you have to do is reboot, boot on the key and you&amp;rsquo;re done! &lt;br /&gt;&lt;br /&gt;You can find more about the latest 1.3 firmware &lt;a target="_blank" href="http://loicbaumann.com/blogs/loic/archive/2009/06/18/ocz-released-the-1-3-firmware-of-the-vertex.aspx"&gt;here&lt;/a&gt;.&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=74" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/SSD/default.aspx">SSD</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Vertex/default.aspx">Vertex</category></item><item><title>OCZ released the 1.3 Firmware of the Vertex</title><link>http://loicbaumann.org/blogs/loic/archive/2009/06/18/ocz-released-the-1-3-firmware-of-the-vertex.aspx</link><pubDate>Thu, 18 Jun 2009 12:40:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:73</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The official post in the OCZ can be found &lt;a target="_blank" href="http://www.ocztechnologyforum.com/forum/showthread.php?t=57516"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Links to the Firmware for the different size of SSD:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.ocztechnologyforum.com/forum/attachment.php?attachmentid=10413&amp;amp;d=1244021341"&gt;30 Gig&lt;br /&gt;60 Gig&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.ocztechnologyforum.com/forum/attachment.php?attachmentid=10414&amp;amp;d=1244021341"&gt;120 Gig&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.ocztechnologyforum.com/forum/attachment.php?attachmentid=10415&amp;amp;d=1244021341"&gt;250 Gig&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can safely flash your SSD from the DOS and it &lt;strong&gt;&lt;span style="text-decoration:underline;"&gt;won&amp;#39;t erase your existing data&lt;/span&gt;&lt;/strong&gt;! You can flash from the version 1275 or newer.&lt;/p&gt;
&lt;p&gt;The change log for this version is:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Version 1.3 &lt;br /&gt;Release Date: June 03, 2009&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Bug fixes&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;&amp;bull; Host program lost drives if NAND BIST is run on multiple drives. &lt;br /&gt;&amp;bull; Read Fail handling &lt;br /&gt;&amp;bull; ATA Security Command didn&amp;rsquo;t work as expected. &lt;br /&gt;&amp;bull; Race condition occurred during soft reset handler &lt;br /&gt;&amp;bull; ATA Security Command didn&amp;rsquo;t work in AHCI mode. &lt;br /&gt;&amp;bull; If read fail occurs during reading stamp information, firmware corrupted block 0. &lt;br /&gt;&amp;bull; Power off recovery had bug in certain circumstances &lt;br /&gt;&amp;bull; If host sends invalid SMART subcommands, Abort was not sent to host. &lt;br /&gt;&amp;bull; SMART attribute data was not initialized properly for certain fields. &lt;br /&gt;&amp;bull; Improper handling of ATA command when sent with 0 sector count&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Feature Addition&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;&amp;bull; Remaining life expectancy calculation is implemented.&lt;/em&gt;&amp;nbsp;&lt;/p&gt;
&lt;/blockquote&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=73" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/SSD/default.aspx">SSD</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Vertex/default.aspx">Vertex</category></item><item><title>When a network newbie plays with Hyper-V</title><link>http://loicbaumann.org/blogs/loic/archive/2009/06/05/when-a-network-newbie-plays-with-hyper-v.aspx</link><pubDate>Fri, 05 Jun 2009 22:06:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:72</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;I use Hyper-V since a while now, but somehow I always managed to get the network part working without doing anything special, until I met System Center Virtual Machine Manager (SCVMM)&amp;hellip;&lt;/p&gt;
&lt;p&gt;When I was creating VMs and connecting them with an Internal or External Virtual Network, everything was working fine.&lt;/p&gt;
&lt;p&gt;The Network Adapter created on the VM had the default settings:&lt;/p&gt;
&lt;table cellpadding="2" cellspacing="0"&gt;

&lt;tr&gt;
&lt;td&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_0FD87C6D.png" class="null"&gt;&lt;img height="244" width="221" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_00556A9E.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_1396213D.png" class="null"&gt;&lt;img height="243" width="456" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_3BE55391.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt; &lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;So me being a total newbie when I saw the result of the &lt;strong&gt;ipconfig /all &lt;/strong&gt;I thought that Hyper-V, in someway, was emulating a DHCP for the Virtual Machines it hosts. One might agree with me, after all we&amp;rsquo;re getting an IP, right ?&lt;/p&gt;
&lt;p&gt;Well, wrong! If you look closer at the IP you&amp;rsquo;ll see it starts with &amp;ldquo;169.254&amp;rdquo; and that my friend is not a standard DHCP allocated IP.&lt;/p&gt;
&lt;p&gt;IP addresses starting with 169.254 are special, you can find more info &lt;a target="_blank" href="http://en.wikipedia.org/wiki/169.254"&gt;here&lt;/a&gt;, but basically it&amp;rsquo;s standard supported by Windows that allocates a &amp;ldquo;special&amp;rdquo; IP when the network adapter should get one from a DHCP but the DHCP wasn&amp;rsquo;t found.&lt;/p&gt;
&lt;p&gt;So it leads us to:&lt;/p&gt;
&lt;p&gt;Hyper-V&amp;rsquo;s Virtual Networks are not magic, they won&amp;rsquo;t allocate IP for the Virtual Machines they host if you let the default settings on the VM&amp;rsquo;s network adapter. You have to either specify a static IP or setup a DHCP somewhere and reference it from your network adapter.&lt;/p&gt;
&lt;p&gt;After some thinking I realized that it was supposed to be this way, it&amp;rsquo;s way more realistic for production purpose. But my experience being mostly about prototyping, I had first a different point of view.&lt;/p&gt;
&lt;p&gt;One last thing: you don&amp;rsquo;t have DHCP, but there&amp;rsquo;s still an IP allocated so you get the &amp;ldquo;NETBIOS over TCP/IP&amp;rdquo; working fine, so can do &amp;ldquo;Windows stuffs&amp;rdquo; like RDP, File Sharing, Windows Network discovery. But when you have to fully rely on TCP/IP and use DNS (installing SCVMM for instance :D) it won&amp;rsquo;t work at all&amp;hellip;&lt;/p&gt;
&lt;p&gt;Poor me developer having to discover the cruel world of networking&amp;hellip; :(&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=72" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Hyper-V/default.aspx">Hyper-V</category></item><item><title>Roaming with Hyper-V: solving network issues</title><link>http://loicbaumann.org/blogs/loic/archive/2009/06/05/roaming-with-hyper-v-solving-network-issues.aspx</link><pubDate>Fri, 05 Jun 2009 12:36:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:71</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;I installed Windows 2008 Server x64 with Hyper-V since a while on my laptop. Hyper-V was a great way for me to build up prototypes of several servers in a V-LAN and once you tasted the multiple Snapshot feature, it&amp;rsquo;s hard to live without it.&lt;/p&gt;
&lt;p&gt;Now it&amp;rsquo;s clear that Windows 2008 Server wasn&amp;rsquo;t meant to be used on a laptop and you have to sacrifice some features or be tricky to get what you want.&lt;/p&gt;
&lt;p&gt;One of the things that bothered me the most was finding a way to get my VM having internet access either when I&amp;rsquo;m plugged to the internet through WIFI (home) or Ethernet (work).&lt;/p&gt;
&lt;p&gt;These two cases can be separately solved:&lt;/p&gt;
&lt;p&gt;- With WIFI you will use a Internal Virtual Network for your VMs and enable Internet Connection Sharing (ICS) from the WIFI adapter, pointing to the Internal Virtual Network.&lt;/p&gt;
&lt;p&gt;- With Ethernet, create an External Virtual Network and you&amp;rsquo;re done.&lt;/p&gt;
&lt;p&gt;Now I don&amp;rsquo;t want to constantly switched from the two Virtual Networks depending on if I&amp;rsquo;m using WIFI or Ethernet, it&amp;rsquo;s taking time and your VMs are not always happy about the changes&amp;hellip;&lt;/p&gt;
&lt;p&gt;The solution will look familiar to people that used Virtual PC for complex things: using the Microsoft Loopback Adapter!&lt;/p&gt;
&lt;p&gt;Here are the steps to perform&lt;/p&gt;
&lt;h4&gt;Add the Loopback adapter&lt;/h4&gt;
&lt;p&gt;Go to the Control Panel, then &amp;ldquo;Add Hardware&amp;rdquo; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_0C8F9CE8.png" class="null"&gt;&lt;img height="92" width="76" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_3A10BCAB.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Click next to get to the screen when you choose to install the hardware manually:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_79DAA330.png" class="null"&gt;&lt;img height="56" width="303" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_24B30743.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;In the next screen select the &amp;ldquo;Network adapters&amp;rdquo; category, click &amp;ldquo;Next&amp;rdquo;.&lt;/p&gt;
&lt;p&gt;In the &amp;ldquo;Manufacturer&amp;rdquo; list select &amp;ldquo;Microsoft&amp;rdquo;, then select the &amp;ldquo;Microsoft Loopback adapter&amp;rdquo;:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_0A729E1F.png" class="null"&gt;&lt;img height="263" width="340" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_2FFC1B80.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Click next twice and you will get your Loopback adapter installed in few seconds.&lt;/p&gt;
&lt;h4&gt;Creating the Hyper-V Virtual Network&lt;/h4&gt;
&lt;p&gt;Now go to the Hyper-V console and right click on you Hyper-V host and select &amp;ldquo;Virtual Network Manager&amp;rdquo;:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_3BB162B2.png" class="null"&gt;&lt;img height="133" width="336" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_1ABDF00B.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Follow the standard procedure to create an External Virtual Network using you newly created Loopback adapter:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_6B1FD17E.png" class="null"&gt;&lt;img height="254" width="586" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_61E3963D.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I called mine &amp;ldquo;LoopBackLan&amp;rdquo;.&lt;/p&gt;
&lt;h4&gt;Setting up the Virtual Network&lt;/h4&gt;
&lt;p&gt;The next thing you will have to do is setting up the TCP/IP configuration for the newly created connection. If you&amp;rsquo;re unfamiliar with Hyper-V, you have to know that creating a Virtual Network will have for result to create a new Network Connection. You will see it from the Control Panel&amp;rsquo;s &amp;ldquo;Network Connections&amp;rdquo; item.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image19_5F00_0DB3EA2D.png" class="null"&gt;&lt;img height="254" width="711" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image19_5F00_thumb_5F00_6D88B7A2.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The connection squared in red is the logical Loopback adapter you add in the first step. &lt;br /&gt;The one squared in green is what was created by Hyper-V.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;You don&amp;rsquo;t want to touch the configuration of the red one.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Now you have to configure the green one:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_233DFCFD.png" class="null"&gt;&lt;img height="332" width="266" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_740C1165.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt; &lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_38D8359A.png" class="null"&gt;&lt;img height="332" width="299" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_37939CBB.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;You have to manually setup the IP and it has to be 192.168.0.1, it&amp;rsquo;s a restriction of ICS (we&amp;rsquo;ll see that just after).&lt;/p&gt;
&lt;p&gt;You&amp;rsquo;re ready to set this this External Virtual Network to your Virtual Machines!&lt;/p&gt;
&lt;h4&gt;Enabling internet access through ICS&lt;/h4&gt;
&lt;p&gt;To get internet access, just enable ICS on the adapter that is active, for instance if you&amp;rsquo;re plugged to the LAN, go to the &amp;ldquo;Network Connections&amp;rdquo; panel,&amp;nbsp; select your LAN adapter and display its properties, select the &amp;ldquo;Sharing&amp;rdquo; tab and configure as followed:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_349E3808.png" class="null"&gt;&lt;img height="299" width="240" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_0C8B88E9.png" alt="image" border="0" title="image" style="display:inline;border-width:0px;border:0;" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The &amp;ldquo;Home networking connection&amp;rdquo; has to be your Hyper-V External Virtual Network (remember, the green one).&lt;/p&gt;
&lt;p&gt;Now if you want to switch to WIFI, just disabled the ICS from the LAN and repeat the action on the WIFI adapter and you will be fine!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=71" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Hyper-V/default.aspx">Hyper-V</category></item><item><title>What you need to know to use the Process Template API</title><link>http://loicbaumann.org/blogs/loic/archive/2009/04/02/what-you-need-to-know-to-use-the-process-template-api.aspx</link><pubDate>Thu, 02 Apr 2009 19:57:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:65</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Developing an application using the Team Foundation Server Process Template feature is not an easy task, mainly because of the lack of documentation and sample around it. &lt;/p&gt;
&lt;p&gt;As I had to deal with it when writing the &lt;a href="http://witsynchronizer.codeplex.com"&gt;&lt;span style="text-decoration:underline;"&gt;WITSynchronizer&lt;/span&gt;&lt;/a&gt; I guess I can share some experience out there. &lt;/p&gt;
&lt;p&gt;&lt;span style="color:#7f7f7f;font-size:14pt;"&gt;&lt;strong&gt;Using the IProcessTemplates interface &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Let&amp;#39;s start by the beginning, you have your Team Foundation Server object and want to get the IProcessTemplates interface.&lt;br /&gt;The &lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;GetService()&lt;/span&gt; method can do that for you: &lt;/p&gt;
&lt;p style="background:#44517b;"&gt;&lt;span style="font-family:Lucida Console;font-size:9pt;"&gt;&lt;span style="color:#ffff80;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#eceef4;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#cfcfcf;"&gt;// Get the Process Template interface&lt;/span&gt;&lt;span style="color:#eceef4;"&gt; &lt;br /&gt;&lt;/span&gt;&lt;span style="color:#ffff80;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#eceef4;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;IProcessTemplates&lt;/span&gt;&lt;span style="color:#eceef4;"&gt; &lt;/span&gt;&lt;span style="color:#9191c8;"&gt;ptp&lt;/span&gt;&lt;span style="color:#eceef4;"&gt; &lt;/span&gt;&lt;span style="color:#ff7d7d;"&gt;=&lt;/span&gt;&lt;span style="color:#eceef4;"&gt; (&lt;/span&gt;&lt;span style="color:#2b91af;"&gt;IProcessTemplates&lt;/span&gt;&lt;span style="color:#eceef4;"&gt;)&lt;/span&gt;&lt;span style="color:#9191c8;"&gt;tfs&lt;/span&gt;&lt;span style="color:#ff7d7d;"&gt;.&lt;/span&gt;&lt;span style="color:#9191c8;"&gt;GetService&lt;/span&gt;&lt;span style="color:#eceef4;"&gt;(&lt;/span&gt;&lt;span style="color:#8ab7f9;"&gt;typeof&lt;/span&gt;&lt;span style="color:#eceef4;"&gt;(&lt;/span&gt;&lt;span style="color:#2b91af;"&gt;IProcessTemplates&lt;/span&gt;&lt;span style="color:#eceef4;"&gt;)); &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;The MSDN documentation about this interface is pretty much the list of its members, so let&amp;#39;s describe a bit more what you can do with them. &lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Lucida Console;font-size:10pt;"&gt;&lt;span style="color:blue;"&gt;int&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; AddTemplate(&lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; name, &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; description, &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; metadata, &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; state) &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin-left:36pt;"&gt;This method is used to add a new Process Template in your TFS, it&amp;#39;s only the declaration of the new Process Template, the content will have to be upload with another method. &lt;/p&gt;
&lt;ul style="margin-left:72pt;"&gt;
&lt;li&gt;&lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;name&lt;/span&gt;: the name of your Process Template (the one you see in the combo box when creating a new Team Project) &lt;/li&gt;
&lt;li&gt;&lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;description&lt;/span&gt;: the description of your Process Template (the one you see in the description field when creating a new Team Project) &lt;/li&gt;
&lt;li&gt;&lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;metadata&lt;/span&gt;: the &amp;quot;OuterXML&amp;quot; of the &lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;metadata&lt;/span&gt; XML element in the ProcessTemplate.xml file of your Template. You can&amp;#39;t pull this off manually, you have to take what&amp;#39;s come out of the Process Template editor. &lt;/li&gt;
&lt;li&gt;&lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;state&lt;/span&gt;: I don&amp;#39;t know all the possible values, but the &amp;quot;visible&amp;quot; one is the one you want to get your Template correctly.&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family:Lucida Console;font-size:10pt;"&gt;&lt;span style="color:blue;"&gt;void&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; AddUpdateTemplate(&lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; name, &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; description, &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; metadata, &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; state, &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; zipFileName) &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin-left:36pt;"&gt;This method is used apparently to add a new Process Template (and uploading its content) or updating an existing one. &lt;/p&gt;
&lt;p style="margin-left:36pt;"&gt;The first four parameters are the same as the &lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;AddTemplate()&lt;/span&gt; method. &lt;/p&gt;
&lt;ul style="margin-left:72pt;"&gt;
&lt;li&gt;&lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;zipFileName&lt;/span&gt;: the full path and filename of the zipped version of you Process Template folder. Beware that you can&amp;#39;t zip this file with WinZip or any kind of Zip Library. The only one I could use successfully is the &lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;ICSharpCode.SharpZipLib&lt;/span&gt; with the &lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;FastZip&lt;/span&gt; class.&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-family:Lucida Console;font-size:10pt;"&gt;&lt;span style="color:#1f497d;"&gt;TemplateHeader[] DeleteTemplate( &lt;/span&gt;&lt;span style="color:blue;"&gt;int&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; templateId) &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin-left:36pt;"&gt;Delete a template from its ID, you can get the ID calling the &lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;TemplateHeaders()&lt;/span&gt; method and using the &lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;TemplateId&lt;/span&gt; field, or by calling &lt;span style="color:#4f81bd;font-family:Lucida Console;font-size:10pt;"&gt;GetTemplateIndex()&lt;/span&gt;. &lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Lucida Console;font-size:10pt;"&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; GetTemplateData(&lt;/span&gt;&lt;span style="color:blue;"&gt;int&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; methodologyIndex) &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin-left:36pt;"&gt;This method will download the Template Data as a temporary zipped file and returns you the full path and file name. &lt;/p&gt;
&lt;p style="margin-left:36pt;"&gt;&lt;strong&gt;So you better have to delete the file once you&amp;#39;re done with it!&lt;/strong&gt; &lt;/p&gt;
&lt;p style="margin-left:36pt;"&gt;Basically, unzip the file and you get all the content of your Process Template. &lt;/p&gt;
&lt;ul style="margin-left:72pt;"&gt;
&lt;li&gt;&lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;methodologyIndex&lt;/span&gt;: the index can be retrieved calling the &lt;span style="color:#4f81bd;font-family:Lucida Console;font-size:10pt;"&gt;GetTemplateIndex()&lt;/span&gt; method or using the &lt;span style="color:#4f81bd;font-family:Lucida Console;font-size:10pt;"&gt;TemplateHeader&lt;/span&gt; structure.&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt; &lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="font-family:Lucida Console;font-size:10pt;"&gt;&lt;span style="color:blue;"&gt;int&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; GetTemplateIndex(&lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; name) &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin-left:36pt;"&gt;Get the &lt;strong&gt;ID&lt;/strong&gt; of a Template from its name. I guess this method is named incorrectly because what you have in return is the Template&amp;#39;s Id. &lt;/p&gt;
&lt;p&gt;&lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;XmlNode GetTemplateNames() &lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;This method returns an XML Node listing all the Process Templates and their corresponding Id. &lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Lucida Console;font-size:10pt;"&gt;&lt;span style="color:#1f497d;"&gt;TemplateHeader[] MakeDefaultTemplate(&lt;/span&gt;&lt;span style="color:blue;"&gt;int&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; templateId) &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Make the Template of the given ID the default one. &lt;/p&gt;
&lt;p&gt;&lt;span style="color:#1f497d;font-family:Lucida Console;font-size:10pt;"&gt;TemplateHeader[] TemplateHeaders() &lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Return an array describing all the Process Template. You will find in this structure all the general information (Name, Description, State, Rank, Metadata, ID) &lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Lucida Console;font-size:10pt;"&gt;&lt;span style="color:blue;"&gt;void&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; UploadMethodology(&lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; filename, &lt;/span&gt;&lt;span style="color:blue;"&gt;int&lt;/span&gt;&lt;span style="color:#1f497d;"&gt; templateId) &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Times New Roman;font-size:12pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin-left:18pt;"&gt;&amp;nbsp;Upload a new version of the methodology in an existing Process Template. &lt;/p&gt;
&lt;ul style="margin-left:54pt;"&gt;
&lt;li&gt;&lt;span style="color:#4f81bd;font-family:Lucida Console;font-size:10pt;"&gt;Filename&lt;/span&gt;: the full path and file name of the Zipped file containing the content of the Process Template to upload. &lt;/li&gt;
&lt;li&gt;&lt;span style="color:#4f81bd;font-family:Lucida Console;font-size:10pt;"&gt;templateId&lt;/span&gt;: the ID of the template to update. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style="color:#7f7f7f;font-size:14pt;"&gt;&lt;strong&gt;My ProcessTemplate class &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;If you want to do some basic operations with Process Template, you can use the little class I wrote for the WITSynchronizer. It&amp;#39;s far from being complete and perfect, but it is easy to use... &lt;/p&gt;
&lt;p&gt;You can download the class &lt;a href="http://loicbaumann.com/cfs-file.ashx/__key/CommunityServer.Components.PostAttachments/00.00.00.00.65/ProcessTemplate_2E00_cs" class="null"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;span style="color:#7f7f7f;font-size:12pt;"&gt;&lt;strong&gt;Construction &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;You can create a ProcessTemplate instance with three possible ways: &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;By giving the directory where the Process Template is stored. &lt;/li&gt;
&lt;li&gt;By giving the zipped file you got by calling &lt;span style="color:#4f81bd;font-family:Lucida Console;font-size:10pt;"&gt;GetTemplateData()&lt;/span&gt;. &lt;/li&gt;
&lt;li&gt;By giving a TeamFoundationServer object and the name of the Process Template. &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The class will handle the cleanup of the resource it created (nothing for the first constructor, the directory for the second constructor, the zip file and the directory for the third). &lt;/p&gt;
&lt;p&gt;&lt;span style="color:#7f7f7f;font-size:12pt;"&gt;&lt;strong&gt;Features &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Get/Set the name and description of the Process Template. &lt;/li&gt;
&lt;li&gt;List all the Work Item Type definitions. &lt;/li&gt;
&lt;li&gt;List all the Work Item Query definitions. &lt;/li&gt;
&lt;li&gt;Get the XML document of a given Work Item Type definition. &lt;/li&gt;
&lt;li&gt;Get the XML document of a given Work Item Query definition. &lt;/li&gt;
&lt;li&gt;Add/update a Work Item Type definition. &lt;/li&gt;
&lt;li&gt;Add/update a Work Item Query definition. &lt;/li&gt;
&lt;li&gt;Upload the Process Template back to the Team Foundation Server.&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=65" width="1" height="1"&gt;</description><enclosure url="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Components.PostAttachments/00.00.00.00.65/ProcessTemplate_2E00_cs" length="14549" type="text/plain" /><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Coding/default.aspx">Coding</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category></item><item><title>Sortie d’un nouveau projet CodePlex: WITSynchronizer</title><link>http://loicbaumann.org/blogs/loic/archive/2009/04/02/sortie-d-un-nouveau-projet-codeplex-witsynchronizer.aspx</link><pubDate>Thu, 02 Apr 2009 13:34:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:62</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Travaillant avec beaucoup de client sur le sujet de l&amp;#39;ALM et des m&amp;eacute;thodologies, je suis souvent confront&amp;eacute; &amp;agrave; ce genre de situation&amp;nbsp;: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Je cr&amp;eacute;e un Process Template pour le client, puis je cr&amp;eacute;e un Team Project qui se base sur celui-ci. Le Team Project devient pour l&amp;#39;&amp;eacute;quipe de d&amp;eacute;veloppement en quelque sorte le projet de &amp;laquo;&amp;nbsp;r&amp;eacute;f&amp;eacute;rence&amp;nbsp;&amp;raquo; concernant la m&amp;eacute;thodologie. &lt;/li&gt;
&lt;li&gt;Le client alors va donc faire &amp;eacute;voluer ce Team Project en modifiant la d&amp;eacute;finition des types de Work Item, cr&amp;eacute;ant des nouvelles requ&amp;ecirc;tes de Work Items afin de faire &amp;eacute;voluer l&amp;#39;impl&amp;eacute;mentation de la m&amp;eacute;thodologie au sein de l&amp;#39;&amp;eacute;quipe. &lt;/li&gt;
&lt;li&gt;Tout va bien, mais maintenant que faire si l&amp;#39;on d&amp;eacute;marre un nouveau Team Project&amp;nbsp;(ou si vous l&amp;#39;avez d&amp;eacute;j&amp;agrave;) et que vous souhaitez que celui-ci b&amp;eacute;n&amp;eacute;ficie des &amp;eacute;volutions faites sur le projet de &amp;laquo;&amp;nbsp;r&amp;eacute;f&amp;eacute;rence&amp;nbsp;&amp;raquo;&amp;nbsp;? &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;C&amp;#39;est possible, mais ce n&amp;#39;est pas aussi simple et rapide que ca le devrait &amp;ecirc;tre&amp;hellip; Vous devez exporter les d&amp;eacute;finitions des type de Work Item qui ont chang&amp;eacute;s en local sur votre machine, t&amp;eacute;l&amp;eacute;charger le Process Template, remplacer les d&amp;eacute;finitions dans celui-ci, faire de m&amp;ecirc;me avec les WIQL (requ&amp;ecirc;tes de Work Item), mettre &amp;agrave; jour le fichier &amp;laquo;&amp;nbsp;WorkItems.xml&amp;nbsp;&amp;raquo; et enfin remonter le Process Template tout beau tout neuf sur le serveur. &lt;/p&gt;
&lt;p&gt;Si vous voulez mettre &amp;agrave; jour un Team Project existant, l&amp;#39;op&amp;eacute;ration est moins fastidieuse, mais vous devez toujours effectuer les m&amp;ecirc;mes t&amp;acirc;ches r&amp;eacute;p&amp;eacute;t&amp;eacute;s pour chaque WIT et WIQL, un par un&amp;hellip; &lt;/p&gt;
&lt;p&gt;Donc comme je n&amp;#39;aime pas trop perdre du temps ainsi que les t&amp;acirc;ches r&amp;eacute;p&amp;eacute;titives, j&amp;#39;ai d&amp;eacute;cid&amp;eacute; de d&amp;eacute;velopper un petit programme sans pr&amp;eacute;tention, mais qui sera &lt;strong&gt;utile&lt;/strong&gt; pour l&amp;#39;utilisation au quotidien et la maintenance de votre Team Foundation Server. &lt;/p&gt;
&lt;p&gt;C&amp;#39;est ainsi que le WITSynchronizer est n&amp;eacute;&amp;nbsp;! &lt;/p&gt;
&lt;p&gt;Je sais, je poursuis toujours ma qu&amp;ecirc;te du nom le plus ridicule pour un projet CodePlex, je me demande si j&amp;#39;ai mieux fait qu&amp;#39;avec mon premier &amp;quot;&lt;a href="http://wicreator.codeplex.com/"&gt;WICreator&lt;/a&gt;&amp;quot;! En tout cas j&amp;#39;esp&amp;egrave;re que ce projet le battra en termes de nombre de t&amp;eacute;l&amp;eacute;chargements&amp;nbsp;! &lt;/p&gt;
&lt;p&gt;Vous trouverez la page d&amp;#39;accueil du projet ici&amp;nbsp;: &lt;a href="http://witsynchronizer.codeplex.com"&gt;http://witsynchronizer.codeplex.com&lt;/a&gt;.&lt;br /&gt;La premi&amp;egrave;re version se t&amp;eacute;l&amp;eacute;charge &lt;a href="http://witsynchronizer.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=25555"&gt;ici&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;N&amp;#39;h&amp;eacute;sitez pas &amp;agrave; me donner votre avis&amp;nbsp;! &lt;/p&gt;
&lt;p&gt;Voil&amp;agrave; &amp;agrave; quoi ressemble l&amp;#39;application&amp;nbsp;: &lt;/p&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/040209_5F00_1339_5F00_Sortiedunno1.png" alt="" /&gt;&lt;span style="font-size:12pt;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Au passage, je suis particuli&amp;egrave;rement fier d&amp;#39;une petite fonctionnalit&amp;eacute;&amp;nbsp;: Unhandled Exception li&amp;eacute; &amp;agrave; CodePlex&amp;nbsp;!&lt;br /&gt;Si jamais vous rencontrez un probl&amp;egrave;me dans l&amp;#39;utilisation de l&amp;#39;application, un bug par exemple &lt;img src="http://loicbaumann.org/emoticons/emotion-1.gif" alt="Smile" /&gt;, vous aurez le dialogue suivant qui apparaitra&amp;nbsp;: &lt;/p&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/040209_5F00_1339_5F00_Sortiedunno2.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;Avec un lien tr&amp;egrave;s pratique sur la page &amp;laquo;&amp;nbsp;Issue Tracker&amp;nbsp;&amp;raquo; de CodePlex qui vous permettra de remplir une fiche de bug&amp;nbsp;! &lt;/p&gt;
&lt;p&gt;Bon, comme vous j&amp;#39;esp&amp;egrave;re qu&amp;#39;il y en aura pas trop, mais quand ca se produira, utilisez cette fonctionnalit&amp;eacute;, je pourrais fixer les bugs rapidement. &lt;/p&gt;
&lt;p&gt;Voil&amp;agrave;, profitez en bien, et n&amp;#39;oubliez pas que votre avis sera toujours le bienvenue&amp;nbsp;!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=62" width="1" height="1"&gt;</description></item><item><title>Released a new Codeplex project: WITSynchronizer</title><link>http://loicbaumann.org/blogs/loic/archive/2009/04/01/released-a-new-codeplex-project-witsynchronizer.aspx</link><pubDate>Wed, 01 Apr 2009 06:53:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:57</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Working with many clients on ALM and development processes I am often in a situation like this: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I create a Process Template for the client and then create a Team Project based on it. The Team Project will become the &amp;quot;reference Team Project&amp;quot;, the main one for Process evolution. &lt;/li&gt;
&lt;li&gt;Then the client or I are making modifications on the existing Team Project (modify WIT, add new ones, create new WIQLs) when we want to upgrade the development process. &lt;/li&gt;
&lt;li&gt;Now it&amp;#39;s fine, but what happens when you have to start another Team Project (or you already had), and want it to be synchronized with the Work Item Types and WIQL of your &amp;quot;reference Team Project&amp;quot;? &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;It is possible, but it&amp;#39;s not as easy as it should be&amp;hellip;. You have to export the WIT and WIQL definition in local, download the Process Template, replace the WIT definition XML files, add new WIT and WIQL, references them in the WorkItems.xml and finally uploading the Process Template back to your Team Foundation Server.&lt;br /&gt;If you want to update a Team Project, the operation is less tedious, but still you have to perform the same set of tasks for each WIT and WIQL, one by one&amp;hellip; &lt;/p&gt;
&lt;p&gt;So as I don&amp;#39;t like to waste time and doing always the same thing, I decided to develop a little program, not a killer featured one, but a &lt;strong&gt;useful&lt;/strong&gt; one for the day to day maintenance of you Team Foundation Server! &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:12pt;"&gt;Here I present you: the WITSynchronizer!&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;&lt;br /&gt;I know, I&amp;#39;m still running for the &amp;quot;worst CodePlex project name ever&amp;quot; and wonder if it topped my &amp;quot;&lt;a href="http://wicreator.codeplex.com/"&gt;WICreator&lt;/a&gt;&amp;quot; one!&amp;nbsp;&lt;img src="http://loicbaumann.org/emoticons/emotion-1.gif" alt="Smile" /&gt; Well, I hope it will top it in download count!&amp;nbsp;&lt;img src="http://loicbaumann.org/emoticons/emotion-11.gif" alt="Cool" /&gt; &lt;/p&gt;
&lt;p&gt;You&amp;#39;ll find the project&amp;#39;s homepage here: &lt;a href="http://witsynchronizer.codeplex.com/"&gt;http://witsynchronizer.codeplex.com/&lt;/a&gt;.&lt;br /&gt;The first release can be found &lt;a href="http://witsynchronizer.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=25555"&gt;here&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;Don&amp;#39;t hesitate to use it and give me feedback! &lt;/p&gt;
&lt;p&gt;Here what it looks like: &lt;/p&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/040109_5F00_0658_5F00_Releasedane1.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;What feature I&amp;#39;m pretty proud about is the Unhandled Exception one! If you encounter a problem while using the program, a bug for instance &lt;span style="font-family:Wingdings;"&gt;J&lt;/span&gt;, you&amp;#39;ll have the following dialog showing up:&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/040109_5F00_0658_5F00_Releasedane2.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;With a nice link to the CodePlex Issue Tracker for you to fill a bug request! &lt;/p&gt;
&lt;p&gt;Like you, I hope there won&amp;#39;t be too many, but in case there&amp;#39;s I expect people to use for me to fix it ASAP. &lt;/p&gt;
&lt;p&gt;Enjoy it! And remember, all feedback and thanks are warmely welcome!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=57" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/WIT/default.aspx">WIT</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/WITSynchronizer/default.aspx">WITSynchronizer</category></item><item><title>A laptop that rocks for Team System!</title><link>http://loicbaumann.org/blogs/loic/archive/2009/03/27/a-laptop-that-rocks-for-team-system.aspx</link><pubDate>Fri, 27 Mar 2009 22:50:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:56</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;As I am a consultant, my best friend is the laptop I&amp;#39;m carrying all the time with me. &lt;/p&gt;
&lt;p&gt;Being a Team System consultant, it&amp;#39;s not easy to fulfill all the needs with a single laptop: &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;I have to use several VPCs: a demonstration one, a &amp;quot;development&amp;quot; one (for the tools I&amp;#39;m writing based on Team System) and the latest version of the upcoming VSTS 2010. &lt;/li&gt;
&lt;li&gt;As I am a developer, I also have Visual Studio 2008 Team Suite on the host OS. &lt;/li&gt;
&lt;li&gt;I&amp;#39;m often in a situation I have to prototype a new server, then creating a VPC from scratch and installing everything I need, the way I want. &lt;/li&gt;
&lt;li&gt;Ideally, it would be nice to be able to prototype a VLAN of servers for complex deployments. &lt;/li&gt;
&lt;li&gt;My laptop is my working computer, so all the usual stuffs (Office, etc.) have to be installed too. &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;It makes a lot of things for a small laptop! Did I mention that the limit weight I am willing to carry is 5 pounds? &lt;/p&gt;
&lt;p style="margin-left:1pt;"&gt;&lt;span style="font-size:14pt;"&gt;The standard configuration &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin-left:1pt;"&gt;As you can guess, a &amp;quot;standard&amp;quot; laptop is not suited to fulfill all these needs: it&amp;#39;s a Core 2 Duo @ 2GHz, 4Gig of Ram, 200Gig of HDD and running a Vista 32 or 64Bits. Typically you have a Dell Latitude 630 or XPS M1330 (to keep the weight accordingly). &lt;/p&gt;
&lt;p style="margin-left:1pt;"&gt;With such configuration you&amp;#39;re bound to use Virtual PC for your work. The soft is fine, but kind of limited if you want to work all the time with. It consumes a lot of resources: especially RAM and IOP (HDD read/write operation). You can make several VPC communicating each other, but it&amp;#39;s a bit tricky. One feature that I miss is the inability to create multiple snapshots of a given VPC, the undo drive a nice feature, but again, it limits you in many ways&amp;hellip; &lt;/p&gt;
&lt;p style="margin-left:1pt;"&gt;Like some people when I saw Windows 2008 Server coming out more than a year ago now, I decided to go for it to get the benefits of a real hypervisor: Hyper-V. &lt;/p&gt;
&lt;p style="margin-left:1pt;"&gt;The experience was interesting; it had some pros and cons. &lt;/p&gt;
&lt;p style="margin-left:1pt;"&gt;Pros of Hyper-V: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You can create a Virtual Network, which is necessary if you want to prototype say a TFS environment with a separated Data Tier, Application Tier and MOSS Server. &lt;/li&gt;
&lt;li&gt;You can now have the multiple snapshots features on your VM (which is not a VPC anymore by the way) you finally have the chance to roll back many steps backwards if you realize you failed in some way or if you just want to check for something. &lt;/li&gt;
&lt;li&gt;The resources among VMs are managed way better than VPC. &lt;/li&gt;
&lt;li&gt;Well, it&amp;#39;s ideal for prototyping! &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Cons of Hyper-V: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You have to have a 64 Bits Windows 2008 server, 32 Bits won&amp;#39;t work for you. The consequence is that with 4 Gig of RAM, it&amp;#39;s tighter than a 32 Bits version. &lt;/li&gt;
&lt;li&gt;Windows Server 2008 is what it&amp;#39;s being called for: a server OS, not a workstation one. Even if some tweaks can give you the feeling of a Vista you miss one crucial feature: the sleep/hibernate (very limited for a laptop). &lt;/li&gt;
&lt;li&gt;Now the biggest concern by far: your poor 2&amp;quot;5 HDD with its 17ms access time is TOTALLY killed by the high activity that is required for your work! &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So after few months of working with such configuration, I decided (like many) to roll back to Vista. &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:14pt;"&gt;A new age &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Now things have changed, the moment I was awaiting for many many months have finally arrived: I can suppress the two bottlenecks that were preventing me to use 2008 with Hyper-V which are RAM limit and HDD poor performances. &lt;/p&gt;
&lt;p&gt;With the new Dell Latitude series (E6400 for me) I can finally have a laptop with at least 6Gig of RAM (which is enough for me), and the most revolutionary thing (and I mean it) is I got rid of the poor HDD to replace it by a new OCZ Vertex 120Go SSD! &lt;/p&gt;
&lt;p&gt;And boys, I can tell you: &lt;strong&gt;it rocks deadly&lt;/strong&gt;! &lt;/p&gt;
&lt;p&gt;You can&amp;#39;t even imagine the overall improvement by just using this SSD, which is the first true generation affordable, with a good capacity and which gives you want you were looking for: fast random reads/writes, instant access time and high bandwidth! &lt;/p&gt;
&lt;p&gt;Here are some benchies just to give you a little comparison of the &amp;quot;high end 7200 RPM, 32MB Cache HDD&amp;quot; (yes it is, can&amp;#39;t have a better one for a laptop) and the OCZ Vertex: &lt;/p&gt;
&lt;div&gt;
&lt;table style="border-collapse:collapse;"&gt;


&lt;tr&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:solid #4bacc6 1.0pt;border-left:solid #4bacc6 1.0pt;border-bottom:solid #4bacc6 2.25pt;border-right:solid #4bacc6 1.0pt;"&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="font-size:14pt;"&gt;HDD 2&amp;quot;5, 7200 RPM, 32MB Cache&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:solid #4bacc6 1.0pt;border-left:none;border-bottom:solid #4bacc6 2.25pt;border-right:solid #4bacc6 1.0pt;"&gt;
&lt;p style="text-align:center;"&gt;&lt;span style="font-size:14pt;"&gt;SSD OCZ Vertex 120Go, 64MB Cache&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style="background:#d2eaf1;"&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:solid #4bacc6 1.0pt;border-bottom:solid #4bacc6 1.0pt;border-right:solid #4bacc6 1.0pt;"&gt;
&lt;p&gt;&lt;img height="270" width="359" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.02/StdHDD.jpg" alt="" /&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4bacc6 1.0pt;border-right:solid #4bacc6 1.0pt;"&gt;
&lt;p&gt;&amp;nbsp;&lt;img height="268" width="325" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.02/HD-Tune-1275-_2D00_-Random-Read.jpg" alt="" /&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:solid #4bacc6 1.0pt;border-bottom:solid #4bacc6 1.0pt;border-right:solid #4bacc6 1.0pt;"&gt;
&lt;p&gt;&lt;img height="303" width="354" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.02/Crystal-M1330-HDD.png" alt="" /&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4bacc6 1.0pt;border-right:solid #4bacc6 1.0pt;"&gt;
&lt;p&gt;&lt;img height="306" width="344" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Components.UserFiles/00.00.00.21.02/Crystal-1275.jpg" alt="" /&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;The first is HD Tune&amp;#39;s random read benchmark, just pay attention to the difference of IOP/sec between the two: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The HDD can barely handle 60 IOP/sec for small chunks and 30 for big ones. &lt;/li&gt;
&lt;li&gt;
&lt;div&gt;The Vertex can handle 8000 IOP/sec for small chunks (&lt;strong&gt;133 times more&lt;/strong&gt;) and 2000 (&lt;strong&gt;60 times more&lt;/strong&gt;) for big ones.&amp;nbsp;&amp;nbsp;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The average speed is greatly improved too. Let&amp;#39;s look at the 4KB and 64KB stats (the most important ones to me): &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;4KB chunk: 0.242 MB/sec against 23.7 MB/sec. It&amp;#39;s just almost &lt;strong&gt;100 times faster&lt;/strong&gt;! &lt;/li&gt;
&lt;li&gt;64KB chunk: 3.638 MB/sec against 120.566 MB/sec. It&amp;#39;s &lt;strong&gt;33 times faster&lt;/strong&gt;! &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The second is Crystal Disk Mark with three tests: sequential access, random 512KB operations and random 4KB operations for both read and write. The numbers speak of themselves. &lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:14pt;"&gt;Some real world random numbers and facts &lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;My Windows 2008 Server + Hyper-V and my two standards VM are booting in 80sec to desktop and the shutdown is about 30sec. (I&amp;nbsp;can survive without hibernate now)&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Outlook, Words, Excel, PowerPoint are all loading instantaneously. &lt;/li&gt;
&lt;li&gt;Visual Studio 2008 Team Suite is loading in 3 sec. &lt;/li&gt;
&lt;li&gt;I can start 3 Words, 3 Internet Explorers, 3 Excels, 3 PowerPoints and 3 Visual Studios in about 8 sec (fun stat of course). &lt;/li&gt;
&lt;li&gt;I can create a VM of a Windows Server 2008 Enterprise in 12 Min from scratch. &lt;/li&gt;
&lt;li&gt;I can create three VMs (simultaneously) of the same Win2K8 as above in a total of 15min (yep, 3 min more to get the triple!). &lt;/li&gt;
&lt;li&gt;The output window of Visual Studio is slowing down the compilation of my programs&amp;hellip; &lt;span style="font-family:Wingdings;"&gt;L&lt;/span&gt; &lt;/li&gt;
&lt;li&gt;I can finally work with Outlook, Office, Visual Studio all running with several VMs in background with &lt;strong&gt;no slow down at all&lt;/strong&gt;! &lt;/li&gt;
&lt;li&gt;One VM of 1GB of RAM starts in less than 5 sec, it&amp;#39;s saved in about 7 sec. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Told you, a new era has arrived, and I&amp;#39;m enjoying it big time! &lt;span style="font-family:Wingdings;"&gt;J&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=56" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/SSD/default.aspx">SSD</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Hardware/default.aspx">Hardware</category></item><item><title>News about very old stuffs</title><link>http://loicbaumann.org/blogs/loic/archive/2009/02/24/news-about-very-old-stuffs.aspx</link><pubDate>Tue, 24 Feb 2009 17:20:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:55</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Well, it&amp;#39;s been a long time that I didn&amp;#39;t post a message.&lt;br /&gt;There were many reasons to that, one of them was undergoing surgery of my right shoulder and then being out for more than 2 months.&lt;/p&gt;
&lt;p&gt;So let&amp;#39;s make some new with old stuffs.&lt;/p&gt;
&lt;p&gt;Back in 2004, when I was young and working in the real-time 3D industry, I wrote a little renderer using (at that time) a new technique call &amp;quot;Deferred Shading&amp;quot;.&lt;/p&gt;
&lt;p&gt;This technique was only possible in real-time with the new Shader Model 3 of DirectX 9 and the new nVidia 6800 GT card, and I just had both in beta version...&lt;/p&gt;
&lt;p&gt;So working on &amp;quot;boring stuffs&amp;quot; (i.e. 3D Engine, content editing tools, ALM, and so on...) for 4 years, I decided to take a break and start working on something exciting, at a real fast pace (something like 16 hours of coding a day)!&lt;/p&gt;
&lt;p&gt;I kept a little &amp;quot;diary&amp;quot; (no blog these days), and I decided to put it back on this blog, for everybody to see the result and enjoy a little &amp;quot;appart&amp;eacute;&amp;quot;...&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t remember having coded with so much productivity in my whole life, and the result surpassed all my expectation.&lt;/p&gt;
&lt;p&gt;It was one of the first Deferred Shading renderer out-there (working correctly!), and nowadays most of the games are using this technique!&lt;/p&gt;
&lt;p&gt;It happened to be my last &amp;quot;little stone&amp;quot; for the gaming industry, because I totally changed my professional direction few months later.&lt;/p&gt;
&lt;p&gt;Enjoy the reading and more importantly: the screenshots!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.com/blogs/loic/archive/2004/07.aspx" title="July 2004" class="null"&gt;Posts of July 2004&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.com/blogs/loic/archive/2004/08.aspx" title="August 2004" class="null"&gt;Posts of August 2004&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.com/blogs/loic/archive/2004/10.aspx" title="October 2004" class="null"&gt;Last post: October 2004&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;PS: for each link you have to read from the bottom to the top!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=55" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/SM3Renderer/default.aspx">SM3Renderer</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/DirectX/default.aspx">DirectX</category></item><item><title>Article MSDN sur les Work Items avec VSTS 2010</title><link>http://loicbaumann.org/blogs/loic/archive/2009/02/21/article-msdn-sur-les-work-items-avec-vsts-2010.aspx</link><pubDate>Sun, 22 Feb 2009 01:10:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:61</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;On prend les m&amp;ecirc;mes et on recommence!&amp;nbsp;&lt;img src="http://loicbaumann.org/emoticons/emotion-1.gif" alt="Smile" /&gt; &lt;/p&gt;
&lt;p&gt;Apr&amp;egrave;s avoir r&amp;eacute;alis&amp;eacute; une petite s&amp;eacute;rie de posts en Anglais sur les Work Item avec la CTP d&amp;#39;Octobre de Visual Studio Team System 2010, j&amp;#39;ai d&amp;eacute;cid&amp;eacute; de pousser un peu plus loin mes recherches afin de r&amp;eacute;diger un nouvel article pour la MSDN France&amp;nbsp;! &lt;/p&gt;
&lt;p&gt;L&amp;#39;article est disponible sur ce &lt;a href="http://msdn.microsoft.com/fr-fr/msdn.vsts10.work.items.aspx"&gt;lien&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;Je remercie encore une fois Eric Le Loc&amp;#39;h de Microsoft France pour son aide&amp;nbsp;! &lt;/p&gt;
&lt;p&gt;Un petit teaser&amp;nbsp;: &lt;/p&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/040209_5F00_1314_5F00_ArticleMSDN1.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/040209_5F00_1314_5F00_ArticleMSDN2.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/040209_5F00_1314_5F00_ArticleMSDN3.png" alt="" /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=61" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Oct2008CTP/default.aspx">Oct2008CTP</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Rosario/default.aspx">Rosario</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/FR/default.aspx">FR</category></item><item><title>Article sur l’ALM pour IT Expert</title><link>http://loicbaumann.org/blogs/loic/archive/2008/12/04/article-sur-l-alm-pour-it-expert.aspx</link><pubDate>Thu, 04 Dec 2008 14:46:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:63</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Le magazine en ligne IT Expert (N&amp;deg; 76) vient de publier un article sur l&amp;#39;ALM (Application Lifecycle Management) que j&amp;#39;ai co&amp;eacute;crit avec Eric Le Loc&amp;#39;h de Microsoft France. &lt;/p&gt;
&lt;p&gt;Cet article est une introduction &amp;agrave; l&amp;#39;industrialisation des d&amp;eacute;veloppements.&amp;nbsp;Il pr&amp;eacute;sente aussi comment&amp;nbsp;ces&amp;nbsp;m&amp;eacute;thodes sont utilis&amp;eacute;es&amp;nbsp;par les &amp;eacute;quipes de Microsoft. &lt;/p&gt;
&lt;p&gt;Le&amp;nbsp;lien vers cet &lt;a href="http://www.it-expertise.com/Rubriques/Default.aspx?cat=2"&gt;article&lt;/a&gt;. Choisissez le N&amp;deg; 76. &lt;/p&gt;
&lt;p&gt;Bonne lecture&amp;nbsp;! &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=63" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/FR/default.aspx">FR</category></item><item><title>Article MSDN sur la gestion de configuration avec VSTS 2010</title><link>http://loicbaumann.org/blogs/loic/archive/2008/11/15/article-msdn-sur-la-gestion-de-configuration-avec-vsts-2010.aspx</link><pubDate>Sun, 16 Nov 2008 00:02:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:60</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Apr&amp;egrave;s avoir r&amp;eacute;alis&amp;eacute; une s&amp;eacute;rie de posts en Anglais sur la gestion de configuration avec la CTP d&amp;#39;Octobre de Visual Studio Team System 2010, j&amp;#39;en ai profit&amp;eacute; pour traduire le tout en Fran&amp;ccedil;ais pour la MSDN France. &lt;/p&gt;
&lt;p&gt;Vous trouverez donc ce nouvel article &lt;a href="http://msdn.microsoft.com/fr-fr/vstudio/dd285367.aspx"&gt;ici&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;Un grand merci &amp;agrave; Eric Le Loc&amp;#39;h de Microsoft France pour son aide&amp;nbsp;! &lt;/p&gt;
&lt;p&gt;Un petit teaser&amp;nbsp;: &lt;/p&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/040209_5F00_1306_5F00_ArticleMSDN1.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/040209_5F00_1306_5F00_ArticleMSDN2.png" alt="" /&gt; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=60" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Oct2008CTP/default.aspx">Oct2008CTP</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Rosario/default.aspx">Rosario</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/FR/default.aspx">FR</category></item><item><title>VSTS2010 CTP11: Work Items – Part 1</title><link>http://loicbaumann.org/blogs/loic/archive/2008/11/13/vsts2010-ctp11-work-items-part-1.aspx</link><pubDate>Thu, 13 Nov 2008 13:50:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:40</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;As I said in the &lt;a href="http://loicbaumann.org/blogs/loic/archive/2008/11/10/vsts2010-ctp11-work-items-preamble.aspx"&gt;previous post&lt;/a&gt;, the Work Item feature of the current version of TFS is already great, but everybody knows there&amp;#39;s room for improvement. &lt;/p&gt;
&lt;p&gt;So far, here are the pros and cons I see in the current state. &lt;/p&gt;
&lt;h2&gt;Pros &lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Integrated in the Development Environment as well as Web Client: developers, PMs and stakeholders can all have access to them. &lt;/li&gt;
&lt;li&gt;Can be linked to code: the code is no longer the referential or entry point of you evolution and fixes. &lt;/li&gt;
&lt;li&gt;Highly extensible and customizable: you make them fit YOUR process and not the opposite. &lt;/li&gt;
&lt;li&gt;User friendly: it&amp;#39;s always better for a quick adoption because the learning curve is really smooth. &lt;/li&gt;
&lt;li&gt;Traceability of changes: for CMMI lovers (or slaves!?). &lt;/li&gt;
&lt;li&gt;Workflow based: simple but there&amp;#39;s no such things on Words for instance. &lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Cons &lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;The linking system is too limited concerning Work Items: all you can do is create an unversioned, two ways link between two Work Items. &lt;/li&gt;
&lt;li&gt;No MS Project Server integration. &lt;/li&gt;
&lt;li&gt;Rich editing too limited to store high level information. &lt;/li&gt;
&lt;li&gt;The Query system is good, but it&amp;#39;s hard to get a good visibility when you have a lots of Work Item, issue mostly due to the first stated one. &lt;/li&gt;
&lt;li&gt;Lacks some automation between them: for instance it could be nice to automatically &amp;quot;activate&amp;quot; a Code Review Work Item when a given Task is ready to be reviewed in order to notify automatically the reviewer. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Most of the feedback I had from PMs and Lead developers was that Work Items was great, but it was hard to have a clear global view of what was going on and maintaining everything to keep it synced was a costly task. In other words: &amp;quot;one by one it&amp;#39;s great, but when we have a bunch of them, it&amp;#39;s harder and we are lost!&amp;quot; &lt;/p&gt;
&lt;p&gt;I honestly don&amp;#39;t know if this is an issue a lot of users have or not. If I speak for myself, I always tried to make the Work Items a &amp;quot;Project database/view&amp;quot; of the developments, organized the same way as MS Project but with all the features the Work Items can offer and it wasn&amp;#39;t really possible. &lt;/p&gt;
&lt;p&gt;I know you can use them from Project, most companies/team I&amp;#39;ve seen were working with Project Server, with many MS Projects for one Team Project, and Resources spread across multiple projects. Well, something you can&amp;#39;t achieve with the current state of things. &lt;/p&gt;
&lt;p&gt;Ok, so let&amp;#39;s finally start with concrete stuffs! &lt;img src="http://loicbaumann.org/emoticons/emotion-2.gif" alt="Big Smile" /&gt; &lt;/p&gt;
&lt;p&gt;So what&amp;#39;s new now? Many things including: Link types, typed link view control (in the Work Item Form), queries using links, hierarchical representation, etc. &lt;/p&gt;
&lt;h2&gt;The new link system &lt;/h2&gt;
&lt;p&gt;Finally, something that many people waited for is arriving, a real linking system for Work Item. I wished I had it for the 2005 version then I wouldn&amp;#39;t have to write &lt;a href="http://www.codeplex.com/wicreator"&gt;that&lt;/a&gt;&amp;hellip; &lt;/p&gt;
&lt;p&gt;As stated above, the current version of TFS have a simple linking system, all you can do is link a Work Item 100 to another one, say 90 (then 90 references 100). A link will be created, it won&amp;#39;t appear in the history (because it&amp;#39;s not versioned) and finally your Work Item 90 will automatically be linked to the 100 too (100 will reference 90)! If you go looking in the databases of TFS, you quickly understand why it&amp;#39;s done that way&amp;hellip; &lt;/p&gt;
&lt;p&gt;When before you only have one choice to link together two Work Items, you now have infinity of choices through the creation of your own Work Item Link Types. &lt;/p&gt;
&lt;p&gt;Of course, there&amp;#39;s already some predefined ones, let&amp;#39;s summarize them briefly. &lt;/p&gt;
&lt;div&gt;
&lt;table style="border-collapse:collapse;"&gt;


&lt;tr&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:solid #4f81bd 1.0pt;border-left:solid #4f81bd 1.0pt;border-bottom:solid #4f81bd 2.25pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Reference Name&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:solid #4f81bd 1.0pt;border-left:none;border-bottom:solid #4f81bd 2.25pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Friendly Name&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:solid #4f81bd 1.0pt;border-left:none;border-bottom:solid #4f81bd 2.25pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Forward Name&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:solid #4f81bd 1.0pt;border-left:none;border-bottom:solid #4f81bd 2.25pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Reverse Name&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:solid #4f81bd 1.0pt;border-left:none;border-bottom:solid #4f81bd 2.25pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Description&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style="background:#d3dfee;"&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:solid #4f81bd 1.0pt;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;&lt;strong&gt;System.LinkTypes.Related&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Related&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Related&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Related&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Bidirectional link of two Work Items. Pretty much the same behavior as the current link type.&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:solid #4f81bd 1.0pt;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;&lt;strong&gt;System.LinkTypes.Hierarchy&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Hierarchy&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Child&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Parent&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Create hierarchy between Work Items through the Parent/Child relationship. &lt;/p&gt;
&lt;p&gt;Note that children are unordered.&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style="background:#d3dfee;"&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:solid #4f81bd 1.0pt;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;&lt;strong&gt;System.LinkTypes.Dependency&lt;/strong&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Dependency&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Successor&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Predecessor&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="padding-left:7px;padding-right:7px;border-top:none;border-left:none;border-bottom:solid #4f81bd 1.0pt;border-right:solid #4f81bd 1.0pt;"&gt;
&lt;p&gt;Create a dependency between two Work Items through a Predecessor/Successor relationship. &lt;/p&gt;
&lt;p&gt;You typically have to fulfill the Predecessor before working on the Successor&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;&lt;br /&gt;These are the three system types defined so far. If you look deeper, you will find in both Agile and CMMI process templates a definition of a custom link type: &lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Lucida Console;"&gt;&amp;lt;LinkTypes&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;LinkType ReferenceName=&amp;quot;Microsoft.VSTS.Common.TestedBy&amp;quot; ForwardName=&amp;quot;Tested By&amp;quot; ReverseName=&amp;quot;Tests&amp;quot; Topology=&amp;quot;Dependency&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;/LinkTypes&amp;gt; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;The attributes speak of themselves&amp;hellip; &lt;/p&gt;
&lt;h2&gt;The Links Control &lt;/h2&gt;
&lt;p&gt;Speaking of Link Types, how do we link Work Items together now? Well, there&amp;#39;s a new Work Item Link Control named &amp;quot;LinksControl&amp;quot;.&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/111308_5F00_1350_5F00_VSTS2010CTP1.png" alt="" /&gt;&lt;br /&gt;Among its new particularities: &lt;/p&gt;
&lt;ul style="margin-left:53pt;"&gt;
&lt;li&gt;You can have more than one of these controls in your Work Item Type definition. &lt;/li&gt;
&lt;li&gt;The control will display links based on a preconfigured filter (still declared in the WIT definition). &lt;/li&gt;
&lt;li&gt;You can create a WIQL (Work Item Query Language) from its content. This one may looks not much useful at first, but as far as I saw, only direct links are displayed in the Links Control, which can be very limited concerning viewing the hierarchy. We&amp;#39;ll see later than converting to a WIQL can solve this issue easily. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There&amp;#39;s also a new dialog to create a link: &lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/111308_5F00_1350_5F00_VSTS2010CTP2.png" alt="" /&gt;&lt;br /&gt;You can see in the dropdown all the types of links you can create, it should fulfill the needs of almost every projects, don&amp;#39;t you think? &lt;img src="http://loicbaumann.org/emoticons/emotion-1.gif" alt="Smile" /&gt; &lt;/p&gt;
&lt;h2&gt;Using Hierarchy &lt;/h2&gt;
&lt;p&gt;Ok, I will create three Work Items: a Requirement, a Change Request and a Task, linked all together.&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/WIs.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Looking in the Links control of the Requirement, we can see only the Change Request work item, as suspected only direct children are displayed.&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/LinksControl.jpg" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;So what can we do if we want to display the full hierarchy? Apparently the only way is to use the Queries.&lt;br /&gt;Let&amp;#39;s try that quickly! &lt;/p&gt;
&lt;p&gt;First we create a Query from the Work Item by clicking on the &lt;strong&gt;View As Query&lt;/strong&gt; button from the Links toolbar:&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/111308_5F00_1350_5F00_VSTS2010CTP5.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;The result is not quite what we expected:&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/111308_5F00_1350_5F00_VSTS2010CTP6.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;The query still shows only two Work Items, and not the child of the 336 one. &lt;/p&gt;
&lt;p&gt;If we click on the &lt;strong&gt;Edit Query&lt;/strong&gt; button on the Query Window toolbar, we will maybe able to tweak things.&lt;br /&gt;Here is the top part of the Query Editor Window&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/111308_5F00_1350_5F00_VSTS2010CTP7.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;Sounds like the &lt;strong&gt;Type of Query&lt;/strong&gt; being &lt;strong&gt;Work Items and Direct Links&lt;/strong&gt; is the reason why we can&amp;#39;t see more.&lt;br /&gt;The different choices available are:&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/111308_5F00_1350_5F00_VSTS2010CTP8.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;I guess the last choice is the good one! So I change my type of query to &lt;strong&gt;Tree of Work Items&lt;/strong&gt; and refresh my query.&lt;br /&gt;After saving the query, the displayed result is what one would expect:&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/111308_5F00_1350_5F00_VSTS2010CTP9.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;Finally I have my full hierarchy displayed, great! &lt;/p&gt;
&lt;p&gt;Now look a bit closer to the four little buttons I highlighted in read, using the first one will change the layout of your query window to a more explorer friendly one:&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/111308_5F00_1350_5F00_VSTS2010CTP10.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;The result is pretty cool, but you better have a wide screen to get all the information you need. Using a grid to display hierarchical information has the inconvenient to take a lot of space. &lt;/p&gt;
&lt;p&gt;To conclude, I think the hierarchy will be useable for real life projects, and that&amp;#39;s the most important thing!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=40" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Oct2008CTP/default.aspx">Oct2008CTP</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Rosario/default.aspx">Rosario</category></item><item><title>VSTS2010 CTP11: Work Items – Preamble</title><link>http://loicbaumann.org/blogs/loic/archive/2008/11/10/vsts2010-ctp11-work-items-preamble.aspx</link><pubDate>Mon, 10 Nov 2008 12:39:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:39</guid><dc:creator>loicbaumann</dc:creator><slash:comments>2</slash:comments><description>&lt;p&gt;I continue my journey on the evaluation of the latest CTP of Visual Studio 2010 (formally known as Rosario), now is the time to play with one of my favorites part of TFS: the Work Items. &lt;/p&gt;
&lt;p&gt;I can really say that the Work Items were for me the main reason I start evangelizing Team System in its early days. I really saw into them the possibility (finally!) to gather all information about a project development into one unique repository, and let people from any kind of role access to them.&lt;br /&gt;I know this is not totally the case, but it tends to be more and more at each release of the ALM platform. &lt;/p&gt;
&lt;p&gt;I&amp;#39;ve seen a lot of projects managed with many tools, with the same information found multiple times across them, with people having to move it or synchronize it from one to another. Working this way has a cost and is risky too, and I have suffered from these many times. &lt;/p&gt;
&lt;p&gt;So Work Items were for me the light for better days coming, nothing can be perfect at first, but I was a strong believer they will fill all the needs through time: what I saw was great, the potential was there, and well, it&amp;#39;s built by Microsoft and we were already pretty surrounded by Microsoft software, it can only help! &lt;img src="http://loicbaumann.org/emoticons/emotion-2.gif" alt="Big Smile" /&gt;&lt;/p&gt;
&lt;p&gt;Nowadays in projects, Work Items don&amp;#39;t store everything. The reason behind that is a mix of technical limitations and the fact that the team is not prone to change its way of working.&lt;br /&gt;For these reason, they were most of the time introduced to contribute to a limited part of the process, coexisting around already long time adopted software, trying to steal data from them!&amp;nbsp;&lt;img src="http://loicbaumann.org/emoticons/emotion-1.gif" alt="Smile" /&gt; &lt;/p&gt;
&lt;p&gt;With TFS 2005 and 2008, I intend to use the Work Items when the following criteria are met: &lt;/p&gt;
&lt;ul style="margin-left:53pt;"&gt;
&lt;li&gt;Need a workflow, potentially involving many people. &lt;/li&gt;
&lt;li&gt;Need for traceability of the information. &lt;/li&gt;
&lt;li&gt;Need to link the information with the code. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In practice, I ended most of the time using Work Items in these scenarios: &lt;/p&gt;
&lt;ol style="margin-left:53pt;"&gt;
&lt;li&gt;Task driven development, with an optional Code Review. &lt;/li&gt;
&lt;li&gt;Previous scenario plus defect tracking and change management. &lt;/li&gt;
&lt;li&gt;Previous scenario plus risk and issue management. &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Depending on the teams and projects, these different scenarios were using Work Items to take care of different things. Take the Task one for instance: it could handle Triage, Work Partitioning, Planning, Time Tracking, Scoping (through Iteration and Area Path), etc. The task could be interoperating with MS Project for Planning and Time Tracking if the team used the software. &lt;/p&gt;
&lt;p&gt;I of course tried to use Work Item for &amp;quot;everything&amp;quot;, considering that having relationship and full traceability between Requirement, Specification, Design, Development, Review, Testing and Code would be, well, nice! &lt;/p&gt;
&lt;p&gt;For instance, storing requirements and specifications in Words document won&amp;#39;t give you traceability matrices, a good management of history, and won&amp;#39;t be a part of the common repository for project information (i.e. the Work Item Store), etc. Every change leads to human actions to update the related artifacts, this is error prone, and time consuming, in other words: not good ! &lt;/p&gt;
&lt;p&gt;So it would have been nice to use Work Items to store those information decomposed at a very small level, to have the possibility to build a traceability matrix that warns you of broken/out-of-data specs when requirements change. &lt;/p&gt;
&lt;p&gt;So, this preamble is meant to explain what I expected from Work Items, how I use them (because I don&amp;#39;t think there&amp;#39;s only one way to use them).&lt;br /&gt;The following posts will be in depth evaluation of the news features, and we&amp;#39;ll see if Work Items can solve problems we had, do more things than before. &lt;/p&gt;
&lt;p&gt;Stay tuned! &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=39" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Oct2008CTP/default.aspx">Oct2008CTP</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Rosario/default.aspx">Rosario</category></item><item><title>VSTS2010 CTP11 and Shelves</title><link>http://loicbaumann.org/blogs/loic/archive/2008/11/07/vsts2010-ctp11-and-shelves.aspx</link><pubDate>Fri, 07 Nov 2008 15:09:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:38</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The Shelve concept was introduced in Team System in the very first release and it was immediately a success: a demo killer feature and an everyday handy one too!&lt;br /&gt;The concept is simple, and the implementation (I guess) doesn&amp;#39;t seem complicated either, and yet the feature fills a need we always had. &lt;/p&gt;
&lt;p&gt;But if the concept is great, there are some features we miss: &lt;/p&gt;
&lt;ul style="margin-left:53pt;"&gt;
&lt;li&gt;Not being able to unshelve a file that is currently in pending changes (possible with the PowerTools though). &lt;/li&gt;
&lt;li&gt;Not being able to unshelve to a different location (possible with PowerTools thought). &lt;/li&gt;
&lt;li&gt;Pending changes resulting from a ShevelSet behaves exactly the same as for a ChangeSet, and it&amp;#39;s problematic when there&amp;#39;re locks (can&amp;#39;t unshelve a given ShelveSet twice). &lt;/li&gt;
&lt;li&gt;Security on a ShevelSet, they are visible to anyone, it would have been nice to create some &amp;quot;private&amp;quot; ShelveSet or set permission on a given one (e.g. useful for code review). &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The first two features are possible using the command line TFPT.EXE program, but it would be nice to have it within Team Explorer. &lt;/p&gt;
&lt;p&gt;So, let&amp;#39;s check if there&amp;#39;s some improvement with the latest CTP. &lt;/p&gt;
&lt;p&gt;&lt;span style="text-decoration:underline;"&gt;&lt;strong&gt;Unshelve + merge: &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Let&amp;#39;s try to unshelve files that are in pending changes:&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/110708_5F00_1509_5F00_VSTS2010CTP1.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;The result is: &lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/110708_5F00_1509_5F00_VSTS2010CTP2.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;Still the same&amp;hellip; &lt;img src="http://loicbaumann.org/emoticons/emotion-7.gif" alt="Tongue Tied" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="text-decoration:underline;"&gt;&lt;strong&gt;Unshelving to a different location: &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Unshelving to a different location from the Pending Changes window:&lt;br /&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/110708_5F00_1509_5F00_VSTS2010CTP3.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;The displayed dialog shows no possible action to change the destination of the unshelve. Again &lt;img src="http://loicbaumann.org/emoticons/emotion-7.gif" alt="Tongue Tied" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="text-decoration:underline;"&gt;&lt;strong&gt;Unshelving locked files: &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Following the scenario: &lt;/p&gt;
&lt;ul style="margin-left:53pt;"&gt;
&lt;li&gt;User TFSSETUP upload a picture, then check it out, modify it and create a shelve of it (without undoing local changes). &lt;/li&gt;
&lt;li&gt;User Darren tries to unshelve the previously created shelve, and the result is: &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/110708_5F00_1509_5F00_VSTS2010CTP4.png" alt="" /&gt; &lt;/p&gt;
&lt;p&gt;&lt;img src="http://loicbaumann.org/emoticons/emotion-7.gif" alt="Tongue Tied" /&gt; again. &lt;/p&gt;
&lt;p&gt;&lt;span style="text-decoration:underline;"&gt;&lt;strong&gt;Security on ShelveSet: &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Nothing closed from what I wished was implemented, seems there was no evolution on that part too&amp;hellip; &lt;img src="http://loicbaumann.org/emoticons/emotion-7.gif" alt="Tongue Tied" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="text-decoration:underline;"&gt;&lt;strong&gt;Conclusion &lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Well, I guess you already know what the conclusion is: no evolution on the Shelve. This is a bit disappointing.&lt;br /&gt;But I do hope the Power Tools features will be included in Team Explorer in the RTM. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=38" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Oct2008CTP/default.aspx">Oct2008CTP</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Rosario/default.aspx">Rosario</category></item><item><title>VSTS2010 CTP11: A bit of history…</title><link>http://loicbaumann.org/blogs/loic/archive/2008/11/04/a-bit-of-history.aspx</link><pubDate>Tue, 04 Nov 2008 22:02:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:36</guid><dc:creator>loicbaumann</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;Hi again, &lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m still working through the Source Control of the October CTP of Visual Studio 2010.&lt;br /&gt;I guess now is the time to see if there are improvements concerning versioning. &lt;/p&gt;
&lt;p&gt;I&amp;rsquo;m still working on the multi branches Team Project I created in previous posts.&lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s see the history on the &lt;b&gt;Form1.Designer.cs&lt;/b&gt; file of the version 2.0 of the test project.&lt;br /&gt;First we select &lt;b&gt;History&lt;/b&gt; from the Source Control Explorer on that file:&lt;br /&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image004_5F00_2.jpg"&gt;&lt;img height="362" width="644" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image004_5F00_thumb.jpg" alt="clip_image004" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Then, here is the result, fully expanded:&lt;br /&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image006_5F00_2.jpg"&gt;&lt;img height="168" width="644" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image006_5F00_thumb.jpg" alt="clip_image006" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Wow, it doesn&amp;rsquo;t look like the previous versions! This display is just powerful! One of those I was waiting for so long! As you will quickly notice, there&amp;rsquo;s the history of our version 2.0 file, but also the changesets related in other branches.&lt;br /&gt;The indentation level gives you quick information about which branch the changeset belongs to: &lt;/p&gt;
&lt;p&gt;- The first level being the branch of the file you&amp;rsquo;re viewing history of. &lt;/p&gt;
&lt;p&gt;- The second one being directly related branches (for the V2.0 it can only be &lt;b&gt;Main&lt;/b&gt;). &lt;/p&gt;
&lt;p&gt;- Subsequent levels are following the hierarchy between branches, naturally&amp;hellip; &lt;/p&gt;
&lt;p&gt;For those who were complaining about not be able to see history through branches, now I guess you are served well! &lt;/p&gt;
&lt;p&gt;One quick remark: the History window is now a View Document of Visual Studio, you will have one Window opened per request, is it a good/bad thing, I think it&amp;rsquo;s a matter of taste. &lt;/p&gt;
&lt;p&gt;Now let&amp;rsquo;s look a bit closer to the new toolbar in that History window, there are some icons we already know, others that are brand new.&lt;br /&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image008_5F00_2.jpg"&gt;&lt;img height="28" width="178" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image008_5F00_thumb.jpg" alt="clip_image008" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;middot; The first is to view the file of the selected changeset. &lt;/p&gt;
&lt;p&gt;&amp;middot; The second will display the details of the changeset. &lt;/p&gt;
&lt;p&gt;&amp;middot; The third and fourth are used to compare files and folders. &lt;/p&gt;
&lt;p&gt;&amp;middot; The fifth is the now famous Annotate feature. &lt;/p&gt;
&lt;p&gt;&amp;middot; The sixth is brand new, called &lt;b&gt;Track Changeset&lt;/b&gt;. &lt;/p&gt;
&lt;p&gt;&amp;middot; The last one is used to get in the current Workspace the version of the selected changeset. &lt;/p&gt;
&lt;p&gt;Now let&amp;rsquo;s get back to the &lt;b&gt;Track Changeset&lt;/b&gt; button, it smells good, let&amp;rsquo;s see&amp;hellip;&lt;br /&gt;I select the changeset 61, and click on that button. A new dialog appears, asking me to select the branches I&amp;rsquo;m interested to view information about.&lt;br /&gt;Let&amp;rsquo;s make it this way: &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image010_5F00_2.jpg"&gt;&lt;img height="400" width="448" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image010_5F00_thumb.jpg" alt="clip_image010" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image012_5F00_2.jpg"&gt;&lt;img height="396" width="448" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image012_5F00_thumb.jpg" alt="clip_image012" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;The result is awesome (if you don&amp;rsquo;t judge the colors used):&lt;br /&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image014_5F00_2.jpg"&gt;&lt;img height="203" width="644" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image014_5F00_thumb.jpg" alt="clip_image014" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;What we have is a graphical representation of the flow of a changeset through branches. In this particular case you can see that changeset 61 is the result of a merge from CS 60 and is the source of a merge to version 2.0 that leads to CS 62. And of course you have full traceability for previous changeset. You can see that both CS 58 and 59 lead to CS 60 (remember the multiple &amp;ldquo;cherry pick&amp;rdquo; merges with only one check-in I did in a previous post?). &lt;/p&gt;
&lt;p&gt;This window is mainly a graphical representation, but that&amp;rsquo;s not it, one of the killer demo-feature is you can drag and drop a given changeset from its branch to another one to initiate a merging operation. I don&amp;rsquo;t know if it will be used a lot, but the feature is just so cool! &lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s another representation of the changeset tracking history: the hierarchical representation. Here is what you get in this case: &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image016_5F00_2.jpg"&gt;&lt;img height="280" width="322" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image016_5F00_thumb.jpg" alt="clip_image016" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The flow is still very well represented, giving you an idea of what went on. &lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s another feature I won&amp;rsquo;t cover which seems to display the labels related to changesets shown in history, another thing we missed for so long. &lt;/p&gt;
&lt;p&gt;All in all the improvements here are good contributions to the Source Control part of Team System, you may find some enhancements as &lt;i&gt;nice to have&lt;/i&gt; but working on large scale projects&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=36" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Oct2008CTP/default.aspx">Oct2008CTP</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Rosario/default.aspx">Rosario</category></item><item><title>VSTS2010 CTP11: Source Control – Branching management – Part 2</title><link>http://loicbaumann.org/blogs/loic/archive/2008/11/03/source-control-branching-management-part-2.aspx</link><pubDate>Mon, 03 Nov 2008 22:22:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:35</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hi all, I&amp;rsquo;m still going through the Branch system of the Source Control. We saw in the previous post that the branch feature evolved from the previous versions.&lt;br /&gt;There&amp;rsquo;s a new restriction where you can&amp;rsquo;t create a branch that is inside its parent branch. I used to consider that case as a valid one, well, not a bad practice at least. &lt;/p&gt;
&lt;p&gt;The next test I did was creating many branches to simulate a &lt;b&gt;Main&lt;/b&gt; branch and many version of the product. The branching model used was intentional, I know it was not the best way to go in previous version, so I wanted to see if there was some improvement out there. &lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s a new good feature now to visualize the relationship between branches, select the branch, right-click on it, and choose the &lt;b&gt;View Hierarchy&lt;/b&gt; menu item. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_8.png"&gt;&lt;img height="253" width="536" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_3.png" alt="image" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;And you now have what you&amp;rsquo;ve expected for so long! :) &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_10.png"&gt;&lt;img height="220" width="434" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_4.png" alt="image" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;A graphical representation of your branches! &lt;/p&gt;
&lt;p&gt;As you can see on the previous picture, we have many branches, all deriving from &lt;b&gt;Main&lt;/b&gt;, the &lt;b&gt;Version_1_5&lt;/b&gt; is itself derived from &lt;b&gt;Version_1_0&lt;/b&gt;.&lt;br /&gt;The purple color is the branch from which you created the graph. And the cyan one is the currently selected one. &lt;/p&gt;
&lt;p&gt;By right clicking from the &lt;b&gt;Version_2_0&lt;/b&gt; branch you have all the possible actions &amp;ldquo;branch-wise&amp;rdquo;.&lt;br /&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_12.png"&gt;&lt;img height="270" width="470" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_5.png" alt="image" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;For instance, the &lt;b&gt;Merge&amp;hellip;&lt;/b&gt; operation will propose you to merge from the 2.0 version back to the main one. &lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s a case I was particularly interested: merging two branches not directly related. In this case it would be merging &lt;b&gt;Main&lt;/b&gt; and &lt;b&gt;Version_1_5&lt;/b&gt;. This was not supported in previous versions of Team System, and I always thought it was a great miss. So here we go, let&amp;rsquo;s try it for now: &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_14.png"&gt;&lt;img height="484" width="580" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_6.png" alt="image" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Oops, looks like it&amp;rsquo;s still the same as before. The only choice I have is to merge back to the version 1.0, which is the direct parent branch.&lt;br /&gt;I guess I have to ask MSFT people if it will stay the same in the final release&amp;hellip; &lt;a href="http://social.msdn.microsoft.com/Forums/en-US/vstsrosario/thread/8c732515-0eef-4222-97a0-36d4f85a6ccb"&gt;Thread on the Rosario forum&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Ok now let&amp;rsquo;s try some merge. I have made some modification on the version 1.5 and 2.0 of the application. What I&amp;rsquo;m going to do is merge the changes from 1.5 to 2.0.&lt;br /&gt;In the current state, I have two choices: &lt;/p&gt;
&lt;p&gt;1) Baseless merge, which is not really a merge, as I would have to take care of everything manually. &lt;/p&gt;
&lt;p&gt;2) Merging 1.5 back to 1.0, then to Main then to 2.0. &lt;/p&gt;
&lt;p&gt;Let&amp;rsquo;s take the second case, it&amp;rsquo;s more interesting. &lt;/p&gt;
&lt;p&gt;First it&amp;rsquo;s a good opportunity to test a feature I really missed in previous versions: being able to accumulate merges and check everything in just once. &lt;/p&gt;
&lt;p&gt;Using the &lt;a href="http://www.codeplex.com/wicreator"&gt;WICreator&lt;/a&gt;, I use Work Items to drive the merges, then the purpose of the program is to take all the changesets referenced by a given Work Item that are candidates to the merge (i.e. they are from the source branch and they were not already merged to the destination one) and merge them to the destination branch.&lt;br /&gt;What I would have liked to do is multiple &amp;ldquo;cherry pick&amp;rdquo; merging operations, and then create only one resulting changeset (aggregate all the changes into one changeset is always better, don&amp;rsquo;t you think?) by check-in them all at once.&lt;br /&gt;Unfortunately, we can&amp;rsquo;t merge to a file that is in pending changes with the current versions of Team System, leaving me no other choice that perform cyclic merge/check-in operations. &lt;/p&gt;
&lt;p&gt;So to test this new feature, I have two changesets having a file in common that I want to merge from the 1.5 version back to 1.0.&lt;/p&gt;
&lt;table cellpadding="2" cellspacing="0"&gt;

&lt;tr&gt;
&lt;td&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image002_5F00_2.jpg"&gt;&lt;img height="174" width="244" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image002_5F00_thumb.jpg" alt="clip_image002" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image002_5B00_4_5D002E00_jpg"&gt;&lt;img height="174" width="244" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/clip_5F00_image002_5B00_4_5D005F00_thumb.jpg" alt="clip_image002[4]" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;p&gt;Let&amp;rsquo;s use the Merge operation: &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_16.png"&gt;&lt;img height="484" width="580" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_7.png" alt="image" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_18.png"&gt;&lt;img height="484" width="580" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_8.png" alt="image" border="0" style="border-right:0px;border-top:0px;border-left:0px;border-bottom:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Note above that both changesets are selected. &lt;/p&gt;
&lt;p&gt;And the result is?&lt;br /&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_2.png"&gt;&lt;img height="170" width="644" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb.png" alt="image" border="0" style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Yey, it worked! &lt;/p&gt;
&lt;p&gt;After playing a little more, I realized that you can merge to a file that is in pending changes of type &amp;ldquo;editing&amp;rdquo; or &amp;ldquo;encoding&amp;rdquo;. This is understandable, except if you want to make what I just did in two separated steps: you can&amp;rsquo;t!&lt;br /&gt;Because the result of the first merge will put the &amp;ldquo;Form1.Designer.cs&amp;rdquo; file in &amp;ldquo;merge&amp;rdquo; and &amp;ldquo;editing&amp;rdquo; pending changes, disallowing the second merge operation. &lt;/p&gt;
&lt;p&gt;But, I&amp;rsquo;m very happy about the new feature, I really think it&amp;rsquo;s a good one! &lt;/p&gt;
&lt;p&gt;Ok, so now let&amp;rsquo;s merge from the 1.0 to Main, then Main to 2.0. &lt;/p&gt;
&lt;p&gt;From 1.0 to main, I had no issue, everything auto-merged perfectly.&lt;br /&gt;From main to 2.0, I expected a conflict because the 2.0 had its own changes, and I wasn&amp;rsquo;t disappointed:&lt;br /&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_4.png"&gt;&lt;img height="228" width="644" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_1.png" alt="image" border="0" style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Here comes the new &amp;ldquo;Conflicts&amp;rdquo; pane in the Pending Changes window. I&amp;rsquo;m sure you know how it&amp;rsquo;s working with current versions, and I&amp;rsquo;m sure you don&amp;rsquo;t like it much.&lt;br /&gt;As you can see, now the information becomes a lot more clearer, &amp;ldquo;theirs&amp;rdquo; and &amp;ldquo;yours&amp;rdquo; are long gone (at last) and all the information about conflict is summarized in one window, helping you to make the right call.&lt;br /&gt;In this case we have two conflicting files: &amp;ldquo;Form1.cs&amp;rdquo; and &amp;ldquo;Form1.Designer.cs&amp;rdquo;. The current file to resolve is &amp;ldquo;Form1.cs&amp;rdquo;, you have now the three possible choices clearly displayed, waiting you to make the call.&lt;br /&gt;Each conflict can be resolved separately or you can apply a given operation to a multiple selection, watch this: &lt;/p&gt;
&lt;p&gt;&lt;a href="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_6.png"&gt;&lt;img height="171" width="644" src="http://loicbaumann.org/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/loic/image_5F00_thumb_5F00_2.png" alt="image" border="0" style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;I will manually merge these, and check the result in smoothly. &lt;/p&gt;
&lt;p&gt;To summarize the merging improve in many ways, meeting most of the expectations.&lt;br /&gt;Only the merge of indirectly related branches doesn&amp;#39;t seem to be supported, that&amp;#39;s still a great miss. &lt;/p&gt;
&lt;p&gt;But thumbs up for the improvements !&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=35" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Oct2008CTP/default.aspx">Oct2008CTP</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Rosario/default.aspx">Rosario</category></item><item><title>Visual Studio 2010 October CTP – Ma petite évaluation</title><link>http://loicbaumann.org/blogs/loic/archive/2008/10/29/visual-studio-2010-october-ctp-ma-petite-233-valuation.aspx</link><pubDate>Thu, 30 Oct 2008 00:54:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:59</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Bonjour &amp;agrave; tous, &lt;/p&gt;
&lt;p&gt;La nouvelle CTP d&amp;#39;Octobre de Visual Studio 2010 vient juste de sortir, je vais donc en profiter pour faire une petite s&amp;eacute;rie de post sur mon blog pour parler des nouvelles fonctionnalit&amp;eacute;s. &lt;/p&gt;
&lt;p&gt;Il y a plein de &amp;laquo;&amp;nbsp;Walkthrough&amp;nbsp;&amp;raquo; fournit avec cette CTP, je trouve ca super, mais dans ma s&amp;eacute;rie de post je m&amp;#39;efforcerais de pr&amp;eacute;senter les nouvelles fonctionnalit&amp;eacute;s en me basant sur ma propre exp&amp;eacute;rience d&amp;#39;utilisation de l&amp;#39;application. &lt;/p&gt;
&lt;p&gt;Pourquoi, les raisons ne manquent pas&amp;nbsp;: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ca ne sert &amp;agrave; pas grand-chose de blogger sur ces Walkthrough, d&amp;#39;autres vont certainement le faire&amp;hellip; &lt;/li&gt;
&lt;li&gt;Ne pas utiliser les exemples de Microsoft me permettra de poussez la b&amp;ecirc;te un peu plus loin. &lt;/li&gt;
&lt;li&gt;J&amp;#39;suis vieux jeu, j&amp;#39;aime bien d&amp;eacute;couvrir les choses par moi-m&amp;ecirc;me&amp;nbsp;! &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Donc je vais d&amp;eacute;couvrir ces nouvelles fonctionnalit&amp;eacute;s et je ne manquerais pas de les partager avec vous. Voir si certaines frustrations sont enfin disparues, si les fonctionnalit&amp;eacute;s que l&amp;#39;on attendait pour 2008 sont enfin pr&amp;eacute;sentes et les fonctionnalit&amp;eacute;s qui seront de nouvelles bonnes surprises.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=59" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Oct2008CTP/default.aspx">Oct2008CTP</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Rosario/default.aspx">Rosario</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/FR/default.aspx">FR</category></item><item><title>VSTS2010 CTP11: Source Control – Branching management - Part 1</title><link>http://loicbaumann.org/blogs/loic/archive/2008/10/28/source-control-branching-management-part-1.aspx</link><pubDate>Wed, 29 Oct 2008 01:04:00 GMT</pubDate><guid isPermaLink="false">558d3f9e-3c2a-471c-a0f8-9062854270f6:31</guid><dc:creator>loicbaumann</dc:creator><slash:comments>0</slash:comments><description>&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;We are all interested about the new killer features in the Architect version, the typed links in Work Items, the editable Workflows in Team Build, and so on.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;But we still have to remember that at both at the beginning and the end of the day we have to work with Configuration Management.&lt;br /&gt;The source control of Team System was already good at the very beginning, but for a platform that as for only purpose to be the ultimate ALM product, you must have an excellent one!&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Things I miss in TFS 2008:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="margin:0cm 0cm 0pt 36pt;text-indent:-18pt;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-ansi-language:EN-US;mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;1)&lt;/span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Hard to determine the relationship between branches, the time notion was unusable. You can see what is created from what, but not much more. Lacking of graphical representation.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="margin:0cm 0cm 0pt 36pt;text-indent:-18pt;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-ansi-language:EN-US;mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;2)&lt;/span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Three ways merge only possible from directly related branches, forcing you to do a baseless merge in other cases.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpLast" style="margin:0cm 0cm 10pt 36pt;text-indent:-18pt;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-ansi-language:EN-US;mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;3)&lt;/span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Merge/conflict resolution still not as good and intuitive as it could.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;So I&amp;rsquo;m going to see what changes for these things.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;I&amp;rsquo;m creating a new Team Project called &amp;ldquo;Test_SCM&amp;rdquo;, using the Agile Process Template.&lt;br /&gt;Inside &lt;b style="mso-bidi-font-weight:normal;"&gt;$/Test_SCM&lt;/b&gt; I create a &lt;b style="mso-bidi-font-weight:normal;"&gt;Main&lt;/b&gt; folder, aimed to be a main branch, and then check it in. After I create an &amp;ldquo;out-of-the-wizard&amp;rdquo; Winforms application called &lt;b style="mso-bidi-font-weight:normal;"&gt;WinformApp&lt;/b&gt;, child of the &lt;b style="mso-bidi-font-weight:normal;"&gt;Main&lt;/b&gt; folder and do another check-in.&lt;br /&gt;So far things look like:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;img height="73" width="174" src="http://farm4.static.flickr.com/3248/2982204229_e0b41a70b6.jpg" alt="Project Structure" /&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Playing a bit with the Source Control, you quickly realize that there&amp;rsquo;s now a distinction between folders and branches!&lt;br /&gt;The first and most obvious is on the display, a branch has now its own icon, makes you identifying one much quicker than before.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;At any time you can convert a given folder to a branch, there&amp;rsquo;s a new sub-menu &lt;b style="mso-bidi-font-weight:normal;"&gt;Branching and Merging&lt;/b&gt; in the contextual menu of the Source Control Explorer:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;img height="153" width="443" src="http://farm4.static.flickr.com/3142/2983054958_31e9b8bcc1.jpg" alt="Branching and Merging" /&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;From this menu you can:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="margin:0cm 0cm 0pt 53.4pt;text-indent:-18pt;mso-add-space:auto;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-ansi-language:EN-US;mso-ascii-font-family:Calibri;mso-fareast-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:Calibri;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;-&lt;/span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Create a new branch from the current one.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="margin:0cm 0cm 0pt 53.4pt;text-indent:-18pt;mso-add-space:auto;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-ansi-language:EN-US;mso-ascii-font-family:Calibri;mso-fareast-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:Calibri;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;-&lt;/span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Merge changesets from one branch to another. (Nothing new so far&amp;hellip;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="margin:0cm 0cm 0pt 53.4pt;text-indent:-18pt;mso-add-space:auto;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-ansi-language:EN-US;mso-ascii-font-family:Calibri;mso-fareast-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:Calibri;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;-&lt;/span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:small;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-family:Calibri;"&gt;View the Hierarchy related to the current branch, sounds like fun! &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Wingdings;mso-ansi-language:EN-US;mso-ascii-font-family:Calibri;mso-ascii-theme-font:minor-latin;mso-hansi-font-family:Calibri;mso-hansi-theme-font:minor-latin;mso-char-type:symbol;mso-symbol-font-family:Wingdings;"&gt;&lt;span style="mso-char-type:symbol;mso-symbol-font-family:Wingdings;"&gt;J&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="margin:0cm 0cm 0pt 53.4pt;text-indent:-18pt;mso-add-space:auto;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-ansi-language:EN-US;mso-ascii-font-family:Calibri;mso-fareast-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:Calibri;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;-&lt;/span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Convert the folder to a branch. Warning: this doesn&amp;rsquo;t lead to a pending changes, but to an instantaneous conversion, and apparently currently irreversible!&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="margin:0cm 0cm 0pt 53.4pt;text-indent:-18pt;mso-add-space:auto;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-ansi-language:EN-US;mso-ascii-font-family:Calibri;mso-fareast-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:Calibri;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;-&lt;/span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Revert a Branch back to a folder (I couldn&amp;rsquo;t achieve this, the menu item is always disabled).&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpLast" style="margin:0cm 0cm 10pt 53.4pt;text-indent:-18pt;mso-add-space:auto;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-ansi-language:EN-US;mso-ascii-font-family:Calibri;mso-fareast-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:Calibri;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;-&lt;/span&gt;&lt;span style="font:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Reparent a Branch, sounds like changing the parent of a branch, again, I couldn&amp;rsquo;t do it, the menu item being always disabled.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Now the weird part: you can create a branch from a folder: this will end with two&amp;hellip;folders!&lt;br /&gt;See the pictures below, I have two branches: Main_2 and Main_2_V2, but they&amp;rsquo;re displayed as folder, and looks like it would have been different if it was branches, see after.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;
&lt;table cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse:collapse;mso-border-alt:solid black .5pt;mso-border-themecolor:text1;mso-yfti-tbllook:1184;mso-padding-alt:0cm 5.4pt 0cm 5.4pt;"&gt;

&lt;tr style="mso-yfti-irow:0;mso-yfti-firstrow:yes;mso-yfti-lastrow:yes;"&gt;
&lt;td style="padding-right:5.4pt;padding-left:5.4pt;padding-bottom:0cm;width:230.3pt;padding-top:0cm;background-color:transparent;mso-border-alt:solid black .5pt;mso-border-themecolor:text1;border:black 1pt solid;"&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;line-height:normal;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&lt;span style="font-size:small;font-family:Calibri;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt; &lt;img height="76" width="166" src="http://farm4.static.flickr.com/3254/2983054988_a7d4f26f5f.jpg" alt="Old Branching" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;td style="border-right:black 1pt solid;padding-right:5.4pt;border-top:black 1pt solid;padding-left:5.4pt;padding-bottom:0cm;border-left:#f0f0f0;width:230.3pt;padding-top:0cm;border-bottom:black 1pt solid;background-color:transparent;mso-border-alt:solid black .5pt;mso-border-themecolor:text1;mso-border-left-alt:solid black .5pt;mso-border-left-themecolor:text1;"&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 0pt;line-height:normal;"&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;img height="176" width="307" src="http://farm4.static.flickr.com/3175/2983055016_12e3f20d9d.jpg" alt="Old Branch info" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;

&lt;/table&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Your &lt;b style="mso-bidi-font-weight:normal;"&gt;Properties&lt;/b&gt; dialog is different for a Folder and a Branch item. For the Folder you have exactly the same dialog as for the 2008.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;For a Branch, a new dialog appears:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;img height="173" width="500" src="http://farm4.static.flickr.com/3292/2983055056_6571d142f2.jpg" alt="General Property" /&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;The Relationships tab is a bit more sophisticate than for a &amp;ldquo;branch folder&amp;rdquo;:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;&lt;img height="91" width="500" src="http://farm4.static.flickr.com/3032/2983055102_75bbec5dd0.jpg" alt="" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;So what&amp;rsquo;s the point of all of this, why two kinds of branches? Well, &lt;span style="text-decoration:underline;"&gt;my&lt;/span&gt; guess is there&amp;rsquo;s now a change in how branches are handled, and for the sake of backward compatibility you still have the old model, coexisting with the new. Looks like I&amp;rsquo;m going to talk with Microsoft people on this one.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;I found out a new limitation: either you&amp;rsquo;re using a branch or a &amp;ldquo;folder branch&amp;rdquo;, you can&amp;rsquo;t create a new branch from it that is physically stored inside it!&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;For instance:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;$/MySoft_Main&lt;br /&gt;$/ MySoft_Main/MySoft_Version_1_0&lt;span style="mso-tab-count:1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a6a6a6;font-family:Wingdings;mso-ansi-language:EN-US;mso-ascii-font-family:Calibri;mso-ascii-theme-font:minor-latin;mso-hansi-font-family:Calibri;mso-hansi-theme-font:minor-latin;mso-char-type:symbol;mso-symbol-font-family:Wingdings;mso-themecolor:background1;mso-themeshade:166;"&gt;&lt;span style="mso-char-type:symbol;mso-symbol-font-family:Wingdings;"&gt;&amp;szlig;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#a6a6a6;mso-ansi-language:EN-US;mso-themecolor:background1;mso-themeshade:166;"&gt; Can&amp;rsquo;t happen if you want MySoft_Version_1_0 to be a branch created from MySoft_Main!&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span&gt;&lt;span style="font-family:Calibri;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/p&gt;
&lt;p class="MsoNormal" style="margin:0cm 0cm 10pt;"&gt;&lt;span style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;This was totally possible in previous version, and now this is something you can&amp;rsquo;t do anymore.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://loicbaumann.org/aggbug.aspx?PostID=31" width="1" height="1"&gt;</description><category domain="http://loicbaumann.org/blogs/loic/archive/tags/TeamSystem/default.aspx">TeamSystem</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/EN/default.aspx">EN</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Oct2008CTP/default.aspx">Oct2008CTP</category><category domain="http://loicbaumann.org/blogs/loic/archive/tags/Rosario/default.aspx">Rosario</category></item></channel></rss>