<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/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/"><channel><title>Willy's Reflections</title><link>http://blogs.msdn.com/b/willy-peter_schaub/</link><description>| Willy-Peter Schaub | Visual Studio ALM Rangers | In search of IT simplicity, quality and tranquility |</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><item><title>Treasure Map under the bonnet (hood) #3 … Windows 8 Layout Controls (Update)</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/16/treasure-map-under-the-bonnet-hood-3-windows-8-layout-controls-update.aspx</link><pubDate>Thu, 16 May 2013 18:18:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10419413</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10419413</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/16/treasure-map-under-the-bonnet-hood-3-windows-8-layout-controls-update.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;Lesson learnt:&lt;/strong&gt; When you ask a developer or dev lead which view class is stable and ready to be used as an example, think twice before you start documenting. Change is imminent, change is guaranteed … but, we are agile and tenacious :)&lt;/p&gt;  &lt;p&gt;This post is an update for the &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/13/treasure-map-under-the-bonnet-hood-1-windows-8-layout-controls.aspx"&gt;Treasure Map under the bonnet (hood) #1 … Windows 8 Layout Controls&lt;/a&gt; post and explains what has changed and why.&lt;/p&gt;  &lt;h2&gt;   &lt;hr /&gt;Making sure things have changed&lt;/h2&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Using the Visual Studio Compare feature, gave me a high-altitude view of the seemingly massive changes when looking at the navigation bar on the right:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="864" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="53"&gt;&amp;#160;&lt;/td&gt;        &lt;td valign="top" width="809"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1588.image_5F00_5C846E82.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6470.image_5F00_thumb_5F00_02E651CE.png" width="803" height="378" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="53"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2260.image_5F00_2DBEB5E0.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7041.image_5F00_thumb_5F00_74A7D8DD.png" width="25" height="24" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="809"&gt;Styling information has been moved out of the &lt;strong&gt;category.xaml&lt;/strong&gt; file, which account for most of the red (deleted) navigation bar and changes.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="53"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3731.image_5F00_3B90FBDB.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6215.image_5F00_thumb_5F00_29483519.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="809"&gt;The &lt;strong&gt;ListView&lt;/strong&gt; control now refers to style=&amp;quot;{StaticResource heroDataTemplateSelector}&amp;quot; and in-line styling has been removed.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="53"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2086.image_5F00_5B3FD5A3.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4152.image_5F00_thumb_5F00_2228F8A1.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="809"&gt;         &lt;p align="left"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, refer to the heroDataTemplateSelector as a &amp;quot;&lt;strong&gt;very smart piece of XAML&lt;/strong&gt;&amp;quot;. Each time the items control (in our case a ListView) is ready to render an item it calls the selector to get advice on which template too use for rendering. &lt;/p&gt;          &lt;p align="left"&gt;If you peruse the codebase and look for the &lt;strong&gt;HeroDataTemplateSelector.SelectTemplateCore&lt;/strong&gt; method you will find the fairly simple code that overrides the &lt;strong&gt;SelectTemplate&lt;/strong&gt;() method and make a very powerful decision which template should be used to render the item. In our case, we have a selector that checks if the item has a name or not - if not, we use the &lt;strong&gt;HeroTemplate&lt;/strong&gt;, otherwise we use the &lt;strong&gt;StandardTemplate&lt;/strong&gt;. &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;em&gt;Dev Lead question time …&lt;/em&gt;&lt;/p&gt;  &lt;div align="center"&gt;   &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3175.image_5F00_thumb211_5F00_thumb_5F00_6D1C6970.png"&gt;&lt;img title="image_thumb211_thumb" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb211_thumb" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7317.image_5F00_thumb211_5F00_thumb_5F00_thumb_5F00_61F2DF26.png" width="75" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="554"&gt;           &lt;p align="left"&gt;&lt;em&gt;Why are we defining the&amp;#160; TemplateSelector and ListView style in the view file and not in the TreasureMap.xaml ResourceDictionary?&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="81"&gt;&amp;nbsp;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="92"&gt;&amp;nbsp;&lt;/td&gt;          &lt;td width="547"&gt;           &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, replies …&lt;/p&gt;            &lt;p align="left"&gt;The template selector is defined in the view as it is very much specific to the view - it is not something we would reuse elsewhere in exactly the same way. &lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="86"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6712.Robert_2D00_MacLean_2D00_v3_5F00_thumb21_5F00_thumb_5F00_28DC0224.png"&gt;&lt;img title="Robert-MacLean-v3_thumb21_thumb" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="Robert-MacLean-v3_thumb21_thumb" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4667.Robert_2D00_MacLean_2D00_v3_5F00_thumb21_5F00_thumb_5F00_thumb_5F00_08C0F567.png" width="80" height="87" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;   &lt;hr /&gt;Delving into the ListView and associated Template&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8836.image_5F00_6B6B9D9C.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3630.image_5F00_thumb_5F00_2B358422.png" width="869" height="500" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;heroDataTemplateSelector&lt;/h4&gt;  &lt;p&gt;The HeroDataTemplateSelector defines two templates, namely &lt;strong&gt;HeroTemplate&lt;/strong&gt; and &lt;strong&gt;StandardTemplate&lt;/strong&gt;, both of which are defined on the Category page within the &amp;lt;&lt;strong&gt;Page.Resources&lt;/strong&gt;/&amp;gt; tag.&lt;/p&gt; &lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0728.image_5F00_18ECBD60.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5518.image_5F00_thumb_5F00_71B2742A.png" width="25" height="26" /&gt;&lt;/a&gt; The &lt;strong&gt;standardItemTemplate&lt;/strong&gt; defines a grid with three rows, the third of which has a grid with three rows, an &lt;strong&gt;Image&lt;/strong&gt; and two &lt;strong&gt;TextBlocks&lt;/strong&gt;. Remember that we use this template when an item has a name, in other words when it refers to a category item such as the &lt;strong&gt;TFS Planning Guide&lt;/strong&gt;, within the &lt;strong&gt;Guidance&lt;/strong&gt; category.   &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8741.image_5F00_389B9728.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6607.image_5F00_thumb_5F00_18808A6B.png" width="25" height="26" /&gt;&lt;/a&gt; The &lt;strong&gt;heroItemTemplate&lt;/strong&gt; defines a grid with three rows, an &lt;strong&gt;Image&lt;/strong&gt; and a &lt;strong&gt;TextBlock&lt;/strong&gt;. It is used to display a category item without a name. When we cover DataBinding in the next post we will get back to this phenomenal magic, which comes at a minimal tax for the developers.&lt;/p&gt;  &lt;h4&gt;ListView&lt;/h4&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3058.image_5F00_2A5D1E38.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3157.image_5F00_thumb_5F00_382F6433.png" width="25" height="26" /&gt;&lt;/a&gt; When we get back to our ListView within the third row of the main grid, as documented in &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/13/treasure-map-under-the-bonnet-hood-1-windows-8-layout-controls.aspx"&gt;Treasure Map under the bonnet (hood) #1 … Windows 8 Layout Controls&lt;/a&gt;, we notice that the xaml has been simplified and reduced down to declaring the &lt;strong&gt;ItemTemplateSelector &lt;/strong&gt;as discussed above.&lt;/p&gt;  &lt;h2&gt;Mapping it back to the UX&lt;/h2&gt;  &lt;p&gt;For the visual readers, like Willy, will conclude this post by marching the above magic to the actual category view as shown below.&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="200" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="100"&gt;&amp;#160;&lt;/td&gt;        &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4062.image_5F00_257A6A7C.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7658.image_5F00_thumb_5F00_2E86F5FD.png" width="819" height="461" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8737.image_5F00_22F138BE.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2311.image_5F00_thumb_5F00_54E8D948.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="100"&gt;The left-most item was rendered using the &lt;strong&gt;heroItemTemplate&lt;/strong&gt;. Rows 0, 1 and 2 are indicated, which matche the xaml:           &lt;pre&gt;&amp;lt;Grid.RowDefinitions&amp;gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&lt;font color="#ff00ff"&gt;  &amp;lt;RowDefinition Height=&amp;quot;450&amp;quot;/&amp;gt;&lt;br /&gt;  &amp;lt;RowDefinition Height=&amp;quot;10&amp;quot;/&amp;gt;&lt;br /&gt;  &amp;lt;RowDefinition Height=&amp;quot;*&amp;quot;/&amp;gt;&lt;/font&gt;&lt;br /&gt;&amp;lt;/Grid.RowDefinitions&amp;gt;&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5543.image_5F00_33F566A1.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3872.image_5F00_thumb_5F00_65ED072B.png" width="25" height="25" /&gt;&lt;/a&gt;&amp;#160;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;The items to the right were rendered using the &lt;strong&gt;standardItemTemplate&lt;/strong&gt;. Rows 10, 1 and two are indicated, which match the xaml: 

        &lt;pre&gt;&amp;lt;Grid.RowDefinitions&amp;gt;&lt;br /&gt;  &lt;font color="#ffc000"&gt;&amp;lt;&lt;/font&gt;&lt;font color="#f79646"&gt;RowDefinition Height=&amp;quot;300&amp;quot;/&amp;gt;&lt;br /&gt;  &amp;lt;RowDefinition Height=&amp;quot;5&amp;quot;/&amp;gt;&lt;br /&gt;  &amp;lt;RowDefinition Height=&amp;quot;*&amp;quot;/&amp;gt;
&lt;/font&gt;&amp;lt;/Grid.RowDefinitions&amp;gt;&lt;br /&gt;  &amp;lt;Grid Grid.Row=&amp;quot;2&amp;quot;&amp;gt;&lt;br /&gt;     &amp;lt;Grid.RowDefinitions&amp;gt;&lt;br /&gt;       &lt;font color="#00ff40"&gt;&amp;lt;RowDefinition Height=&amp;quot;Auto&amp;quot;/&amp;gt;&lt;br /&gt;       &amp;lt;RowDefinition Height=&amp;quot;5&amp;quot;/&amp;gt;&lt;br /&gt;       &amp;lt;RowDefinition Height=&amp;quot;*&amp;quot;/&amp;gt;&lt;/font&gt;&lt;br /&gt;     &amp;lt;/Grid.RowDefinitions&amp;gt;&lt;br /&gt;  &amp;lt;/Grid&amp;gt;&lt;/pre&gt;

        &lt;p&gt;&lt;strong&gt;NOTE&lt;/strong&gt;: &lt;font color="#000000"&gt;&amp;lt;RowDefinition Height=&amp;quot;&lt;strong&gt;Auto&lt;/strong&gt;&amp;quot;/&amp;gt; demonstrates the Auto sizing mode, which uses exactly enough of the space to display the content, in this case the project title.&lt;/font&gt;&lt;/p&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p&gt;We will return to the data binding in the next post, whereby I will trace the data from XML file to the UX, where the above changes will probably start making sense.&amp;#160; &lt;/p&gt;

&lt;p&gt;&lt;em&gt;Dev Lead final question time …&lt;/em&gt;&lt;/p&gt;

&lt;div align="center"&gt;
  &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;
      &lt;tr&gt;
        &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8270.image_5F00_thumb211_5F00_thumb_5F00_2CD62A29.png"&gt;&lt;img title="image_thumb211_thumb" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb211_thumb" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2816.image_5F00_thumb211_5F00_thumb_5F00_thumb_5F00_3AA87024.png" width="75" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;

        &lt;td width="554"&gt;
          &lt;p align="left"&gt;&lt;em&gt;Running the Category View in the Simulator I am wondering how the user will scroll to the right without a touch screen. Is this functionality not yet baked in?&lt;/em&gt;&lt;/p&gt;
        &lt;/td&gt;

        &lt;td valign="top" width="81"&gt;&amp;nbsp;&lt;/td&gt;
      &lt;/tr&gt;

      &lt;tr&gt;
        &lt;td valign="top" width="92"&gt;&amp;nbsp;&lt;/td&gt;

        &lt;td width="547"&gt;
          &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, replies …&lt;/p&gt;

          &lt;p align="left"&gt;For non-touch scenarios it supports mouse wheel, click and drag or scroll bar. The reason you were not seeing the scrollbar is because we just needed to turn on the horizontal and turn off the vertical scroll bars. &amp;quot;Change is imminent, change is guaranteed&amp;quot; - change has happened and is checked in &lt;img class="wlEmoticon wlEmoticon-winkingsmile" style="style" alt="Winking smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3005.wlEmoticon_2D00_winkingsmile_5F00_26643112.png" /&gt;&lt;/p&gt;
        &lt;/td&gt;

        &lt;td valign="top" width="86"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0763.Robert_2D00_MacLean_2D00_v3_5F00_thumb21_5F00_thumb_5F00_61768664.png"&gt;&lt;img title="Robert-MacLean-v3_thumb21_thumb" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="Robert-MacLean-v3_thumb21_thumb" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6840.Robert_2D00_MacLean_2D00_v3_5F00_thumb21_5F00_thumb_5F00_thumb_5F00_415B79A7.png" width="80" height="87" /&gt;&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
    &lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h2&gt;
  &lt;hr /&gt;Benefits?&lt;/h2&gt;

&lt;p&gt;Readability and maintainability has been improved. In fact we decreased from 364 lines of xaml code to 64. The DataTemplateSelector is one of the magic that the team sprinkled over this latest codebase, making it a lot more powerful, yet simplify the design as indicated.&lt;/p&gt;

&lt;h2&gt;
  &lt;hr /&gt;References&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://aka.ms/vsartmaptoc"&gt;ALM Readiness Treasure Map (Table of Content) TOC Post&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;&lt;a href="http://aka.ms/vsartmapapp"&gt;ALM Readiness Treasure Map Windows Store App&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;Previous posts:&lt;/li&gt;

  &lt;ul&gt;
    &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/13/treasure-map-under-the-bonnet-hood-1-windows-8-layout-controls.aspx"&gt;Treasure Map under the bonnet (hood) #1 … Windows 8 Layout Controls&lt;/a&gt;&lt;/li&gt;

    &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/15/treasure-map-under-the-bonnet-hood-2-windows-8-styling.aspx"&gt;Treasure Map under the bonnet (hood) #2 … Windows 8 Styling&lt;/a&gt;&lt;/li&gt;
  &lt;/ul&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10419413" width="1" height="1"&gt;</description></item><item><title>Visual Studio ALM Ranger Solutions Catalog</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/16/visual-studio-alm-ranger-solutions-catalog.aspx</link><pubDate>Thu, 16 May 2013 18:07:25 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10419410</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10419410</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/16/visual-studio-alm-ranger-solutions-catalog.aspx#comments</comments><description>&lt;table cellspacing="0" cellpadding="2" width="823" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="270"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7840.VS2012.ALMRangers.Logo.NoTrademark.T_5F00_4CDF67E4.png"&gt;&lt;img title="VS2012.ALMRangers.Logo.NoTrademark.T" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="VS2012.ALMRangers.Logo.NoTrademark.T" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1884.VS2012.ALMRangers.Logo.NoTrademark.T_5F00_thumb_5F00_4C7334EF.png" width="240" height="81" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="287"&gt;         &lt;p&gt;&lt;strong&gt;More Resources to Explore&lt;/strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;          &lt;ul&gt;           &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/06/05/toc-alm-rangers-msdn-magazine-and-other-publications.aspx"&gt;Ranger Publications&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://aka.ms/treasure35"&gt;Ranger Quick Response Sample Solutions&lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="264" align="center"&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/06/05/toc-alm-rangers-msdn-magazine-and-other-publications.aspx"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3073.image_5F00_051DDEFD.png" width="80" height="80" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5125.image_5F00_thumb6_5F00_44E7C582.png"&gt;&lt;img title="image_thumb6" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb6" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1423.image_5F00_thumb6_5F00_thumb_5F00_329EFEC0.png" width="15" height="13" /&gt;&lt;/a&gt;&amp;#160; &lt;a href="http://aka.ms/treasure35"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6786.image_5F00_2B7FC248.png" width="80" height="80" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0434.image_5F00_thumb5_5F00_791BEEC8.png"&gt;&lt;img title="image_thumb5" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb5" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3404.image_5F00_thumb5_5F00_thumb_5F00_71FCB250.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;h1 id="VS2012"&gt;   &lt;hr /&gt;&lt;/h1&gt;  &lt;table cellspacing="0" cellpadding="1" width="823" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td width="289"&gt;         &lt;h4 align="right"&gt;Solution information&lt;/h4&gt;       &lt;/td&gt;        &lt;td width="37"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8206.image_5F00_thumb51_5F00_03D9461E.png"&gt;&lt;img title="image_thumb51" style="border: 0px currentcolor; float: right; display: inline; background-image: none;" border="0" alt="image_thumb51" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5557.image_5F00_thumb51_5F00_thumb_5F00_43A32CA3.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td width="47"&gt;Tooling&lt;/td&gt;        &lt;td width="26"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6560.image_5F00_thumb61_5F00_315A65E1.png"&gt;&lt;img title="image_thumb61" style="border: 0px currentcolor; float: right; display: inline; background-image: none;" border="0" alt="image_thumb61" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1854.image_5F00_thumb61_5F00_thumb_5F00_380D6F64.png" width="15" height="16" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td width="55"&gt;Samples&lt;/td&gt;        &lt;td width="22"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7723.image_5F00_thumb7_5F00_1BFCB079.png"&gt;&lt;img title="image_thumb7" style="border: 0px currentcolor; float: right; display: inline; background-image: none;" border="0" alt="image_thumb7" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1460.image_5F00_thumb7_5F00_thumb_5F00_37A13C6F.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td width="58"&gt;Guidance&lt;/td&gt;        &lt;td width="24"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0602.image_5F00_1B907D84.png"&gt;&lt;img title="image" style="border: 0px currentcolor; float: right; display: inline; background-image: none;" border="0" alt="image" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8625.image_5F00_thumb_5F00_57501637.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td width="263"&gt;Service Mode, no further updates planned.&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt; The following Visual Studio ALM Rangers solutions have been developed for the ALM community:&lt;/p&gt; &lt;font color="#c0504d"&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;strong&gt;&lt;/strong&gt;  &lt;table cellspacing="0" cellpadding="1" width="822" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3 id="Administration"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4628.image7_5F00_6D31F801.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5127.image7_5F00_thumb_5F00_1AB317C5.png" width="92" height="90" /&gt;&lt;/a&gt;&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign="top" width="685"&gt;         &lt;table cellspacing="0" cellpadding="1" width="712" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb663036(VS.80).aspx"&gt;&lt;b&gt;&lt;font size="2"&gt;Operations Guidance for Team Foundation Server&lt;/font&gt;&lt;/b&gt;&lt;/a&gt;&lt;font size="2"&gt; &lt;/font&gt;                  &lt;br /&gt;&lt;font size="1"&gt;You can manage your deployment of Microsoft Visual Studio 2005 Team Foundation Server more effectively if you create your own operations plan. As you create your plan, you should understand key elements of the architecture of Team Foundation Server and how your deployment topology affects operations. This white paper explains those elements in detail, so that you can avoid common problems with your deployment.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6683.image_5F00_thumb7_5F00_086F50D8.png"&gt;&lt;img title="image_thumb7" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1212.image_5F00_thumb7_5F00_thumb_5F00_2F3D6718.png" width="15" height="13" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4848.image_5F00_281E2AA0.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4861.image_5F00_thumb_5F00_4EEC40E0.png" width="15" height="13" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=97ca3b31-3653-4d60-bdad-3f2017febdc3&amp;amp;displaylang=en"&gt;&lt;b&gt;&lt;font size="2"&gt;Team Foundation Server 2010 Monitoring Management Pack&lt;/font&gt;&lt;/b&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;The Team Foundation Server 2010 Monitoring Management Pack delivers the capabilities for professional monitoring and management of Team Foundation Server 2010 infrastructure components.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6507.image_5F00_thumb51_5F00_47CD0468.png"&gt;&lt;img title="image_thumb51" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6521.image_5F00_thumb51_5F00_thumb_5F00_6E9B1AA8.png" width="15" height="15" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5543.image_5F00_677BDE30.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4061.image_5F00_thumb_5F00_605CA1B8.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure5"&gt;&lt;b&gt;&lt;font size="2"&gt;TFS Planning and DR Avoidance Guide&lt;/font&gt;&lt;/b&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Practical guidance for the implementation and disaster recovery planning for Team Foundation Server.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7607.image_5F00_thumb7_5F00_4E13DAF6.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4382.image_5F00_thumb7_5F00_thumb_5F00_5FF06EC3.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure35"&gt;&lt;strong&gt;&lt;font size="2"&gt;TFS Teams Tool&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt; | Quick Response Sample Solution                   &lt;br /&gt;&lt;font size="1"&gt;Command line utility, such as &lt;/font&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ms252504(v=VS.80).aspx"&gt;&lt;font size="1"&gt;TFSSecurity&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt;.exe , to add Teams and Team members to a Team Project.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6471.image_5F00_thumb51_5F00_34ABD7BC.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8117.image_5F00_thumb51_5F00_thumb_5F00_46886B89.png" width="15" height="15" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2744.image_5F00_thumb61_5F00_3F692F11.png"&gt;&lt;img title="image_thumb61" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb61" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2766.image_5F00_thumb61_5F00_thumb_5F00_66374551.png" width="15" height="16" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure8"&gt;&lt;b&gt;&lt;font size="2"&gt;TFS Upgrade Guide&lt;/font&gt;&lt;/b&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Upgrade scenarios and post-upgrade issues for Team Foundation Server and associated technologies.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1780.image_5F00_thumb7_5F00_5F1808D9.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5074.image_5F00_thumb7_5F00_thumb_5F00_57F8CC61.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3 id="alm"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2843.image11_5F00_13B86515.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5327.image11_5F00_thumb_5F00_578C996C.png" width="92" height="91" /&gt;&lt;/a&gt;             &lt;br /&gt;&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign="top" width="685"&gt;         &lt;table cellspacing="0" cellpadding="1" width="712" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure3"&gt;&lt;strong&gt;&lt;font size="2"&gt;ALM Assessment Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Use the Rangers ALM Assessment to find out pragmatically where your organization stands in case of ALM Best Practices by using the assessment questions and qualitative discussions. Based on the results, make an action plan for improvements.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6406.image_5F00_thumb7_5F00_73312562.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2210.image_5F00_thumb7_5F00_thumb_5F00_32FB0BE8.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure4"&gt;&lt;strong&gt;&lt;font size="2"&gt;ALM Rangers Personas and Customer Types&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;Common definition of personas and scenarios used in Visual Studio ALM Rangers guidance&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4341.image_5F00_thumb7_5F00_44D79FB5.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7506.image_5F00_thumb7_5F00_thumb_5F00_369926C5.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure4"&gt;&lt;strong&gt;&lt;font size="2"&gt;ALM Readiness Treasure Map&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Provides a master catalogue (treasure map) of the available ALM Readiness content to guide us through the process of becoming proficient in ALM practices. Get the paper based map and sample source code from &lt;/font&gt;&lt;a href="http://aka.ms/treasure4"&gt;&lt;font size="1"&gt;CodePlex&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt; and the application from the Store:                   &lt;br /&gt;&lt;/font&gt;&lt;a href="http://aka.ms/vsartmapapp"&gt;&lt;font size="1"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4857.image_5F00_0B548FBE.png" width="29" height="30" /&gt;&lt;/font&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;See &lt;/font&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/26/alm-readiness-treasure-map-v2-show-what-we-have-for-sprint-10-april.aspx"&gt;&lt;font size="1"&gt;ALM Readiness Treasure Map v2 – Show what we have for Sprint 10 (April)&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt; for more information on the next version.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4265.image_5F00_thumb51_5F00_1D31238B.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4278.image_5F00_thumb51_5F00_thumb_5F00_71EC8C83.png" width="15" height="15" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4762.image_5F00_thumb61_5F00_55DBCD98.png"&gt;&lt;img title="image_thumb61" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb61" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0574.image_5F00_thumb61_5F00_thumb_5F00_7180598E.png" width="15" height="16" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure11"&gt;&lt;strong&gt;&lt;font size="2"&gt;Practical Kanban Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Offers teams that are new to Kanban and teams that are using a manual, paper-based Kanban board, guidance and tool support for Kanban in Team Foundation Server 2010 and Team Foundation Server 2012.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8507.image_5F00_thumb7_5F00_314A4014.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0676.image_5F00_thumb7_5F00_thumb_5F00_2A2B039C.png" width="15" height="13" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0508.image_5F00_thumb51_5F00_3C079769.png"&gt;&lt;img title="image_thumb51" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0488.image_5F00_thumb51_5F00_thumb_5F00_34E85AF1.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6787.image_5F00_thumb61_5F00_42BAA0EC.png"&gt;&lt;img title="image_thumb61" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb61" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7357.image_5F00_thumb61_5F00_thumb_5F00_3B9B6474.png" width="15" height="16" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6371.image_5F00_496DAA6F.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0027.image_5F00_thumb_5F00_424E6DF7.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure4"&gt;&lt;strong&gt;&lt;font size="2"&gt;Practical Ruck Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;The Visual Studio ALM Rangers Ruck process evolved and used by the geographically dispersed and virtual ALM Rangers project teams.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3162.image_5F00_thumb7_5F00_691C8437.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0523.image_5F00_thumb7_5F00_thumb_5F00_13F4E84A.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="https://vsarguidance.codeplex.com/"&gt;&lt;strong&gt;&lt;font size="2"&gt;Supporting Guidance and Whitepapers&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Research whitepapers and practical guidance for Visual Studio and Team Foundation Server, which have and are being created as part and in support of ALM Ranger solutions.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8546.image_5F00_thumb7_5F00_68B05142.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0116.image_5F00_thumb7_5F00_thumb_5F00_619114CA.png" width="15" height="13" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7701.image_5F00_thumb61_5F00_5A71D852.png"&gt;&lt;img title="image_thumb61" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb61" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0447.image_5F00_thumb61_5F00_thumb_5F00_2F2D414B.png" width="15" height="16" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure2"&gt;&lt;strong&gt;&lt;font size="2"&gt;Visual Studio Quick Reference Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;An overview of Visual Studio and Team Foundation Server in the form of compact, quick reference sheets. Users who are unfamiliar with Visual Studio get a “quick” overview of features, value and associated Rangers guidance.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0451.image_5F00_thumb7_5F00_280E04D3.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8473.image_5F00_thumb7_5F00_thumb_5F00_20EEC85B.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7801.image14_5F00_19CF8BE3.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1055.image14_5F00_thumb_5F00_0786C521.png" width="92" height="91" /&gt;&lt;/a&gt;&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign="top" width="685"&gt;         &lt;table cellspacing="0" cellpadding="1" width="712" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="646"&gt;&lt;a href="http://aka.ms/treasure19"&gt;&lt;strong&gt;&lt;font size="2"&gt;Visual Studio Architecture Tooling Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Focuses on modeling tools and includes understanding and reverse engineering an existing application or starting a new application from scratch.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="64" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5340.image_5F00_thumb7_5F00_325F2933.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5353.image_5F00_thumb7_5F00_thumb_5F00_592D3F73.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2047.image17_5F00_520E02FB.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7750.image17_5F00_thumb_5F00_26C96BF4.png" width="92" height="91" /&gt;&lt;/a&gt;&lt;/h3&gt;         &lt;font color="#c0504d"&gt;&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="685"&gt;&lt;font color="#c0504d"&gt;&lt;/font&gt;&lt;font color="#c0504d"&gt;&lt;/font&gt;          &lt;table cellspacing="0" cellpadding="1" width="713" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="648"&gt;&lt;font color="#666666" size="2"&gt;&lt;strong&gt;ALM Rangers DevOps (coming)&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="63" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6663.image_5F00_thumb7_5F00_38A5FFC1.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1057.image_5F00_thumb7_5F00_thumb_5F00_3186C349.png" width="15" height="13" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1070.image_5F00_thumb51_5F00_6D465BFC.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6278.image_5F00_thumb51_5F00_thumb_5F00_66271F84.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="648"&gt;&lt;a href="http://aka.ms/treasure48"&gt;&lt;strong&gt;&lt;font size="2"&gt;BRDLite Reference Templates&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;The &lt;b&gt;B&lt;/b&gt;uild &lt;b&gt;R&lt;/b&gt;elease and &lt;b&gt;D&lt;/b&gt;eploy (BRD) Lite is a set of build process reference templates that allows you to quickly setup a real-world build process in your environment. Also see &lt;/font&gt;&lt;a href="http://aka.ms/treasure23"&gt;&lt;font size="1"&gt;Team Foundation Build Customization Guide&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt; for guidance.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="63" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0815.image_5F00_thumb7_5F00_311A9054.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8838.image_5F00_thumb7_5F00_thumb_5F00_57E8A694.png" width="15" height="13" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6114.image_5F00_thumb51_5F00_50C96A1C.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8741.image_5F00_thumb51_5F00_thumb_5F00_5E9BB017.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4544.image201_5F00_0569C658.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7608.image201_5F00_thumb_5F00_30422A6A.png" width="92" height="91" /&gt;&lt;/a&gt;&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign="top" width="685"&gt;         &lt;table cellspacing="0" cellpadding="1" width="714" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="649"&gt;&lt;a href="http://vsdatabaseguide.codeplex.com/"&gt;&lt;strong&gt;&lt;font size="2"&gt;Visual Studio Database Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Practical guidance for Visual Studio 2010 database projects.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="63" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2084.image_5F00_thumb7_5F00_1DF963A8.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1016.image_5F00_thumb7_5F00_thumb_5F00_2BCBA9A3.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6710.image27_5F00_0FBAEAB8.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5460.image27_5F00_thumb_5F00_4F84D13D.png" width="92" height="91" /&gt;&lt;/a&gt;&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign="top" width="685"&gt;         &lt;table cellspacing="0" cellpadding="1" width="713" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://www.codeplex.com/pstfsconnector"&gt;&lt;strong&gt;&lt;font size="2"&gt;Project Server 2007 VSTS Connector&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;The Visual Studio Team System Project Server 2007 Connector is designed to integrate the project management capabilities of VSTS with Project Server 2007. It's been developed by the Visual Studio Team System Rangers in response to significant customer demand for a connector solution.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8206.image_5F00_thumb51_5F00_3D3C0A7B.png"&gt;&lt;img title="image_thumb51" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3010.image_5F00_thumb51_5F00_thumb_5F00_361CCE03.png" width="15" height="15" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3823.image_5F00_75E6B488.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3438.image_5F00_thumb_5F00_6EC77810.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=141577"&gt;&lt;strong&gt;&lt;font size="2"&gt;SharePoint Server Custom Application Development: Document Workflow Management Project&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Read about the real-world design, construction, and deployment of a custom SharePoint Server 2007 application to a mid-market enterprise customer using Team Foundation Server as an ALM platform.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2055.image_5F00_thumb7_5F00_1C4897D4.png"&gt;&lt;img title="image_thumb7" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7144.image_5F00_thumb7_5F00_thumb_5F00_09FFD112.png" width="15" height="13" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1781.image_5F00_62C587DC.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8156.image_5F00_thumb_5F00_09939E1D.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://tfsintegration.codeplex.com/"&gt;&lt;strong&gt;&lt;font size="2"&gt;TFS Integration Platform&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt; | TFS Integration Tools                   &lt;br /&gt;&lt;font size="1"&gt;The TFS Integration Platform is a project that facilitates the development of tools that integrate TFS with other systems. Also see &lt;/font&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/06/06/toc-tfs-integration-tools-blog-posts-and-reference-sites.aspx"&gt;&lt;font size="1"&gt;TOC&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt; blog.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3441.image_5F00_thumb7_5F00_6D82DF31.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1715.image_5F00_thumb7_5F00_thumb_5F00_1450F572.png" width="15" height="13" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7266.image_5F00_thumb51_5F00_0D31B8FA.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8255.image_5F00_thumb51_5F00_thumb_5F00_7AE8F237.png" width="15" height="15" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7587.image_5F00_thumb61_5F00_21B70878.png"&gt;&lt;img title="image_thumb61" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb61" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1234.image_5F00_thumb61_5F00_thumb_5F00_48851EB8.png" width="15" height="16" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5037.image_5F00_4165E240.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5050.image_5F00_thumb_5F00_5342760D.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc948982.aspx"&gt;&lt;strong&gt;&lt;font size="2"&gt;Using TFS to Develop Custom SharePoint Products and Technologies Applications&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Use Microsoft Visual Studio 2008 Team Foundation Server to support SharePoint application development, and provide an integrated development environment and single source code repository for process activities, integrated progress reporting, and team role.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8686.image_5F00_thumb7_5F00_27FDDF06.png"&gt;&lt;img title="image_thumb7" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4885.image_5F00_thumb7_5F00_thumb_5F00_20DEA28E.png" width="15" height="13" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8270.image_5F00_6BD2135D.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8203.image_5F00_thumb_5F00_2791AC11.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7853.image31_5F00_20726F99.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6471.image31_5F00_thumb_5F00_4B4AD3AB.png" width="92" height="91" /&gt;&lt;/a&gt;&lt;/h3&gt;         &lt;font size="2"&gt;&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="685"&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;          &lt;table cellspacing="0" cellpadding="1" width="713" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="651"&gt;&lt;a href="http://aka.ms/treasure28"&gt;&lt;strong&gt;&lt;font size="2"&gt;Visual Studio Lab Management Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Practical guidance for Visual Studio Lab Management, backed by &lt;/font&gt;&lt;a href="http://aka.ms/treasure32"&gt;&lt;font size="1"&gt;VM Factory Guide&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt; automation.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5383.image_5F00_thumb7_5F00_39020CE9.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5315.image_5F00_thumb7_5F00_thumb_5F00_31E2D071.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="651"&gt;&lt;a href="http://aka.ms/treasure32"&gt;&lt;strong&gt;&lt;font size="2"&gt;Visual Studio and TFS VM Factory Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Guidance and a reference implementation of a software solution that automates the creation of Microsoft environments, in particular Visual Studio and Team Foundation Server.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6076.image_5F00_thumb7_5F00_2AC393F9.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5808.image_5F00_thumb7_5F00_thumb_5F00_3895D9F4.png" width="15" height="13" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6560.image_5F00_thumb51_5F00_46681FEF.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5482.image_5F00_thumb51_5F00_thumb_5F00_3F48E377.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="651"&gt;&lt;font color="#666666" size="2"&gt;&lt;strong&gt;VM Demo Quick Environment Setup (coming)&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6153.image_5F00_thumb7_5F00_3829A6FF.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2671.image_5F00_thumb7_5F00_thumb_5F00_45FBECFA.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5327.image54_5F00_3EDCB082.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3683.image54_5F00_thumb_5F00_65AAC6C2.png" width="92" height="90" /&gt;&lt;/a&gt;&lt;/h3&gt;         &lt;font size="2"&gt;&lt;/font&gt;&lt;/td&gt;        &lt;td valign="top" width="685"&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;          &lt;table cellspacing="0" cellpadding="1" width="714" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="651"&gt;&lt;a href="http://aka.ms/treasure36"&gt;&lt;strong&gt;&lt;font size="2"&gt;TFS Word Add-In&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;The Team Foundation Server Word Add-in allows you to import work items from a Team Foundation Server Team Project and generate professional-looking Word document from TFS Work items.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7077.image_5F00_thumb51_5F00_499A07D7.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6835.image_5F00_thumb51_5F00_thumb_5F00_576C4DD2.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="651"&gt;&lt;font color="#666666" size="2"&gt;&lt;strong&gt;TFS Reporting Guidance (coming)&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7506.image_5F00_thumb7_5F00_6FFBEB22.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6428.image_5F00_thumb7_5F00_thumb_5F00_68DCAEAA.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3113.image34_5F00_76AEF4A5.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8816.image34_5F00_thumb_5F00_088B8873.png" width="92" height="91" /&gt;&lt;/a&gt;&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign="top" width="685"&gt;         &lt;table cellspacing="0" cellpadding="1" width="713" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://vstfs2010rm.codeplex.com/"&gt;&lt;strong&gt;Requirements Management&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;The 2008 version was about general requirements management best practices and the best you can do with our current tooling to support these best practices. The 2010 is part 2 of this Ranger guidance focusing on new features of 2010 and how these features deliver better support for our RM best practices.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2543.image_5F00_thumb7_5F00_48556EF8.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1565.image_5F00_thumb7_5F00_thumb_5F00_6F238538.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://aka.ms/treasure26"&gt;&lt;strong&gt;Test Release Management Guide&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Guidance and tooling to support scenarios for test case and test plan release management, including reporting and base-lining: sprint to sprint, release to release, and moving a feature through the branching guidelines scenarios.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5850.image_5F00_thumb7_5F00_15F19B79.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5873.image_5F00_thumb7_5F00_thumb_5F00_23C3E174.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3666.image39_5F00_6E4B1F4E.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4645.image39_5F00_thumb_5F00_06DABC9F.png" width="92" height="90" /&gt;&lt;/a&gt;&lt;/h3&gt;         &lt;strong&gt;&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="685"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;          &lt;table cellspacing="0" cellpadding="1" width="712" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;font color="#666666" size="2"&gt;&lt;strong&gt;Device Testing (coming)&lt;/strong&gt;&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8030.image_5F00_thumb7_5F00_7491F5DC.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5238.image_5F00_thumb7_5F00_thumb_5F00_02643BD8.png" width="15" height="13" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7875.image_5F00_thumb51_5F00_4D57ACA7.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4336.image_5F00_thumb51_5F00_thumb_5F00_221315A0.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://www.codeplex.com/SQLLoadTest"&gt;&lt;strong&gt;&lt;font size="2"&gt;SQL Load Test&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;This tool takes a SQL Profiler trace file and generates a unit test that replays the same sequence of database calls found in the trace file. The unit test is designed to be used in a Visual Studio Load Test. The code generated is easily modifiable so that data variation can be introduced for the purpose of doing performance testing.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2021.image_5F00_thumb51_5F00_060256B5.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3000.image_5F00_thumb51_5F00_thumb_5F00_45CC3D3A.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://aka.ms/treasure26"&gt;&lt;strong&gt;&lt;font size="2"&gt;Test Release Management Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;See above under “Requirements Management” for more information.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0451.image_5F00_thumb7_5F00_1A87A633.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3107.image_5F00_thumb7_5F00_thumb_5F00_2C643A00.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;font color="#c0504d" size="2"&gt;&lt;strong&gt;&lt;font color="#666666"&gt;Unit Test Generator (coming)&lt;/font&gt;                       &lt;br /&gt;&lt;/strong&gt;&lt;font color="#000000" size="1"&gt;See &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/09/unit-test-generator-under-the-bonnet-hood-aka-vsarunittestfx.aspx"&gt;Unit Test Generator under the bonnet (hood) … aka vsarUnitTestFx&lt;/a&gt; for more information.&lt;/font&gt;&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1462.image_5F00_thumb51_5F00_2544FD88.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3108.image_5F00_thumb51_5F00_thumb_5F00_4C1313C8.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://aka.ms/treasure34"&gt;&lt;strong&gt;&lt;font size="2"&gt;Visual Studio Coded UI Microsoft Word Add-in&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Practical guidance and tooling for the Visual Studio Coded UI Microsoft Word Plug-in, which extends the Coded UI feature support to Microsoft Word documents.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3122.image_5F00_thumb7_5F00_72E12A08.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7416.image_5F00_thumb7_5F00_thumb_5F00_6BC1ED90.png" width="15" height="13" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4101.image_5F00_thumb61_5F00_129003D1.png"&gt;&lt;img title="image_thumb61" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb61" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7737.image_5F00_thumb61_5F00_thumb_5F00_395E1A11.png" width="15" height="16" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://aka.ms/treasure27"&gt;&lt;strong&gt;&lt;font size="2"&gt;Visual Studio Test Tooling Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt; (MTM, CodedUI, Fakes)                   &lt;br /&gt;&lt;font size="1"&gt;A range of test tooling (Microsoft Test Manager, Coded UI, Fakes and IntelliTrace) practical and scenario based guidance. &lt;/font&gt;                  &lt;ul&gt;&lt;font size="1"&gt;&lt;/font&gt;                    &lt;li&gt;&lt;font size="1"&gt;Better Unit Testing with Microsoft Fakes &lt;/font&gt;&lt;/li&gt;                   &lt;font size="1"&gt;&lt;/font&gt;                    &lt;li&gt;&lt;font size="1"&gt;Coded UI Guide&lt;/font&gt;&lt;/li&gt;                   &lt;font size="1"&gt;&lt;/font&gt;                    &lt;li&gt;&lt;font size="1"&gt;Microsoft Test Manager Guide&lt;/font&gt;&lt;/li&gt;                   &lt;font size="1"&gt;&lt;/font&gt;                    &lt;li&gt;&lt;font size="1"&gt;IntelliTrace&lt;/font&gt;&lt;/li&gt;                 &lt;/ul&gt;               &lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7750.image_5F00_thumb7_5F00_602C3051.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6663.image_5F00_thumb7_5F00_thumb_5F00_590CF3D9.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://wcfloadtest.codeplex.com/"&gt;&lt;strong&gt;&lt;font size="2"&gt;WCF Load Test&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;This tool takes a WCF trace file and a WCF client proxy, or a WCF interface contract, and generates a unit test that replays the same sequence of calls found in the trace file. The code generated is easily modifiable so that data variation can be introduced for the purpose of doing performance testing.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3146.image_5F00_thumb51_5F00_240064A9.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2068.image_5F00_thumb51_5F00_thumb_5F00_1F89E3E2.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2072.image46_5F00_186AA76A.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4048.image46_5F00_thumb_5F00_3F38BDAA.png" width="92" height="91" /&gt;&lt;/a&gt;&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign="top" width="685"&gt;         &lt;table cellspacing="0" cellpadding="1" width="712" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://aka.ms/treasure18"&gt;&lt;strong&gt;&lt;font size="2"&gt;Branching and Merging Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Practical guidance for branching and merging strategies on Team Foundation Server. Also refer to the &lt;/font&gt;&lt;a href="http://aka.ms/treasure35"&gt;&lt;font size="1"&gt;Ranger Quick Response Sample Solutions&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt; if you have a need to implement a consistent branching model as part of team project or team creation process, that complies with this guidance&lt;/font&gt;.&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3051.image_5F00_thumb7_5F00_2327FEBF.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0250.image_5F00_thumb7_5F00_thumb_5F00_30FA44BA.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="650"&gt;&lt;a href="http://aka.ms/treasure35"&gt;&lt;strong&gt;&lt;font size="2"&gt;TFS Branch Tool&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt; | Quick Response Solution                   &lt;br /&gt;&lt;font size="1"&gt;Implement a consistent branching model as part of team project or team creation process, that complies with the &lt;/font&gt;&lt;a href="http://vsarbranchingguide.codeplex.com/"&gt;&lt;font size="1"&gt;Branching and Merging Guide&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt;.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="60" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4544.image_5F00_thumb51_5F00_29DB0842.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8357.image_5F00_thumb51_5F00_thumb_5F00_22BBCBCA.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="135"&gt;         &lt;h3&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2402.image50_5F00_10730508.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7215.image50_5F00_thumb_5F00_7E2A3E45.png" width="92" height="90" /&gt;&lt;/a&gt;&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign="top" width="685"&gt;         &lt;table cellspacing="0" cellpadding="1" width="712" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="649"&gt;&lt;a href="http://aka.ms/treasure36"&gt;&lt;strong&gt;&lt;font size="2"&gt;TFS Word Add-In&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;See above under “Reporting” for more information.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4666.image_5F00_thumb51_5F00_1006D213.png"&gt;&lt;img title="image_thumb51" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8284.image_5F00_thumb51_5F00_thumb_5F00_21E365E0.png" width="15" height="15" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="649"&gt;&lt;a href="http://aka.ms/treasure21"&gt;&lt;strong&gt;&lt;font size="2"&gt;TFS Process Template Customisation Guide&lt;/font&gt;&lt;/strong&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;font size="1"&gt;Practical guidance for Work Item Tracking (WIT) and Process Template customizations.&lt;/font&gt;&lt;/td&gt;                &lt;td valign="top" width="61" align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1263.image_5F00_thumb7_5F00_48B17C20.png"&gt;&lt;img title="image_thumb7" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb7" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5076.image_5F00_thumb7_5F00_thumb_5F00_1D6CE519.png" width="15" height="13" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10419410" width="1" height="1"&gt;</description></item><item><title>Treasure Map under the bonnet (hood) #2 … Windows 8 Styling</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/15/treasure-map-under-the-bonnet-hood-2-windows-8-styling.aspx</link><pubDate>Wed, 15 May 2013 12:10:24 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10418881</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10418881</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/15/treasure-map-under-the-bonnet-hood-2-windows-8-styling.aspx#comments</comments><description>&lt;p&gt;We are continuing from &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/13/treasure-map-under-the-bonnet-hood-1-windows-8-layout-controls.aspx"&gt;Treasure Map under the bonnet (hood) #1 … Windows 8 Layout Controls&lt;/a&gt; and will delve into styling, before looking at data binding in the post thereafter. The first impression usually last and therefore is it imperative that the look &amp;amp; feel and the &lt;strong&gt;style&lt;/strong&gt; of your solution is appealing, functional and contextual. For example, we chose the pirates and treasure hunt theme to emphasise the need to continuously explore and hunt for hidden jewels … in the case of this solution, ALM Readiness jewels.&lt;/p&gt;  &lt;h2&gt;   &lt;hr /&gt;Styling Recap&lt;/h2&gt;  &lt;p&gt;When we work with layout or other controls in XAML, we can control the colours, alignment, margins, width, size and other characteristics. &lt;/p&gt;  &lt;p&gt;Style definitions are typically defined in&lt;strong&gt; Common/StandardStyles.xaml&lt;/strong&gt;, or in separate resource files which are merged in &lt;strong&gt;App.xaml&lt;/strong&gt;. Alternatively you could assign styling to each control implicitly, or include styling definitions in the separate view XAML file between the &amp;lt;&lt;strong&gt;Page.Resources&lt;/strong&gt;/&amp;gt; tag … but, for the sake of maintainability we recommend that you minimise this scattered strategy.&lt;/p&gt;  &lt;p&gt;Let’s take a quick peek at the default behaviour if we use the Windows Store App GridApp template in Visual Studio:&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="830" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="32"&gt;&amp;nbsp;&lt;/td&gt;        &lt;td valign="top" width="796"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2022.image_5F00_5CC33D21.png"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6242.image_5F00_thumb_5F00_71488C9F.png" width="818" height="461" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="32"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6761.image_5F00_70DC59AA.png"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5265.image_5F00_thumb_5F00_37C57CA8.png" width="25" height="24" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="796"&gt;&lt;strong&gt;App.xaml&lt;/strong&gt; typically defines a resource dictionary which is a merger of separate resource dictionaries. Resource dictionaries are very useful for isolation localisation or feature specific content. &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="32"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1055.image_5F00_69BD1D32.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8737.image_5F00_thumb_5F00_02B8ED78.png" width="25" height="24" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="796"&gt;In this example the standard styles are contained in&amp;#160; the default &lt;strong&gt;StandardStyles.xaml&lt;/strong&gt; and merged in &lt;strong&gt;App.xaml&lt;/strong&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="32"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6014.image_5F00_4C874F5B.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4861.image_5F00_thumb_5F00_13043F64.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="796"&gt;The controls, in this case the page title text block, can be decorated with styling attributes, or use a resource style from the resource dictionary.&amp;#160; &lt;br /&gt;          &lt;br /&gt;&amp;lt;TextBlock x:Name=&amp;quot;pageTitle&amp;quot; Text=&amp;quot;{Binding Title}&amp;quot; &lt;strong&gt;Style=&amp;quot;{StaticResource PageHeaderTextStyle}&amp;quot;&lt;/strong&gt; Grid.Column=&amp;quot;1&amp;quot; IsHitTestVisible=&amp;quot;false&amp;quot;/&amp;gt;           &lt;br /&gt;In this example the Style attribute instructs that we should be looking for a style declaration called &lt;strong&gt;PageHeaderTextStyle&lt;/strong&gt;, which we find in &lt;strong&gt;StandardStyles.xaml:            &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0652.image_5F00_44FBDFEE.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8156.image_5F00_thumb_5F00_76F38078.png" width="596" height="119" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;My first and probably greatest mentor once frowned and looked at me with a grim look when I asked whether I could as a stupid question. He eventually mumbled through is huge and grey beard … “Willy, there is only one stupid question … the one you never asked”. From that day I always questioned and we now have questions for both our UX and Dev Lead gurus &lt;img class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5025.wlEmoticon_2D00_smile_5F00_7DA689FB.png" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;UX question time …&lt;/em&gt;&lt;/p&gt;  &lt;div align="center"&gt;   &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0257.image_5F00_thumb211_5F00_448FACF9.png"&gt;&lt;img title="image_thumb211" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb211" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8662.image_5F00_thumb211_5F00_thumb_5F00_0B78CFF7.png" width="75" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="554"&gt;           &lt;p align="left"&gt;&lt;em&gt;Should we be fiddling with layout and styles in XAML or Blend? When is it the right time to use which tool?&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="81"&gt;&amp;nbsp;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="92"&gt;&amp;nbsp;&lt;/td&gt;          &lt;td width="547"&gt;           &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/01/27/introducing-the-visual-studio-alm-rangers-anisha-pindoria.aspx"&gt;Anisha Pindoria&lt;/a&gt;, our UX specialist, replies …&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;Blend allows both designers and developers to design styles and layout visually. The same result can be achieved writing XAML, however, all visual aspects would have to be written and this can be time consuming. When styling, it is usually done best in Blend, as the designer/developer can visually see what is being applied and can be achieved in a few clicks. Fiddling in XAML is usually done when small tweaks are needed, or if Blend cannot visually aid in this.&lt;/em&gt;&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;For example, to create a simple rectangle with a style coloured red and centered in the middle of a grid…&lt;/em&gt;&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;In &lt;strong&gt;Blend&lt;/strong&gt;, you would draw a rectangle on the page, right-click on the new rectangle, create a new style and colour the rectangle red and finally change the horizontal and vertical alignments to Stretch.&lt;/em&gt;&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;In &lt;strong&gt;XAML&lt;/strong&gt; you would create the following…                &lt;br /&gt;&lt;/em&gt;&lt;em&gt;&amp;lt;Rectangle Height=&amp;quot;394&amp;quot; Margin=&amp;quot;0&amp;quot; Width=&amp;quot;394&amp;quot; Style=&amp;quot;{StaticResource RectangleStyle1}&amp;quot;/&amp;gt;&lt;/em&gt;&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;… then in the file where the styles are kept, the following needs to be added…               &lt;br /&gt;&lt;/em&gt;&lt;em&gt;&amp;lt;Style x:Key=&amp;quot;RectangleStyle1&amp;quot; TargetType=&amp;quot;Rectangle&amp;quot;&amp;gt;               &lt;br /&gt;&lt;/em&gt;&lt;em&gt;&amp;#160;&amp;#160; &amp;lt;Setter Property=&amp;quot;Fill&amp;quot; Value=&amp;quot;Red&amp;quot;/&amp;gt;               &lt;br /&gt;&lt;/em&gt;&lt;em&gt;&amp;lt;/Style&amp;gt;&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="86"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7028.image_5F00_6B5DC339.png"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1072.image_5F00_thumb_5F00_2ABB76CA.png" width="81" height="88" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;&lt;em&gt;Dev Lead question time …&lt;/em&gt;&lt;/p&gt;  &lt;div align="center"&gt;   &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5102.image_5F00_thumb211_5F00_5F98563A.png"&gt;&lt;img title="image_thumb211" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb211" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0334.image_5F00_thumb211_5F00_thumb_5F00_42628863.png" width="75" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="554"&gt;           &lt;p align="left"&gt;&lt;em&gt;When we have a gazillion styles, how do we quickly and easily find the definition of the style and how do we avoid contention by a style being defined in multiple style files?&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="81"&gt;&amp;nbsp;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="92"&gt;&amp;nbsp;&lt;/td&gt;          &lt;td width="547"&gt;           &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, replies …&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;Finding the style is really a matter of tooling and thankfully a lot of work was done to merge Blend &amp;amp; VS 2012 together so it is a lot easier to right click on an item and navigate to the current set option as well as have options for listing the other potential choices. &lt;/em&gt;&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;Contention is a real issue and something we make use of with the generic.xaml file which intentionally overrides some of the styles from standardsstyles.xaml to get the colouring right. At this point, it is still pretty manual to deal with bugs in this space.&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="86"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5554.Robert_2D00_MacLean_2D00_v3_5F00_thumb21_5F00_7DB92827.png"&gt;&lt;img title="Robert-MacLean-v3_thumb2" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="Robert-MacLean-v3_thumb2" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5444.Robert_2D00_MacLean_2D00_v3_5F00_thumb21_5F00_thumb_5F00_3663D235.png" width="80" height="87" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;h2&gt;   &lt;hr /&gt;Treasure Map Styling&lt;/h2&gt;  &lt;h4&gt;Styles Files&lt;/h4&gt;  &lt;p&gt;The ALM Readiness Treasure Map solution uses a strategy for referencing styles that is generally one of the better ways to share style definitions across your views and solution in general. &lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="266" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7752.image_5F00_1B283F2E.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3542.image_5F00_thumb_5F00_6211622B.png" width="25" height="24" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="164"&gt;The separate &lt;strong&gt;View&lt;/strong&gt; xaml files and the &lt;strong&gt;App.xaml&lt;/strong&gt; file contain no style information.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="100"&gt;&amp;nbsp;&lt;/td&gt;        &lt;td valign="top" width="164"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4812.image1_5F00_59AD8CD4.png"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8637.image1_5F00_thumb_5F00_11EC03ED.png" width="820" height="449" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0218.image_5F00_7FA33D2A.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6165.image_5F00_thumb_5F00_5F88306D.png" width="25" height="26" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="164"&gt;The &lt;strong&gt;App.xaml&lt;/strong&gt; file defines a resource dictionary that is merged from three style definition files, namely &lt;strong&gt;StandardStyles.xaml&lt;/strong&gt;, &lt;strong&gt;TreasureMap.xaml&lt;/strong&gt; and &lt;strong&gt;Generic.xaml&lt;/strong&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4011.image_5F00_3F6D23B0.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0702.image_5F00_thumb_5F00_7164C43A.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="164"&gt;         &lt;p&gt;The three style definition files, commonly referred to as ResourceDictionary, can be found in the Styles &lt;strong&gt;folder&lt;/strong&gt;.&lt;/p&gt;          &lt;ul&gt;           &lt;li&gt;The &lt;strong&gt;StandardStyles&lt;/strong&gt;.xaml&amp;#160; contains the definitions for the Microsoft default styles.&lt;/li&gt;            &lt;li&gt;The &lt;strong&gt;Generic&lt;/strong&gt;.xaml contains the default theme styles.&lt;/li&gt;            &lt;li&gt;The &lt;strong&gt;TreasureMap&lt;/strong&gt;.xaml, as the name implies, contains the treasure map specific styles. You can either stare at the cryptic xaml and ARGB format, or fire up Blend and peek into these files.               &lt;br /&gt;I personally prefer the Blend UI (below) compared to the xaml code, i.e. &amp;lt;Color x:Key=&amp;quot;Highlight&amp;quot;&amp;gt;#FFFFE400&amp;lt;/Color&amp;gt; &lt;img class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5025.wlEmoticon_2D00_smile_5F00_7DA689FB.png" /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1207.image_5F00_663B39F0.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8176.image_5F00_thumb_5F00_1B181961.png" width="304" height="319" /&gt;&lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;p&gt;&lt;em&gt;Dev Lead question time …&lt;/em&gt;&lt;/p&gt;  &lt;div align="center"&gt;   &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5023.image_5F00_73DDD02B.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8475.image_5F00_thumb_5F00_68B445E1.png" width="71" height="71" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="554"&gt;           &lt;p align="left"&gt;&lt;em&gt;Why are the StandardStyles and Generic styles not all in one ResourceDictionary? They appear to be MS defined and thus standard … in which case they could be combined?&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="81"&gt;&amp;#160;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="92"&gt;&amp;#160;&lt;/td&gt;          &lt;td width="547"&gt;           &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, replies …&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;StandardStyles.xaml - this is the one that comes with the project when you do a file -&amp;gt; new project. We do not fiddle here, or we try not to &lt;img class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5025.wlEmoticon_2D00_smile_5F00_7DA689FB.png" /&gt;&lt;/em&gt;&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;Generic.xaml - This is a generated file (generated using Hammer.Pants - &lt;/em&gt;&lt;a href="https://github.com/Code52/HAMMER"&gt;&lt;em&gt;https://github.com/Code52/HAMMER&lt;/em&gt;&lt;/a&gt;&lt;em&gt;) that takes the out of the box styles and applies our colours to it so we get a more consistent application of our colours. It doesn't cover all the styles just a subset. &lt;/em&gt;&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;Could they be combined? Yes - but if Microsoft ever updates either (in the template or in generic.xaml in the SDK) having them separate will mean it is easier to update them.&lt;/em&gt;&amp;#160;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="86"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8103.Robert_2D00_MacLean_2D00_v3_5F00_33A7B6B1.png"&gt;&lt;img title="Robert MacLean v3" style="display: inline; background-image: none;" border="0" alt="Robert MacLean v3" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7345.Robert_2D00_MacLean_2D00_v3_5F00_thumb_5F00_4B5EEE17.png" width="69" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;Styles Examples&lt;/h4&gt;  &lt;p&gt;We peek into the first row &lt;strong&gt;&amp;lt;Grid.Row=”0”/&amp;gt;&lt;/strong&gt; of our Control View in this example, which contains a &lt;strong&gt;Button&lt;/strong&gt; and a &lt;strong&gt;TextBlock&lt;/strong&gt; action control.&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="819" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="29"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2577.image_5F00_59313412.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8424.image_5F00_thumb_5F00_39162755.png" width="25" height="24" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="788"&gt;The &lt;strong&gt;Button&lt;/strong&gt; uses the &lt;strong&gt;BackButtonStyle&lt;/strong&gt;, which is defined in StandardStyle.xaml.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="29"&gt;&amp;#160;&lt;/td&gt;        &lt;td valign="top" width="788"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5810.image_5F00_6B0DC7DF.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7317.image_5F00_thumb_5F00_064620E1.png" width="819" height="478" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="29"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3107.image_5F00_097808C9.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8877.image_5F00_thumb_5F00_6552AE39.png" width="25" height="26" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="788"&gt;The &lt;strong&gt;TextBlock&lt;/strong&gt; uses the &lt;strong&gt;PageHeaderTextStyle&lt;/strong&gt;, which is also defined StandardStyle.xaml and thus based on the standard styles.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="29"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0044.image_5F00_695CFC0B.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5734.image_5F00_thumb_5F00_30461F09.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="788"&gt;The &lt;strong&gt;TextBlock&lt;/strong&gt; font is based on &lt;strong&gt;TitleFont&lt;/strong&gt; style, which is defined in TreasureMap.xaml and uses the exciting Windlass font.           &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1524.image_5F00_772F4206.png"&gt;&lt;img title="image" style="border: 0px currentcolor; margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2133.image_5F00_thumb_5F00_102B124C.png" width="240" height="47" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="29"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1537.image_5F00_05018802.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4760.image_5F00_thumb_5F00_36F9288C.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="788"&gt;The TextBlock further defines the Foreground as TitleBrush, which is also found in TreasureMap.xaml and is based on the Title colour&amp;#160; #&lt;strong&gt;FFFFCD09&lt;/strong&gt; , or for those more visual &lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7723.image_5F00_7DE24B89.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3835.image_5F00_thumb_5F00_6B69D507.png" width="169" height="18" /&gt;&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Last question for our Dev Lead …&lt;/em&gt;&lt;/p&gt;  &lt;div align="center"&gt;   &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8233.image_5F00_3252F805.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6180.image_5F00_thumb_5F00_1237EB48.png" width="71" height="71" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="554"&gt;           &lt;p align="left"&gt;&lt;em&gt;Should we not add names &lt;/em&gt;&lt;strong&gt;x:Name=&amp;quot;&amp;quot;&lt;/strong&gt; &lt;em&gt;to all controls for ease of Coded UI testing, when support is available for Windows Store Apps? &lt;/em&gt;&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;For Coded UI support info see &lt;a title="http://msdn.microsoft.com/en-us/library/dd380742.aspx" href="http://msdn.microsoft.com/en-us/library/dd380742.aspx"&gt;http://msdn.microsoft.com/en-us/library/dd380742.aspx&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="81"&gt;&amp;nbsp;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="92"&gt;&amp;nbsp;&lt;/td&gt;          &lt;td width="547"&gt;           &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, replies …&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;First we should only add properties to things that actually need it, and many of our controls do not need to be exposed to any sort of automation. Since we have followed MVVM we have a pretty good way of testing the logic without automation, so really what we need UI automation for is a small subset. Secondly, for Coded UI or any UI automation really there is a much better option: AutomationProperties (&lt;/em&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windows/apps/br209081.aspx"&gt;&lt;em&gt;http://msdn.microsoft.com/en-us/library/windows/apps/br209081.aspx&lt;/em&gt;&lt;/a&gt;&lt;em&gt;)&lt;/em&gt;&amp;#160;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="86"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2313.Robert_2D00_MacLean_2D00_v3_5F00_200A3143.png"&gt;&lt;img title="Robert MacLean v3" style="display: inline; background-image: none;" border="0" alt="Robert MacLean v3" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3806.Robert_2D00_MacLean_2D00_v3_5F00_thumb_5F00_02B4D979.png" width="69" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h2&gt;   &lt;hr /&gt;Next?&lt;/h2&gt;  &lt;p&gt;We planned to cover data binding next, but check-in events have made me realise that changes to the layout may deserve a quick peek before we continue. In the next post we will “briefly” review the latest changes and ask the team to elaborate on the churn.&lt;/p&gt;  &lt;h2&gt;   &lt;hr /&gt;References&lt;/h2&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://aka.ms/vsartmaptoc"&gt;ALM Readiness Treasure Map (Table of Content) TOC Post&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://aka.ms/vsartmapapp"&gt;ALM Readiness Treasure Map Windows Store App&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Previous posts:&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/13/treasure-map-under-the-bonnet-hood-1-windows-8-layout-controls.aspx"&gt;Treasure Map under the bonnet (hood) #1 … Windows 8 Layout Controls&lt;/a&gt;&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10418881" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Pirates/">Pirates</category></item><item><title>Treasure Map under the bonnet (hood) #1 … Windows 8 Layout Controls</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/13/treasure-map-under-the-bonnet-hood-1-windows-8-layout-controls.aspx</link><pubDate>Mon, 13 May 2013 16:00:16 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10418154</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10418154</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/13/treasure-map-under-the-bonnet-hood-1-windows-8-layout-controls.aspx#comments</comments><description>&lt;p&gt;In this series we will lift the bonnet (most Commonwealth countries will understand) or hood (US/Canada) of the &lt;a href="http://aka.ms/vsartmaptoc"&gt;ALM Treasure Map Solution&lt;/a&gt; to (a) perform a code review, (b) review Windows 8 application programming concepts and (c) document the journey to ensure transparency for the team. &lt;/p&gt;  &lt;p align="center"&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;font color="#c0504d"&gt;IMPORTANT&lt;/font&gt;&lt;/strong&gt; &lt;/font&gt;    &lt;br /&gt;&lt;font color="#c0504d"&gt;We are trying to be very transparent in these blog posts. This means that we may (are) sharing early (not final) bits, proposed (not implemented) features and may (will) change existing and new features without prior warning. In fact our Dev Lead has already tweaked some of the XAML code invalidating a few of the documented findings as I am typing this post.&lt;/font&gt;&lt;/p&gt;  &lt;h2&gt;   &lt;hr /&gt;Quick “Recap”&lt;/h2&gt;  &lt;h4&gt;Controls&lt;/h4&gt;  &lt;p&gt;Windows 8 has a comprehensive controls stack, which include the &lt;strong&gt;layout&lt;/strong&gt;&amp;#160; and the &lt;strong&gt;action&lt;/strong&gt; controls. The latter are used by the user to interact with, include controls such as TextBlock, TextBox, Button, Checkbox, HyperlinkButton,&amp;#160; ComboBox and RadioButton, and are out-of-scope for this journey.&lt;/p&gt;  &lt;h4&gt;Layout Controls &lt;/h4&gt;  &lt;p&gt;When we create a new Windows Store solution in Visual Studio we have the option of using a Blank, Grid and Split App template. Selecting the Blank App we get a blank page, similar to an artist getting a clean sheet of drawing paper, onto which we can add layout controls such as &lt;strong&gt;Grid&lt;/strong&gt;, &lt;strong&gt;StackPanel&lt;/strong&gt; or &lt;strong&gt;Canvas&lt;/strong&gt;.&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="845" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="260"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0525.image_5F00_39AE1A94.png"&gt;&lt;img title="image" style="margin: 0px; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7484.image_5F00_thumb_5F00_2F997969.png" width="244" height="80" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td width="147"&gt;&lt;strong&gt;Grid Layout Control&lt;/strong&gt;&lt;/td&gt;        &lt;td width="436"&gt;The &lt;strong&gt;Grid&lt;/strong&gt; layout control offers a table-style layout approach, using columns and rows.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="264"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4353.image_5F00_1D50B2A7.png"&gt;&lt;img title="image" style="margin: 0px; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5342.image_5F00_thumb_5F00_76166971.png" width="244" height="80" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td width="146"&gt;&lt;strong&gt;Stack Layout Control&lt;/strong&gt;&lt;/td&gt;        &lt;td width="433"&gt;The &lt;strong&gt;Stack&lt;/strong&gt; layout control offers a “stack” layout approach, which can be vertical (as shown on the left) or horizontal. There are no columns or rows, just controls such as Buttons, which are stacked.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="268"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1145.image_5F00_1CE47FB2.png"&gt;&lt;img title="image" style="margin: 0px; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3782.image_5F00_thumb_5F00_5CAE6637.png" width="244" height="80" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td width="145"&gt;&lt;strong&gt;Canvas Layout Control&lt;/strong&gt;&lt;/td&gt;        &lt;td width="430"&gt;The &lt;strong&gt;Canvas &lt;/strong&gt;layout control offers a landscape that can be used to position controls, i.e. Buttons, using absolute positioning.&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;h2&gt;   &lt;hr /&gt;Treasure Map “Category” View&lt;/h2&gt;  &lt;div align="center"&gt;   &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3568.image_5F00_6E8AFA04.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1018.image_5F00_thumb_5F00_4B7A8894.png" width="75" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;          &lt;td width="554"&gt;           &lt;p align="left"&gt;&lt;em&gt;We half expected the ALM Readiness Treasure map to use the Canvas layout control for the home page, but when we peruse the code we&amp;#160; notice that the Grid layout is dominant. Why?&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="81"&gt;&amp;#160;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="92"&gt;&amp;#160;&lt;/td&gt;          &lt;td width="547"&gt;           &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, replies …&lt;/p&gt;            &lt;p align="left"&gt;&lt;em&gt;The grid layout is the most common layout tool because it allows for a lot of flexibility and control. The ability to embed grid's within grid's allows them to be kept nice and simple. Canvas is great but really is more for drawing than layout.&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="86"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2308.Robert_2D00_MacLean_2D00_v3_5F00_3212855A.png"&gt;&lt;img title="Robert MacLean v3" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="Robert MacLean v3" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8015.Robert_2D00_MacLean_2D00_v3_5F00_thumb_5F00_2D1C5979.png" width="76" height="83" /&gt;&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;h4&gt;Starting with the Category View Page&lt;/h4&gt;  &lt;p&gt;We will start our exploration by investigating the XAML code that defines the Category View as shown below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3857.image_5F00_477C4C90.png"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4477.image_5F00_thumb_5F00_1F95FAD9.png" width="414" height="252" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="847" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="10"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2350.image_5F00_44471250.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2112.image_5F00_thumb_5F00_304D7FBA.png" width="25" height="26" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="836"&gt;The &amp;lt;Page/&amp;gt; encapsulates the content that can be navigated to within our Category view. It maps to the Category class, which inherits from the Page user control class as shown by the code behind:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;pre class="code"&gt;&lt;span style="background: white; color: blue;"&gt;namespace &lt;/span&gt;&lt;span style="background: white; color: black;"&gt;Microsoft.ALMRangers.VsarTreasureMap.WindowsStoreApp.Views
{
    &lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;using &lt;/span&gt;&lt;span style="background: white; color: black;"&gt;Windows.UI.Xaml.Controls;

    &lt;/span&gt;&lt;span style="background: white; color: gray;"&gt;/// &amp;lt;summary&amp;gt;
    /// &lt;/span&gt;&lt;span style="background: white; color: green;"&gt;A page that displays an overview of a single group, including a preview of the items
    &lt;/span&gt;&lt;span style="background: white; color: gray;"&gt;/// &lt;/span&gt;&lt;span style="background: white; color: green;"&gt;within the group.
    &lt;/span&gt;&lt;span style="background: white; color: gray;"&gt;/// &amp;lt;/summary&amp;gt;
    &lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;public sealed partial class &lt;/span&gt;&lt;span style="background: white; color: rgb(43, 145, 175);"&gt;Category &lt;/span&gt;&lt;span style="background: white; color: black;"&gt;: &lt;/span&gt;&lt;span style="background: white; color: rgb(43, 145, 175);"&gt;&lt;font style="background-color: rgb(255, 255, 0);"&gt;Page&lt;/font&gt;
    &lt;/span&gt;&lt;span style="background: white; color: black;"&gt;{
        &lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;public &lt;/span&gt;&lt;span style="background: white; color: black;"&gt;Category()
        {
            &lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;this&lt;/span&gt;&lt;span style="background: white; color: black;"&gt;.InitializeComponent();
        }
    }
}&lt;/span&gt;&lt;/pre&gt;
      &lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="10"&gt;&amp;#160;&lt;/td&gt;

      &lt;td valign="top" width="836"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1616.image_5F00_5E9FCAF3.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2742.image_5F00_thumb_5F00_5B3E334B.png" width="800" height="277" /&gt;&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="10"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2068.image_5F00_49392A32.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8420.image_5F00_thumb_5F00_5B15BDFF.png" width="25" height="26" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="836"&gt;The &lt;strong&gt;&amp;lt;Grid/&amp;gt;&lt;/strong&gt; XAML tag defines the Grid layout control, offering a flexible table-like, into which to add columns and rows. In this latest version of the Category View we have no &lt;strong&gt;Grid.ColumnDefinition&lt;/strong&gt; tags, which means we have one default column using all space available.&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="10"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7652.image_5F00_01E3D440.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6675.image_5F00_thumb_5F00_28B1EA80.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="836"&gt;The &lt;strong&gt;Grid.RowDefinitions&lt;/strong&gt; tags define an area that consists of 3 rows. The &lt;strong&gt;Height&lt;/strong&gt; attribute defines that the first row is fixed at 120 pixels, the second at 20 pixels and the third using the remaining space available. 

        &lt;br /&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, or dev lead, recommends that it may be good point to mention the &amp;quot;C silhouette&amp;quot; (see &lt;a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh464920.aspx"&gt;http://msdn.microsoft.com/en-us/library/windows/apps/hh464920.aspx&lt;/a&gt;) that Windows store apps should have, and that by using those rows we are doing the top stroke of the C.&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p&gt;The few lines of XAML code have defined a Grid that spans 2 columns by 3 rows as shown in the designer on the left. There are more attributes, for example Background, which we intentionally ignore in this post as we are focusing on layout. &lt;/p&gt;

&lt;div align="center"&gt;
  &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;
      &lt;tr&gt;
        &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3568.image_5F00_6E8AFA04.png"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1018.image_5F00_thumb_5F00_4B7A8894.png" width="75" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;

        &lt;td width="554"&gt;&lt;em&gt;
            &lt;p align="left"&gt;In one of the interim screenshots we noticed a strange Grid.RowDefinition tag, which was cleaned up by Robert, but is worth mentioning and asking a question. 
              &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2275.image_5F00_390627C5.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8078.image_5F00_thumb_5F00_05C9EE5C.png" width="386" height="170" /&gt;&lt;/a&gt;&lt;/p&gt;

            &lt;p align="left"&gt;Are we correct in interpreting that the left column is 552/131 times as wide as the right column? Why would anyone use such weird weighting?&lt;/p&gt;
          &lt;/em&gt;&lt;/td&gt;

        &lt;td valign="top" width="81"&gt;&amp;#160;&lt;/td&gt;
      &lt;/tr&gt;

      &lt;tr&gt;
        &lt;td valign="top" width="92"&gt;&amp;#160;&lt;/td&gt;

        &lt;td width="547"&gt;
          &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, replies …&lt;/p&gt;

          &lt;ol&gt;
            &lt;li&gt;
              &lt;div align="left"&gt;&lt;em&gt;Correct&lt;/em&gt;&lt;/div&gt;
            &lt;/li&gt;

            &lt;li&gt;
              &lt;div align="left"&gt;&lt;em&gt;No idea. My gut says someone dragged it to that side by mistake.&lt;/em&gt;&lt;/div&gt;
            &lt;/li&gt;
          &lt;/ol&gt;
        &lt;/td&gt;

        &lt;td valign="top" width="86"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2308.Robert_2D00_MacLean_2D00_v3_5F00_3212855A.png"&gt;&lt;img title="Robert MacLean v3" style="display: inline; background-image: none;" border="0" alt="Robert MacLean v3" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8015.Robert_2D00_MacLean_2D00_v3_5F00_thumb_5F00_2D1C5979.png" width="76" height="83" /&gt;&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
    &lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;

&lt;h4&gt;Digging into the first Row&lt;/h4&gt;

&lt;table cellspacing="0" cellpadding="1" width="200" border="0"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2061.image_5F00_6F2EDA88.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7282.image_5F00_thumb_5F00_680F9E10.png" width="25" height="26" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;As with any proper indexing scheme the first row is indexed by 0 (zero) using the attribute &lt;strong&gt;Grid.Row&lt;/strong&gt; –&amp;gt;&amp;#160; &lt;span style="background: white; color: blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="background: white; color: rgb(163, 21, 21);"&gt;Grid &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;Grid.Row&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;0&amp;quot;&amp;gt;. &lt;font color="#000000"&gt;The &lt;strong&gt;Grid.ColumnSpan&lt;/strong&gt; attribute defines that the content will span 2 columns. 

            &lt;br /&gt;&lt;strong&gt;NOTE&lt;/strong&gt;: If you are looking at the latest code this has vanished as part of the dev lead’s continuous tweaking.&lt;/font&gt;&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&amp;#160;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2804.image11_5F00_6EC2A793.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6327.image11_5F00_thumb_5F00_02AC145D.png" width="796" height="308" /&gt;&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1462.image_5F00_4DFB9254.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0474.image_5F00_thumb_5F00_74C9A894.png" width="25" height="26" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;The first row contains &amp;lt;Grid.&lt;strong&gt;Row&lt;/strong&gt;Definitions/&amp;gt; defines that we have two rows within the row. The &lt;strong&gt;Height&lt;/strong&gt; attribute defines weighted widths which is clearly visible in the designer.&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4760.image_5F00_6DAA6C1C.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2134.image_5F00_thumb_5F00_296A04D0.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;The &amp;lt;Grid.&lt;strong&gt;Column&lt;/strong&gt;Definitions/&amp;gt; tag defines two columns within the row. The left column is 140 pixels wide and the right column using the remaining space available. &lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3034.image_5F00_0D5945E5.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1300.image_5F00_thumb_5F00_4918DE98.png" width="25" height="26" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;
        &lt;p&gt;The first magic within the grid’s first row are the two embedded action controls.&lt;/p&gt;

        &lt;ul&gt;
          &lt;li&gt;In the first column specified by Grid.Column=”0” we have a Button enabling the user to click or touch to force an action, which is centered and styled as the BackButtonStyle. 
            &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4520.image_5F00_2D081FAD.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4135.image_5F00_thumb_5F00_08769229.png" width="208" height="83" /&gt;&lt;/a&gt; 

            &lt;br /&gt;&lt;span style="background: white; color: blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="background: white; color: rgb(163, 21, 21);"&gt;Button &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;Command&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="background: white; color: rgb(163, 21, 21);"&gt;Binding &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;GoBack&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;}&amp;quot; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;Grid.Column&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;0&amp;quot; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;Style&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="background: white; color: rgb(163, 21, 21);"&gt;StaticResource &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;BackButtonStyle&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;}&amp;quot; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;
              &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Margin&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;0,32,0,0&amp;quot; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;VerticalAlignment&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;Center&amp;quot; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;HorizontalAlignment&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;Center&amp;quot; /&amp;gt;&lt;/span&gt;&lt;/li&gt;
        &lt;/ul&gt;

        &lt;p&gt;&lt;span style="background: white; color: blue;"&gt;&lt;/span&gt;&lt;/p&gt;

        &lt;ul&gt;
          &lt;li&gt;&lt;span style="background: white; color: blue;"&gt;&lt;/span&gt;The second coloumn, Grid.Column=”1” contains a TextBlock control, which is the most basic control available in XAML and used to display text. Looking at the screenshot at the top of this post, realise that ths action control is used to display the “&lt;strong&gt;Tooling&lt;/strong&gt;” text. 

            &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0250.image_5F00_7318DCC0.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1832.image_5F00_thumb_5F00_007EEFC7.png" width="208" height="73" /&gt;&lt;/a&gt; 

            &lt;br /&gt;&lt;span style="background: white; color: blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="background: white; color: rgb(163, 21, 21);"&gt;TextBlock &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;Grid.Column&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;1&amp;quot; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;Style&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="background: white; color: rgb(163, 21, 21);"&gt;StaticResource &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;PageHeaderTextStyle&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;}&amp;quot; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;Text&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="background: white; color: rgb(163, 21, 21);"&gt;Binding &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;CategoryTitle&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;}&amp;quot; 
              &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;Margin&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;0,0,0,20&amp;quot; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;FontFamily&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="background: white; color: rgb(163, 21, 21);"&gt;StaticResource &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;TitleFont&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;}&amp;quot; &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;Foreground&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="background: white; color: rgb(163, 21, 21);"&gt;StaticResource &lt;/span&gt;&lt;span style="background: white; color: red;"&gt;TitleBrush&lt;/span&gt;&lt;span style="background: white; color: blue;"&gt;}&amp;quot; /&amp;gt;&lt;/span&gt;&lt;/li&gt;
        &lt;/ul&gt;

        &lt;p&gt;&lt;span style="background: white; color: blue;"&gt;&lt;/span&gt;Again we defer the rest of the styling, sizing and binding attributes to future posts. Watch the space &lt;img class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6644.wlEmoticon_2D00_smile_5F00_190E8D17.png" /&gt;&lt;/p&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;h4&gt;Ignoring the second Row&lt;/h4&gt;

&lt;p&gt;The second row, which would be &lt;strong&gt;&amp;lt;Grid Grid.Row=”1”/&amp;gt;&lt;/strong&gt; is untraceable in the XAML code, which simply means that we are not defining any additional attributes to it. It still exists, occupying 20 pixels of the real estate as defined by the &lt;strong&gt;&amp;lt;Grid.RowDefinitions/&amp;gt;&lt;/strong&gt; tags on the page.&lt;/p&gt;

&lt;h4&gt;Digging into the third Row&lt;/h4&gt;

&lt;p&gt;Lastly, for this adventure, we peek into the third and last row of the main page grid.&lt;/p&gt;

&lt;table cellspacing="0" cellpadding="1" width="200" border="0"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1030.image_5F00_2AEB20E4.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8304.image_5F00_thumb_5F00_66AAB997.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;The third row is further divided into three columns. 
        &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0726.image_5F00_4A99FAAC.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7103.image_5F00_thumb_5F00_2F812B9E.png" width="240" height="173" /&gt;&lt;/a&gt; 

        &lt;br /&gt;The left is 450 pixels wide, the second is 20 pixels and the third uses the remaining width available, matching the 0,1 and 2 areas shown respectively. 

        &lt;br /&gt;&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&amp;#160;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3201.image61_5F00_4E579F7C.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3531.image61_5F00_thumb_5F00_49B16EF5.png" width="800" height="407" /&gt;&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3124.image_5F00_54221D48.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0815.image_5F00_thumb_5F00_5AD526CB.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;
        &lt;p&gt;The first column &lt;strong&gt;&amp;lt;Grid Grid.Row=”0”/&amp;gt;&lt;/strong&gt; defines two controls which will inhabit the row:&lt;/p&gt;

        &lt;ol&gt;
          &lt;li&gt;The &lt;strong&gt;&amp;lt;Image/&amp;gt;&lt;/strong&gt; control is used to display images that match the category item, i.e. Tooling.&lt;/li&gt;

          &lt;li&gt;The &lt;strong&gt;&amp;lt;TextBlock/&amp;gt;&lt;/strong&gt; control is used to display basic text, which describes the category in more detail.&lt;/li&gt;
        &lt;/ol&gt;

        &lt;p&gt;We will explore where the image and text comes from and how it is bound to these controls in one of the next posts.&lt;/p&gt;
      &lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4628.image_5F00_7E8E4E65.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1817.image_5F00_thumb_5F00_6C4587A3.png" width="25" height="26" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;The third column &amp;lt;&lt;strong&gt;Grid Grid.Row=”2”/&amp;gt;&lt;/strong&gt; introduces one main occupant of type &lt;strong&gt;&amp;lt;ListView/&amp;gt;&lt;/strong&gt;. The ListView allows a flexible presentation and customised view of information, which matches the category items such as the VM Factory and Word Add-In shown in screen snippets above.&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7776.image_5F00_72F89126.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3580.image_5F00_thumb_5F00_4BBE47F1.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;If we dig into the &lt;strong&gt;&amp;lt;ListView/&amp;gt; &lt;/strong&gt;we notice that each item is split into three rows of height 300, 5 and remaining height within the grid cell. The top row contains the image associated with the category item and the bottom row two &lt;strong&gt;&amp;lt;TextBlock/&amp;gt;&lt;/strong&gt; controls, one for the category item title and the other for the description .&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p align="left"&gt;Last questions for our Dev Lead for today …&lt;/p&gt;

&lt;div align="center"&gt;
  &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;
      &lt;tr&gt;
        &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7288.image_5F00_3975812F.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7103.image_5F00_thumb_5F00_764A0301.png" width="75" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;

        &lt;td width="554"&gt;
          &lt;p align="left"&gt;&lt;em&gt;Why are we using the ListView and not the ScrollViewer control?&lt;/em&gt;&lt;/p&gt;
        &lt;/td&gt;

        &lt;td valign="top" width="81"&gt;&amp;#160;&lt;/td&gt;
      &lt;/tr&gt;

      &lt;tr&gt;
        &lt;td valign="top" width="92"&gt;&amp;#160;&lt;/td&gt;

        &lt;td width="547"&gt;
          &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, replies …&lt;/p&gt;
          &lt;em&gt;
            &lt;p align="left"&gt;Most important is because of ListItem.ItemTemplate - this allows us to style each item the same way. So we bind the data to the &lt;em&gt;ListView &lt;/em&gt;and the items are (basically) handled. Secondly ListItem uses ScrollViewer internally, in fact in v1 we just had some standard styling but for v2 since we are panning horizontally it meant custom styling of the internal scroll view to pan horizontally.&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;
          &lt;/em&gt;&lt;/td&gt;

        &lt;td valign="top" width="86"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1602.Robert_2D00_MacLean_2D00_v3_5F00_34CF50A8.png"&gt;&lt;em&gt;&lt;img title="Robert MacLean v3" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="Robert MacLean v3" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7367.Robert_2D00_MacLean_2D00_v3_5F00_thumb_5F00_50503EAC.png" width="76" height="83" /&gt;&lt;/em&gt;&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
    &lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;

&lt;p align="left"&gt;&lt;/p&gt;

&lt;div align="center"&gt;
  &lt;table cellspacing="0" cellpadding="1" width="725" align="center" border="0"&gt;&lt;tbody&gt;
      &lt;tr&gt;
        &lt;td valign="top" width="88"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3644.image_5F00_2972029F.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2388.image_5F00_thumb_5F00_0AA7A08F.png" width="77" height="77" /&gt;&lt;/a&gt;&lt;/td&gt;

        &lt;td width="554"&gt;
          &lt;p align="left"&gt;&lt;em&gt;Why are we not using the GridView control? Is the ListView not intended for &lt;strong&gt;vertical&lt;/strong&gt; layout, whereas the v2 treasure map goes horizontal?&lt;/em&gt;&lt;/p&gt;
        &lt;/td&gt;

        &lt;td valign="top" width="81"&gt;&amp;#160;&lt;/td&gt;
      &lt;/tr&gt;

      &lt;tr&gt;
        &lt;td valign="top" width="92"&gt;&amp;#160;&lt;/td&gt;

        &lt;td width="547"&gt;
          &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert MacLean&lt;/a&gt;, our dev lead, replies …&lt;/p&gt;
          &lt;em&gt;
            &lt;p align="left"&gt;The reason is the ListView.ItemTemplate gives us a lot of control of the individual items in the ListView. This allows us to have great control of the content. The ListView internally uses a VirtualisingStackPanel and so we can just change that through stying to get a horizontal list (instead of a verticle list). The GridView is more concerned with a different layout where we have tiles, like the start screen, which is not a good fit for our content.&lt;/p&gt;
          &lt;/em&gt;&lt;/td&gt;

        &lt;td valign="top" width="86"&gt;&lt;a&gt;&lt;em&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0167.Robert_2D00_MacLean_2D00_v3_5F00_6FEADEA8.png"&gt;&lt;img title="Robert MacLean v3" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="Robert MacLean v3" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4744.Robert_2D00_MacLean_2D00_v3_5F00_thumb_5F00_546DDA74.png" width="76" height="83" /&gt;&lt;/a&gt;&lt;/em&gt;&lt;/td&gt;
      &lt;/tr&gt;
    &lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;

&lt;p align="left"&gt;&amp;#160;&lt;/p&gt;

&lt;hr /&gt;

&lt;h2&gt;Do we really have to fiddle with XAML in the visual world?&lt;/h2&gt;

&lt;p&gt;If you are a visual thinking person and dislike colour definitions such as #FFFFCD09 for the title text colour, you should fire up this tool:&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7245.image_5F00_3085031A.png"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0827.image_5F00_thumb_5F00_68C37A32.png" width="244" height="93" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;table cellspacing="0" cellpadding="1" width="200" border="0"&gt;&lt;tbody&gt;
    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4578.image_5F00_4763D496.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5657.image_5F00_thumb_5F00_02B73A55.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;We get a great IDE which displays a designer view we know from Visual Studio.&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&amp;#160;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1665.image_5F00_1493CE22.png"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4857.image_5F00_thumb_5F00_78366634.png" width="755" height="423" /&gt;&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2604.image_5F00_55FE5AAE.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1526.image_5F00_thumb_5F00_5CB16431.png" width="25" height="25" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;The page objects are displayed in a user friendly tree view.&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td valign="top" width="100"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4353.image_5F00_27A4D501.png"&gt;&lt;img title="image" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3276.image_5F00_thumb_5F00_4E72EB41.png" width="25" height="26" /&gt;&lt;/a&gt;&lt;/td&gt;

      &lt;td valign="top" width="100"&gt;The colours used are displayed in their true colour, rather than the cryptic ARGB format, which is a set of hexadecimal values that define colour codes. See &lt;a title="http://en.wikipedia.org/wiki/RGBA_color_space" href="http://en.wikipedia.org/wiki/RGBA_color_space"&gt;http://en.wikipedia.org/wiki/RGBA_color_space&lt;/a&gt; for more information on the RBGA colour space.&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;h2&gt;
  &lt;hr /&gt;What’s Next?&lt;/h2&gt;

&lt;p&gt;Now that we have explored the most important concept of the user interface which is the &lt;strong&gt;Layout&lt;/strong&gt;, we will dig deeper into the same XAML code and scratch the surface of &lt;strong&gt;styling&lt;/strong&gt; and &lt;strong&gt;data binding&lt;/strong&gt;, as used in the Treasure Map solution.&lt;/p&gt;

&lt;h2&gt;References&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Demo: &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/26/alm-readiness-treasure-map-v2-show-what-we-have-for-sprint-10-april.aspx"&gt;ALM Readiness Treasure Map v2 – Show what we have for Sprint 10 (April)&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;Handy cheat sheet: &lt;a href="https://vsarguidance.codeplex.com/downloads/get/616570"&gt;Win8-Kbd-CheatSheet.zip&lt;/a&gt; 

    &lt;br /&gt;&lt;a href="https://vsarguidance.codeplex.com/downloads/get/616570"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0167.image_5F00_4753AEC9.png" width="137" height="78" /&gt;&lt;/a&gt;&lt;/li&gt;

  &lt;li&gt;Our team home: &lt;a href="http://aka.ms/vsartmaptoc"&gt;TOC - ALM Readiness Treasure Map&lt;/a&gt; 

    &lt;br /&gt;&lt;a href="http://aka.ms/vsartmaptoc"&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/resized-image.ashx/__size/80x80/__key/communityserver-components-userfiles/00-00-17-94-74-Attached+Files/5040.rmap.png" /&gt;&lt;/a&gt;&amp;#160;&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10418154" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Study+Notes/">Study Notes</category><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Pirates/">Pirates</category></item><item><title>What has changed in the home of the ALM Rangers during FY13?</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/10/what-has-changed-in-the-home-of-the-alm-rangers-during-fy13.aspx</link><pubDate>Fri, 10 May 2013 20:00:51 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10417760</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10417760</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/10/what-has-changed-in-the-home-of-the-alm-rangers-during-fy13.aspx#comments</comments><description>&lt;p&gt;We are nearing the end of the financial year FY13, which means we are starting calibrations, satisfaction surveys and the analysis of the good, the bad and the ugly. The intention is to learn from the past and continue our quest for continuous improvement and evolution, especially for our strategic and long-term projects.&lt;/p&gt;  &lt;h2&gt;   &lt;hr /&gt;&lt;/h2&gt;  &lt;h1&gt;Some of the highlights&lt;/h1&gt;  &lt;table cellspacing="0" cellpadding="1" width="838" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td width="66"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4657.image_5F00_58ADF354.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5734.image_5F00_thumb_5F00_713D90A4.png" width="102" height="187" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td width="455"&gt;… none of the highlights would be possible without the &lt;strong&gt;competent&lt;/strong&gt; and &lt;strong&gt;passionate&lt;/strong&gt; ALM Rangers community, which &lt;strong&gt;ROCKS&lt;/strong&gt;!           &lt;br /&gt;          &lt;br /&gt;I am humbled amongst these champions and proud to be a member of the Rangers family!&lt;/td&gt;        &lt;td valign="top" width="315"&gt;         &lt;p align="right"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5342.image_5F00_50B650F2.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6747.image_5F00_thumb_5F00_532B48E4.png" width="308" height="231" /&gt;&lt;/a&gt;&lt;a href="http://en.wikipedia.org/wiki/Hoba_meteorite"&gt;http://en.wikipedia.org/wiki/Hoba_meteorite&lt;/a&gt;&amp;#160; ... a good example of a real 60 ton “&lt;strong&gt;rock&lt;/strong&gt;” &lt;img class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3108.wlEmoticon_2D00_smile_5F00_6F0C580F.png" /&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="836" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="107"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4201.image_5F00_thumb2_5F00_15DA6E50.png"&gt;&lt;img title="image_thumb[2]" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb[2]" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6170.image_5F00_thumb2_5F00_thumb_5F00_2097C5A5.png" width="75" height="75" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td width="727"&gt;&lt;strong&gt;What so much text to read?&lt;/strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;No need to panic. This is a summary of the phenomenal achievements by the ALM Rangers and you do not have to read this post word by word. Focus on the first column of each area to get an overview and optionally refer to the reference information included in subsequent columns.           &lt;br /&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;h3&gt;Home Infrastructure&lt;/h3&gt;  &lt;table cellspacing="0" cellpadding="1" width="834" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="767"&gt;         &lt;ul&gt;           &lt;li&gt;&lt;a href="http://tfs.visualstudio.com/"&gt;&lt;strong&gt;Team Foundation Service&lt;/strong&gt;&lt;/a&gt; became our operational and dog fooding home “of truth” for all new projects.&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="65" align="right"&gt;More &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/dogfooding/"&gt;info&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="767"&gt;         &lt;ul&gt;           &lt;li&gt;&lt;a href="http://visualstudio.uservoice.com/"&gt;&lt;strong&gt;Visual Studio UserVoice&lt;/strong&gt;&lt;/a&gt; became our primary source of new project ideas and ranking thereof.&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="65" align="right"&gt;More &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/07/13/faq-when-can-i-submit-ideas-for-alm-ranger-projects.aspx"&gt;info&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="767"&gt;         &lt;ul&gt;           &lt;li&gt;&lt;strong&gt;ALM Rangers Portal&lt;/strong&gt; was &lt;strong&gt;simplified&lt;/strong&gt; to a common dashboard.&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="65" align="right"&gt;More &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/03/27/are-you-lost-in-the-alm-rangers-desert.aspx"&gt;info&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;h3&gt;Solutions&lt;/h3&gt;  &lt;table cellspacing="0" cellpadding="1" width="834" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="298"&gt;         &lt;ul&gt;           &lt;li&gt;We embraced &lt;strong&gt;strategic&lt;/strong&gt; initiatives&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="471"&gt;         &lt;ul&gt;           &lt;li&gt;&lt;strong&gt;DevOps&lt;/strong&gt;&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;IntelliTrace&lt;/strong&gt;, IntelliTrace, IntelliTrace making &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/12/introducing-the-visual-studio-alm-rangers-larry-guger.aspx"&gt;Larry Guger&lt;/a&gt; smile&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;Device&lt;/strong&gt; Testing&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;Unit Testing&lt;/strong&gt; idea with 934 votes on &lt;a href="http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2748862-add-create-unit-tests-menu-option-back-"&gt;UserVoice&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;The next generation of the VM &lt;strong&gt;Factory&lt;/strong&gt; in the cloud&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="67" align="right"&gt;More &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/09/unit-test-generator-under-the-bonnet-hood-aka-vsarunittestfx.aspx"&gt;info&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="296"&gt;         &lt;ul&gt;           &lt;li&gt;We &lt;strong&gt;shipped&lt;/strong&gt; a lot of valuable solutions&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="471"&gt;         &lt;ul&gt;           &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2013/04/12/alm-rangers-ship-guidance-for-devops-bug-resolution-using-intellitrace.aspx"&gt;Guidance for &lt;strong&gt;DevOps&lt;/strong&gt; bug resolution using &lt;strong&gt;IntelliTrace&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2013/03/01/alm-rangers-ship-guidance-for-microsoft-fakes-tfs-disaster-avoidance-and-updates-to-two-other-guides.aspx"&gt;Guidance for Microsoft &lt;strong&gt;Fakes&lt;/strong&gt;, TFS &lt;strong&gt;Disaster&lt;/strong&gt; &lt;strong&gt;Avoidance&lt;/strong&gt; and updates &lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2013/02/12/alm-rangers-ship-the-alm-readiness-treasure-map.aspx"&gt;ALM &lt;strong&gt;Readiness&lt;/strong&gt; treasure map&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2012/11/30/alm-rangers-ship-update-1-for-the-team-foundation-server-word-add-in.aspx"&gt;ALM Rangers ship update #1 for the TFS Word Add-in&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2012/11/22/quick-response-sample-visual-studio-extension-to-support-the-alm-rangers-branching-and-merging-guidance.aspx"&gt;Quick Response Sample – TFS &lt;strong&gt;Branch Tool&lt;/strong&gt; to complement the guidance&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2012/10/17/alm-rangers-ship-the-new-branching-and-merging-guide-v2-1.aspx"&gt;New Branching and Merging Guide v2.1&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2012/10/04/alm-rangers-ship-the-first-version-of-team-foundation-server-word-add-in.aspx"&gt;&lt;strong&gt;TFS Word Add-in&lt;/strong&gt;&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2012/11/30/alm-rangers-ship-update-1-for-the-team-foundation-server-word-add-in.aspx"&gt;Update #1&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2012/08/15/welcome-to-visual-studio-2012-alm-rangers-readiness-wave.aspx"&gt;Visual Studio 2012 ALM Rangers Readiness “Wave”&lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="67" align="right"&gt;&amp;nbsp;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="295"&gt;         &lt;ul&gt;           &lt;li&gt;We will be &lt;strong&gt;shipping&lt;/strong&gt; a lot more &lt;strong&gt;soon&lt;/strong&gt;!&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="471"&gt;         &lt;ul&gt;&lt;!--StartFragment--&gt;           &lt;li&gt;Better &lt;strong&gt;Unit Testing&lt;/strong&gt; with Test Code Generation&lt;/li&gt;            &lt;li&gt;Building a Release &lt;strong&gt;Pipeline&lt;/strong&gt; with TFS - Collaboration series by Rangers &amp;amp; p&amp;amp;p&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;Device&lt;/strong&gt; dev and &lt;strong&gt;testing&lt;/strong&gt; with Perfecto Mobile&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;DevOps&lt;/strong&gt; Tooling&lt;/li&gt;            &lt;li&gt;&lt;strong&gt;DevOps&lt;/strong&gt; Practical Continuous Deployment Guide&lt;/li&gt;            &lt;li&gt;End to end guidance for &lt;strong&gt;DevOps&lt;/strong&gt; bug resolution using IntelliTrace&lt;/li&gt;            &lt;li&gt;On-Time &lt;strong&gt;VM Factory&lt;/strong&gt;&lt;/li&gt;            &lt;li&gt;Practical Team Foundation Service &lt;strong&gt;Reporting&lt;/strong&gt; Guide&lt;/li&gt;            &lt;li&gt;Quick Response Project –&amp;gt; VM Demo Quick Environment Setup&lt;/li&gt;            &lt;li&gt;&lt;a href="http://aka.ms/vsartmaptoc"&gt;Upgrade -&amp;gt; ALM Readiness Treasure Map (arrrrrr…) v2&lt;/a&gt;&lt;/li&gt; &lt;!--EndFragment--&gt;&lt;/ul&gt;       &lt;/td&gt;        &lt;td width="67" align="right"&gt;&amp;nbsp;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="294"&gt;         &lt;ul&gt;           &lt;li&gt;We &lt;strong&gt;published&lt;/strong&gt; (shared) a lot of information&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="471"&gt;         &lt;ul&gt;&lt;!--StartFragment--&gt;           &lt;li&gt;MSDN Magazine (printed)&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/magazine/dn166932.aspx"&gt;A&lt;/a&gt;&lt;a href="http://msdn.microsoft.com/en-us/magazine/dn166932.aspx"&gt; Treasure Hunt Through ALM Readiness&lt;/a&gt; &lt;/li&gt;              &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/magazine/jj883959.aspx"&gt;Version Control in the TFS Client Object Model&lt;/a&gt; &lt;/li&gt;              &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/magazine/jj721597.aspx"&gt;Build Automation with Team Foundation Service Preview&lt;/a&gt; &lt;/li&gt;              &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-ca/magazine/jj618301.aspx"&gt;What's New in Microsoft Test Manager 2012&lt;/a&gt; &lt;/li&gt;              &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-ca/magazine/jj553516.aspx"&gt;Using the TFS Client Object Model&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt;            &lt;li&gt;MSDN Magazine (online)&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/magazine/dn169078.aspx"&gt;Simplifying the Configuration of Lab Management 2012&lt;/a&gt; &lt;/li&gt;              &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/magazine/dn189203.aspx"&gt;Agile Project Management using TFS 2012&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt;            &lt;li&gt;Other Publications&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;&lt;a href="http://aka.ms/vsarcloudhome"&gt;ALM Rangers dogfooding journal of the Team Foundation Service&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt;            &lt;li&gt;Channel 9&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;&lt;strong&gt;&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;&lt;a href="http://channel9.msdn.com/posts/Branching-and-Merging-Guidance-for-Team-Foundation-Server"&gt;Branching and Merging Guidance for TFS&lt;/a&gt; &lt;/li&gt;              &lt;li&gt;&lt;a href="http://channel9.msdn.com/posts/Quick-tour-of-the-TFS-Branch-Tool-VS-Extension"&gt;Quick tour of the TFS Branch Tool VS Extension&lt;/a&gt; &lt;/li&gt;              &lt;li&gt;&lt;a href="http://channel9.msdn.com/posts/RangersTalk-An-insight-into-the-inner-world-of-the-Quick-Response-TFS-Branch-Tool"&gt;Insight into the inner world of the Quick Response TFS Branch Tool&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt; &lt;!--EndFragment--&gt;&lt;/ul&gt;       &lt;/td&gt;        &lt;td width="67" align="right"&gt;More &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/06/05/toc-alm-rangers-msdn-magazine-and-other-publications.aspx"&gt;info&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;h3&gt;Process&lt;/h3&gt;  &lt;table cellspacing="0" cellpadding="1" width="834" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="293"&gt;         &lt;ul&gt;           &lt;li&gt;We continuously evolve our &lt;strong&gt;Ruck Process&lt;/strong&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="471"&gt;         &lt;ul&gt;&lt;!--StartFragment--&gt;           &lt;li&gt;Single Team Project Collection and Team Project model&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;&lt;a href="http://aka.ms/vsarcloudhome"&gt;Rangers dogfooding journal of the Team Foundation Service&lt;/a&gt;&lt;/li&gt;              &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/02/23/how-the-alm-rangers-are-using-visual-studio-alm-in-a-practical-nutshell.aspx"&gt;How the ALM Rangers are using Visual Studio ALM&lt;/a&gt; &lt;/li&gt;              &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/23/alm-rangers-dogfooding-code-review-and-build-process.aspx"&gt;Code Review and Build process&lt;/a&gt;&lt;/li&gt;              &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/11/26/alm-rangers-alm-dogfooding-proving-the-new-process-and-lifting-the-last-confusions-we-hope-part-7.aspx"&gt;Proving the new process and lifting the last confusions &lt;/a&gt;&lt;/li&gt;              &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/08/31/alm-rangers-alm-dogfooding-and-the-angst-factor-part-3.aspx"&gt;Dogfooding and the “Angst” Factor&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt;            &lt;li&gt;Bug management&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/12/05/alm-rangers-alm-dogfooding-dealing-with-bugs-on-tfs-visualstudio-com-part-8.aspx"&gt;Dealing with bugs on tfs.visualstudio.com&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt;            &lt;li&gt;Visual, visual + visual transparency&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/10/16/alm-rangers-alm-dogfooding-and-the-age-of-the-visual-board-part-4.aspx"&gt;The age of the visual board&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt;            &lt;li&gt;Smaller teams, preferring &amp;lt;10 team sizes&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/07/12/world-wide-virtual-teams-from-the-alm-rangers-perspective-part-1.aspx"&gt;World-Wide Virtual Teams from the ALM Rangers perspective&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt;            &lt;li&gt;Project time boxing from 3-4 months … we can always do better next time!&lt;/li&gt;            &lt;li&gt;Simplified and fully documented, with training sessions at TechReady&lt;!--EndFragment--&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="68" align="right"&gt;More &lt;a href="http://aka.ms/ruckguides"&gt;info&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="287"&gt;         &lt;ul&gt;           &lt;li&gt;We aligned with product group &lt;strong&gt;quarterly cadence&lt;/strong&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="474"&gt;         &lt;ul&gt;&lt;!--StartFragment--&gt;           &lt;li&gt;Quarterly ideas triage&lt;/li&gt;            &lt;ul&gt;             &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/05/alm-rangers-triage-4-what-happened-to-your-idea-in-uservoice.aspx"&gt;Triage #4 - What happened to your idea in UserVoice?&lt;/a&gt;&lt;/li&gt;              &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/03/04/alm-rangers-triage-3-what-happened-to-your-idea-in-uservoice.aspx"&gt;Triage #3 - What happened to your idea in UserVoice?&lt;/a&gt;&lt;/li&gt;              &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/10/16/alm-rangers-triage-2-what-happened-to-your-idea-in-uservoice.aspx"&gt;Triage #2 - What happened to your idea in UserVoice?&lt;/a&gt;&lt;/li&gt;              &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/09/13/alm-rangers-triage-1-what-happened-to-your-idea-in-uservoice.aspx"&gt;Triage #1 - What happened to your idea in UserVoice?&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt;            &lt;li&gt;Quarterly nominations triage&lt;/li&gt;            &lt;li&gt;Quarterly opportunity to start a project&lt;/li&gt; &lt;!--EndFragment--&gt;&lt;/ul&gt;       &lt;/td&gt;        &lt;td width="70" align="right"&gt;More &lt;a href="http://aka.ms/vsarunderstand"&gt;info&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="283"&gt;         &lt;ul&gt;           &lt;li&gt;We evolved the Rangers &lt;strong&gt;flash&lt;/strong&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="476"&gt;         &lt;ul&gt;           &lt;li&gt;Weekly flash was cancelled as there as no value-add&lt;/li&gt;            &lt;li&gt;Monthly flash format and content evolves continuously&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="71" align="right"&gt;         &lt;br /&gt;More &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/highlights/"&gt;info&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="281"&gt;         &lt;ul&gt;           &lt;li&gt;We &lt;strong&gt;nominated&lt;/strong&gt; &lt;strong&gt;champions&lt;/strong&gt; annually&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="477"&gt;         &lt;ul&gt;           &lt;li&gt;Champions are announced just before MVP Summit and TechReady allowing us to personally congratulate winners and hand-out awards.              &lt;br /&gt;&lt;img src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6813.clip_5F00_image001_5F00_586A0CBA.jpg" width="397" height="83" /&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="72" align="right"&gt;More &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/01/18/congratulations-to-all-the-visual-studio-alm-ranger-2013-champions.aspx"&gt;info&lt;/a&gt;.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="280"&gt;         &lt;ul&gt;           &lt;li&gt;We investigated and &lt;strong&gt;aligned&lt;/strong&gt; with Program Management (&lt;strong&gt;PM&lt;/strong&gt;)&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="478"&gt;         &lt;ul&gt;           &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/03/07/program-management-eating-the-information-overload-wave-bit-by-bit.aspx"&gt;Eating the information overload wave bit by bit&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/11/15/program-management-are-some-of-the-alm-rangers-symbiotic-pm-s.aspx"&gt;Are some of the ALM Rangers Symbiotic &lt;b&gt;PM&lt;/b&gt;’s?‎&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/10/25/program-management-thinking-about-pm-pm-and-visual-studio-alm-rangers-part-2.aspx"&gt;Thinking about PM != PM and Visual Studio ALM Rangers&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/10/01/program-management-thinking-about-pm-pm-and-the-pm-role-in-microsoft.aspx"&gt;Thinking about &lt;b&gt;PM&lt;/b&gt; != &lt;b&gt;PM&lt;/b&gt; and the &lt;b&gt;PM&lt;/b&gt; role in Microsoft&lt;/a&gt;‎&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td width="73" align="right"&gt;&amp;nbsp;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;h2&gt;   &lt;hr /&gt;&lt;/h2&gt;  &lt;h1&gt;Some of the lowlights, which become &lt;font style="font-weight: bold;"&gt;&lt;u&gt;opportunities&lt;/u&gt; &lt;/font&gt;for FY14&lt;/h1&gt;  &lt;p&gt;&lt;img src="http://ts3.mm.bing.net/th?id=H.4972830028335450&amp;amp;pid=1.7" width="122" height="73" /&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Ruck training and certification&lt;/strong&gt; not yet formalised and available.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Ruck Master certification&lt;/strong&gt; not yet formalises and available.&lt;/li&gt;    &lt;li&gt;Although we have aligned with &lt;strong&gt;quarterly cadence&lt;/strong&gt;, we still have two major activity peak and wave trends, rather than four levelled waves (&lt;font color="#9b00d3"&gt;dotted&lt;/font&gt; lines) of projects.       &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1374.image_5F00_1C2144DE.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1715.image_5F00_thumb_5F00_7910D36D.png" width="602" height="228" /&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Still dealing with&lt;strong&gt; “dark” Rangers&lt;/strong&gt; … albeit a lot less than in previous years, making bandwidth planning challenging.&amp;#160;&amp;#160; &lt;/li&gt;    &lt;li&gt;We still have &lt;strong&gt;separate credentials&lt;/strong&gt; for TFS and Dashboard infrastructure, resulting in password maintenance adventures.&lt;/li&gt;    &lt;li&gt;We still have not been able to produce Bijan’s accurate bandwidth &lt;strong&gt;utilisation reports&lt;/strong&gt;.&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Watch the “Practical Team Foundation Service Reporting Guide solution” space.&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Did I forget anything? Thoughts ?&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10417760" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Chatter/">Chatter</category></item><item><title>Unit Test Generator under the bonnet (hood) … aka vsarUnitTestFx</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/09/unit-test-generator-under-the-bonnet-hood-aka-vsarunittestfx.aspx</link><pubDate>Thu, 09 May 2013 21:56:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10417457</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10417457</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/09/unit-test-generator-under-the-bonnet-hood-aka-vsarunittestfx.aspx#comments</comments><description>&lt;p&gt;Once you’ve moved to Visual Studio 2012, what’s a dev to do without the Create Unit Tests feature? Based on the high demand on &lt;a href="http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2748862-add-create-unit-tests-menu-option-back-"&gt;User Voice&lt;/a&gt; for this feature to be restored, the Visual Studio ALM Rangers have introduced the vsarUnitTestFx Visual Studio Extension. &lt;/p&gt;  &lt;p&gt;It is time that we talk about this exciting adventure focused on automating test project creation, adding references, generating stubs, and extensibility to add and target other test frameworks.&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="857" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="855"&gt;         &lt;p align="center"&gt;&lt;font size="5"&gt;&lt;strong&gt;&lt;font color="#c0504d"&gt;IMPORTANT&lt;/font&gt;&lt;/strong&gt; &lt;/font&gt;            &lt;br /&gt;&lt;font color="#c0504d"&gt;We are trying to be very transparent in these blog posts. This means that we may (are) sharing early (not final) bits, proposed (not implemented) features and may (will) change existing and new features without prior warning.&lt;/font&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;We embrace the following project principles for the extension:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Achieves a moderate amount of restoration of Visual Studio 2010 feature functionality, but does not resurrect the old command.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Replaces&lt;/strong&gt; and does not resurrect the old command.&lt;/li&gt;    &lt;li&gt;Supports .NET MS-Test and generation of VB/C# test code.&lt;/li&gt;    &lt;li&gt;Presents a &amp;quot;reference implementation&amp;quot; of how to do this for a particular test framework.&lt;/li&gt;    &lt;li&gt;Provides a basic infrastructure and an extension point.&lt;/li&gt;    &lt;li&gt;It focuses on project and reference management and not on code generation. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;We envision the following benefits for the Visual Studio community:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Quickly get to writing test code, not having to worry about setting up projects and files.&lt;/li&gt;    &lt;li&gt;Customize the unit test code generation using a context menu, ensuring that generated tests better match your naming schemes.&lt;/li&gt;    &lt;li&gt;Generate unit test stubs against multiple frameworks so that you can use any framework you like.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;As always we continuously dog-food our evolving infrastructure, Ruck process and tooling. We defined and shared our code quality learnings for sprint objectives, the definition of done, code reviews and project principles. These learnings are undergoing constant revision and are included in the latest Ruck Guide on CodePlex for possible re-use by other project solution teams. See &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/23/alm-rangers-dogfooding-code-review-and-build-process.aspx"&gt;ALM Rangers Dogfooding – Code Review and Build process&lt;/a&gt; for more information.&lt;/p&gt;  &lt;h1&gt;Who’s who?&lt;/h1&gt;  &lt;p&gt;When we refer to “we” and the “team” we refer to a team of competent and passionate ALM Rangers, as shown in the slide I extracted from the recent show-what-we-have presentation.&lt;/p&gt;  &lt;h1&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7870.image_5F00_5C8AA63E.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7180.image_5F00_thumb_5F00_44571616.png" width="778" height="441" /&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p&gt;Visit &lt;a href="http://aka.ms/vsarindex"&gt;http://aka.ms/vsarindex&lt;/a&gt; for more information on these ALM Rangers.&lt;/p&gt;  &lt;h1&gt;What is the status?&lt;/h1&gt;  &lt;h4&gt;One down, two milestones to go!&lt;/h4&gt;  &lt;p&gt;We shipped an ALPHA release to all ALM Rangers and the product group in April as planned, which addressed the first of three main Epics . In May we are planning to release a BETA to an as yet undefined early-adopter community. The BETA&amp;#160; introduces the functionality allowing user to customise the naming of generated code and prepares the foundation for the last Epic as described below.&lt;/p&gt;  &lt;p&gt;We have a competent team of developers, testers, pedantic quality guardians and a champion product owner, which means we can all look forward to a phenomenal product. Once we have achieved our definition of DONE we will release version 1.0 on the Visual Studio Gallery.&lt;/p&gt;  &lt;h4&gt;Epics … our menu&lt;/h4&gt;  &lt;p&gt;Another slide extract from the recent show-what-we-have presentation show the list of Epics and their status:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6406.image_5F00_206E3EBC.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0624.image_5F00_thumb_5F00_686C4AD8.png" width="772" height="306" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;&amp;#160;&lt;/h4&gt;  &lt;h1&gt;Peeking under the bonnet (hood)&lt;/h1&gt;  &lt;p&gt;Seeing is believing, so let’s switch to the world of Visual Studio and have a look at the extension. The main components of the solution (ALPHA release) are visible in the context diagram below. It is important to re-iterate that this is based on the ALPHA code and will be changing when we address the extensibility Epic.&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1526.image_5F00_5B25C1C5.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3660.image_5F00_thumb_5F00_246866C1.png" width="783" height="398" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Generating a dependency diagram of the solution (BETA candidate) gives us a different view of what is hiding within the VS extension:    &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7484.image_5F00_0A27FD9D.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6404.image_5F00_thumb_5F00_4768B264.png" width="772" height="360" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h1&gt;Walking through some code scenarios&lt;/h1&gt;  &lt;p&gt;Once installed, you will find the extension under Extensions and Updates in the Tools menu. For this blog post I am using a code quality test project developed by &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/04/19/introducing-the-visual-studio-alm-rangers-vladimir-gusarov.aspx"&gt;Vladimir Gusarov&lt;/a&gt;, which we are using as an evolving playground for our manual test cases. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;As shown in the illustration below we are working in the WeirdFormatting &lt;strong&gt;class&lt;/strong&gt;.&lt;/li&gt;    &lt;li&gt;First we &lt;strong&gt;right-click&lt;/strong&gt; on the class definition.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4747.image_5F00_6C85FCD0.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0525.image_5F00_thumb_5F00_19D76CD4.png" width="769" height="449" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;We select &lt;strong&gt;Generate Unit Test &lt;/strong&gt;from the context menu.       &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8228.image_5F00_3DB01E61.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3264.image_5F00_thumb_5F00_75EE9579.png" width="283" height="84" /&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;This generates a &lt;strong&gt;test project&lt;/strong&gt; and a&lt;strong&gt; test class&lt;/strong&gt;—if needed—then adds the &lt;strong&gt;references&lt;/strong&gt;, the &lt;strong&gt;namespace&lt;/strong&gt;, and the &lt;strong&gt;test methods&lt;/strong&gt;. &lt;/li&gt;    &lt;li&gt;You can create additional test methods by repeating the same process within one or more method bodies, which would create additional instances of test methods.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Let’s investigate the resultant Unit Test dish:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;A test project was created, named CSharpTestProjectTests.&lt;/li&gt;    &lt;li&gt;References to the project being tested and the quality tools were added to the References.&lt;/li&gt;    &lt;li&gt;A test method was created in CSharpTestProjectTests for each public method in the WeirdFormatting class in the CSharpTestProjectTests project.&lt;/li&gt;    &lt;li&gt;The namespace containing the WeirdFormattingTests class is based on the namespace used in the WeirdFormatting class. &lt;/li&gt;    &lt;li&gt;The test method body contains one statement: Assert.Fail(), which differs from the ALPHA release where the body was empty.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3348.image_5F00_717814B2.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3240.image_5F00_thumb_5F00_3E785E7E.png" width="769" height="439" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt; &lt;strong&gt;&lt;/strong&gt;&lt;strong&gt;NOTE&lt;/strong&gt;: There are &lt;font color="#c0504d"&gt;&lt;strong&gt;no&lt;/strong&gt;&lt;/font&gt; plans to support the rare scenario of generating tests against test methods or operators. REF: WI#5815 and #6166.   &lt;h1&gt;Mock-ups … what’s next?&lt;/h1&gt;  &lt;p&gt;To understand what we are planning to include in the BETA, let us look at some of the mock-ups from our product owner. As before it is important to re-emphasise that these are visions, mock-ups and subject to change. &lt;/p&gt;  &lt;p&gt;We start with the Create Unit Test Options item which will appear in the Test menu as shown …&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5074.image_5F00_3B16C6D6.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5383.image_5F00_thumb_5F00_10E718EE.png" width="769" height="417" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The configuration option will allow us to change the behaviour of the Unit Test Generator, for example controlling the class and method name formatting.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8623.image_5F00_75CE49DF.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7446.image_5F00_thumb_5F00_32A2CBB2.png" width="770" height="417" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Give the mock-up to &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/01/27/introducing-the-visual-studio-alm-rangers-anisha-pindoria.aspx"&gt;Anisha Pindoria&lt;/a&gt; and the following proposed dialog starts evolving:&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4810.image_5F00_49819D2E.png"&gt;&lt;img title="image" style="margin-right: auto; margin-left: auto; float: none; display: block; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4478.image_5F00_thumb_5F00_171DC9AF.png" width="388" height="209" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;To summarise, the BETA will introduce the ability to influence the unit test generator and the last Epic, which will bring us to version &lt;strong&gt;1.0&lt;/strong&gt; will allow you to generate unit test stubs against multiple frameworks so that you can utilize potentially any framework. &lt;/p&gt;  &lt;h1&gt;Thoughts?&lt;/h1&gt;  &lt;p&gt;We would appreciate &lt;strong&gt;your candid feedback&lt;/strong&gt;, either by adding a comment to this post, or contacting me &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/contact.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10417457" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Tooling/">Tooling</category><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Visual+Studio+_2800_Client_2900_/">Visual Studio (Client)</category></item><item><title>Rangers Flash – April 2003</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/08/rangers-flash-april-2003.aspx</link><pubDate>Wed, 08 May 2013 15:44:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10417051</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10417051</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/08/rangers-flash-april-2003.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2843.image_5F00_thumb71_5F00_4D99C96E.png"&gt;&lt;img title="image_thumb71" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb71" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3264.image_5F00_thumb71_5F00_thumb_5F00_25871A4F.png" width="861" height="57" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;table cellspacing="0" cellpadding="1" width="200" border="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="100"&gt;         &lt;table cellspacing="0" cellpadding="1" width="96" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="96"&gt;&lt;a href="http://aka.ms/vsarsolutions"&gt;&lt;img title="image1012" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image1012" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5315.image1012_5F00_5E31C45C.png" width="601" height="50" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="96"&gt;                 &lt;h1&gt;Latest Releases&lt;/h1&gt;                  &lt;p&gt;The following project(s) have &lt;b&gt;shipped&lt;/b&gt; during April:&lt;/p&gt;                  &lt;ul&gt;                   &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/archive/2013/04/12/alm-rangers-ship-guidance-for-devops-bug-resolution-using-intellitrace.aspx"&gt;DevOps bug resolution using IntelliTrace&lt;/a&gt;&lt;/li&gt;                 &lt;/ul&gt;                  &lt;h1&gt;Latest Updates&lt;/h1&gt;                  &lt;p&gt;In addition to the new project(s) we have updated a number of the existing content on &lt;a href="http://www.CodePlex.com"&gt;CodePlex&lt;/a&gt; to include latest in-the-field findings and align with the latest product updates.&lt;/p&gt;                  &lt;ul&gt;                   &lt;li&gt;&lt;a href="https://vsarguidance.codeplex.com/releases/view/87998"&gt;Practical Ruck Guide&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="https://vsarguidance.codeplex.com/releases/view/87996"&gt;Team Foundation Service 2012 Learnings&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://vsarupgradeguide.codeplex.com/"&gt;TFS Upgrade Guide&lt;/a&gt;&lt;/li&gt;                 &lt;/ul&gt;                  &lt;h1&gt;New Projects&lt;/h1&gt;                  &lt;p&gt;The following public “show-what-we-have” videos have been published for Sprint 10/April:&lt;/p&gt;                  &lt;ul&gt;                   &lt;li&gt;&lt;a href="http://channel9.msdn.com/posts/ALM-Readiness-Treasure-Map-v2Sprint10-Show-What-We-Have"&gt;ALM Readiness Treasure Map (vsarTreasureMap)&lt;/a&gt; video&lt;/li&gt;                 &lt;/ul&gt;                  &lt;p&gt;The following image shows a snapshot of the latest projects taken during the monthly retrospective:&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0272.image_5F00_79D65052.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4863.image_5F00_thumb_5F00_62C7CF16.png" width="595" height="399" /&gt;&lt;/a&gt;&lt;/p&gt;                  &lt;h1&gt;Download update as of 1 April 2013&lt;/h1&gt;                  &lt;table cellspacing="0" cellpadding="1" width="597" border="0"&gt;&lt;tbody&gt;                     &lt;tr&gt;                       &lt;td valign="top" width="385"&gt;Average daily downloads since 2007&lt;/td&gt;                        &lt;td valign="top" width="210"&gt;215 ( &lt;font color="#008000" face="Webdings"&gt;5&lt;/font&gt;+4 )&lt;/td&gt;                     &lt;/tr&gt;                      &lt;tr&gt;                       &lt;td valign="top" width="385"&gt;Average daily downloads during recent period:&lt;/td&gt;                        &lt;td valign="top" width="210"&gt;496 ( &lt;font color="#ff0000" face="Webdings"&gt;6&lt;/font&gt; &lt;b&gt;-177)&lt;/b&gt;&lt;/td&gt;                     &lt;/tr&gt;                      &lt;tr&gt;                       &lt;td valign="top" width="385"&gt;Total downloads since Jan1/2007 of tracked ALM Ranger projects&lt;/td&gt;                        &lt;td valign="top" width="210"&gt;497,123( &lt;font color="#008000" face="Webdings"&gt;5&lt;/font&gt;+14,867 since last flash )&lt;/td&gt;                     &lt;/tr&gt;                   &lt;/tbody&gt;&lt;/table&gt;                  &lt;h1&gt;TreasureMap &lt;a href="http://aka.ms/vsartmapapp"&gt;&lt;font size="2"&gt;http://aka.ms/vsartmapapp&lt;/font&gt;&lt;/a&gt; &lt;/h1&gt;                  &lt;table cellspacing="0" cellpadding="1" width="595" border="0"&gt;&lt;tbody&gt;                     &lt;tr&gt;                       &lt;td valign="top" width="385"&gt;Downloads to date&lt;/td&gt;                        &lt;td valign="top" width="208"&gt;573&lt;/td&gt;                     &lt;/tr&gt;                      &lt;tr&gt;                       &lt;td valign="top" width="385"&gt;Average rating&lt;/td&gt;                        &lt;td valign="top" width="208"&gt;4.9/5&lt;/td&gt;                     &lt;/tr&gt;                   &lt;/tbody&gt;&lt;/table&gt;               &lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="96"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2742.image_5F00_thumb6_5F00_759C52C0.png"&gt;&lt;img title="image_thumb6" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb6" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0268.image_5F00_thumb6_5F00_thumb_5F00_2074B6D3.png" width="601" height="50" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="96"&gt;                 &lt;h3&gt;New publications&lt;/h3&gt;                  &lt;ul&gt;                   &lt;li&gt;MSDN Magazine article &lt;a href="http://msdn.microsoft.com/en-us/magazine/dn166932.aspx"&gt;A&lt;/a&gt;&lt;a href="http://msdn.microsoft.com/en-us/magazine/dn166932.aspx"&gt; Treasure Hunt Through ALM Readiness&lt;/a&gt; by &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/01/27/introducing-the-visual-studio-alm-rangers-anisha-pindoria.aspx"&gt;Anisha&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/03/04/introducing-the-visual-studio-alm-rangers-robert-bernstein.aspx"&gt;RobertB&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;RobertM&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/06/28/introducing-the-visual-studio-alm-rangers-dave-crook.aspx"&gt;Dave&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/10/20/introducing-the-visual-studio-alm-rangers-willy-peter-schaub.aspx"&gt;Willy&lt;/a&gt;. &lt;/li&gt;                    &lt;li&gt;MSDN Online Magazine article&lt;b&gt; &lt;/b&gt;&lt;a href="http://msdn.microsoft.com/en-us/magazine/dn169078.aspx"&gt;Simplifying the Configuration of Lab Management 2012&lt;/a&gt; by &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/07/07/introducing-the-visual-studio-alm-rangers-micheal-learned.aspx"&gt;Micheal Learned&lt;/a&gt;.&lt;/li&gt;                    &lt;li&gt;Supporting Guidance whitepaper &lt;a href="http://aka.ms/vsarcloudhome"&gt;ALM Rangers dogfooding journal of the Team Foundation Service&lt;/a&gt; by &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/10/20/introducing-the-visual-studio-alm-rangers-willy-peter-schaub.aspx"&gt;Willy&lt;/a&gt;.&lt;/li&gt;                 &lt;/ul&gt;                  &lt;h3&gt;Localisations&lt;/h3&gt;                  &lt;ul&gt;                   &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/01/localised-videos-for-visual-studio-2012.aspx"&gt;Localised videos for Visual Studio 2012&lt;/a&gt;&lt;/li&gt;                 &lt;/ul&gt;                  &lt;h3&gt;New Associate Rangers &lt;/h3&gt;                  &lt;p&gt;Please welcome the following new Associate ALM Rangers in our family: Doug Owens, Janice Choi, Josh Sommer, &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/11/introducing-the-visual-studio-alm-rangers-kirushna-kumaar.aspx"&gt;Kirushna Kumaar&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/07/introducing-the-visual-studio-alm-rangers-svetlana-kostinsky.aspx"&gt;Svetlana Kostinsky&lt;/a&gt;.&lt;/p&gt;                  &lt;h3&gt;Tarun Arora comes out “tops” @ TechEd India&lt;/h3&gt;                  &lt;p&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/08/30/introducing-the-visual-studio-alm-rangers-tarun-arora.aspx"&gt;Tarun&lt;/a&gt; presented at TechEd India and his session “Modelling Agile using TFS 2012” topped the ALM track in TechEd 2013 India and was rated highest under the category “Quality of Session Presenter”. He enjoyed connecting with over 2000 people in just a week across Delhi (TechDays), Pune and Bangalore (TechEd) and representing the ALM Rangers. &lt;b&gt;Well done&lt;/b&gt; Tarun!&lt;/p&gt;                  &lt;h3&gt;Robert MacLean unrolls the treasure map @ TechEd Africa&lt;/h3&gt;                  &lt;p&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;Robert&lt;/a&gt; delivered a number of exceptional sessions at TechEd Africa, with a focus on the ALM Readiness Treasure Map Windows Store App (&lt;a href="http://aka.ms/vsartmapapp"&gt;aka.ms/vsartmapapp&lt;/a&gt;). He also took the opportunity to deliver a student day talk to a few hundred varsity students brought to TechEd, again using the Rangers app, as well as the branching and merging guide, and sharing his experience what it was like to work with Microsoft. &lt;/p&gt;                  &lt;p&gt;The following talks were redelivered and recorded as RangerTalks:&lt;/p&gt;                  &lt;ul&gt;                   &lt;li&gt;Windows Store Apps, Tips &amp;amp; Tricks from the field&lt;/li&gt;                    &lt;li&gt;What’s new in .NET 4.5 &amp;amp; VS 2012&lt;/li&gt;                    &lt;li&gt;What’s new in LightSwitch&lt;/li&gt;                 &lt;/ul&gt;                  &lt;h3&gt;Jim Szubryt’s absence explained … community^passion&lt;/h3&gt;                  &lt;p&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/07/31/introducing-the-visual-studio-alm-rangers-jim-szubryt.aspx"&gt;Jim&lt;/a&gt; delivered a number of phenomenal community events this month, which explains his “stealth” mode and why the TFS Reporting Guide project is only now starting to gain momentum on the reporting rails &lt;img class="wlEmoticon wlEmoticon-smile" style="style" alt="Smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0272.wlEmoticon_2D00_smile_5F00_0E2BF011.png" /&gt;&lt;/p&gt;                  &lt;ul&gt;                   &lt;li&gt;&lt;a href="http://blog.jimszubryt.com/2013/04/21/presenting-chicago-code-camp-on-saturday-april-27th/"&gt;Presenting @ Chicago Code Camp on Saturday April 27th&lt;/a&gt; and &lt;a href="http://blog.jimszubryt.com/2013/04/27/links-from-this-weeks-presentations/"&gt;Links From This Week’s Presentations&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://blog.jimszubryt.com/2013/04/21/presenting-the-chicago-alm-user-group-meeting-on-source-controlling-databases/"&gt;Presenting @ the Chicago ALM User Group Meeting on Source Controlling Databases&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://blog.jimszubryt.com/2013/04/06/presenting-at-software-development-communitys-april-meeting/"&gt;Presenting at Software Development Community’s April Meeting&lt;/a&gt;&lt;/li&gt;                 &lt;/ul&gt;                  &lt;p&gt;Remember the August SDC? If not, here is his video: &lt;a href="http://www.tinyurl.com/tfs2012js"&gt;www.tinyurl.com/tfs2012js&lt;/a&gt;.&lt;/p&gt;                  &lt;h3&gt;TFS Administration Exam a la Portuguese&lt;/h3&gt;                  &lt;p&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/08/05/introducing-the-visual-studio-alm-rangers-andr-233-dias.aspx"&gt;André Dias&lt;/a&gt; finished the MVA about TFS Administration Exam (70-496), producing 22 videos, 30 questions and a lot of references linking the exam subjects to MSDN Articles in Portuguese. &lt;/p&gt;                  &lt;ul&gt;                   &lt;li&gt;&lt;a href="https://www.microsoftvirtualacademy.com/training-courses/guia-de-estudo-certifica-o-tfs-2012-70-496-"&gt;https://www.microsoftvirtualacademy.com/training-courses/guia-de-estudo-certifica-o-tfs-2012-70-496-&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Tags/tfs"&gt;http://channel9.msdn.com/Tags/tfs&lt;/a&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/li&gt;                 &lt;/ul&gt;                  &lt;p&gt;He also coordinated the Azure Summit Brazil and MVP Virtual Summit (ALM Track) conferences; and gave a lot of talks for smaller events, universities and user groups. &lt;b&gt;Wow!&lt;/b&gt;&lt;/p&gt;                  &lt;h3&gt;Retrospective Quiz&lt;/h3&gt;                  &lt;p&gt;We asked the ALM Rangers to identify the projects associated with the following collection of burn down patterns during Sprint 10 (April) … and we have a winner!&lt;/p&gt;                  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0184.clip_5F00_image0011_5F00_070CB399.jpg"&gt;&lt;img title="clip_image001[1]" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="clip_image001[1]" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3302.clip_5F00_image0011_5F00_thumb_5F00_78CE3AA8.jpg" width="240" height="103" /&gt;&lt;/a&gt;Congratulations to our &lt;b&gt;WINNER&lt;/b&gt;: &lt;b&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/03/28/introducing-the-visual-studio-alm-rangers-esteban-garcia.aspx"&gt;Esteban Garcia&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;               &lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="96"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8105.image_5F00_thumb51_5F00_187D1471.png"&gt;&lt;img title="image_thumb51" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb51" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8203.image_5F00_thumb51_5F00_thumb_5F00_3421A067.png" width="600" height="50" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="96"&gt;                 &lt;h1&gt;Tell us about your success stories!&lt;/h1&gt;                  &lt;p&gt;Are you aware of a success story in which the Visual Studio ALM Rangers and/or their solutions have accelerated the adoption of Visual Studio, unblocked an engagement and/or resulted in a &lt;img class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0272.wlEmoticon_2D00_smile_5F00_0E2BF011.png" /&gt;&amp;#160; (happy) user? &lt;/p&gt;               &lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="96"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3806.image_5F00_thumb31_5F00_139A60B5.png"&gt;&lt;img title="image_thumb31" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image_thumb31" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8270.image_5F00_thumb31_5F00_thumb_5F00_6BF3E48A.png" width="600" height="50" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;        &lt;td valign="top" width="100"&gt;         &lt;table cellspacing="0" cellpadding="1" width="90" border="0"&gt;&lt;tbody&gt;             &lt;tr&gt;               &lt;td valign="top" width="90"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0652.image11_5F00_thumb_5F00_249E8E98.png"&gt;&lt;img title="image11_thumb" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image11_thumb" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8686.image11_5F00_thumb_5F00_thumb_5F00_71CE8823.png" width="240" height="51" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="90"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2620.image_5F00_35A2BC7B.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0245.image_5F00_thumb_5F00_54E5634E.png" width="240" height="173" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/8255.image_5F00_7B474699.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4846.image_5F00_thumb_5F00_5AC006E7.png" width="240" height="176" /&gt;&lt;/a&gt;                   &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1616.image_5F00_7A02ADBA.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4530.image_5F00_thumb_5F00_12261816.png" width="240" height="193" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="90"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7242.image7_5F00_thumb_5F00_3168BEE9.png"&gt;&lt;img title="image7_thumb" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image7_thumb" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7144.image7_5F00_thumb_5F00_thumb_5F00_7F04EB69.png" width="240" height="51" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="90"&gt;                 &lt;ul&gt;                   &lt;li&gt;&lt;a href="http://aka.ms/willyblog"&gt;Willy's Reflections Blog&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/visualstudioalm/"&gt;Visual Studio TFS Team Blog&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://aka.ms/vsarindex"&gt;ALM Rangers Team&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://aka.ms/vsarsolutions"&gt;ALM Ranger Solutions&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://aka.ms/vsarpublications"&gt;ALM Ranger Publications&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://aka.ms/vsartmap"&gt;ALM Readiness Treasure Map&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://aka.ms/vsartmapapp"&gt;ALM Rangers Treasure Map App&lt;/a&gt;&lt;/li&gt;                 &lt;/ul&gt;               &lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="90"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6180.image10_5F00_thumb_5F00_1EB3C532.png"&gt;&lt;img title="image10_thumb" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image10_thumb" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1307.image10_5F00_thumb_5F00_thumb_5F00_10754C42.png" width="240" height="52" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="90"&gt;                 &lt;ul&gt;                   &lt;li&gt;&lt;a href="http://aka.ms/VS11ALMVM"&gt;Brian Keller's VM&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://aka.ms/vs"&gt;Visual Studio marketing site&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://aka.ms/getvs"&gt;Visual Studio downloads&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://aka.ms/compare"&gt;Visual Studio comparison charts&lt;/a&gt;&lt;/li&gt;                    &lt;li&gt;&lt;a href="http://aka.ms/alm"&gt;ALM marketing content&lt;/a&gt;&lt;/li&gt;                 &lt;/ul&gt;               &lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="90"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3438.image15_5F00_thumb_5F00_4515A87D.png"&gt;&lt;img title="image15_thumb" style="margin: 0px; border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image15_thumb" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3022.image15_5F00_thumb_5F00_thumb_5F00_1DDB5F48.png" width="240" height="51" /&gt;&lt;/a&gt;&lt;/td&gt;             &lt;/tr&gt;              &lt;tr&gt;               &lt;td valign="top" width="90"&gt;                 &lt;p&gt;&lt;i&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0880.clip_5F00_image001_5F00_248E68CB.jpg"&gt;&lt;img title="clip_image001" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="clip_image001" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1856.clip_5F00_image001_5F00_thumb_5F00_755C7D33.jpg" width="240" height="360" /&gt;&lt;/a&gt;&lt;/i&gt;&lt;i&gt;&lt;/i&gt;&lt;/p&gt;                  &lt;p&gt;&lt;i&gt;When &lt;b&gt;Larry&lt;/b&gt; Brader is late for an early morning p&amp;amp;p/Rangers meeting he is usually chasing horses or enjoying new arrivals &lt;img class="wlEmoticon wlEmoticon-smile" style="style" alt="Smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0272.wlEmoticon_2D00_smile_5F00_0E2BF011.png" /&gt;&lt;/i&gt;&lt;i&gt;Welcome to the gorgeous filly!                      &lt;br /&gt;&lt;/i&gt;&lt;i&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/0383.clip_5F00_image003_5F00_2990A67A.jpg"&gt;&lt;img title="clip_image003" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="clip_image003" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6646.clip_5F00_image003_5F00_thumb_5F00_1A0D94AB.jpg" width="240" height="427" /&gt;&lt;/a&gt;&lt;/i&gt;&lt;i&gt;                      &lt;br /&gt;A beautiful photo from &lt;b&gt;Jeff&lt;/b&gt; Beehler as proof that Spring has arrived for some.. Tulips at &lt;/i&gt;&lt;i&gt;&lt;a href="https://www.facebook.com/pages/Keukenhof/208532065833062?ref=stream"&gt;Keukenhof&lt;/a&gt;&lt;/i&gt;&lt;i&gt;.&lt;/i&gt;&lt;/p&gt;               &lt;/td&gt;             &lt;/tr&gt;           &lt;/tbody&gt;&lt;/table&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10417051" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Highlights/">Highlights</category></item><item><title>Localised videos for Visual Studio 2012</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/01/localised-videos-for-visual-studio-2012.aspx</link><pubDate>Wed, 01 May 2013 22:41:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10415501</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10415501</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/05/01/localised-videos-for-visual-studio-2012.aspx#comments</comments><description>&lt;p&gt;I was recently asked whether there are videos on Visual Studio 2012 for the Spanish community. After a quick “ping” to the &lt;a href="http://aka.ms/vsarindex"&gt;ALM Rangers&lt;/a&gt; I managed to create the following list of localised videos for you to enjoy: &lt;/p&gt;  &lt;h1&gt;Localised &lt;u&gt;guidance&lt;/u&gt; for 2012&lt;/h1&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/01/26/rangers-guidance-localizations-sprechen-sie-deutsch-191-habla-espa-241-ol.aspx"&gt;Rangers Guidance Localizations … Sprechen Sie Deutsch? … ¿Habla Español?&lt;/a&gt;&amp;#160; &lt;br /&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;h1&gt;Localised &lt;u&gt;videos&lt;/u&gt; for 2012&lt;/h1&gt;  &lt;h3&gt;Arabic&lt;/h3&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.youtube.com/user/MSMEAALMCommunity/videos?flow=grid&amp;amp;view=0"&gt;http://www.youtube.com/user/MSMEAALMCommunity/videos?flow=grid&amp;amp;view=0&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;German&lt;/h3&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.microsoft.com/germany/msdn/events/vs-evolution-2012/default.aspx"&gt;http://www.microsoft.com/germany/msdn/events/vs-evolution-2012/default.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/cbinder/archive/2013/03/20/neu-in-visual-studio-2012-2.aspx"&gt;http://blogs.msdn.com/b/cbinder/archive/2013/03/20/neu-in-visual-studio-2012-2.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;French&lt;/h3&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.microsoft.com/france/visual-studio/bonapp/hub-emission.aspx"&gt;http://www.microsoft.com/france/visual-studio/bonapp/hub-emission.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Portuguese&lt;/h3&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.microsoftvirtualacademy.com/training-courses/introducao-a-application-lifecycle-management-alm-parte-1"&gt;http://www.microsoftvirtualacademy.com/training-courses/introducao-a-application-lifecycle-management-alm-parte-1&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoftvirtualacademy.com/training-courses/introducao-a-application-lifecycle-management-alm-parte-2"&gt;http://www.microsoftvirtualacademy.com/training-courses/introducao-a-application-lifecycle-management-alm-parte-2&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoftvirtualacademy.com/training-courses/guia-de-estudo-certifica-o-tfs-2012-70-496-"&gt;http://www.microsoftvirtualacademy.com/training-courses/guia-de-estudo-certifica-o-tfs-2012-70-496-&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.microsoftvirtualacademy.com/training-courses/introducao-ao-lab-management"&gt;http://www.microsoftvirtualacademy.com/training-courses/introducao-ao-lab-management&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.andredias.net/videos/"&gt;http://blog.andredias.net/videos/&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Russian&lt;/h3&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.techdays.ru/"&gt;http://www.techdays.ru/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.techdays.ru/series/alm2012training"&gt;http://www.techdays.ru/series/alm2012training&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Spanish&lt;/h3&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://channel9.msdn.com/Blogs/DevWow"&gt;http://channel9.msdn.com/Blogs/DevWow&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;… and there is more on Channel 9!&lt;/h3&gt;  &lt;p&gt;When you go to channel 9 link &lt;a href="http://channel9.msdn.com/Series/Visual-Studio-2012-Premium-and-Ultimate-Overview"&gt;http://channel9.msdn.com/Series/Visual-Studio-2012-Premium-and-Ultimate-Overview&lt;/a&gt; and add “-&amp;lt;LANG&amp;gt;” to the url, you’ll get all the localized videos.&amp;#160; So for example &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;German, you get via &lt;a href="http://channel9.msdn.com/Series/Visual-Studio-2012-Premium-and-Ultimate-Overview-DEU"&gt;http://channel9.msdn.com/Series/Visual-Studio-2012-Premium-and-Ultimate-Overview-DEU&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Japanese - &lt;a href="http://channel9.msdn.com/Series/Visual-Studio-2012-Premium-and-Ultimate-Overview-JPN"&gt;http://channel9.msdn.com/Series/Visual-Studio-2012-Premium-and-Ultimate-Overview-JPN&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;French - &lt;a href="http://channel9.msdn.com/Series/Visual-Studio-2012-Premium-and-Ultimate-Overview-FRA"&gt;http://channel9.msdn.com/Series/Visual-Studio-2012-Premium-and-Ultimate-Overview-FRA&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;etc.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; Please add a comment to this post or &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/contact.aspx"&gt;ping me&lt;/a&gt; direct if the list is missing any gems, so that I can update the post.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10415501" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Visual+Studio+_2800_Server_2900_/">Visual Studio (Server)</category><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Guidance/">Guidance</category><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Visual+Studio+_2800_Client_2900_/">Visual Studio (Client)</category></item><item><title>ALM Readiness Treasure Map v2 – Show what we have for Sprint 10 (April)</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/26/alm-readiness-treasure-map-v2-show-what-we-have-for-sprint-10-april.aspx</link><pubDate>Fri, 26 Apr 2013 17:54:31 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10414325</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10414325</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/26/alm-readiness-treasure-map-v2-show-what-we-have-for-sprint-10-april.aspx#comments</comments><description>&lt;p&gt;In &lt;a href="http://aka.ms/vsartmaptoc"&gt;TOC - ALM Readiness Treasure Map&lt;/a&gt; the team is sharing the vision and plans (Epics) for the next version of the treasure map and transparently discussing the design learning's and experiences to be transparent and most importantly to get &lt;strong&gt;your&lt;/strong&gt; invaluable feedback.&lt;/p&gt;  &lt;p&gt;The team has just released a “&lt;a href="http://channel9.msdn.com/posts/ALM-Readiness-Treasure-Map-v2Sprint10-Show-What-We-Have"&gt;show what we have&lt;/a&gt;” video for the past Sprint finishing on April 30th. Enjoy during your next coffee break!&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://channel9.msdn.com/posts/ALM-Readiness-Treasure-Map-v2Sprint10-Show-What-We-Have"&gt;&lt;img title="image" style="display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/1263.image_5F00_1ACD4291.png" width="168" height="86" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Our captain, &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/03/04/introducing-the-visual-studio-alm-rangers-robert-bernstein.aspx"&gt;Robert Bernstein&lt;/a&gt; had this to say to the team:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;Arrr!&amp;#160; Fellow pirates, after reviewing the video covering our Sprint 10 progress, I just wanted to comment on the hard work you’ve been doing so far.&lt;/em&gt;&lt;/p&gt;    &lt;ul&gt;     &lt;li&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/08/23/introducing-the-visual-studio-alm-rangers-fabio-stawinski.aspx"&gt;Fabio&lt;/a&gt;: I love what you’ve done with the Sharing contract in v2.&amp;#160; It worked well in v1, but feels much more polished now.&amp;#160; Nice work!&lt;/em&gt;&lt;/li&gt;      &lt;li&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/01/27/introducing-the-visual-studio-alm-rangers-anisha-pindoria.aspx"&gt;Anisha&lt;/a&gt;: You’ve done a great job designing the new UX for v2.&amp;#160; The updates make me want to resubmit our MSDN Magazine article with the beautiful new artwork!!!&lt;/em&gt;&lt;/li&gt;      &lt;li&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/07/04/introducing-the-visual-studio-alm-rangers-robert-maclean.aspx"&gt;RobertM&lt;/a&gt;: While I liked your explanations for why you’re excited to be Dev Lead on this project, I was really impressed with your clear explanations of how the code is implemented.&amp;#160; You got the full point about how the app was written across while keeping it straightforward and concise.&amp;#160; That’s hard to do in just a couple of minutes.&amp;#160; Well done!&lt;/em&gt;&lt;/li&gt;      &lt;li&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2010/10/20/introducing-the-visual-studio-alm-rangers-willy-peter-schaub.aspx"&gt;Willy&lt;/a&gt;: Your narration really pulled it all together into a cohesive description of our project.&amp;#160; You conveyed that we are one unified team working well together.&amp;#160; Great communication!&lt;/em&gt;&lt;/li&gt;   &lt;/ul&gt;    &lt;p&gt;&lt;em&gt;And thanks to the whole team for all the hard work you’re doing.&amp;#160; For those who didn’t get to contribute this round, you’ll have plenty of opportunities to do so in future Sprints.&amp;#160; Keep up the good work!&lt;/em&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;em&gt;Rob “Captain” Bernstein&lt;/em&gt;&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7217.DSCN0225_5F00_6C73BCE3.jpg"&gt;&lt;img title="DSCN0225" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="DSCN0225" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3005.DSCN0225_5F00_thumb_5F00_3E39C129.jpg" width="240" height="180" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;strong&gt;Related&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://aka.ms/vsartmaptoc"&gt;ALM Readiness Treasure Map Blogs&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://aka.ms/vsartmap"&gt;ALM Readiness Treasure Map v1 Paper Map and Sample Source Code&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://aka.ms/vsartmapapp"&gt;ALM Readiness Treasure Map v1 Windows Store Application&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10414325" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Chatter/">Chatter</category><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Pirates/">Pirates</category></item><item><title>ALM Rangers Dogfooding – Code Review and Build process</title><link>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/23/alm-rangers-dogfooding-code-review-and-build-process.aspx</link><pubDate>Tue, 23 Apr 2013 21:29:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10413478</guid><dc:creator>Willy-P. Schaub</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.msdn.com/b/willy-peter_schaub/rsscomments.aspx?WeblogPostID=10413478</wfw:commentRss><comments>http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/04/23/alm-rangers-dogfooding-code-review-and-build-process.aspx#comments</comments><description>&lt;p&gt;As part of our dog fooding we have been working on improving the &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/10/17/alm-rangers-raising-the-quality-bar-for-tooling-part-1.aspx"&gt;Quality Bar&lt;/a&gt;, &lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2013/03/21/definition-of-done-and-knowing-when-it-is-safe-to-sleep-peacefully.aspx"&gt;Definition of “DONE” and knowing when it is safe to sleep peacefully&lt;/a&gt;, project principles and more recently code reviews with the overall objective of shipping better solutions and creating happier users.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Updated&lt;/strong&gt;: 2014-04-25 – Distinguish between minor and major change.&lt;/p&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;WARNING&lt;/strong&gt;&lt;/font&gt;: This post is a journal of how we are dog fooding our environment. It is intended as transparent information sharing and should not be mistaken for guidance. We are intentionally focusing our teams to use what come with Visual Studio and Team Foundation Service out-of-the-box to ensure we eat our own dog food &lt;img class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/3386.wlEmoticon_2D00_smile_5F00_54C674AD.png" /&gt;&lt;/p&gt;  &lt;h2&gt;Overview&lt;/h2&gt;  &lt;p&gt;In the current vsarUnitTestFx project, which has the quest of “Better Unit Testing with Test Code Generation” we have settled down using a basic branching scenario with a main and release branch, as defined in the Branching and Merging Guide (&lt;a title="http://aka.ms/treasure18" href="http://aka.ms/treasure18"&gt;http://aka.ms/treasure18&lt;/a&gt;).&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2045.image_5F00_701D66A7.png"&gt;&lt;em&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/2538.image_5F00_thumb_5F00_6FB133B2.png" width="240" height="121" /&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;… we have moved away from a dev and feature branches for most projects, unless we require additional isolation.&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Our main branch is protected by two checkpoints:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;strong&gt;Gated check-in&lt;/strong&gt;, to ensure that submitted changes merge and build successfully in our Team Foundation Service home.       &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7331.image_5F00_0B55BFA9.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6758.image_5F00_thumb_5F00_4B1FA62E.png" width="212" height="45" /&gt;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Code review&lt;/strong&gt; is performed by the product owner, dev lead, project lead and the team.&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;&lt;strong&gt;Major change or milestone&lt;/strong&gt;         &lt;br /&gt;For major milestones, for example ALPA, BETA, V1 or a potentially code/feature breaking change, the current dog fooding rule is to do a code review and then do a gated check-in.         &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/6507.image_5F00_3258DA0D.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/5047.image_5F00_thumb_5F00_35F6F4EA.png" width="738" height="141" /&gt;&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;strong&gt;Minor change and no milestone&lt;/strong&gt;         &lt;br /&gt;For minor changes, which are unlikely to break code or features, the current dog fooding rule is to do a gated checkin and start a code review in parallel. This is to ensure that the team is not blocked for potentially 48h (see below) if reviewers are slow to respond.         &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/7288.image_5F00_1C8EF1B0.png"&gt;&lt;img title="image" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-18-52-metablogapi/4848.image_5F00_thumb_5F00_0A462AEE.png" width="735" height="147" /&gt;&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;strong&gt;What is reviewed?&lt;/strong&gt;         &lt;br /&gt;1. Code Quality -&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/10/17/alm-rangers-raising-the-quality-bar-for-tooling-part-1.aspx"&gt;Raising the Quality Bar for Tooling (Part 1)&lt;/a&gt;         &lt;br /&gt;2. Adherence to acceptance criteria         &lt;br /&gt;3. Coding concepts, style … learning from others         &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/li&gt;   &lt;/ul&gt; &lt;/ol&gt;  &lt;h2&gt;Code Reviews … as currently defined and used by the team&lt;/h2&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;We are using the Visual Studio 2012 code review feature in our Team Foundation Service home. The intent is to dog-food the feature and give real-world feedback to the product team. &lt;/li&gt;    &lt;li&gt;We are involving the following personas as code reviewers at the time indicated:      &lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;&lt;strong&gt;&lt;/strong&gt;      &lt;table cellspacing="0" cellpadding="1" width="822" border="0"&gt;&lt;tbody&gt;         &lt;tr&gt;           &lt;td width="118"&gt;&lt;strong&gt;Team Member&lt;/strong&gt;&lt;/td&gt;            &lt;td width="112"&gt;&lt;strong&gt;When&lt;/strong&gt;&lt;/td&gt;            &lt;td width="94"&gt;&lt;strong&gt;Block&lt;/strong&gt;&lt;/td&gt;            &lt;td width="496"&gt;&lt;strong&gt;Review Focus&lt;/strong&gt;&lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td width="119"&gt;Product Owner&lt;/td&gt;            &lt;td width="112"&gt;Closing Epic&lt;/td&gt;            &lt;td width="95"&gt;Yes&lt;/td&gt;            &lt;td width="496"&gt;             &lt;p&gt;Verify PG-level code quality, PG alignment and be in a position to sign-off associated Epic.&lt;/p&gt;           &lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td width="119"&gt;Dev Lead&lt;/td&gt;            &lt;td width="112"&gt;Closing PBI&lt;/td&gt;            &lt;td width="96"&gt;Yes&lt;/td&gt;            &lt;td width="496"&gt;             &lt;p&gt;Verify code and guide team as dev lead. Focus on feature alignment and quality bar.&lt;/p&gt;           &lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td width="119"&gt;Project Lead&lt;/td&gt;            &lt;td width="112"&gt;Closing PBI&lt;/td&gt;            &lt;td width="97"&gt;Yes&lt;/td&gt;            &lt;td width="496"&gt;             &lt;p&gt;Verify Ruck-level code quality, feature alignment and support DL where needed.               &lt;br /&gt;&lt;a href="http://blogs.msdn.com/b/willy-peter_schaub/archive/2012/10/17/alm-rangers-raising-the-quality-bar-for-tooling-part-1.aspx"&gt;Raising the Quality Bar for Tooling (Part 1)&lt;/a&gt; &lt;/p&gt;           &lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td width="119"&gt;Quality Check&lt;/td&gt;            &lt;td width="112"&gt;Closing Epic&lt;/td&gt;            &lt;td width="97"&gt;Yes&lt;/td&gt;            &lt;td width="496"&gt;             &lt;p&gt;Verify Ruck-level code quality and perform an independent code quality review.&lt;/p&gt;           &lt;/td&gt;         &lt;/tr&gt;          &lt;tr&gt;           &lt;td width="119"&gt;Everyone&lt;/td&gt;            &lt;td width="112"&gt;Always&lt;/td&gt;            &lt;td width="97"&gt;48h&lt;/td&gt;            &lt;td width="496"&gt;For maximum transparency loop in everyone.&lt;/td&gt;         &lt;/tr&gt;       &lt;/tbody&gt;&lt;/table&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;We usually include the entire team reviewers for maximum transparency, but their review feedback may not be required for task closure. As per table only the code reviews by product owner, project lead, dev lead and quality check SME are required and blocking. The rest are optional and after 48h (max) the code review request is closed.&lt;/li&gt;    &lt;li&gt;We do &lt;strong&gt;not&lt;/strong&gt; release bits or move to next objective until all reviews have been completed and PO/DL/PL signoffs have been made. If a blockage is created, the team usually united to extinguish any fires and blockers as a team.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;For other dog-fooding posts, see &lt;a title="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/dogfooding/" href="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/dogfooding/"&gt;http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/dogfooding/&lt;/a&gt;.&lt;/p&gt;  &lt;p align="right"&gt;ACRONYMS: &lt;strong&gt;PO&lt;/strong&gt;=Product Owner, &lt;strong&gt;PL&lt;/strong&gt;=Project Lead, &lt;strong&gt;DL&lt;/strong&gt;=Dev Lead, &lt;strong&gt;PG&lt;/strong&gt;=Product Group&lt;/p&gt;  &lt;p&gt;How do &lt;strong&gt;you&lt;/strong&gt; deal with code reviews?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10413478" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Visual+Studio+_2800_Server_2900_/">Visual Studio (Server)</category><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Visual+Studio+_2800_Client_2900_/">Visual Studio (Client)</category><category domain="http://blogs.msdn.com/b/willy-peter_schaub/archive/tags/Dogfooding/">Dogfooding</category></item></channel></rss>