﻿<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
  <channel>
    <title>KB más recientes de ...</title>
    <description>KB más recientes de ...</description>
    <link>http://willydev.net/kb-.aspx</link>
    <docs>http://backend.userland.com/rss</docs>
    <generator>RSS.NET: http://www.rssdotnet.com/</generator>
    <item>
      <title>Cómo mostrar información de la zona de Internet Explorer 9</title>
      <description>Describe los distintos tipos de zonas de Internet y se explica cómo mostrar la información de zona de Internet Explorer 9.</description>
      <link>http://support.microsoft.com/kb/2689449/es?sd=rss&amp;spid=15672</link>
      <pubDate>Wed, 16 May 2012 01:10:00 GMT</pubDate>
    </item>
    <item>
      <title>A web page in Internet Explorer’s Favorites cannot be sent to desktop</title>
      <description>A web page in Internet Explorer’s Favorites list cannot be sent to desktop or documents</description>
      <link>http://support.microsoft.com/kb/2713422/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Tue, 15 May 2012 17:00:00 GMT</pubDate>
    </item>
    <item>
      <title>MS12-010: Actualización de seguridad acumulativa para Internet Explorer: 14 de febrero de 2012</title>
      <description>Resuelve vulnerabilidades en Internet Explorer que podrían permitir la ejecución remota de código si un usuario viera una página web creada especialmente para ello con dicho explorador.</description>
      <link>http://support.microsoft.com/kb/2647516/es?sd=rss&amp;spid=15672</link>
      <pubDate>Tue, 15 May 2012 13:05:00 GMT</pubDate>
    </item>
    <item>
      <title>0x800f081e al instalar Internet Explorer 9</title>
      <description>La instalación incorrecta de Internet Explorer 9 produce el error 0x800f081e</description>
      <link>http://support.microsoft.com/kb/2649040/es?sd=rss&amp;spid=15672</link>
      <pubDate>Mon, 14 May 2012 11:30:00 GMT</pubDate>
    </item>
    <item>
      <title>How to reinstall or repair Internet Explorer in Windows 7, Windows Vista, and Windows XP</title>
      <description>Describes how to reinstall or repair Internet Explorer in Windows 7, Windows Vista and Windows XP.</description>
      <link>http://support.microsoft.com/kb/318378/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Mon, 14 May 2012 02:20:00 GMT</pubDate>
    </item>
    <item>
      <title>Google Toolbar causes an error message and does not start in Internet Explorer</title>
      <description>Fixes a problem in which Internet Explorer stops responding or crashes because the installed Google Toolbar add-on is not compatible with the installed Internet Explorer version.</description>
      <link>http://support.microsoft.com/kb/968136/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Mon, 14 May 2012 02:20:00 GMT</pubDate>
    </item>
    <item>
      <title>MS11-050: Cumulative Security Update for Internet Explorer: June 14, 2011</title>
      <description>Resolves vulnerabilities in Internet Explorer that could allow remote code execution if a user views a specially crafted Web page using Internet Explorer.</description>
      <link>http://support.microsoft.com/kb/2530548/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Fri, 11 May 2012 20:50:00 GMT</pubDate>
    </item>
    <item>
      <title>Aviso de seguridad de Microsoft: Paquete acumulativo de actualizaciones para bits de interrupción de ActiveX: 8 de mayo de 2012</title>
      <description>Incluye un vínculo a un aviso de seguridad de Microsoft (2695962): Paquete acumulativo de actualizaciones para bits de cierre de ActiveX</description>
      <link>http://support.microsoft.com/kb/2695962/es?sd=rss&amp;spid=15672</link>
      <pubDate>Fri, 11 May 2012 19:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Easy Credential Caching for Git</title>
      <description>&lt;p&gt;A common question since launching our Git support is whether there is a way to cache your username and password so you don&amp;rsquo;t have to enter it on every push.&amp;nbsp; Well thanks to &lt;a href="http://vibrantcode.com"&gt;Andrew Nurse&lt;/a&gt; from the &lt;a href="http://aspnetwebstack.codeplex.com/"&gt;ASP.Net team&lt;/a&gt;, there is now a great solution for this!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Credential Caching in Windows to the Rescue&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Using the Git extension point for credential caching, Andrew created an integration into the Windows Credentials store. After installing &lt;a href="http://gitcredentialstore.codeplex.com" target="_blank"&gt;git-credential-winstore&lt;/a&gt; instead of getting that standard prompt for a username/password, you will get a Windows Security prompt.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/8662.SecurityPrompt_5F00_69AF9A1E.png"&gt;&lt;img title="SecurityPrompt" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="SecurityPrompt" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/2308.SecurityPrompt_5F00_thumb_5F00_1E4FF65A.png" width="350" height="219" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;From here your credentials for CodePlex will be stored securely within the Windows Credential Store.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/7802.cred_2D00_store_5F00_5E94D025.png"&gt;&lt;img title="cred-store" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="cred-store" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/2287.cred_2D00_store_5F00_thumb_5F00_3E79C368.png" width="475" height="305" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Setup&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The setup is pretty easy. Download the application from Andrew's &lt;a href="http://gitcredentialstore.codeplex.com/releases/view/87586" target="_blank"&gt;git-credential-winstore&lt;/a&gt; project. Launch the executable and select yes to have it prompt for credentials. That's it.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/8255.git_2D00_cred_2D00_store_2D00_accept_5F00_69436729.png"&gt;&lt;img title="git-cred-store-accept" style="border: 0px currentcolor; display: inline; background-image: none;" border="0" alt="git-cred-store-accept" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/6102.git_2D00_cred_2D00_store_2D00_accept_5F00_thumb_5F00_49285A6C.png" width="350" height="122" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Make sure you are running the latest version of &lt;a href="http://code.google.com/p/msysgit/downloads/list" target="_blank"&gt;msysgit&lt;/a&gt;, since the credential's API is fairly new.&lt;/p&gt;
&lt;p&gt;Thanks to Andrew for sharing his work.&amp;nbsp; If you have suggestions or improvements you can &lt;a href="http://gitcredentialstore.codeplex.com/SourceControl/list/changesets"&gt;fork the code&lt;/a&gt; here.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10304018" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/05/11/easy-credential-caching-for-git.aspx</link>
      <pubDate>Fri, 11 May 2012 17:30:00 GMT</pubDate>
    </item>
    <item>
      <title>Descripción de las Cookies</title>
      <description>Describe lo que una Cookie se encuentra en Internet Explorer y ofrece información adicional.</description>
      <link>http://support.microsoft.com/kb/260971/es?sd=rss&amp;spid=15672</link>
      <pubDate>Fri, 11 May 2012 00:10:00 GMT</pubDate>
    </item>
    <item>
      <title>Release Notes for 5/10/12</title>
      <description>&lt;p&gt;Here are the notes for this week’s release:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Pull Requests&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;We’ve now added the ability to send pull requests to and from specific branches in your fork and the parent project. This is our first change in a series of improvements we want to make to our pull request workflow.     &lt;br /&gt;      &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/6562.image_5F00_64F10F9E.png"&gt;&lt;img title="image" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/5516.image_5F00_thumb_5F00_1D9E4A5D.png" width="511" height="103" /&gt;&lt;/a&gt;      &lt;br /&gt;      &lt;br /&gt;We’ve also changed the location of the create fork/pull request links so that they’re a little more discoverable and to separate these actions visually from navigation links.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Bug Fixes&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;We’ve been continuing to tweak and refine our UI. Please keep the feedback coming!&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Fixed &lt;a href="http://codeplex.codeplex.com/workitem/26233"&gt;an issue&lt;/a&gt; where the progress indicator would momentarily darken the entire screen when browsing code files, causing users to think that they’re in a rave :).&amp;#160; &lt;/li&gt;    &lt;li&gt;We &lt;a href="http://codeplex.codeplex.com/workitem/26231"&gt;darkened the text&lt;/a&gt; on input boxes. &lt;/li&gt;    &lt;li&gt;We added some color to &lt;a href="http://codeplex.codeplex.com/workitem/26184"&gt;distinguish between fixed, closed, and open issues&lt;/a&gt; when browsing issues.&lt;/li&gt;    &lt;li&gt;Fixed &lt;a href="http://codeplex.codeplex.com/workitem/26237"&gt;an issue&lt;/a&gt; where long commit messages would not appear when viewing a commit.&lt;/li&gt;    &lt;li&gt;Fixed an issue where discussion timestamps would extend beyond their intended width.&lt;/li&gt;    &lt;li&gt;Added some padding around the edges of the site to increase readability on smaller screens/browser sizes such as mobile and table devices.&lt;/li&gt;    &lt;li&gt;We reduced the height of some of our visual elements, including the download button and our headings with gray backgrounds.&lt;/li&gt;    &lt;li&gt;We’ve also made various tweaks across the site to increase consistency on design elements with the new theme.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Special thanks to the following users who reported issues or gave feedback for this release: &lt;a href="http://www.codeplex.com/site/users/view/hhblaze"&gt;hhblaze&lt;/a&gt;, &lt;a href="http://www.codeplex.com/site/users/view/pranavkm"&gt;pranavkm&lt;/a&gt;, &lt;a href="http://www.codeplex.com/site/users/view/jeffyjones"&gt;jeffyjones&lt;/a&gt;, &lt;a href="http://www.codeplex.com/site/users/view/HenrikN"&gt;HenrikN&lt;/a&gt;, &lt;a href="http://twitter.com/#!/hasanga"&gt;hasanga&lt;/a&gt;, &lt;a href="http://www.codeplex.com/site/users/view/radioman"&gt;radioman&lt;/a&gt;, and &lt;a href="http://twitter.com/#!/mattslay"&gt;mattslay&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Have ideas on how to improve CodePlex? Visit our &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;ideas page&lt;/a&gt;! Vote for your favorite ideas or submit a new one.&lt;/p&gt;  &lt;p&gt;Got Twitter? Follow us and keep apprised of the latest releases and service status at &lt;a href="http://www.twitter.com/codeplex"&gt;@codeplex&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=10303989" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/05/10/release-notes-for-5-10-12.aspx</link>
      <pubDate>Thu, 10 May 2012 21:10:18 GMT</pubDate>
    </item>
    <item>
      <title>MS11-099: Cumulative Security Update for Internet Explorer: December 13, 2011</title>
      <description>Resolves vulnerabilities in Internet Explorer that could allow remote code execution if a user views a specially crafted webpage by using Internet Explorer.</description>
      <link>http://support.microsoft.com/kb/2618444/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Tue, 08 May 2012 16:20:00 GMT</pubDate>
    </item>
    <item>
      <title>MS11-057: Cumulative Security Update for Internet Explorer: August 9, 2011</title>
      <description>Resolves vulnerabilities in Internet Explorer that could allow remote code execution if a user views a specially crafted webpage by using Internet Explorer.</description>
      <link>http://support.microsoft.com/kb/2559049/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Tue, 08 May 2012 16:00:00 GMT</pubDate>
    </item>
    <item>
      <title>How to set the zoom level in Internet Explorer 9</title>
      <description>Describes how to set the default zoom in Internet Explorer 9 to a custom level so that you can make the screen display larger or smaller for a webpage.</description>
      <link>http://support.microsoft.com/kb/2689447/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Mon, 07 May 2012 18:40:00 GMT</pubDate>
    </item>
    <item>
      <title>Error 107: Error de protocolo SSL en Internet Explorer</title>
      <description>Cómo solucionar el Error 107 (net::ERR_SSL_PROTOCOL_ERROR): Error de protocolo SSL en Internet Explorer</description>
      <link>http://support.microsoft.com/kb/2701598/es?sd=rss&amp;spid=15672</link>
      <pubDate>Mon, 07 May 2012 16:20:00 GMT</pubDate>
    </item>
    <item>
      <title>Error message: "Canon Easy-WebPrint EX isn’t compatible with Internet Explorer"</title>
      <description>Describes an issue that occurs when the Canon Easy-WebPrint EX plug-in is installed, and you start Internet Explorer 9. Provides a resolution.</description>
      <link>http://support.microsoft.com/kb/2518296/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Fri, 04 May 2012 16:50:00 GMT</pubDate>
    </item>
    <item>
      <title>Cómo solucionar errores de script en Internet Explorer</title>
      <description>Describe cómo solucionar el siguiente error de script: "Hay problemas con la página actual. Podría no mostrarse correctamente. Para volver a mostrar este mensaje, haga doble clic en el icono de advertencia que aparece actualmente en la barra de estado".</description>
      <link>http://support.microsoft.com/kb/308260/es?sd=rss&amp;spid=15672</link>
      <pubDate>Fri, 04 May 2012 10:40:00 GMT</pubDate>
    </item>
    <item>
      <title>Release Notes for 5/2/2012</title>
      <description>&lt;p&gt;We deployed another release yesterday. Thanks for the great feedback so far on our new look! We’ve been reacting to a bunch of the issues that people have found and will continue to tweak and refine our design. Please keep the feedback coming! Here are the notes for this release:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Fixes: User Interface and Formatting&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;We took a pass through the text and font in various places to increase the contrast between the foreground and background colors. Let us know if this is an improvement or if there are other areas where the contrast is still too small. &lt;/li&gt;    &lt;li&gt;Re-styled various pages to better fit the new UI theme. &lt;/li&gt;    &lt;li&gt;Fixed &lt;a href="http://codeplex.codeplex.com/workitem/26183"&gt;an issue&lt;/a&gt; where the site survey was transparent. &lt;/li&gt;    &lt;li&gt;Fixed an issue where tables in wikis/documentation lost their borders and could extend beyond their intended boundary. &lt;/li&gt;    &lt;li&gt;Fixed the formatting of the Discussion List header. &lt;/li&gt;    &lt;li&gt;Fixed an issue in Internet Explorer where long descriptions on forks would extend beyond their intended boundary. &lt;/li&gt;    &lt;li&gt;Fixed an issue on the forks list page where the pagination of forks overlapped the filter for setting the number of viewable forks. &lt;/li&gt;    &lt;li&gt;Fixed an issue where long usernames would appear cut off in discussion threads. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Fixes: Functionality&lt;/strong&gt;&lt;!--EndFragment--&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Fixed &lt;a href="http://codeplex.codeplex.com/workitem/26181"&gt;an issue&lt;/a&gt; where the My Subscriptions filter for discussions was not working as intended. &lt;/li&gt;    &lt;li&gt;Fixed an issue where clicking on a commit when browsing the source code changes in a fork was not working. &lt;/li&gt;    &lt;li&gt;Fixed an issue where adding ClickOnce releases was not working as intended. &lt;/li&gt;    &lt;li&gt;Fixed an issue where tags for open positions were not working as intended. &lt;/li&gt;    &lt;li&gt;We removed &lt;a href="http://codeplex.codeplex.com/discussions/354176"&gt;the unintentional ability&lt;/a&gt; to insert javascript into the discussion list details for project owners. While the results of what users were doing with it were neat, we want to make sure that users can do this type of customization in a supported manner that doesn’t require users to jump through hoops with javascript and DOM manipulation. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Have ideas on how to improve CodePlex? Visit our &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;ideas page&lt;/a&gt;! Vote for your favorite ideas or submit a new one.&lt;/p&gt;  &lt;p&gt;Got Twitter? Follow us and keep apprised of the latest releases and service status at &lt;a href="http://www.twitter.com/codeplex"&gt;@codeplex&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=10300528" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/05/03/release-notes-for-5-2-2012.aspx</link>
      <pubDate>Thu, 03 May 2012 17:54:54 GMT</pubDate>
    </item>
    <item>
      <title>How to turn the Internet Explorer Phishing Filter or the SmartScreen Filter on or off</title>
      <description>Describes how to turn on or turn off the Phishing Filter in Internet Explorer 7 and how to turn on or turn off the SmartScreen Filter in Internet Explorer 8 and Internet Explorer 9.</description>
      <link>http://support.microsoft.com/kb/930168/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Wed, 02 May 2012 06:10:00 GMT</pubDate>
    </item>
    <item>
      <title>Compatibility issues with HP Smart Web Printing and Internet Explorer 8</title>
      <description>Describes compatibility issues with the "HP Smart Web Printing" Internet Explorer add-on and IE8.</description>
      <link>http://support.microsoft.com/kb/2519416/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Wed, 02 May 2012 05:30:00 GMT</pubDate>
    </item>
    <item>
      <title>Las versiones anteriores de la barra de herramientas de Yahoo! pueden provocar que Internet Explorer se bloquea</title>
      <description>Describe un problema por el cual recibe un "Internet Explorer ha dejado de funcionar" o el mensaje de error "Internet Explorer ha encontrado un problema y debe cerrarse" cuando inicia Internet Explorer. Proporciona una resolución.</description>
      <link>http://support.microsoft.com/kb/2485443/es?sd=rss&amp;spid=15672</link>
      <pubDate>Wed, 02 May 2012 05:20:00 GMT</pubDate>
    </item>
    <item>
      <title>Problemas de incompatibilidad con la barra de herramientas de Google y Internet Explorer 8</title>
      <description>Corrige un problema en el que Internet Explorer 8, deja de responder o se bloquea debido a que el complemento de barra de herramientas de Google.</description>
      <link>http://support.microsoft.com/kb/2519426/es?sd=rss&amp;spid=15672</link>
      <pubDate>Wed, 02 May 2012 04:40:00 GMT</pubDate>
    </item>
    <item>
      <title>Problemas de incompatibilidad con la barra de herramientas de Google y Internet Explorer 8</title>
      <description>Corrige un problema en el que Internet Explorer 8, deja de responder o se bloquea debido a que el complemento de barra de herramientas de Google.</description>
      <link>http://support.microsoft.com/kb/2534492/es?sd=rss&amp;spid=15672</link>
      <pubDate>Wed, 02 May 2012 04:40:00 GMT</pubDate>
    </item>
    <item>
      <title>El complemento de barra de herramientas de PDFCreator puede no ser compatible con Internet Explorer 8</title>
      <description>Describe un problema en el que Internet Explorer (IE) 8 puede bloquearse o congelar debido a un problema de compatibilidad con el complemento de barra de herramientas de PDFCreator (complemento).</description>
      <link>http://support.microsoft.com/kb/2534446/es?sd=rss&amp;spid=15672</link>
      <pubDate>Wed, 02 May 2012 04:40:00 GMT</pubDate>
    </item>
    <item>
      <title>How do I move the Tab Bar in Internet Explorer 9 to a more user-friendly location?</title>
      <link>http://support.microsoft.com/kb/2689448/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Tue, 01 May 2012 21:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Internet Explorer 8 and Internet Explorer 9 take longer than expected to start</title>
      <description>When launching Internet Explorer, you may notice that Internet Explorer takes longer than expected to start.</description>
      <link>http://support.microsoft.com/kb/969938/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Mon, 30 Apr 2012 21:50:00 GMT</pubDate>
    </item>
    <item>
      <title>You cannot access your webmail in Internet Explorer 9 or Internet Explorer 8</title>
      <description>Describes several methods you can use to troubleshoot problems accessing your webmail when you use Internet Explorer 9 or Internet Explorer 8.</description>
      <link>http://support.microsoft.com/kb/967894/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Mon, 30 Apr 2012 21:40:00 GMT</pubDate>
    </item>
    <item>
      <title>How do I remove Internet Explorer 8 from Windows as a troubleshooting step?</title>
      <description>Describes how to automatically remove Internet Explorer 8 and restore a previous version of Internet Explorer to help troubleshoot an issue. Also describes the steps to do it yourself in Windows 7, Windows Vista, Windows Server 2008,  Windows XP, and in...</description>
      <link>http://support.microsoft.com/kb/957700/es-es?sd=rss&amp;spid=15672</link>
      <pubDate>Mon, 30 Apr 2012 21:40:00 GMT</pubDate>
    </item>
    <item>
      <title>A New Look for CodePlex</title>
      <description>&lt;p&gt;As I mentioned a &lt;a href="http://blogs.msdn.com/b/codeplex/archive/2012/03/30/new-codeplex-ui-coming-soon.aspx"&gt;month ago&lt;/a&gt;, we have been working on improving the overall experience for the CodePlex community.&amp;nbsp; Today, I am happy to announce the release of CodePlex&amp;rsquo;s new look!&amp;nbsp; Our goal was to refresh the look and feel of the site to a modern Metro-inspired theme.&lt;/p&gt;
&lt;p&gt;This is the first step in our continued investment to improve the usability within the site.&amp;nbsp; Please let us know your feedback!&amp;nbsp; Also, if you see any bugs or something that doesn&amp;rsquo;t look quite right in the new pages &lt;a href="https://www.codeplex.com/site/contact"&gt;contact us with the link&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here are some highlights of the new look released today:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Redesigned Home Pages&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We wanted to make it easier to find common actions within CodePlex.&amp;nbsp; So now within the public home, and your logged in home page, you will find large tiles that take you to common actions such as creating or finding a project.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/1325.image_5F00_7CA2FE04.png"&gt;&lt;img title="image" style="background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border: 0px;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/1348.image_5F00_thumb_5F00_31435A40.png" width="713" height="303" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Simple Project Creation&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We also made it easier to create new projects.&amp;nbsp; Previously to create a project it was multiple fields, agreement checkboxes, and a CAPTCHA, spread out over three pages.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/1663.image_5F00_01E3DBA5.png"&gt;&lt;img title="image" style="background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/4300.image_5F00_thumb_5F00_569F449D.png" width="470" height="461" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/3323.ProjectCreationOld_5F00_7D6D5ADD.png"&gt;&lt;img title="ProjectCreationOld" style="background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;" border="0" alt="ProjectCreationOld" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/3113.ProjectCreationOld_5F00_thumb_5F00_764E1E65.png" width="471" height="312" /&gt;&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-00-66-61-metablogapi/2630.image_5F00_04206461.png"&gt;&lt;img title="image" style="background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/7838.image_5F00_thumb_5F00_71D79D9E.png" width="465" height="412" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Now, creating a project is two fields and selection of your source control preference.&amp;nbsp; Much simpler.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/8400.ProjectCreationNew_5F00_6AB86126.png"&gt;&lt;img title="ProjectCreationNew" style="background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;" border="0" alt="ProjectCreationNew" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/6355.ProjectCreationNew_5F00_thumb_5F00_4A9D5469.png" width="572" height="379" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We have more things coming, and as always we are very focused on providing users what they ask for, so continue &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;submitting your ideas and voting for feature suggestions&lt;/a&gt;!&amp;nbsp; You also can always find us on Twitter at &lt;a href="http://twitter.com/codeplex"&gt;@codeplex&lt;/a&gt; or &lt;a href="http://twitter.com/mgroves84"&gt;@mgroves84&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=10299251" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/04/30/new-codeplex-ui-released.aspx</link>
      <pubDate>Mon, 30 Apr 2012 21:00:00 GMT</pubDate>
    </item>
    <item>
      <title>FIX: Local profile folder is not created when you configure an application pool identity to use an account that uses the "domain\user" format in IIS 7.0 or in IIS 7.5</title>
      <description>Fixes a local profile folder creation issue that occurs when you configure the identity of an application pool to use an account in IIS 7.0 or in IIS 7.5. The issue occurs when the account uses the "domain\user" format.</description>
      <link>http://support.microsoft.com/kb/2682616/en-us?sd=rss&amp;spid=12097</link>
      <pubDate>Sat, 28 Apr 2012 06:20:00 GMT</pubDate>
    </item>
    <item>
      <title>Impersonation fails with IIS Express when User Account Control (UAC) is enabled</title>
      <description>Consider the following scenario. You are running a web application in IIS Express with Visual Studio. The application is configured for Anonymous authentication, and uses impersonation of a service account to access a backend SQL database. When browsing...</description>
      <link>http://support.microsoft.com/kb/2701070/en-us?sd=rss&amp;spid=12097</link>
      <pubDate>Fri, 27 Apr 2012 17:30:00 GMT</pubDate>
    </item>
    <item>
      <title>Upgrading from Windows Server 2008 to Windows 8 fails when the IIS7 Beta Application Warm-up Module is installed</title>
      <description>When you try to upgrade the operating system from Windows Server 2008 or Windows Server 2008 R2 to Windows 8 on a computer that has the IIS 7 Application Warm-up 1.0 Beta module installed, the upgrade fails.</description>
      <link>http://support.microsoft.com/kb/2534552/en-us?sd=rss&amp;spid=12097</link>
      <pubDate>Fri, 27 Apr 2012 17:30:00 GMT</pubDate>
    </item>
    <item>
      <title>Upgrading to Windows 8 is blocked if the IIS Dynamic IP Restriction BETA module is installed</title>
      <description>When you try to upgrade the operating system of a machine running Windows Server 2008 or Windows Server 2008 R2 to Windows 8, the upgrade is blocked. This issue occurs if a beta version of the Dynamic IP Restriction module for IIS7 &amp; 7.5 is installed on...</description>
      <link>http://support.microsoft.com/kb/2705380/en-us?sd=rss&amp;spid=12097</link>
      <pubDate>Fri, 27 Apr 2012 17:30:00 GMT</pubDate>
    </item>
    <item>
      <title>Las fuentes se ve borroso en Internet Explorer 9</title>
      <description>Ayudar a solucionar problemas en el que las fuentes aparecen borrosas en Internet Explorer 9.</description>
      <link>http://support.microsoft.com/kb/2638466/es?sd=rss&amp;spid=15672</link>
      <pubDate>Thu, 26 Apr 2012 22:50:00 GMT</pubDate>
    </item>
    <item>
      <title>Descripción de la aplicación de Internet Explorer y compatibilidad de los sitios Web</title>
      <description>En este artículo ofrece información general sobre problemas de compatibilidad que existen en Internet Explorer 8 y 9 de Internet Explorer y, a continuación, una lista de problemas de compatibilidad conocido con aplicaciones, complementos y sitios web...</description>
      <link>http://support.microsoft.com/kb/969903/es?sd=rss&amp;spid=15672</link>
      <pubDate>Thu, 26 Apr 2012 06:10:00 GMT</pubDate>
    </item>
    <item>
      <title>Cómo solucionar la incompatibilidad de PC Confidential 2008 y Internet Explorer 8</title>
      <description>Describe una incompatibilidad entre el complemento de PC Confidential 2008 y Windows Internet Explorer 8. Se proporcionan los métodos de resolución.</description>
      <link>http://support.microsoft.com/kb/970367/es?sd=rss&amp;spid=15672</link>
      <pubDate>Thu, 26 Apr 2012 04:10:00 GMT</pubDate>
    </item>
    <item>
      <title>REVISIÓN: No se puede cerrar la ventana EMC cuando se instala Internet Explorer 9</title>
      <description>Resuelve un problema en el que no se puede cerrar la ventana EMC en un equipo que tiene instalado Internet Explorer 9.</description>
      <link>http://support.microsoft.com/kb/2624899/es?sd=rss&amp;spid=15672</link>
      <pubDate>Wed, 25 Apr 2012 23:50:00 GMT</pubDate>
    </item>
    <item>
      <title>Solucionar problemas al jugar a juegos en línea mediante el Explorador de Internet</title>
      <description>Solucionar problemas de juego en línea mediante la actualización de los complementos en Internet Explorer. Algunos sitios pueden verse afectados son juegos Yahoo, juegos Facebook, juegos de Pogo y juegos de MSN.</description>
      <link>http://support.microsoft.com/kb/2528246/es?sd=rss&amp;spid=15672</link>
      <pubDate>Fri, 20 Apr 2012 17:50:00 GMT</pubDate>
    </item>
    <item>
      <title>Notificación de "contenido seguro sólo se muestra" en Internet Explorer 9</title>
      <description>9 De Internet Explorer bloquea el contenido no seguro mediante la notificación a que "contenido seguro sólo se muestra." Este mensaje le permite saber que puede haber contenido seguro y no seguro en la página y le ayuda a mantenerse a salvo de los...</description>
      <link>http://support.microsoft.com/kb/2625928/es?sd=rss&amp;spid=15672</link>
      <pubDate>Fri, 20 Apr 2012 04:10:00 GMT</pubDate>
    </item>
    <item>
      <title>Solucionar problemas de visualización o guardar el historial en Internet Explorer 9</title>
      <description>Obtenga información acerca de qué hacer si tiene problemas para ver o guardar el historial en Internet Explorer 9.</description>
      <link>http://support.microsoft.com/kb/2652752/es?sd=rss&amp;spid=15672</link>
      <pubDate>Fri, 20 Apr 2012 03:50:00 GMT</pubDate>
    </item>
    <item>
      <title>El complemento Drive Letter Access no funciona con Internet Explorer 8 o Internet Explorer 9</title>
      <description>Se describe cómo solucionar un problema que existe entre Sonic Drive Letter Access e Internet Explorer 8 o Internet Explorer 9. Utilice este artículo cuando vea el siguiente mensaje de error: "Internet Explorer &lt;Número_Versión&gt; no es compatible con su...</description>
      <link>http://support.microsoft.com/kb/969228/es?sd=rss&amp;spid=15672</link>
      <pubDate>Thu, 19 Apr 2012 15:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Aparece un mensaje de error de HP Smart Web Printing en Internet Explorer</title>
      <description>Se describe cómo un solucionar un mensaje de error que indica un problema de compatibilidad entre el complemento HP Smart Web Printing e Internet Explorer.</description>
      <link>http://support.microsoft.com/kb/969227/es?sd=rss&amp;spid=15672</link>
      <pubDate>Thu, 19 Apr 2012 14:50:00 GMT</pubDate>
    </item>
    <item>
      <title>Cómo eliminar el contenido de la carpeta Archivos temporales de Internet</title>
      <description>Se describe cómo eliminar del equipo el contenido de la carpeta Archivos temporales de Internet. En este artículo se incluye la opción "Solucionarlo en mi lugar" que puede realizar el procedimiento automáticamente. O bien, puede seguir los pasos...</description>
      <link>http://support.microsoft.com/kb/260897/es?sd=rss&amp;spid=15672</link>
      <pubDate>Thu, 19 Apr 2012 14:20:00 GMT</pubDate>
    </item>
    <item>
      <title>No se puede obtener acceso a algunos sitios web en Internet Explorer</title>
      <description>Obtenga ayuda para resolver problemas que le impiden obtener acceso a algunos sitios web en Internet Explorer.</description>
      <link>http://support.microsoft.com/kb/967897/es?sd=rss&amp;spid=15672</link>
      <pubDate>Wed, 18 Apr 2012 11:30:00 GMT</pubDate>
    </item>
    <item>
      <title>Solución de problemas de acceso al correo web mediante Internet Explorer</title>
      <description>Se solucionan problemas que impiden el acceso al correo web mediante Internet Explorer.

Entre los sitios de correo web a los que puede resultar difícil obtener acceso se encuentran los siguientes (aunque no son los únicos): AOL, Windows Live Mail,...</description>
      <link>http://support.microsoft.com/kb/2483955/es?sd=rss&amp;spid=15672</link>
      <pubDate>Tue, 17 Apr 2012 12:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Internet Explorer 9 se muestra en inglés en lugar del idioma distinto del inglés que especificó en el Service Pack 2 de Windows Vista</title>
      <description>Obtenga información acerca de cómo resolver un problema en el que Internet Explorer 9 se muestra en inglés en lugar del idioma distinto del inglés que especificó en el Service Pack 2 de Windows Vista.</description>
      <link>http://support.microsoft.com/kb/2702313/es?sd=rss&amp;spid=15672</link>
      <pubDate>Mon, 16 Apr 2012 23:00:00 GMT</pubDate>
    </item>
    <item>
      <title>FIX: Affinity is not honored and SSL Common Names are not enforced using Application Request Routing (ARR) in Internet Information Services</title>
      <description>This update resolves the following scenarios: Scenario 1: You have configured Application Request Routing (ARR) with load balancing of 2 or more Internet Information Services (IIS) 7.0 or 7.5 servers. Your website is configured on an HTTP port other...</description>
      <link>http://support.microsoft.com/kb/2693489/en-us?sd=rss&amp;spid=12097</link>
      <pubDate>Mon, 16 Apr 2012 22:50:00 GMT</pubDate>
    </item>
    <item>
      <title>Release Notes for 4/12/2012</title>
      <description>&lt;p&gt;Here are the notes for this week’s release:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Fixed an &lt;a href="http://codeplex.codeplex.com/workitem/26128"&gt;issue&lt;/a&gt; where users could not expand a particular subfolder in the ASP.NET source code tree.&lt;/li&gt;    &lt;li&gt;Fixed an issue where incorrect Git branches would appear in the branch selection dropdown on the source control page. &lt;/li&gt;    &lt;li&gt;Fixed an issue where colons would appear HTML encoded in users’ activity feed.. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Have ideas on how to improve CodePlex? Visit our &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;ideas page&lt;/a&gt;! Vote for your favorite ideas or submit a new one.&lt;/p&gt;  &lt;p&gt;Got Twitter? Follow us and keep apprised of the latest releases and service status at &lt;a href="http://www.twitter.com/codeplex"&gt;@codeplex&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=10293388" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/04/13/release-notes-for-4-12-2012.aspx</link>
      <pubDate>Thu, 12 Apr 2012 23:08:40 GMT</pubDate>
    </item>
    <item>
      <title>Gearing up for API changes</title>
      <description>&lt;p&gt;For the past several years, the Bing Search API has made search
data available for developers to innovate and build upon. Today we are
announcing that the Bing Search API will transition to an offering made
available on the &lt;a target="_blank" href="https://datamarket.azure.com/"&gt;Windows Azure
Marketplace&lt;/a&gt;. The Windows Azure Marketplace is a one stop shop for cloud
data, apps, and services, including the &lt;a target="_blank" href="https://datamarket.azure.com/dataset/1899a118-d202-492c-aa16-ba21c33c06cb"&gt;Microsoft
Translator API&lt;/a&gt;. Through this platform, developers can access hundreds of data
sets and APIs and distribute their applications through the marketplace.&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span&gt;A few important things to note regarding the upcoming
transition:&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoListParagraph"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;With the transition, Bing Search API developers will have access
to fresher results, improved relevancy, and more opportunities to monetize
their usage of the Search API. To offer these services at scale, we plan to
move to a monthly subscription model. Developers can expect subscription
pricing to start at approximately $40 (USD) per month for up to 20,000 queries
each month.&lt;/li&gt;
&lt;li&gt;The transition will begin in several weeks and will take a few
months to complete. During the transition period, developers will be encouraged
to try the Bing Search API for free on the Windows Azure Marketplace, before we
begin charging for the service.&lt;/li&gt;
&lt;li&gt;At this time, you can continue using Bing Search API 2.0 free of
charge. After the transition period, Bing Search API 2.0 will no longer be
available for free public use, and instead developers can continue accessing
the API on the Windows Azure Marketplace.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="MsoListParagraph"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span&gt;Details regarding the transition timeline, pricing structure,
and other changes will be announced in upcoming weeks. In the meantime, we
encourage you to explore the &lt;/span&gt;&lt;a target="_blank" href="https://datamarket.azure.com/"&gt;&lt;span&gt;Windows Azure
Marketplace&lt;/span&gt;&lt;/a&gt;&lt;span&gt; and read the &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/hh310379.aspx"&gt;&lt;span&gt;documentation&lt;/span&gt;&lt;/a&gt;&lt;span class="MsoHyperlink"&gt; on accessing
data sets and APIs&lt;/span&gt;. As a Bing Search API developer, you can
expect the transition to involve targeting a new API end point, moderate
changes to the request and response schemas, and a new security requirement to
authenticate your application key. Developers using approximately 3 to 4
million queries and above can expect to transition through a separate process
(details will be provided shortly).&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;We understand that many of you are using the API as an important
element in your websites and applications, and we will continue to share
details with you through the Bing Developer Blog as we approach the transition.
We appreciate your patience during this time.&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;- Bing Developer Team&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9676399" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2012/04/12/bing-dev-update.aspx</link>
      <pubDate>Thu, 12 Apr 2012 16:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Release Notes for 4/6/2012</title>
      <description>&lt;p&gt;Here are the notes for this week’s release:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Fixed an issue where authenticating against Mercurial using capital letters would fail.&lt;/li&gt;    &lt;li&gt;Fixed an issue where comments in pull requests were not word wrapping correctly.&lt;/li&gt;    &lt;li&gt;Fixed an issue where usernames would overflow their allotted space in discussions.&lt;/li&gt;    &lt;li&gt;Fixed an issue that would cause unexpected errors on the source code pages if you created a Git and Mercurial fork with the same name.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Have ideas on how to improve CodePlex? Visit our &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;ideas page&lt;/a&gt;! Vote for your favorite ideas or submit a new one.&lt;/p&gt;  &lt;p&gt;Got Twitter? Follow us and keep apprised of the latest releases and service status at &lt;a href="http://www.twitter.com/codeplex"&gt;@codeplex&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=10291532" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/04/06/release-notes-for-4-6-2012.aspx</link>
      <pubDate>Fri, 06 Apr 2012 20:03:10 GMT</pubDate>
    </item>
    <item>
      <title>Sneak Preview - New CodePlex UI</title>
      <description>&lt;p&gt;We have been busy the last several months working to improve the overall experience for the CodePlex community. We have been working through some of the top requested items, such as our big announcement last week &lt;a href="http://blogs.msdn.com/b/codeplex/archive/2012/03/21/git-commit-m-codeplex-now-supports-git.aspx"&gt;enabling Git&lt;/a&gt;. Something that is not explicitly on the feature request list are requests to update the web site look and user experience.&amp;nbsp; As Brian Harry mentioned, the &lt;a href="http://blogs.msdn.com/b/bharry/archive/2012/03/22/the-future-of-codeplex-is-bright.aspx"&gt;Future of CodePlex is Bright&lt;/a&gt;, so it is time to start brightening up the place.&lt;/p&gt;
&lt;h4&gt;Goals&lt;/h4&gt;
&lt;p&gt;As with any sizeable change you need to decide the scope of changes you want to tackle. We decided that we would optimize on incremental improvements versus taking months to get a completely new experience released. Our goals with this user experience work is to refresh the look and feel of the site, introduce new visual elements and set up the site for future structural changes. So this is not the end, just the beginning.&lt;/p&gt;
&lt;h4&gt;Early Views&lt;/h4&gt;
&lt;p&gt;I want to set a few expectations first, these screen shots are not final, and we are still working through the content and final element placement. Feedback is always welcome, just take that in mind as you review the images.&lt;/p&gt;
&lt;h4&gt;New CodePlex Home&lt;/h4&gt;
&lt;p&gt;The navigation changed a good bit on the home page and we have moved the search to a more consistent location across the site.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/6283.Home_5F00_161FABE4.png"&gt;&lt;img width="642" height="475" title="Home" style="border: 0px currentcolor; display: inline; background-image: none;" alt="Home" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/0820.Home_5F00_thumb_5F00_55E99269.png" border="0" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;User Profile&lt;/h4&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/1018.UserProfile_5F00_11A92B1D.png"&gt;&lt;img width="646" height="472" title="UserProfile" style="display: inline; background-image: none;" alt="UserProfile" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/1184.UserProfile_5F00_thumb_5F00_7F60645A.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;Users Home Page&lt;/h4&gt;
&lt;p&gt;The goal was to make it easier to find and take action on common tasks such as creating projects.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/3162.UserLogin_5F00_262E7A9B.png"&gt;&lt;img width="648" height="471" title="UserLogin" style="display: inline; background-image: none;" alt="UserLogin" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/4743.UserLogin_5F00_thumb_5F00_380B0E68.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;Project Home&lt;/h4&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/8546.ProjectHome_5F00_45DD5463.png"&gt;&lt;img width="643" height="475" title="ProjectHome" style="display: inline; background-image: none;" alt="ProjectHome" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/3731.ProjectHome_5F00_thumb_5F00_05A73AE9.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;Issue Tracker&lt;/h4&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/4130.IssueTracker_5F00_2C755129.png"&gt;&lt;img width="642" height="475" title="IssueTracker" style="display: inline; background-image: none;" alt="IssueTracker" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/5710.IssueTracker_5F00_thumb_5F00_0130BA22.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This should give you a taste of where we are going with the new user experience.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;As always we love the feedback, either comment below, find us on Twitter &lt;a href="http://twitter.com/codeplex"&gt;@codeplex&lt;/a&gt; or &lt;a href="http://twitter.com/mgroves84"&gt;@mgroves84&lt;/a&gt;, or create or vote up &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;suggestions&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=10289079" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/03/30/new-codeplex-ui-coming-soon.aspx</link>
      <pubDate>Fri, 30 Mar 2012 18:27:00 GMT</pubDate>
    </item>
    <item>
      <title>Release Note for 3/30/2012</title>
      <description>&lt;p&gt;We have been pretty busy working on a new UI for CodePlex, &lt;strike&gt;I will&lt;/strike&gt; &lt;a href="http://blogs.msdn.com/b/codeplex/archive/2012/03/29/new-codeplex-ui-coming-soon.aspx"&gt;have a preview post&lt;/a&gt; &lt;strike&gt;coming shortly&lt;/strike&gt;. &lt;/p&gt;  &lt;p&gt;Here are the notes from today’s release:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Updated source code tab to show Author and Committer for Git (Thanks to &lt;a href="http://www.codeplex.com/site/users/view/BradWilson"&gt;Brad Wilson&lt;/a&gt; for reporting)&lt;/li&gt;    &lt;li&gt;Fixed issue where pagination did not work correctly in topic view&lt;/li&gt;    &lt;li&gt;Fixed issue where additional comments on a given line of code would get overridden for Git project&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Have ideas on how to improve CodePlex? Visit our &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;ideas page&lt;/a&gt;! Vote for your favorite ideas or submit a new one.&lt;/p&gt;  &lt;p&gt;Got Twitter? Follow us and keep apprised of the latest releases and service status at &lt;a href="http://www.twitter.com/codeplex"&gt;@codeplex&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=10289473" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/03/30/release-note-for-3-30-2012.aspx</link>
      <pubDate>Fri, 30 Mar 2012 17:30:00 GMT</pubDate>
    </item>
    <item>
      <title>git commit –m “CodePlex now supports Git!”</title>
      <description>&lt;p&gt;Finally, yes, CodePlex now supports Git! Git has been one of the top rated requests from the CodePlex community for some time:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/0474.GitClosed_5F00_5515C51E.png"&gt;&lt;img width="511" height="49" title="GitClosed" style="border: 0px currentcolor; display: inline; background-image: none;" alt="GitClosed" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/5773.GitClosed_5F00_thumb_5F00_22B1F19F.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Admittedly, when we launched CodePlex, we never expected that at some point we would be running a source control system originally invented by Linus Torvalds to use for the Linux kernel. Though I would also say, nobody would have thought the open source ecosystem would be as important to Microsoft as it has become now.&lt;/p&gt;
&lt;p&gt;Giving CodePlex users what they ask for and supporting their open source efforts has always been important to us, and we have a long list of improvements planned, so stay tuned as we have more up our sleeves!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Why Git?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;So why Git? CodePlex already has Mercurial for distributed version control and TFS (which also supports subversion clients) for centralized version control. The short answer is that the CodePlex community voted, loud and clear, that Git support was critical. Additionally, we just like it, we use Git on our team every day and making the DVCS workflows more available to the CodePlex community is just the right thing to do.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Forks and Pull Requests&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;One of the capabilities that distributed version control systems, such as Mercurial and Git, enable is the Fork and Pull Request workflow.&amp;nbsp; Just like with Mercurial, projects configured to use Git enable Forking the source and submitting contributions back via Pull Requests. The Fork/Pull Request workflow is a key accelerator to many open source projects and you will see improvements in our support coming later this year.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;More Choice&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;With the addition of Git, now CodePlex has three options when it comes to Open Source project hosting. Projects can now select between TFS, Mercurial, and Git.&lt;/p&gt;
&lt;p&gt;Each developer has their own preferences, and for some, centralized version control makes more sense to them. For others, DVCS is the only way to go. We&amp;rsquo;re equally committed to supporting both these technologies for our users.&lt;/p&gt;
&lt;p&gt;You can get started today by &lt;a href="http://www.codeplex.com/site/project/create"&gt;creating a new project&lt;/a&gt; or contribute to an existing project by creating a fork.&lt;/p&gt;
&lt;table cellspacing="0" cellpadding="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width="110"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;/td&gt;
&lt;td&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/5531.clip_5F00_image003_5F00_1F921E50.jpg"&gt;&lt;img width="402" height="104" title="clip_image003" style="border: 0px currentcolor; display: inline; background-image: none;" alt="clip_image003" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/7181.clip_5F00_image003_5F00_thumb_5F00_264527D3.jpg" border="0" /&gt;&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;For help on getting started with Git on CodePlex, see our help documentation &lt;a href="http://codeplex.codeplex.com/wikipage?title=Using%20Git%20with%20CodePlex"&gt;here&lt;/a&gt;. If you would like to switch your project to use Git, please contact us at &lt;a href="https://www.codeplex.com/site/contact"&gt;CodePlex Support&lt;/a&gt; with your project information, and we will be happy to help you out.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;We're Listening&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;CodePlex is your community, and we want to deliver the experiences you need to have a successful open source project. We want your ideas and feedback to make CodePlex a great development community.&amp;nbsp; The issue tracker on CodePlex is &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;publicly available&lt;/a&gt;. Add suggestions or vote up existing suggestions.&lt;/p&gt;
&lt;p&gt;And you can always find us on Twitter, I&amp;rsquo;m &lt;a href="http://twitter.com/mgroves84"&gt;@mgroves84&lt;/a&gt;; follow us to keep up to date with our latest releases: &lt;a href="http://www.twitter.com/codeplex"&gt;@codeplex&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=10286121" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/03/21/git-commit-m-codeplex-now-supports-git.aspx</link>
      <pubDate>Wed, 21 Mar 2012 23:24:00 GMT</pubDate>
    </item>
    <item>
      <title>Release Notes for 3/15/2012</title>
      <description>&lt;p&gt;Here are the notes for today’s release:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Updated the GNU Lesser General Public License for new projects to match the latest license version&lt;/li&gt;    &lt;li&gt;Deployed several bug fixes around HTTPS support:&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Fixed an issue where the advanced view filters in the issue tracker would fail to work under HTTPS. &lt;/li&gt;      &lt;li&gt;Fixed an issue where voting was not working properly under HTTPS.&lt;/li&gt;      &lt;li&gt;Fixed &lt;a href="http://codeplex.codeplex.com/workitem/26091"&gt;an issue&lt;/a&gt; where navigating using AJAX would fail under HTTPS.&lt;/li&gt;      &lt;li&gt;Fixed several other minor scripting errors for various scenarios under HTTPS.&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;Fixed &lt;a href="http://codeplex.codeplex.com/workitem/26022"&gt;an issue&lt;/a&gt; where text in the Discussions List would appear cut off in Safari.&lt;/li&gt;    &lt;li&gt;Fixed &lt;a href="http://codeplex.codeplex.com/workitem/25772"&gt;an issue&lt;/a&gt; where shortcuts on the Work Items page conflicted with standard Mac shortcuts.&lt;/li&gt;    &lt;li&gt;Tweaked the design of code snippets in discussion to be consistent with wiki code snippets.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Have ideas on how to improve CodePlex? Visit our &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;ideas page&lt;/a&gt;! Vote for your favorite ideas or submit a new one.&lt;/p&gt;  &lt;p&gt;Got Twitter? Follow us and keep apprised of the latest releases and service status at &lt;a href="http://www.twitter.com/codeplex"&gt;@codeplex&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=10283966" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/03/15/release-notes-for-3-15-2012.aspx</link>
      <pubDate>Thu, 15 Mar 2012 22:59:48 GMT</pubDate>
    </item>
    <item>
      <title>Release Notes for 3/8/2012</title>
      <description>&lt;p&gt;Here are the notes for today’s release:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Clarified the purpose of the fork name when creating a fork of a project. &lt;/li&gt;    &lt;li&gt;Added confirmation messages to deletion of system requirements when editing documentation. &lt;!--EndFragment--&gt;&lt;/li&gt;    &lt;li&gt;Deployed several bug fixes: &lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Fixed &lt;a href="http://codeplex.codeplex.com/workitem/26097"&gt;an issue&lt;/a&gt; that was causing AppHarbor build notifications to fail. Thanks to &lt;a href="http://www.codeplex.com/site/users/view/claq2"&gt;claq2&lt;/a&gt; for the bug report!&lt;/li&gt;      &lt;li&gt;Fixed several issues where extremely long titles or descriptions on items on the issues, discussions, profiles, and home pages would not wrap properly.&lt;/li&gt;      &lt;li&gt;Fixed a minor wrapping issue around the link to upload patches.&lt;/li&gt;      &lt;li&gt;Fixed an issue with viewing RSS feeds in Internet Explorer.&lt;/li&gt;      &lt;li&gt;Fixed an issue where replying to a discussion with a quote would push the content past the page margins.&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;Have ideas on how to improve CodePlex? Visit our &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;ideas page&lt;/a&gt;! Vote for your favorite ideas or submit a new one.&lt;/p&gt;  &lt;p&gt;Got Twitter? Follow us and keep apprised of the latest releases and service status at &lt;a href="http://www.twitter.com/codeplex"&gt;@codeplex&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=10280503" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/03/09/release-notes-for-3-8-2012.aspx</link>
      <pubDate>Fri, 09 Mar 2012 17:27:42 GMT</pubDate>
    </item>
    <item>
      <title>Release Notes for 3/2/2012</title>
      <description>&lt;p&gt;Here are the notes for today’s release:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Added a progress indicator when saving issues. &lt;/li&gt;    &lt;li&gt;Added support for viewing CodePlex RSS feeds in Chrome. &lt;/li&gt;    &lt;li&gt;Deployed several bug fixes:      &lt;ul&gt;       &lt;li&gt;Fixed an issue where the back button on Internet Explorer was not working as intended when browsing code. &lt;/li&gt;        &lt;li&gt;Fixed an issue where long commit comments would push the source control info box outside of the boundaries of the page. &lt;/li&gt;        &lt;li&gt;Fixed an issue where Internet Explorer users were not able to widen the frame of the source code browser until a file was selected. &lt;/li&gt;        &lt;li&gt;Fixed an issue where opening a source code file directly from a URL in Internet Explorer would cause the source code tree to be collapsed. &lt;/li&gt;        &lt;li&gt;Fixed an issue where adding a code snippet with long lines of text to a discussion thread using Internet Explorer would needlessly display a vertical scrollbar, limiting the amount of code visible. &lt;/li&gt;        &lt;li&gt;Fixed an issue where tabbing through some links would render them invisible. &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;We deprecated support for embedding PreEmptive analytics statistics on the project statistics page. If you’re interested in collecting and reporting your own statistics, PreEmptive’s &lt;a href="http://riendpointkit.codeplex.com/"&gt;RunTime Intelligence Endpoint Starter Kit&lt;/a&gt; offers a good starting point for capturing data. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Have ideas on how to improve CodePlex? Visit our &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;ideas page&lt;/a&gt;! Vote for your favorite ideas or submit a new one.&lt;/p&gt;  &lt;p&gt;Got Twitter? Follow us and keep apprised of the latest releases and service status at &lt;a href="http://www.twitter.com/codeplex"&gt;@codeplex&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=10276743" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/03/02/release-notes-for-3-2-2012.aspx</link>
      <pubDate>Fri, 02 Mar 2012 21:58:49 GMT</pubDate>
    </item>
    <item>
      <title>Release Notes for 2/23/2012</title>
      <description>&lt;p&gt;Here are the notes for today’s release:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Continued deployment of further infrastructure changes in preparation for a set of scale improvements to our Mercurial services.&lt;/li&gt;    &lt;li&gt;Deployed several bug fixes:&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Fixed an issue that prevented users from sharing or bookmarking links to source files easily in Internet Explorer due to the URLs being displayed improperly.&lt;/li&gt;      &lt;li&gt;Fixed an issue that prevented users from adjusting the vertical splitter when browsing source code using Internet Explorer.&lt;/li&gt;      &lt;li&gt;Fixed an issue with the horizontal scrollbar not appearing when browsing source code.&lt;/li&gt;      &lt;li&gt;Fixed an issue where text on multiple lines in discussion posts would be summarized without spaces.&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=10271926" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/02/23/release-notes-for-2-23-2012.aspx</link>
      <pubDate>Thu, 23 Feb 2012 23:50:40 GMT</pubDate>
    </item>
    <item>
      <title>Release Notes for 2/17/2012</title>
      <description>&lt;p&gt;Here are the notes for today’s release:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Fixed a rare issue that would cause users to sometimes see error messages when browsing source code in Mercurial projects.&lt;/li&gt;    &lt;li&gt;Fixed an issue where folder names would wrap poorly in the source code browser when they did not fit in the available width of the frame.&lt;/li&gt;    &lt;li&gt;Deployed some infrastructure changes in preparation for a set of scale improvements to our Mercurial services.&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=10269237" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/02/17/release-notes-for-2-17-2012.aspx</link>
      <pubDate>Fri, 17 Feb 2012 22:51:53 GMT</pubDate>
    </item>
    <item>
      <title>Weekly Releases – Notes for 2/9/2012</title>
      <description>&lt;p&gt;We have been a bit quiet on this blog recently, but rest assured we are planning some exciting features and changes to the CodePlex site! One change we are making is switching to a weekly release schedule so that we can respond and iterate on user feedback more quickly. As part of that change we will be posting our latest release notes on this blog each week. Some weeks (like today’s notes) may only contain bug fixes if we are working on some larger features that are not ready to be launched yet. Keep watching this space for more developments to come.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Notes for 2/9/2012 release&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Fixed an issue in our insert code snippet dialog for our wiki editor. Thanks to &lt;a href="https://twitter.com/#!/sympmarc"&gt;Marc D Anderson&lt;/a&gt; for reporting this issue!&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=10266292" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2012/02/10/weekly-releases.aspx</link>
      <pubDate>Fri, 10 Feb 2012 01:22:36 GMT</pubDate>
    </item>
    <item>
      <title>Activity Stream</title>
      <description>&lt;p&gt;&lt;i&gt;[Do you tweet? Follow us on Twitter &lt;/i&gt;&lt;a href="http://twitter.com/matthawley"&gt;&lt;i&gt;@matthawley&lt;/i&gt;&lt;/a&gt; and &lt;a href="http://twitter.com/codeplex"&gt;@&lt;i&gt;codeplex&lt;/i&gt;&lt;/a&gt;&lt;i&gt;]&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;We deployed a new version of the CodePlex website yesterday.&amp;nbsp;&lt;/p&gt;
&lt;h3&gt;Redesigned Home Page with Activity Stream&lt;/h3&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;In CodePlex we continuously look for ways to provide our users with the most recent and relevant information they are seeking. It is with this in mind that we released our latest feature, the home page activity stream.&lt;/p&gt;
&lt;p&gt;The activity stream showcases events taking place on projects you are a part of as well as projects you are following. There are many different events in the system that causes activities to be created, including starting a discussion, creating a work item etc.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61/5756.CodePlexActivityStream.jpg"&gt;&lt;img border="0" alt="" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61/5756.CodePlexActivityStream.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;All the functionality that was available on the former home page, such as creating a new project or finding a project that needs help,&amp;nbsp;is available on the right side of the new home page.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61/1072.HomePageRightside.jpg"&gt;&lt;img border="0" alt="" src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61/1072.HomePageRightside.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;br /&gt;&lt;span style="color: #ec7600; font-family: Consolas; font-size: x-small;" face="Consolas" color="#ec7600" size="2"&gt;&lt;span style="color: #ec7600; font-family: Consolas; font-size: x-small;" face="Consolas" color="#ec7600" size="2"&gt;&lt;span style="color: #ec7600; font-family: Consolas; font-size: x-small;" face="Consolas" color="#ec7600" size="2"&gt;&lt;span style="color: #ec7600; font-family: Consolas; font-size: x-small;" face="Consolas" color="#ec7600" size="2"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;The CodePlex team values your feedback. We are frequently monitoring &lt;a href="http://twitter.com/codeplex"&gt;Twitter&lt;/a&gt;, our &lt;a href="http://codeplex.codeplex.com/discussions"&gt;Discussions&lt;/a&gt;, and &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;Issue Tracker&lt;/a&gt;. If you have not visited the Issue Tracker recently, please take a few minutes to suggest or vote on a feature you would like to see implemented.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10231140" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/10/28/activity-stream.aspx</link>
      <pubDate>Fri, 28 Oct 2011 17:16:00 GMT</pubDate>
    </item>
    <item>
      <title>Instant Answers and White Pages Discontinued</title>
      <description>&lt;p&gt;Effective December 8, 2011, we will discontinue support for both the Instant Answers source type and for Phonebook Residential White Pages results via the Bing API version 2.0.&amp;#160; For those of you using these source types with the Bing API, this means you will no longer receive results for Instant Answers or for Phonebook White Pages (Residential) results. &lt;/p&gt;  &lt;p&gt;We encourage you to continue using the many other source types available via the Bing API such as web, images, video, news, and more.&amp;#160; For more information on using the API, a number of resources can be found &lt;a href="http://msdn.microsoft.com/en-us/library/dd900818.aspx"&gt;here&lt;/a&gt;.&amp;#160; This includes implementation instructions, code examples, links to forums and other helpful documentation. We hope that these resources will assist you in the transition.&lt;/p&gt;  &lt;p&gt;Our team regularly evaluates our API to make sure we’re focusing on the right areas for our partners. Decommissioning source types allows us to dedicate more resources to supporting other parts of the API.&lt;/p&gt;  &lt;p&gt;As always, thanks for your partnership, and we hope you continue to find the Bing API valuable in powering your products.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9659800" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2011/10/11/instant-answers-and-white-pages-discontinued.aspx</link>
      <pubDate>Tue, 11 Oct 2011 20:17:10 GMT</pubDate>
    </item>
    <item>
      <title>Integration with AppHarbor</title>
      <description>&lt;p&gt;&lt;i&gt;[Do you tweet? Follow us on Twitter &lt;/i&gt;&lt;a href="http://twitter.com/matthawley"&gt;&lt;i&gt;@matthawley&lt;/i&gt;&lt;/a&gt; and &lt;a href="http://twitter.com/codeplex"&gt;@&lt;i&gt;codeplex&lt;/i&gt;&lt;/a&gt;&lt;i&gt;]&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;We deployed a new version of the CodePlex website yesterday.&lt;/p&gt;
&lt;h3&gt;AppHarbor&lt;/h3&gt;
&lt;p&gt;In CodePlex, we continue to look for ways to enhance our project hosting offering by partnering with other companies and their services. &lt;a href="http://appharbor.com"&gt;AppHarbor&lt;/a&gt; is a platform to build, execute unit tests, and deploy ASP.NET web applications to the cloud. They provide a free single web instance with a small shared database, which is perfect for .NET OSS applications to provide instant online sample sites.&lt;/p&gt;
&lt;h3&gt;Setup Instructions&lt;/h3&gt;
&lt;p&gt;To get started using AppHarbor with an existing CodePlex project, follow the below steps, which I&amp;rsquo;ve used to setup &lt;a href="http://wikiplex.codeplex.com"&gt;WikiPlex&amp;rsquo;s&lt;/a&gt; sample site on &lt;a href="http://wikiplex.apphb.com"&gt;AppHarbor&lt;/a&gt;:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Register for an account (or sign in to an existing account) on &lt;a href="https://appharbor.com/session/new"&gt;AppHarbor&lt;/a&gt;, and later confirming your account creation.&lt;/li&gt;
&lt;li&gt;Create your first application once you&amp;rsquo;re signed in to AppHarbor. &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/8272.image_5F00_261DC58A.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/8765.image_5F00_thumb_5F00_0CB5C250.png" width="148" height="166" /&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Set up a Database, if needed. Executing any SQL scripts manually. &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/0358.image_5F00_5089F6A7.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/2018.image_5F00_thumb_5F00_573D002A.png" width="149" height="244" /&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Retrieve your Create build URL from the main page of your application. &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/4087.image_5F00_24D92CAB.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/5141.image_5F00_thumb_5F00_44880673.png" width="463" height="209" /&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Edit your project details on CodePlex, paste the build URL in the textbox, and save. &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/4578.image_5F00_162E80C6.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/1447.image_5F00_thumb_5F00_03E5BA04.png" width="463" height="67" /&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Make any changes necessary to your codebase to support AppHarbor deployment and commit/push these changes. For example
&lt;ul&gt;
&lt;li&gt;If you have multiple solution files or multiple ASP.NET websites in a solution, &lt;a href="http://support.appharbor.com/kb/getting-started/build-process-and-solution-file-convention"&gt;create an AppHarbor.sln&lt;/a&gt; file with only the necessary projects and single ASP.NET website you want deployed.&lt;/li&gt;
&lt;li&gt;If you have any code to determine if you&amp;rsquo;re running in AppHarbor or not, utilize the &lt;a href="http://support.appharbor.com/kb/getting-started/managing-environments"&gt;Environment appSettings key&lt;/a&gt; (Debug is local, Release is running in AppHarbor).&lt;/li&gt;
&lt;li&gt;If you want unit tests to run, make sure you&amp;rsquo;re using a &lt;a href="http://support.appharbor.com/kb/getting-started/running-unit-tests-after-build"&gt;supported unit testing framework and version&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Sit back, let it compile and deploy!&amp;nbsp; &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/4064.image_5F00_75A74113.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/7624.image_5F00_thumb_5F00_7C5A4A96.png" width="469" height="105" /&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Source Control Support&lt;/h3&gt;
&lt;p&gt;You still might be wondering what Source Control types our integration with AppHarbor supports, and I&amp;rsquo;m excited to say we support both TFS and Mercurial! Additionally, we support the Subversion folder structure (trunk/branches/tags) within TFS projects to correctly extract and send the right branch information to AppHarbor. If your TFS project does not have the standard Subversion folder structure, the entire source repository is treated as the &amp;ldquo;trunk.&amp;rdquo; TFS build notifications will have a delay of up to 15 minutes.&lt;/p&gt;
&lt;p&gt;When triggering build notifications for Mercurial, CodePlex will always send across all non-closed branches. Mercurial build notifications will be instantaneous when pushing changes to your project&amp;rsquo;s repository. AppHarbor currently supports only &amp;ldquo;trunk&amp;rdquo; or &amp;ldquo;default&amp;rdquo; branches when building, testing, and deploying.&lt;/p&gt;
&lt;h3&gt;Continuous Integration&lt;/h3&gt;
&lt;p&gt;A feature that has been in our top 10 requests queue for quite some time is &lt;a href="http://codeplex.codeplex.com/workitem/8258"&gt;project build support&lt;/a&gt;. While we still do not offer build support on CodePlex, we do have a few recommendations. Firstly, we have been in discussions with the AppHarbor team in regards to supporting a more formalized continuous integration (CI) solution. No details have been solidified around this yet. Alternatively, &lt;a href="http://codebetter.com/"&gt;CodeBetter&lt;/a&gt; provides a CI server farm for OSS projects for a while now, which utilizes TeamCity. You can find more details and setup information on their &lt;a href="http://codebetter.com/codebetter-ci/"&gt;CI page&lt;/a&gt; and join the growing list of CodePlex projects.&lt;/p&gt;
&lt;p&gt;The CodePlex team values your feedback. We are frequently monitoring &lt;a href="http://twitter.com/codeplex"&gt;Twitter&lt;/a&gt;, our &lt;a href="http://codeplex.codeplex.com/discussions"&gt;Discussions&lt;/a&gt;, and &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;Issue Tracker&lt;/a&gt;. If you have not visited the Issue Tracker recently, please take a few minutes to suggest or vote on a feature you would like to see implemented.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10200638" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/08/26/integration-with-appharbor.aspx</link>
      <pubDate>Fri, 26 Aug 2011 04:30:00 GMT</pubDate>
    </item>
    <item>
      <title>We’ve moved developer posts to the Inside Windows Live blog</title>
      <description>&lt;p&gt;I haven’t blogged here in a while, but that’s because I’ve started posting over on &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/" target="_blank"&gt;Inside Windows Live&lt;/a&gt; instead. You may have seen a couple of my blog posts there, &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2011/06/14/windows-live-developer-platform-adds-oauth-2-0-and-more-continuing-to-let-users-connect-the-devices-apps-and-sites-they-choose.aspx" target="_blank"&gt;explaining what OAuth 2.0 means for developers&lt;/a&gt; who want to connect their apps, services, and devices to Windows Live, and how &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2011/06/29/developers-just-a-few-lines-of-javascript-connects-your-site-to-windows-live.aspx" target="_blank"&gt;just a few lines of JavaScript can connect your site&lt;/a&gt; to Hotmail, Messenger, and SkyDrive.&lt;/p&gt;  &lt;p&gt;Because the &lt;a href="http://windowsteamblog.com/blogs/windowslive/default.aspx" target="_blank"&gt;Inside Windows Live blog&lt;/a&gt; already has a ton of interesting content about the engineering, architecture, and the technical challenges that go into building and updating Hotmail, Messenger, and SkyDrive, it just made more sense for me to blog there too. That way, developers who are interested in Windows Live can just follow one blog. &lt;/p&gt;  &lt;p&gt;You may want to subscribe to the &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/rss.aspx" target="_blank"&gt;Inside Windows Live RSS feed&lt;/a&gt; so you don’t miss any more posts! &lt;/p&gt;  &lt;p&gt;Dare Obasanjo    &lt;br /&gt;Lead Program Manager, Messenger Connect Platform&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=564894" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2011/07/19/we-ve-moved-developer-posts-to-the-inside-windows-live-blog.aspx</link>
      <pubDate>Tue, 19 Jul 2011 21:59:56 GMT</pubDate>
    </item>
    <item>
      <title>Survey Results: Open Source Developer Preferences (June 2011)</title>
      <description>&lt;p&gt;We recently conducted a survey of open source developers to learn about their current preferences on hosting sites and source control systems. We have run this survey twice before so we now have some trending information on the direction that preferences are moving.&lt;/p&gt;  &lt;p&gt;The survey was advertised via Twitter, initially posted to &lt;a href="http://twitter.com/msdn"&gt;http://twitter.com/msdn&lt;/a&gt;, but was also re-tweeted by over 100 people. We chose the MSDN twitter account versus the CodePlex one to try and prevent bias towards a specific open source project hosting site.&lt;/p&gt;  &lt;p&gt;We had over 1,000 responses to the latest survey, so a good sample size although the statistical degree of certainty is unknown based on the Twitter audience. One of the survey questions was what your preferred operating system for development is so that we can report the results by operating system preference.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p align="center"&gt;Table 1 – Preferences by what is preferred operating system for development&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/1157.SurveyResults_5F00_7C244514.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="SurveyResults" border="0" alt="SurveyResults" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/5850.SurveyResults_5F00_thumb_5F00_02D74E98.jpg" width="634" height="224" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;As you can see from the results, the preferences of open source developers are very different between developers preferring Windows, Linux, or Mac, and those preferences are also following different trends.&lt;/p&gt;  &lt;p&gt;For Windows users, CodePlex and GitHub are virtually tied with CodePlex having a slight edge to take back rank #1 from GitHub after temporarily falling to #2 in the last survey. GitHub actually saw a decline in preference reversing its trend of skyrocketing popularity, with only CodePlex and Bitbucket showing an increase in the latest results. Source control preferences show a similar result, with TFS showing the biggest increase and Git showing the biggest decline. Distributed version control systems again represent the preference for over 50% of open source developers using Windows.&lt;/p&gt;  &lt;p&gt;For Linux and Mac users, GitHub continues to extend its dominant lead in popularity, primarily at the expense of Bitbucket. Git is winning the distributed version control system war among Linux and Mac users, with Mercurial preference dropping sharply. Subversion usage showed a slight resurgence, but distributed version control still dominates being the preference for over 80% of developers using Linux and Mac.&lt;/p&gt;  &lt;p&gt;Overall the preferences of open source developers using Windows seem to be getting more divergent from the ones using the Linux and Mac operating systems. Git and GitHub are becoming the de facto standard for Linux and Mac developers, while CodePlex as well as TFS, Mercurial, and Subversion are sharing a large and collectively increasing preference among Windows developers. Generally distributed version control usage is high across all open source developers and seems to be continuing to increase.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10185335" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/07/11/survey-results-open-source-developer-preferences-june-2011.aspx</link>
      <pubDate>Mon, 11 Jul 2011 21:56:36 GMT</pubDate>
    </item>
    <item>
      <title>SQL Azure Blog is moving to the Official Windows Azure Platform Team Blog</title>
      <description>&lt;p&gt;In an effort to make it easier for you to stay on top of the latest product releases, resources, tools and&amp;nbsp;news around the Windows Azure platform, today, we&amp;rsquo;re excited to announce that the SQL Azure blog is moving into what will now be called the &amp;lsquo;Windows Azure Platform Team Blog&amp;rsquo;. &amp;nbsp;From now on, you can find all SQL Azure blog posts at &lt;a href="http://www.WindowsAzureBlog.com"&gt;www.WindowsAzureBlog.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This one-stop-shop blog is where you&amp;rsquo;ll be able to find the latest information about the Windows Azure platform and all its components, including SQL Azure.&amp;nbsp;This blog will continue to cover the wide range of topics we have always addressed, from product announcements, to technical &amp;ldquo;how-to&amp;rdquo; posts, and conversations with our customers.&amp;nbsp;If you&amp;rsquo;re primarily interested in just the posts about SQL Azure, you can subscribe to a dedicated RSS feed for that. Alternatively, you have the option of getting all the Windows Azure platform posts in one integrated RSS feed.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;To continue to provide a single view of the Windows Azure platform, expect to see a similar evolution across Facebook, Twitter, and YouTube over the coming weeks.&amp;nbsp; We&amp;rsquo;ll be sure to notify you when those properties are integrated.&amp;nbsp; In the meantime, we hope these changes will make your life a little easier by making the Windows Azure Platform blog your single destination for all the latest news and information about SQL Azure and the rest of Windows Azure Platform.&lt;/p&gt;
&lt;p&gt;-- Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10178356" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/06/24/10178356.aspx</link>
      <pubDate>Fri, 24 Jun 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>MSDN Wiki Article: Q&amp;A on Open Data Protocol (Odata)</title>
      <description>&lt;p&gt;MSDN has created a Q&amp;amp;A article on Odata (Open Data Protocol). &lt;a href="http://www.odata.org"&gt;OData&lt;/a&gt;&amp;nbsp;applies web technologies such as HTTP, Atom Publishing Protocol (AtomPub) and JSON to provide access to information from a variety of applications, services, and stores. As web development continues to move forward, learning about new languages, like OData, will become more invaluable.&amp;nbsp;Making an OData feed from a SQL Azure or SQL Server database is incredibly easy, usually requiring just a few lines of code.&lt;/p&gt;
&lt;p&gt;Let me know your thoughts after reading the article.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/data/ee844254"&gt;Click here to open the article: Open Data Protocol Q&amp;amp;A.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10177083" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/06/22/10177083.aspx</link>
      <pubDate>Wed, 22 Jun 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Considerations When Building Database Schema with Federations in SQL Azure</title>
      <description>&lt;p&gt;Cihan Biyikoglu has written an interesting article on database schema when working with Federations.&lt;/p&gt;
&lt;p&gt;&amp;ldquo;With federations, you take parts of your schema and scale it out. With each federation in the root database, a subset of objects are scaled-out. You may create multiple federations because distribution characteristics and scalability requirements may vary across sets of tables. For example, with an ecommerce app, you may both have a large customer-orders set of tables and a very large product catalog that may have completely different distribution requirements.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/b/cbiyikoglu/archive/2011/04/16/schema-constraints-to-consider-with-federations-in-sql-azure.aspx"&gt;To learn more, click here for the article from Cihan Biyikoglu&amp;rsquo;s blog, &amp;ldquo;Considerations When Building Database Schema with Federations in SQL Azure.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10177073" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/06/20/10177073.aspx</link>
      <pubDate>Mon, 20 Jun 2011 17:45:00 GMT</pubDate>
    </item>
    <item>
      <title>StackOverflow Careers now includes user activity from CodePlex</title>
      <description>&lt;p&gt;&lt;a href="http://careers.stackoverflow.com/"&gt;Stack Overflow Careers&lt;/a&gt; is an innovative new job site for programmers.&amp;nbsp; One thing they have recognized is that participation in open source projects is a great way for potential employers to learn more about a job candidate, and also give developers a new way of differentiating themselves with employers.&amp;nbsp; So they have &lt;a href="http://blog.stackoverflow.com/2011/06/codeplex-and-other-gateway-drugs/"&gt;now announced&lt;/a&gt; the ability to automatically incorporate your work on CodePlex projects into your StackOverflow Careers 2.0 profile.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/5822.opensourcelinks_5F00_04AEE71C.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="opensourcelinks" border="0" alt="opensourcelinks" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/1220.opensourcelinks_5F00_thumb_5F00_4478CDA1.png" width="584" height="51" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We provide a secure way for StackOverflow to confirm that you are indeed a member of your CodePlex projects, and then display those projects on your profile.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/2781.CodePlexProjects_5F00_524B139C.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="CodePlexProjects" border="0" alt="CodePlexProjects" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/6813.CodePlexProjects_5F00_thumb_5F00_4B2BD724.png" width="731" height="392" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Additionally, since StackOverflow Careers is invitation only, they have provided a mechanism where you can prequalify to join if you are an active developer on CodePlex.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/3660.gateway_5F00_0AF5BDAA.png"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" title="gateway" border="0" alt="gateway" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/3264.gateway_5F00_thumb_5F00_3CED5E34.png" width="180" height="85" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can check to see if you prequalify &lt;a href="http://careers.stackoverflow.com/cv/get-one"&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=10176828" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/06/20/codeplex-on-stackoverflow-careers.aspx</link>
      <pubDate>Mon, 20 Jun 2011 06:54:00 GMT</pubDate>
    </item>
    <item>
      <title>Troubleshooting and Optimizing Queries with SQL Azure</title>
      <description>&lt;p&gt;Dinakar Nethi has written an interesting TechNet Article about how the Dynamic Management Views that are available in SQL Azure and how they can be used for troubleshooting purposes. &amp;nbsp;Take a look and get a feel for how easy it is to use SQL Azure.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://social.technet.microsoft.com/wiki/contents/articles/troubleshooting-and-optimizing-queries-with-sql-azure.aspx"&gt;Click here for the TechNet article, &amp;ldquo;Troubleshooting and Optimizing Queries with SQL Azure.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10167409" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/06/15/10167409.aspx</link>
      <pubDate>Wed, 15 Jun 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Video How To: Synchronize and Share Data</title>
      <description>&lt;p&gt;This walkthrough shows how to use &lt;a href="http://www.microsoft.com/windowsazure/sqlazure/datasync/"&gt;SQL Azure Data Sync&lt;/a&gt;
to provide bi-directional synchronization and data-management capabilities with
on-premises and cloud databases. The video covers both the benefits and
features of SQL Azure and explains how businesses can use SQL Azure Data Sync
to share information efficiently. &lt;/p&gt;
&lt;p&gt;The demonstration portion of the video
covers how to establish synchronization between an on-premises SQL Server database
and SQL Azure, as well as between two SQL Azure databases. It also shows the
sync results in real time within a web application. The conclusion offers
additional resource information to help users get started with SQL Azure and
SQL Azure Data Sync.&lt;/p&gt;
&lt;div style="width: 500px; height: 360px;"&gt;
&lt;object height="360" width="500" type="application/x-silverlight-2" data="data:application/x-silverlight-2,"&gt;
&lt;param value="http://www.microsoft.com/showcase/silverlight/player/1/player-en.xap" name="source" /&gt;
&lt;param value="true" name="enableHtmlAccess" /&gt;
&lt;param value="#FF000000" name="background" /&gt;
&lt;param value="true" name="allowHtmlPopupwindow" /&gt;
&lt;param value="4.0.50401.0" name="minRuntimeVersion" /&gt;
&lt;param value="true" name="autoUpgrade" /&gt;
&lt;param value="Culture=en-US,Uuid=bdf8abf1-2d4d-4e15-9192-107965b8432d,Autoplay=false,ShowMarketingOverlay=true,MiscControls=FullScreen;Detached,ShowMenu=True,Tabs=Embed;Email;Share;Info;Downloads;Chapters,VideoUrl=http://microsoft.com/showcase/en/us/details/bdf8abf1-2d4d-4e15-9192-107965b8432d,Mode=Player,AgeGate=True,AgeGateDayMonthYearOrder=MDY" name="initParams" /&gt;
&lt;a onmousedown="javascript:new Image().src = 'http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/dcs.gif?dcsdat=' + new Date().getTime() + '&amp;amp;dcssip=www.microsoft.com&amp;amp;dcsuri=' + window.location.href + '&amp;amp;WT.tz=-8&amp;amp;WT.bh=16&amp;amp;WT.ul=en-US&amp;amp;WT.cd=32&amp;amp;WT.jo=Yes&amp;amp;WT.ti=&amp;amp;WT.js=Yes&amp;amp;WT.jv=1.5&amp;amp;WT.fi=Yes&amp;amp;WT.fv=10.0&amp;amp;WT.sli=Not%20Installed&amp;amp;WT.slv=Version%20Unavailable&amp;amp;WT.dl=1&amp;amp;WT.seg_1=Not%20Logged%20In&amp;amp;WT.vt_f_a=2&amp;amp;WT.vt_f=2&amp;amp;WT.vt_nvr1=2&amp;amp;WT.vt_nvr2=2&amp;amp;WT.vt_nvr3=2&amp;amp;WT.vt_nvr4=2&amp;amp;vp_site=Embedded&amp;amp;wtEvtSrc=' + window.location.href + '&amp;amp;vp_sli=Embedded'" style="text-decoration: none;" href="http://go.microsoft.com/fwlink/?LinkID=149156"&gt;
&lt;img style="border-style: none;" alt="Get Microsoft Silverlight" src="http://img.microsoft.com/showcase/Content/img/resx/en-US/installSL.gif" /&gt;
&lt;/a&gt;
&lt;div style="margin-top: -80px; text-align: center;"&gt;
&lt;a href="mms://msnvidweb.wmod.msecnd.net/a10026/e1/ds/us/CMG_US/CMG_Microsoft/fa5c2a5e-403e-45fa-b901-d3d408f6812f.wmv" style="text-align: center; color: #7db0d2; text-decoration: none; font-size: 80%; font-family: 'Segoe UI', Segoe, Tahoma, Verdana, sans-serif;"&gt; View this video as a WMV&lt;/a&gt;
&lt;/div&gt;
&lt;noscript&gt;&lt;div&gt;&lt;img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/njs.gif?dcsuri=/nojavascript&amp;WT.js=No"/&gt;&lt;/div&gt;&lt;/noscript&gt;
&lt;/object&gt;
&lt;/div&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src='" + (window.location.protocol) + "//c.microsoft.com/ms.js' &gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;p&gt;We have several
other walkthroughs you can watch and&amp;nbsp;
download code for.&amp;nbsp; Visit
&lt;a href="http://sqlazure.codeplex.com/"&gt;http://sqlazure.codeplex.com .&lt;/a&gt;&amp;nbsp; &lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10167419" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/06/13/10167419.aspx</link>
      <pubDate>Mon, 13 Jun 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>FAQ about Features of SQL Azure</title>
      <description>&lt;p&gt;We&amp;rsquo;ve been receiving questions about top on-going trends with regards to SQL Azure surrounding SQL Server limitations, and the access capabilities of co-administrators. Fortunately, the answers to both of these questions have been addressed in a &lt;a href="http://msdn.microsoft.com/en-us/library/ff394115.aspx"&gt;MSDN article about SQL Server limitations&lt;/a&gt;, and a &lt;a href="http://blogs.msdn.com/b/tonyguid/archive/2011/01/10/fromconfigurationsettingpublisher-error-sdk-1-3.aspx"&gt;MSDN blog post focusing on co-administrators scenarios.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Take a few moments to give the above articles a quick read &amp;ndash; they answer some of the more common questions surrounding SQL Azure.&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10172361" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/06/08/10172361.aspx</link>
      <pubDate>Wed, 08 Jun 2011 16:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Integrating SQL Azure with SharePoint 2010 and Windows Azure</title>
      <description>&lt;p&gt;Steve Peschka wrote a
great TechNet article a little while back about how to integrate SQL Azure
services with Sharepoint 2010. He shares a few SQL Azure tips and tricks to get
you more incorporated more quickly into new development projects.&amp;nbsp; He provides detailed steps and instructions
to how to integrate the two services, plus some additional reference links
which makes this an involving read.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://blogs.technet.com/b/speschka/archive/2010/12/12/integrating-sql-azure-with-sharepoint-2010-and-windows-azure.aspx"&gt;Click
here to view the TechNet article&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10167408" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/06/06/10167408.aspx</link>
      <pubDate>Mon, 06 Jun 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Video How-To: Creating Line of Business Applications using SQL Azure</title>
      <description>&lt;p&gt;This walkthrough explains how to easily create Line of Business (LOB) applications for the cloud by using Visual Studio LightSwitch and SQL Azure. The video highlights the benefits of Visual Studio LightSwitch and explains how you can quickly create powerful and interactive Silverlight applications with little or no code. &lt;/p&gt;
&lt;p&gt;The demo portion of the video shows how to build an expense application and deploy it using the Windows Azure portal. The conclusion points you to additional resources to help you get started creating your own applications.&lt;/p&gt;
&lt;p&gt;Please take a look and if you have any questions, leave a comment.&amp;nbsp; We have other several great how-to videos and code samples available on the SQL Azure CodePlex site at: http://sqlazure.codeplex.com.&lt;/p&gt;
&lt;div style="width: 500px; height: 300px;"&gt;
&lt;object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="500" height="300"&gt;
&lt;param name="source" value="http://www.microsoft.com/showcase/silverlight/player/1/player-en.xap" /&gt;
&lt;param name="enableHtmlAccess" value="true" /&gt;
&lt;param name="background" value="#FF000000" /&gt;
&lt;param name="allowHtmlPopupwindow" value="true" /&gt;
&lt;param name="minRuntimeVersion" value="4.0.50401.0" /&gt;
&lt;param name="autoUpgrade" value="true" /&gt;
&lt;param name="initParams" value="Culture=en-US,Uuid=063dcd81-ecaf-4ca0-be0a-2befb8581ebf,Autoplay=false,ShowMarketingOverlay=true,MiscControls=FullScreen;Detached,ShowMenu=True,Tabs=Embed;Email;Share;Info;Downloads;Chapters,VideoUrl=http://microsoft.com/showcase/en/us/details/063dcd81-ecaf-4ca0-be0a-2befb8581ebf,Mode=Player,AgeGate=True,AgeGateDayMonthYearOrder=MDY" /&gt;
&lt;a href="http://go.microsoft.com/fwlink/?LinkID=149156" style="text-decoration: none;" onmousedown="javascript:new Image().src = 'http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/dcs.gif?dcsdat=' + new Date().getTime() + '&amp;amp;dcssip=www.microsoft.com&amp;amp;dcsuri=' + window.location.href + '&amp;amp;WT.tz=-8&amp;amp;WT.bh=16&amp;amp;WT.ul=en-US&amp;amp;WT.cd=32&amp;amp;WT.jo=Yes&amp;amp;WT.ti=&amp;amp;WT.js=Yes&amp;amp;WT.jv=1.5&amp;amp;WT.fi=Yes&amp;amp;WT.fv=10.0&amp;amp;WT.sli=Not%20Installed&amp;amp;WT.slv=Version%20Unavailable&amp;amp;WT.dl=1&amp;amp;WT.seg_1=Not%20Logged%20In&amp;amp;WT.vt_f_a=2&amp;amp;WT.vt_f=2&amp;amp;WT.vt_nvr1=2&amp;amp;WT.vt_nvr2=2&amp;amp;WT.vt_nvr3=2&amp;amp;WT.vt_nvr4=2&amp;amp;vp_site=Embedded&amp;amp;wtEvtSrc=' + window.location.href + '&amp;amp;vp_sli=Embedded'"&gt;
&lt;img src="http://img.microsoft.com/showcase/Content/img/resx/en-US/installSL.gif" alt="Get Microsoft Silverlight" style="border-style: none;" /&gt;
&lt;/a&gt;
&lt;div style="margin-top: -80px; text-align: center;"&gt;
&lt;a style="text-align: center; color: #7db0d2; text-decoration: none; font-size: 80%; font-family: 'Segoe UI', Segoe, Tahoma, Verdana, sans-serif;" href="mms://msnvidweb.wmod.msecnd.net/a10026/e1/ds/us/CMG_US/CMG_Microsoft/119a59d4-cb28-4429-8662-36437a138c4d.wmv"&gt; View this video as a WMV&lt;/a&gt;
&lt;/div&gt;
&lt;noscript&gt;&lt;div&gt;&lt;img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/njs.gif?dcsuri=/nojavascript&amp;WT.js=No"/&gt;&lt;/div&gt;&lt;/noscript&gt;
&lt;/object&gt;
&lt;/div&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src='" + (window.location.protocol) + "//c.microsoft.com/ms.js' &gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10162566" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/06/03/10162566.aspx</link>
      <pubDate>Fri, 03 Jun 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Video How-To: Extending SQL Azure Data to Android and Other Platforms</title>
      <description>&lt;p&gt;This video
demonstrates how easy it is to extend, share, and integrate SQL Azure data with
mobile and heterogeneous applications using other programming platforms via an &lt;a href="http://www.odata.org/"&gt;OData&lt;/a&gt; service.&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;The video shows
how easy it is to expose data by creating an OData service and how a variety of
different client applications, including an Android phone, can easily and
efficiently interact with a SQL Azure database.&amp;nbsp;
The video concludes by referring users to additional resources that
offer further support.&lt;/p&gt;
&lt;p&gt;Take a look
at the source code on &lt;a href="http://sqlazure.codeplex.com/releases/view/65128"&gt;Codeplex&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Check it out, and if you
have any questions, please leave a comment.&amp;nbsp;
Thanks!&lt;/p&gt;
&lt;div style="width: 500px; height: 360px;"&gt;
&lt;object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="500" height="360"&gt;
&lt;param name="source" value="http://www.microsoft.com/showcase/silverlight/player/1/player-en.xap" /&gt;
&lt;param name="enableHtmlAccess" value="true" /&gt;
&lt;param name="background" value="#FF000000" /&gt;
&lt;param name="allowHtmlPopupwindow" value="true" /&gt;
&lt;param name="minRuntimeVersion" value="4.0.50401.0" /&gt;
&lt;param name="autoUpgrade" value="true" /&gt;
&lt;param name="initParams" value="Culture=en-US,Uuid=90a64b23-10d0-400e-b0f7-a727fc940594,Autoplay=false,ShowMarketingOverlay=true,MiscControls=FullScreen;Detached,ShowMenu=True,Tabs=Embed;Email;Share;Info;Downloads;Chapters,VideoUrl=http://microsoft.com/showcase/en/us/details/90a64b23-10d0-400e-b0f7-a727fc940594,Mode=Player,AgeGate=True,AgeGateDayMonthYearOrder=MDY" /&gt;
&lt;a href="http://go.microsoft.com/fwlink/?LinkID=149156" style="text-decoration: none;" onmousedown="javascript:new Image().src = 'http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/dcs.gif?dcsdat=' + new Date().getTime() + '&amp;amp;dcssip=www.microsoft.com&amp;amp;dcsuri=' + window.location.href + '&amp;amp;WT.tz=-8&amp;amp;WT.bh=16&amp;amp;WT.ul=en-US&amp;amp;WT.cd=32&amp;amp;WT.jo=Yes&amp;amp;WT.ti=&amp;amp;WT.js=Yes&amp;amp;WT.jv=1.5&amp;amp;WT.fi=Yes&amp;amp;WT.fv=10.0&amp;amp;WT.sli=Not%20Installed&amp;amp;WT.slv=Version%20Unavailable&amp;amp;WT.dl=1&amp;amp;WT.seg_1=Not%20Logged%20In&amp;amp;WT.vt_f_a=2&amp;amp;WT.vt_f=2&amp;amp;WT.vt_nvr1=2&amp;amp;WT.vt_nvr2=2&amp;amp;WT.vt_nvr3=2&amp;amp;WT.vt_nvr4=2&amp;amp;vp_site=Embedded&amp;amp;wtEvtSrc=' + window.location.href + '&amp;amp;vp_sli=Embedded'"&gt;
&lt;img src="http://img.microsoft.com/showcase/Content/img/resx/en-US/installSL.gif" alt="Get Microsoft Silverlight" style="border-style: none;" /&gt;
&lt;/a&gt;
&lt;div style="margin-top: -80px; text-align: center;"&gt;
&lt;a style="text-align: center; color: #7db0d2; text-decoration: none; font-size: 80%; font-family: 'Segoe UI', Segoe, Tahoma, Verdana, sans-serif;" href="mms://msnvidweb.wmod.msecnd.net/a10026/e1/ds/520ba35f-9ad5-475d-8a13-f795614387a1.wmv"&gt; View this video as a WMV&lt;/a&gt;
&lt;/div&gt;
&lt;noscript&gt;&lt;div&gt;&lt;img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/njs.gif?dcsuri=/nojavascript&amp;WT.js=No"/&gt;&lt;/div&gt;&lt;/noscript&gt;
&lt;/object&gt;
&lt;/div&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src='" + (window.location.protocol) + "//c.microsoft.com/ms.js' &gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;p&gt;-Steve&lt;/p&gt;
&lt;div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10167404" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/06/01/10167404.aspx</link>
      <pubDate>Wed, 01 Jun 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Video How-To: Extending SQL Azure to Microsoft Applications</title>
      <description>&lt;p&gt;This walkthrough demonstrates how easy it is to
extend, share, and integrate SQL Azure data with Microsoft applications via an
OData service.&amp;nbsp; The video starts by reviewing
the benefits of using SQL Azure, then goes on to show you how to enable cloud application
to expose the data via an &lt;a href="http://www.odata.org/"&gt;OData&lt;/a&gt; service.&lt;/p&gt;
&lt;p&gt;By utilizing OData, SQL Azure data is made available to
a variety of new user scenarios and client applications such as Windows Phone, Excel,
and Javascript.&amp;nbsp; We also include a lot of
additional resources that offer further support.&lt;/p&gt;
&lt;p&gt;Watch the video, and follow along by downloading the
source code, all available on our &lt;a href="http://sqlazure.codeplex.com/releases/view/65127"&gt;page on Codeplex&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Take a look and if you have any questions leave a
comment.&amp;nbsp; Thanks!&lt;/p&gt;
&lt;div style="width: 500px; height: 360px;"&gt;
&lt;object height="360" width="500" type="application/x-silverlight-2" data="data:application/x-silverlight-2,"&gt;
&lt;param value="http://www.microsoft.com/showcase/silverlight/player/1/player-en.xap" name="source" /&gt;
&lt;param value="true" name="enableHtmlAccess" /&gt;
&lt;param value="#FF000000" name="background" /&gt;
&lt;param value="true" name="allowHtmlPopupwindow" /&gt;
&lt;param value="4.0.50401.0" name="minRuntimeVersion" /&gt;
&lt;param value="true" name="autoUpgrade" /&gt;
&lt;param value="Culture=en-US,Uuid=083d55f4-c0d4-4309-8996-49d63ce14c60,Autoplay=false,ShowMarketingOverlay=true,MiscControls=FullScreen;Detached,ShowMenu=True,Tabs=Embed;Email;Share;Info;Downloads;Chapters,VideoUrl=http://microsoft.com/showcase/en/us/details/083d55f4-c0d4-4309-8996-49d63ce14c60,Mode=Player,AgeGate=True,AgeGateDayMonthYearOrder=MDY" name="initParams" /&gt;
&lt;a onmousedown="javascript:new Image().src = 'http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/dcs.gif?dcsdat=' + new Date().getTime() + '&amp;amp;dcssip=www.microsoft.com&amp;amp;dcsuri=' + window.location.href + '&amp;amp;WT.tz=-8&amp;amp;WT.bh=16&amp;amp;WT.ul=en-US&amp;amp;WT.cd=32&amp;amp;WT.jo=Yes&amp;amp;WT.ti=&amp;amp;WT.js=Yes&amp;amp;WT.jv=1.5&amp;amp;WT.fi=Yes&amp;amp;WT.fv=10.0&amp;amp;WT.sli=Not%20Installed&amp;amp;WT.slv=Version%20Unavailable&amp;amp;WT.dl=1&amp;amp;WT.seg_1=Not%20Logged%20In&amp;amp;WT.vt_f_a=2&amp;amp;WT.vt_f=2&amp;amp;WT.vt_nvr1=2&amp;amp;WT.vt_nvr2=2&amp;amp;WT.vt_nvr3=2&amp;amp;WT.vt_nvr4=2&amp;amp;vp_site=Embedded&amp;amp;wtEvtSrc=' + window.location.href + '&amp;amp;vp_sli=Embedded'" style="text-decoration: none;" href="http://go.microsoft.com/fwlink/?LinkID=149156"&gt;
&lt;img style="border-style: none;" alt="Get Microsoft Silverlight" src="http://img.microsoft.com/showcase/Content/img/resx/en-US/installSL.gif" /&gt;
&lt;/a&gt;
&lt;div style="margin-top: -80px; text-align: center;"&gt;
&lt;a href="mms://msnvidweb.wmod.msecnd.net/a10026/e1/ds/e1f4e624-ace8-4b1b-a1ad-69f876ebd6d5.wmv" style="text-align: center; color: #7db0d2; text-decoration: none; font-size: 80%; font-family: 'Segoe UI', Segoe, Tahoma, Verdana, sans-serif;"&gt; View this video as a WMV&lt;/a&gt;
&lt;/div&gt;
&lt;noscript&gt;&lt;div&gt;&lt;img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/njs.gif?dcsuri=/nojavascript&amp;WT.js=No"/&gt;&lt;/div&gt;&lt;/noscript&gt;
&lt;/object&gt;
&lt;/div&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src='" + (window.location.protocol) + "//c.microsoft.com/ms.js' &gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10167384" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/30/10167384.aspx</link>
      <pubDate>Mon, 30 May 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Introducing OData: Data Access for the Web, Cloud, Devices, and More</title>
      <description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/1526.Odata.png"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/150x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/1526.Odata.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;David Chappell recently completed a whitepaper on &lt;a href="http://www.odata.org/"&gt;OData&lt;/a&gt; that I encourage you to take a look
at.&amp;nbsp; You can view it &lt;a href="http://msdn.microsoft.com/en-us/data/hh237663"&gt;here&lt;/a&gt;, or download a &lt;a href="http://download.microsoft.com/download/E/5/A/E5A59052-EE48-4D64-897B-5F7C608165B8/IntroducingOData.pdf"&gt;PDF&lt;/a&gt;
version.&amp;nbsp; David does an outstanding job
providing an overview of OData, the problems it solves, practical usage
scenarios, and a look at the protocol itself.&amp;nbsp;
If you&amp;rsquo;re quitting work for the day, stop here and read David&amp;rsquo;s
whitepaper.&amp;nbsp; If you have a few more
minutes to spare, then continue reading. :)&lt;/p&gt;
&lt;p&gt;&lt;a href="http://download.microsoft.com/download/E/5/A/E5A59052-EE48-4D64-897B-5F7C608165B8/IntroducingOData.pdf"&gt;&lt;img style="display: block; margin-left: auto; margin-right: auto;" src="http://blogs.msdn.com/resized-image.ashx/__size/300x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/0535.OData2.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://download.microsoft.com/download/E/5/A/E5A59052-EE48-4D64-897B-5F7C608165B8/IntroducingOData.pdf"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Many of our partners have started using OData in their
commercial releases.&amp;nbsp; Two notable recent
ones are SAP, who are making it an integral part of their Netweaver offering to
extend SAP data to devices and social applications.&amp;nbsp; You can read more about it &lt;a href="http://www.sap.com/corporate-en/press/newsroom/press-releases/press.epx?pressid=15205"&gt;here&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;EastBanc is also utilizing OData and SQL Azure to share
real-time data from Washington metro area transit systems to share up to date
schedules for trains and buses.&amp;nbsp; A case
study on that is &lt;a href="http://www.microsoft.com/canada/casestudies/Case_Study_Detail.aspx?casestudyid=4000009148"&gt;here&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re not already familiar with the &lt;b&gt;Open Data Protocol&lt;/b&gt; (OData), it&amp;rsquo;s a Web protocol for querying and
updating data that provides a way to unlock your data and free it from silos
that exist in applications today.&amp;nbsp; OData
does this by applying and building upon Web technologies such as &lt;a href="http://www.w3.org/Protocols/"&gt;HTTP&lt;/a&gt;, &lt;a href="http://www.ietf.org/rfc/rfc4287.txt"&gt;Atom Publishing Protocol&lt;/a&gt;
(AtomPub) and &lt;a href="http://json.org/"&gt;JSON&lt;/a&gt; to provide access to
information from a variety of applications, services, and stores. The protocol
emerged from experiences implementing AtomPub clients and servers in a variety
of products over the past several years. OData is being used to expose and
access information from a variety of sources including, but not limited to,
relational databases, file systems, content management systems and traditional
Web sites.&lt;/p&gt;
&lt;p&gt;At this point you may be asking &amp;ndash; why talk about OData on
the SQL Azure blog?&amp;nbsp; Because OData is an
open protocol and what I like to call &lt;i&gt;&amp;ldquo;the
language of data on the web&amp;rdquo;&lt;/i&gt;.&amp;nbsp;&amp;nbsp; Let&amp;rsquo;s
take an example of a web service that does a lookup of an employee.&amp;nbsp; The tricky thing here is that this turns into
multiple service calls, or methods with multiple input parameters to get
results with different input and output criteria, like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;i&gt;GetEmployeeByLastName&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;GetEmployeeByID&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;GetEmployeeStartingWith&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;hellip;and so on, making a simple lookup pretty complicated with
multiple options based on different search criteria, and if multiple results
are returned &amp;ndash; having to factor in paging or selecting the top 50 results if
there happen to be thousands.&amp;nbsp; OData
reduces this complexity by being able to &lt;i&gt;accomplish
all these queries and also allow updates to data in one service method&lt;/i&gt;.&amp;nbsp; If you visit the &lt;a href="http://www.odata.org/developers/odata-sdk"&gt;OData SDK&lt;/a&gt; page, there are
libraries for utilizing OData in &lt;b&gt;PHP&lt;/b&gt;,
&lt;b&gt;Java &amp;amp; Android&lt;/b&gt;, &lt;b&gt;Ruby&lt;/b&gt;, &lt;b&gt;Windows Phone 7&lt;/b&gt;, &lt;b&gt;iOS&lt;/b&gt;, &lt;b&gt;Silverlight&lt;/b&gt;, and &lt;b&gt;.NET&lt;/b&gt; (of course!).&amp;nbsp; There&amp;rsquo;s
also a library to interact with OData via JavaScript and jQuery, called DataJS.
&lt;/p&gt;
&lt;h2&gt;One Service Powering Multiple Experiences&lt;/h2&gt;
&lt;p&gt;In addition to powering mobile experiences, the openness of
the OData protocol can power multiple user experiences.&amp;nbsp; In the videos below we show how to utilize
OData to access SQL Azure cloud data on both Android and Windows Phone 7
devices.&amp;nbsp; OData is also natively
supported in &lt;a href="http://powerpivot.com/"&gt;PowerPivot&lt;/a&gt;, making complex BI
attainable today with SQL Azure cloud databases &amp;ndash; again using the same OData
service that can power an Android, iOS, Windows Phone, and web experience.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;Things get even more interesting for BI when you consider &lt;a href="https://datamarket.azure.com/"&gt;Windows Azure DataMarket&lt;/a&gt;, our one-stop
shop for accessing public domain and commercial data-sets &amp;ndash; all consistently
accessible via OData.&amp;nbsp; Joining that data
with your application&amp;rsquo;s data can create some interesting new insights.&amp;nbsp; Is there a relationship between retail sales
and weather?&amp;nbsp; Hmm&amp;hellip;DataMarket has weather
data available from WeatherBug.&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://www.microsoft.com/showcase/en/us/details/90a64b23-10d0-400e-b0f7-a727fc940594"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="width: 500px; height: 360px;"&gt;
&lt;object height="360" width="500" type="application/x-silverlight-2" data="data:application/x-silverlight-2,"&gt;
&lt;param value="http://www.microsoft.com/showcase/silverlight/player/1/player-en.xap" name="source" /&gt;
&lt;param value="true" name="enableHtmlAccess" /&gt;
&lt;param value="#FF000000" name="background" /&gt;
&lt;param value="true" name="allowHtmlPopupwindow" /&gt;
&lt;param value="4.0.50401.0" name="minRuntimeVersion" /&gt;
&lt;param value="true" name="autoUpgrade" /&gt;
&lt;param value="Culture=en-US,Uuid=90a64b23-10d0-400e-b0f7-a727fc940594,Autoplay=false,ShowMarketingOverlay=true,MiscControls=FullScreen;Detached,ShowMenu=True,Tabs=Embed;Email;Share;Info;Downloads;Chapters,VideoUrl=http://microsoft.com/showcase/en/us/details/90a64b23-10d0-400e-b0f7-a727fc940594,Mode=Player,AgeGate=True,AgeGateDayMonthYearOrder=MDY" name="initParams" /&gt;
&lt;a onmousedown="javascript:new Image().src = 'http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/dcs.gif?dcsdat=' + new Date().getTime() + '&amp;amp;dcssip=www.microsoft.com&amp;amp;dcsuri=' + window.location.href + '&amp;amp;WT.tz=-8&amp;amp;WT.bh=16&amp;amp;WT.ul=en-US&amp;amp;WT.cd=32&amp;amp;WT.jo=Yes&amp;amp;WT.ti=&amp;amp;WT.js=Yes&amp;amp;WT.jv=1.5&amp;amp;WT.fi=Yes&amp;amp;WT.fv=10.0&amp;amp;WT.sli=Not%20Installed&amp;amp;WT.slv=Version%20Unavailable&amp;amp;WT.dl=1&amp;amp;WT.seg_1=Not%20Logged%20In&amp;amp;WT.vt_f_a=2&amp;amp;WT.vt_f=2&amp;amp;WT.vt_nvr1=2&amp;amp;WT.vt_nvr2=2&amp;amp;WT.vt_nvr3=2&amp;amp;WT.vt_nvr4=2&amp;amp;vp_site=Embedded&amp;amp;wtEvtSrc=' + window.location.href + '&amp;amp;vp_sli=Embedded'" style="text-decoration: none;" href="http://go.microsoft.com/fwlink/?LinkID=149156"&gt;
&lt;img style="border-style: none;" alt="Get Microsoft Silverlight" src="http://img.microsoft.com/showcase/Content/img/resx/en-US/installSL.gif" /&gt;
&lt;/a&gt;
&lt;div style="margin-top: -80px; text-align: center;"&gt;
&lt;a href="mms://msnvidweb.wmod.msecnd.net/a10026/e1/ds/520ba35f-9ad5-475d-8a13-f795614387a1.wmv" style="text-align: center; color: #7db0d2; text-decoration: none; font-size: 80%; font-family: 'Segoe UI', Segoe, Tahoma, Verdana, sans-serif;"&gt; View this video as a WMV&lt;/a&gt;
&lt;/div&gt;
&lt;noscript&gt;&lt;div&gt;&lt;img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/njs.gif?dcsuri=/nojavascript&amp;WT.js=No"/&gt;&lt;/div&gt;&lt;/noscript&gt;
&lt;/object&gt;
&lt;/div&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src="" + (window.location.protocol) + "//c.microsoft.com/ms.js" _mce_src="http://blogs.msdn.com/controlpanel/blogs/posteditor.aspx/&amp;quot; + (window.location.protocol) + &amp;quot;/c.microsoft.com/ms.js" &gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;p align="center" style="text-align: left;"&gt;&lt;a href="http://www.microsoft.com/showcase/en/us/details/90a64b23-10d0-400e-b0f7-a727fc940594"&gt;&lt;i&gt;Sharing Data with Android and SQL Azure via
OData&lt;/i&gt;&lt;/a&gt;&lt;i&gt;&amp;nbsp;&lt;/i&gt;&lt;/p&gt;
&lt;p align="center" style="text-align: left;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://www.microsoft.com/showcase/en/us/details/083d55f4-c0d4-4309-8996-49d63ce14c60"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div style="width: 500px; height: 360px;"&gt;
&lt;object height="360" width="500" type="application/x-silverlight-2" data="data:application/x-silverlight-2,"&gt;
&lt;param value="http://www.microsoft.com/showcase/silverlight/player/1/player-en.xap" name="source" /&gt;
&lt;param value="true" name="enableHtmlAccess" /&gt;
&lt;param value="#FF000000" name="background" /&gt;
&lt;param value="true" name="allowHtmlPopupwindow" /&gt;
&lt;param value="4.0.50401.0" name="minRuntimeVersion" /&gt;
&lt;param value="true" name="autoUpgrade" /&gt;
&lt;param value="Culture=en-US,Uuid=083d55f4-c0d4-4309-8996-49d63ce14c60,Autoplay=false,ShowMarketingOverlay=true,MiscControls=FullScreen;Detached,ShowMenu=True,Tabs=Embed;Email;Share;Info;Downloads;Chapters,VideoUrl=http://microsoft.com/showcase/en/us/details/083d55f4-c0d4-4309-8996-49d63ce14c60,Mode=Player,AgeGate=True,AgeGateDayMonthYearOrder=MDY" name="initParams" /&gt;
&lt;a onmousedown="javascript:new Image().src = 'http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/dcs.gif?dcsdat=' + new Date().getTime() + '&amp;amp;dcssip=www.microsoft.com&amp;amp;dcsuri=' + window.location.href + '&amp;amp;WT.tz=-8&amp;amp;WT.bh=16&amp;amp;WT.ul=en-US&amp;amp;WT.cd=32&amp;amp;WT.jo=Yes&amp;amp;WT.ti=&amp;amp;WT.js=Yes&amp;amp;WT.jv=1.5&amp;amp;WT.fi=Yes&amp;amp;WT.fv=10.0&amp;amp;WT.sli=Not%20Installed&amp;amp;WT.slv=Version%20Unavailable&amp;amp;WT.dl=1&amp;amp;WT.seg_1=Not%20Logged%20In&amp;amp;WT.vt_f_a=2&amp;amp;WT.vt_f=2&amp;amp;WT.vt_nvr1=2&amp;amp;WT.vt_nvr2=2&amp;amp;WT.vt_nvr3=2&amp;amp;WT.vt_nvr4=2&amp;amp;vp_site=Embedded&amp;amp;wtEvtSrc=' + window.location.href + '&amp;amp;vp_sli=Embedded'" style="text-decoration: none;" href="http://go.microsoft.com/fwlink/?LinkID=149156"&gt;
&lt;img style="border-style: none;" alt="Get Microsoft Silverlight" src="http://img.microsoft.com/showcase/Content/img/resx/en-US/installSL.gif" /&gt;
&lt;/a&gt;
&lt;div style="margin-top: -80px; text-align: center;"&gt;
&lt;a href="mms://msnvidweb.wmod.msecnd.net/a10026/e1/ds/e1f4e624-ace8-4b1b-a1ad-69f876ebd6d5.wmv" style="text-align: center; color: #7db0d2; text-decoration: none; font-size: 80%; font-family: 'Segoe UI', Segoe, Tahoma, Verdana, sans-serif;"&gt; View this video as a WMV&lt;/a&gt;
&lt;/div&gt;
&lt;noscript&gt;&lt;div&gt;&lt;img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/njs.gif?dcsuri=/nojavascript&amp;WT.js=No"/&gt;&lt;/div&gt;&lt;/noscript&gt;
&lt;/object&gt;
&lt;/div&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src="" + (window.location.protocol) + "//c.microsoft.com/ms.js" _mce_src="http://blogs.msdn.com/controlpanel/blogs/posteditor.aspx/&amp;quot; + (window.location.protocol) + &amp;quot;/c.microsoft.com/ms.js" &gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;p align="center" style="text-align: left;"&gt;&lt;a href="http://www.microsoft.com/showcase/en/us/details/083d55f4-c0d4-4309-8996-49d63ce14c60"&gt;&lt;i&gt;Sharing Data with Windows Phone and SQL
Azure via OData&lt;/i&gt;&lt;/a&gt;&lt;i&gt;&amp;nbsp;&lt;/i&gt;&lt;/p&gt;
&lt;h2&gt;Is it Hard?&lt;/h2&gt;
&lt;p&gt;No.&amp;nbsp; And more partners
are using it, like SAP and EastBanc I mentioned at the top.&amp;nbsp; As I mentioned earlier there are libraries
for most platforms.&amp;nbsp; Here are some links
to get started with SQL Azure:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.sqlazurelabs.com/"&gt;SQL Azure
Labs&lt;/a&gt; has an OData service you can get started with today that will create
an OData endpoint for your SQL Azure database.&lt;/li&gt;
&lt;li&gt;For .NET developers, you can also create your
own in about 5 lines of code utilizing &lt;a href="http://msdn.microsoft.com/en-us/data/bb931106"&gt;WCF Data Services&lt;/a&gt; that
you can deploy locally, or in a web role in Windows Azure.&amp;nbsp; These libraries are already included in the
.NET Framework.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Hope this has whetted your appetite just a bit to get
started.&amp;nbsp; For all of you in the U.S.,
have a great Memorial Day weekend!&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10169189" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/27/10169189.aspx</link>
      <pubDate>Fri, 27 May 2011 13:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SQL Azure Federations: Product Evaluation Program Now Open for Nominations!</title>
      <description>&lt;p&gt;Cihan Biyikoglu, Senior Program Manager of SQL Azure, has posted information on the Microsoft SQL Azure Federations Product Evaluation Program. Nominations for the Microsoft SQL Azure Federations Product Evaluation Program are now open. &lt;/p&gt;
&lt;p&gt;To learn more and discover how you can get involved, I encourage you to visit his blog entry &lt;a href="http://blogs.msdn.com/b/cbiyikoglu/archive/2011/05/12/federations-product-evaluation-program-now-open-for-nominations.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re getting up to speed on the concept of federations, you can find an overview of the technology &lt;a href="http://social.technet.microsoft.com/wiki/contents/articles/2281.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=10168301" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/26/10168301.aspx</link>
      <pubDate>Thu, 26 May 2011 16:00:00 GMT</pubDate>
    </item>
    <item>
      <title>TechEd 2011 Highlights: Highlighted Articles on TechEd 2011</title>
      <description>&lt;p&gt;TechEd wound to a close last Friday. &amp;nbsp;Our engineering leaders put together some great demos and presentations that help developers take advantage of cloud data with SQL Azure, as well as preview what&amp;rsquo;s coming next on the roadmap. The blogosphere has been very active with articles from people who have been excited to share their insights and experiences from the conference. &amp;nbsp;Below are a few that deserve a closer look:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;***&lt;/p&gt;
&lt;p&gt;Mary-Jo Foley wrote a great post that summarized the SQL Azure announcements at TechEd, especially our initiatives in event-processing by putting StreamInsight in the cloud: &lt;a href="http://www.zdnet.com/blog/microsoft?tag=mantle_skin;content"&gt;&lt;b&gt;All About Microsoft&lt;/b&gt;&lt;/a&gt;: &lt;a href="http://www.zdnet.com/blog/microsoft/microsoft-readies-austin-an-azure-hosted-event-processing-service/9494?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+zdnet%2Fmicrosoft+%28ZDNet+All+About+Microsoft%29"&gt;&amp;ldquo;Microsoft readies 'Austin,' an Azure-hosted event-processing service"&lt;/a&gt;&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/6355.1.png"&gt;&lt;/a&gt;&amp;nbsp;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/6237.1.png"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/500x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/6237.1.png" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Summary:&lt;/b&gt; Microsoft&amp;rsquo;s making a progression to transfer SQL Server capabilities into the cloud, and transform them into service solutions. Foley&amp;rsquo;s article details one of Microsoft&amp;rsquo;s latest solutions: Codename &amp;ldquo;Austin&amp;rdquo;. In addition to providing technical insight on &amp;ldquo;Austin&amp;rdquo;, the article elaborates on some of the possible scenarios that the solution could be implemented, as well as highlighting other fascinating SQL Azure news features that are worth reading about.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;***&lt;/p&gt;
&lt;p&gt;Robert Wahbe, Corporate Vice President of Server &amp;amp; Tools, authored a guest post on the &lt;a href="http://blogs.technet.com/b/microsoft_blog/"&gt;&lt;b&gt;The Official Microsoft Blog&lt;/b&gt;&lt;/a&gt;, titled &lt;a href="http://blogs.technet.com/b/microsoft_blog/archive/2011/05/16/charting-your-course-to-the-cloud.aspx"&gt;&amp;ldquo;Charting your Course into the Cloud&amp;rdquo;&lt;/a&gt;&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/3731.2.png"&gt;&lt;/a&gt;&amp;nbsp;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/0081.2.png"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/500x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/0081.2.png" border="0" /&gt;&lt;/a&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/1300.2.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Summary:&lt;/b&gt; The article summarizes the keynote talk that he delivered to developers and other IT professionals at TechEd.&amp;nbsp; During the conference, Wahbe highlighted evolving trends in technologies like cloud computing, the changes in the device landscape, the economics of cloud computing and how Microsoft is helping partners manage this new environment. The article references to several Microsoft press releases, a whitepaper and a case study which makes this a valuable read.&lt;br clear="all" /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;***&lt;/p&gt;
&lt;p&gt;Author Paul Thurrott, who writes the blog, &lt;a href="http://www.windowsitpro.com/"&gt;&lt;b&gt;Windows IT Pro&lt;/b&gt;&lt;/a&gt;, wrote this post on TechEd: &lt;a href="http://www.windowsitpro.com/article/systems-management/what-ive-learned-so-far-at-teched-2011-135933"&gt;&amp;ldquo;What I&amp;rsquo;ve Learned (So Far) at TechEd 2011&amp;rdquo;&lt;/a&gt;&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/1665.3.png"&gt;&lt;/a&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/2335.3epe39039w3.png"&gt;&lt;/a&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/2742.3.png"&gt;&lt;/a&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/0245.3.png"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/500x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/0245.3.png" border="0" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Summary:&lt;/b&gt; This article was written after Day 1 of TechEd, but it highlights some of the exciting technologies that were featured just in one day. Thurrott&amp;rsquo;s article highlights solutions such as MultiPoint Server 2011, and Windows Phone 7.5 "Mango&amp;rdquo; He also has written an article &lt;a href="http://www.windowsitpro.com/article/paul-thurrotts-wininfo/teched-2011-microsoft-touts-cloud-offerings-136157"&gt;here&lt;/a&gt;, which summarizes Microsoft&amp;rsquo;s case for cloud offerings during the TechEd keynote speech.&lt;br clear="all" /&gt;&lt;/p&gt;
&lt;p&gt;***&lt;/p&gt;
&lt;p&gt;Susan Inbach blogs in the &lt;a href="http://blogs.msdn.com/b/cdnsoldevs/"&gt;&lt;b&gt;Canadian Solution Developer&lt;/b&gt;&lt;/a&gt; and wrote this piece recently on TechEd: &lt;a href="http://blogs.msdn.com/b/cdnsoldevs/archive/2011/05/20/get-excited-about-your-job-again-teched.aspx"&gt;&amp;ldquo;Get Excited About&amp;nbsp; Your Job Again- TechEd&amp;rdquo;&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-00-99-37/4087.4.png"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/500x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/4087.4.png" border="0" style="display: block; margin-left: auto; margin-right: auto;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p align="center"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Summary:&lt;/b&gt;&amp;nbsp; This article is more of an interesting lifestyle piece about what it&amp;rsquo;s like to be at a developer conference. Inbach highlights some of the networking tactics that she used at TechEd to make new contacts and get exposed to new ideas. It really got her engaged in the entire experience. I think that this is a fun piece that really highlights why, if you get the opportunity, you should go to a developer&amp;rsquo;s conference like TechEd.&lt;/p&gt;
&lt;p&gt;There were so many things to write about TechEd this year. If you weren&amp;rsquo;t able to view the demonstrations and other presentations from TechEd 2011 that were reviewed in the articles above, take a look at them all here at &lt;a href="http://channel9.msdn.com/Events/TechEd/NorthAmerica/2011"&gt;Channel 9&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;-Steve.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10168028" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/25/10168028.aspx</link>
      <pubDate>Wed, 25 May 2011 08:20:00 GMT</pubDate>
    </item>
    <item>
      <title>Real World SQL Azure: Interview with Kai Boo Lee, Business Development Director, aZaaS</title>
      <description>&lt;p&gt;&lt;b&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/4428.asada.jpg"&gt;&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/3414.asada.jpg"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/110x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-99-37/3414.asada.jpg" border="0" /&gt;&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Real World SQL Azure: Interview with Kai Boo Lee, Business Development Director, aZaaS&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;As part of the Real World SQL Azure series, we recently talked to Kai Boo Lee, Business Development Director at &lt;a href="http://www.azaas.com/"&gt;aZaaS&lt;/a&gt;, about using &lt;a href="http://www.sqlazure.com/"&gt;Microsoft SQL Azure&lt;/a&gt; and &lt;a href="http://www.windowsazure.com/"&gt;Windows Azure &lt;/a&gt;to host the aZaaS Cloud Application Engine, a business application that customers can tailor to their needs. Here&amp;rsquo;s what he had to say: &lt;/p&gt;
&lt;p&gt;&lt;b&gt;MSDN: Where did you come up with the name aZaaS?&lt;/b&gt;&lt;/p&gt;
&lt;p class="Bodycopy"&gt;&lt;b&gt;Lee:&lt;/b&gt; Our company name&amp;mdash;aZaaS&amp;mdash;means &amp;ldquo;anything from A to Z as a service.&amp;rdquo; We provide software-as-a-service solutions that make it possible for customers to enjoy the benefits of technology and automation without the need to purchase, install, or maintain software, hardware, and data centers. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;MSDN: Tell me more about aZaaS.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Lee: &lt;/b&gt;aZaaS has been providing solutions to global customers of all sizes since 2009. During our first year of operations, we won the Partner of the Year award from Microsoft and we&amp;rsquo;ve been a Microsoft Gold Certified Partner since 2010. We also participated in Microsoft BizSpark, a program that supports the early stages for technology startup companies with software, training, support, and marketing resources. We have 40 employees who work in China, Taiwan, and Singapore. Microsoft has honored two of our employees with expert designations: One is a Microsoft Regional Director and another is a Microsoft Most Valuable Professional. We specialize in cloud solutions based on Microsoft technologies and are recognized experts with Microsoft Silverlight, a development platform for creating rich media applications and business applications. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;MSDN: What made you decide to build aZaaS Cloud Application Engine and make it customizable?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Lee: &lt;/b&gt;We developed a cloud-based application that features functionality for human resources management. Our customers around the world were frequently asking for customizations. A key factor for all our customers is time-to-market. We decided to build a platform that includes ready-made modules that could be customized with minimal effort by anyone. It had to be flexible enough that customers could easily develop solutions based on their own business models and processes. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;MSDN: Why did you choose SQL Azure?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Lee: &lt;/b&gt;We&amp;rsquo;re at the point where we have a lot more customers&amp;mdash;200 and growing&amp;mdash;and as the volume of transactions on each customer&amp;rsquo;s application increases, we need to be able to scale on demand. We decided to go with SQL Azure, the cloud-based relational and self-managed database service. It&amp;rsquo;s part of the Windows Azure platform, a general-purpose cloud platform that makes complicated tasks simple across a dynamic environment. We needed the relational capabilities in SQL Azure to build complex relationships between the data that customers use. At the moment, SQL Azure has the only fully fledged relational database management services available for the cloud. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;MSDN: How does the aZaaS Cloud Application Engine work?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Lee: &lt;/b&gt;The aZaaS Cloud Application Engine consists of two parts: Application Designer and Application Workspace. We developed the Application Designer to be used by people who are experts in their business domains. That is, business users who are familiar with their organizations&amp;rsquo; work processes can easily design the various modules&amp;mdash;and create forms or define reporting mechanisms&amp;mdash;to meet internal requirements. After customizing the application, users can then publish their updates to the cloud. From the Application Workspace, users can operate the customized aZaaS Cloud Application Engine in the familiar Windows environment.&lt;/p&gt;
&lt;p class="Bodycopy"&gt;&lt;b&gt;MSDN: What did you have to do to build the database functionality with SQL Azure?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Lee: &lt;/b&gt;aZaaS uses the relational cloud database, which is built on Microsoft SQL Server technologies, to provide a fully automated and highly available multitenant database service on the aZaaS Cloud Application Engine. We are capitalizing on the scale-out database features of SQL Azure. We are also taking advantage of the streamlined SQL Azure features for consolidating databases in the cloud and quickly provisioning databases. We partition the aZaaS Cloud Application Engine database for each tenant. Each tenant can access only those portions of the database that belong to them. It helps that SQL Azure has very granular access control, so we were able to achieve multitenancy quite easily.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;MSDN: What benefits have you and your customers realized?&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Lee:&lt;/b&gt; For any customer that&amp;rsquo;s making use of web-based applications&amp;mdash;which is basically everyone&amp;mdash;we believe that the Windows Azure platform is the way to go. It speeds time-to-market, for starters. We can deploy a new tenant to SQL Azure in less than one day. The entire deployment process is at least nine times faster than it is with an on-premises model. Plus, the cost of hosting the SQL Azure solution on the Windows Azure platform is about 20 percent of the cost of hosting it in a customer&amp;rsquo;s own data center. For aZaaS, we can provide subscription-based services to a larger portion of our customers at a much reduced cost. This gives us a more consistent revenue base. Also, we can add functionality and services without interrupting a customer&amp;rsquo;s business processes.&lt;/p&gt;
&lt;p&gt;Read the full story at: &lt;a href="http://www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000010017"&gt;www.microsoft.com/casestudies/casestudy.aspx?casestudyid=4000010017&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;To read more about SQL Azure, visit:&lt;br /&gt;&lt;a href="http://www.sqlazure.com/"&gt;www.SQLAzure.com&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=10166802" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/24/10166802.aspx</link>
      <pubDate>Tue, 24 May 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>TechEd 2011: From Servers to Services: On-Premise and in the Cloud</title>
      <description>&lt;p&gt;Norm
Judah, Chief Technology Officer for Microsoft Services, presented a Foundational
Session at TechEd detailing examples of what is possible in the cloud this past
week.&amp;nbsp; The session covered four demos on 1)
building a private cloud, 2) event based applications, 3) looking at SharePoint
as an application platform and doing a burst out to Azure, and 4) redeploying
an on-premises application into the cloud. The technologies and services
focused on are: Hyper-Microsoft System Center, Windows Azure and Microsoft
Office 365, Private and Public Cloud, application development and management.&lt;/p&gt;
&lt;p&gt;I highly
recommend taking a look at this presentation, as it highlights many of the
possibilities of what can be done in the cloud today and in the future.&lt;/p&gt;
&lt;p&gt;

&lt;object type="application/x-silverlight-2" data="data:application/x-silverlight-2," width="540" height="300"&gt;
&lt;param name="minRuntimeVersion" value="4.0.50401.0" /&gt;
&lt;param name="source" value="http://channel9.msdn.com/scripts/Channel9.xap?v=1.5" /&gt;
&lt;param name="initParams" value="mediaurl=http://media.ch9.ms/teched/na/2011/wmv/FDN05.wmv,thumbnail=http://media.ch9.ms/teched/na/2011/thumbs/FDN05-LG.jpg,deliverymethod=progressivedownload,autoplay=false,entryid=e5a90044912c45b2b4ee9ee500aa2fb0" /&gt;
&lt;/object&gt;
&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10167424" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/23/10167424.aspx</link>
      <pubDate>Mon, 23 May 2011 10:30:00 GMT</pubDate>
    </item>
    <item>
      <title>Video How-To: Basic Architectural Considerations</title>
      <description>&lt;p&gt;We&amp;rsquo;ve prepared a new how-to video which talks about
basic architectural considerations when developing on SQL Azure. This
walkthrough provides an overview that you can use to establish best practices
and optimize your SQL Azure databases. Specifically, the video discusses
standard database optimization techniques, database sharding, and table
considerations. &lt;/p&gt;
&lt;p&gt;The demo portion of the video shows how to create a
clustered index in the Windows Azure portal and shows how to test for latency
using SQL Server Management Studio.&amp;nbsp; The
conclusion points you to some additional resources to help you get started
using SQL Azure.&lt;/p&gt;
&lt;p&gt;Take a look at the source code on &lt;a href="http://sqlazure.codeplex.com/releases/view/65183"&gt;Codeplex.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Check it out, and if you have any questions, please
leave a comment.&lt;/p&gt;
&lt;div style="width: 500px; height: 360px;"&gt;
&lt;object height="360" width="500" type="application/x-silverlight-2" data="data:application/x-silverlight-2,"&gt;
&lt;param value="http://www.microsoft.com/showcase/silverlight/player/1/player-en.xap" name="source" /&gt;
&lt;param value="true" name="enableHtmlAccess" /&gt;
&lt;param value="#FF000000" name="background" /&gt;
&lt;param value="true" name="allowHtmlPopupwindow" /&gt;
&lt;param value="4.0.50401.0" name="minRuntimeVersion" /&gt;
&lt;param value="true" name="autoUpgrade" /&gt;
&lt;param value="Culture=en-US,Uuid=d57da5a6-1501-4422-a819-db314e84e63a,Autoplay=false,ShowMarketingOverlay=true,MiscControls=FullScreen;Detached,ShowMenu=True,Tabs=Embed;Email;Share;Info;Downloads;Chapters,VideoUrl=http://microsoft.com/showcase/en/us/details/d57da5a6-1501-4422-a819-db314e84e63a,Mode=Player,AgeGate=True,AgeGateDayMonthYearOrder=MDY" name="initParams" /&gt;
&lt;a onmousedown="javascript:new Image().src = 'http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/dcs.gif?dcsdat=' + new Date().getTime() + '&amp;amp;dcssip=www.microsoft.com&amp;amp;dcsuri=' + window.location.href + '&amp;amp;WT.tz=-8&amp;amp;WT.bh=16&amp;amp;WT.ul=en-US&amp;amp;WT.cd=32&amp;amp;WT.jo=Yes&amp;amp;WT.ti=&amp;amp;WT.js=Yes&amp;amp;WT.jv=1.5&amp;amp;WT.fi=Yes&amp;amp;WT.fv=10.0&amp;amp;WT.sli=Not%20Installed&amp;amp;WT.slv=Version%20Unavailable&amp;amp;WT.dl=1&amp;amp;WT.seg_1=Not%20Logged%20In&amp;amp;WT.vt_f_a=2&amp;amp;WT.vt_f=2&amp;amp;WT.vt_nvr1=2&amp;amp;WT.vt_nvr2=2&amp;amp;WT.vt_nvr3=2&amp;amp;WT.vt_nvr4=2&amp;amp;vp_site=Embedded&amp;amp;wtEvtSrc=' + window.location.href + '&amp;amp;vp_sli=Embedded'" style="text-decoration: none;" href="http://go.microsoft.com/fwlink/?LinkID=149156"&gt;
&lt;img style="border-style: none;" alt="Get Microsoft Silverlight" src="http://img.microsoft.com/showcase/Content/img/resx/en-US/installSL.gif" /&gt;
&lt;/a&gt;
&lt;div style="margin-top: -80px; text-align: center;"&gt;
&lt;a href="mms://msnvidweb.wmod.msecnd.net/a10026/e1/ds/us/CMG_US/CMG_Microsoft/5fe0d990-602c-47f2-a6b3-8e1f2db1f511.wmv" style="text-align: center; color: #7db0d2; text-decoration: none; font-size: 80%; font-family: 'Segoe UI', Segoe, Tahoma, Verdana, sans-serif;"&gt; View this video as a WMV&lt;/a&gt;
&lt;/div&gt;
&lt;noscript&gt;&lt;div&gt;&lt;img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/njs.gif?dcsuri=/nojavascript&amp;WT.js=No"/&gt;&lt;/div&gt;&lt;/noscript&gt;
&lt;/object&gt;
&lt;/div&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src='" + (window.location.protocol) + "//c.microsoft.com/ms.js' &gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10167388" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/23/10167388.aspx</link>
      <pubDate>Mon, 23 May 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>TechEd 2011: The Data and BI Platform for Today and Tomorrow</title>
      <description>&lt;p&gt;Quentin Clark, Vice President for SQL Server, delivered a session after the TechEd keynote yesterday about the future of SQL Server for data and BI and moving towards the cloud in the upcoming &amp;ldquo;Denali&amp;rdquo; release.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;There was a great demo by Roger Doherty that illustrates how well SQL Azure and SQL Server work together by making it much easier to move back and forth between on-premises and cloud utilizing improvements in the DAC Framework.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;Additionally, new developer tools in &amp;ldquo;Denali&amp;rdquo;, specifically SQL Server Developer Tools Codename &amp;ldquo;Juneau&amp;rdquo;, provided a central point for developers to create database applications.&amp;nbsp; Database edition and cloud-aware &amp;ndash; &amp;ldquo;Juneau&amp;rdquo; provides the one tool for any SQL Server or SQL Azure development.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;I encourage you to watch it in its entirety.&amp;nbsp; However, if you want to skip ahead the SQL Azure demo starts at the 23:00 mark&lt;/p&gt;
&lt;p&gt;

&lt;object type="application/x-silverlight-2" data="data:application/x-silverlight-2," width="540" height="300"&gt;
&lt;param name="minRuntimeVersion" value="4.0.50401.0" /&gt;
&lt;param name="source" value="http://channel9.msdn.com/scripts/Channel9.xap?v=1.5" /&gt;
&lt;param name="initParams" value="mediaurl=http://media.ch9.ms/teched/na/2011/wmv/FDN04.wmv,thumbnail=http://media.ch9.ms/teched/na/2011/thumbs/FDN04-LG.jpg,deliverymethod=progressivedownload,autoplay=false,entryid=6c870f83f89e41e388b89ee500aa2fb8" /&gt;
&lt;/object&gt;
&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10166035" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/18/10166035.aspx</link>
      <pubDate>Wed, 18 May 2011 20:55:00 GMT</pubDate>
    </item>
    <item>
      <title>Video How To: Advanced Business Intelligence with Cloud Data</title>
      <description>&lt;p&gt;We&amp;rsquo;ve created a new readiness video that introduces some of the features of SQL Azure Reporting and demonstrates the use of advanced analytical tools, such as using SQL Azure data with Excel and PowerPivot. Specifically, users will learn how to use SQL Azure data with Excel and create two pivot tables using employee expense report data. The conclusion points to some additional resources to help users get started. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;

&lt;object height="360" width="500" type="application/x-silverlight-2" data="data:application/x-silverlight-2,"&gt;
&lt;param value="http://www.microsoft.com/showcase/silverlight/player/1/player-en.xap" name="source" /&gt;
&lt;param value="true" name="enableHtmlAccess" /&gt;
&lt;param value="#FF000000" name="background" /&gt;
&lt;param value="true" name="allowHtmlPopupwindow" /&gt;
&lt;param value="4.0.50401.0" name="minRuntimeVersion" /&gt;
&lt;param value="true" name="autoUpgrade" /&gt;
&lt;param value="Culture=en-US,Uuid=dfb1ac98-ab80-4f8f-ab8e-89e6bfdb02a7,Autoplay=false,ShowMarketingOverlay=true,MiscControls=FullScreen;Detached,ShowMenu=True,Tabs=Embed;Email;Share;Info,VideoUrl=http://microsoft.com/showcase/en/us/details/dfb1ac98-ab80-4f8f-ab8e-89e6bfdb02a7,Mode=Player" name="initParams" /&gt;
&lt;a onmousedown="javascript:new Image().src = 'http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/dcs.gif?dcsdat=' + new Date().getTime() + '&amp;amp;dcssip=www.microsoft.com&amp;amp;dcsuri=' + window.location.href + '&amp;amp;WT.tz=-8&amp;amp;WT.bh=16&amp;amp;WT.ul=en-US&amp;amp;WT.cd=32&amp;amp;WT.jo=Yes&amp;amp;WT.ti=&amp;amp;WT.js=Yes&amp;amp;WT.jv=1.5&amp;amp;WT.fi=Yes&amp;amp;WT.fv=10.0&amp;amp;WT.sli=Not%20Installed&amp;amp;WT.slv=Version%20Unavailable&amp;amp;WT.dl=1&amp;amp;WT.seg_1=Not%20Logged%20In&amp;amp;WT.vt_f_a=2&amp;amp;WT.vt_f=2&amp;amp;WT.vt_nvr1=2&amp;amp;WT.vt_nvr2=2&amp;amp;WT.vt_nvr3=2&amp;amp;WT.vt_nvr4=2&amp;amp;vp_site=Embedded&amp;amp;wtEvtSrc=' + window.location.href + '&amp;amp;vp_sli=Embedded'" style="text-decoration: none;" href="http://go.microsoft.com/fwlink/?LinkID=149156"&gt;
&lt;img style="border-style: none;" alt="Get Microsoft Silverlight" src="http://img.microsoft.com/showcase/Content/img/resx/en-US/installSL.gif" /&gt;
&lt;/a&gt;
&lt;noscript&gt;&lt;div&gt;&lt;img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/njs.gif?dcsuri=/nojavascript&amp;WT.js=No"/&gt;&lt;/div&gt;&lt;/noscript&gt;
&lt;/object&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src='" + (window.location.protocol) + "//c.microsoft.com/ms.js'" + "'&gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;/p&gt;
&lt;p&gt;&amp;nbsp;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10160608" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/18/10160608.aspx</link>
      <pubDate>Wed, 18 May 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>SQL Azure May 2011 Update</title>
      <description>&lt;p&gt;Announced earlier today at &lt;a href="http://www.microsoft.com/events/techednorthamerica/?fbid=EYbG09rP6zh"&gt;TechEd&lt;/a&gt;, there are several key updates to the SQL Azure service that I wanted to share with you.&amp;nbsp; Zane Adam covered these at a high level on his &lt;a href="http://blogs.msdn.com/b/zaneadam/archive/2011/05/16/continuing-our-windows-azure-platform-innovation.aspx"&gt;blog&lt;/a&gt; this morning as well as talking about improvements in AppFabric.&amp;nbsp; The theme of this service release was to continue improving on making SQL Azure databases easier to manage, and the service enhancements go a long way towards making automation and keeping track of geo-distributed deployments more convenient.&lt;/p&gt;
&lt;p&gt;For the May 2011 service update, there are four key improvements the engineering teams have been hard at work on:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;b&gt;SQL Azure Management REST API&lt;/b&gt; &amp;ndash; a web API for managing SQL Azure servers.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Multiple servers per subscription&lt;/b&gt; &amp;ndash; create multiple SQL Azure servers per subscription.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;JDBC Driver&lt;/b&gt; &amp;ndash; updated database driver for Java applications to access SQL Server and SQL Azure.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;DAC Framework 1.1&lt;/b&gt; &amp;ndash; making it easier to deploy databases and in-place upgrades on SQL Azure.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Let&amp;rsquo;s go through these one by in a little more detail.&amp;nbsp; For deeper technical details you can read more in the MSDN documentation &lt;a href="http://msdn.microsoft.com/en-us/library/ff602419.aspx"&gt;here&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;SQL Azure Management REST API&lt;/b&gt;: With the latest release, managing databases can be accomplished via a web API to programmatically manage SQL Azure servers along with configuring the firewall rules.&amp;nbsp; While managing the servers via the Windows Azure developer portal is straightforward enough, doing this via an API provides the ability automate these tasks.&amp;nbsp; Many SQL Azure solutions created by our partner ISVs create new databases or add a firewall rule when onboarding new customers.&amp;nbsp; This API makes scenarios such as this much more convenient and efficient.&amp;nbsp;&amp;nbsp; The REST API we&amp;rsquo;ve implemented utilizes standard and open web protocols to make it easy to use by any variety of programming platforms.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Multiple servers per subscription&lt;/b&gt;: You can now create multiple SQL Azure servers per subscription, making it easier to manage multiple database deployments across different servers &amp;ndash; whether they&amp;rsquo;re in the same datacenter, or a geo-distributed deployment across worldwide Windows Azure platform datacenters.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;JDBC Driver&lt;/b&gt;: Java developers can download the updated driver &lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=ae924066-2946-40a7-93c6-c7e83f54072f&amp;amp;displaylang=en"&gt;here&lt;/a&gt;.&amp;nbsp; The SQL Server JDBC Driver 3.0 driver is now available, a Type 4 JDBC driver.&amp;nbsp; This version fully supports both SQL Server &lt;i&gt;and&lt;/i&gt; SQL Azure and is free of charge.&amp;nbsp; This enables on-premises Java applications to communicate with SQL Azure to make data available in the cloud; or to deploy a Java app to Windows Azure and utilize SQL Azure as the underlying data store.&amp;nbsp; More information on Windows Azure cross-platform capabilities are &lt;a href="http://www.microsoft.com/windowsazure/interop/"&gt;here&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;DAC Framework 1.1&lt;/b&gt;: At the end of March I put up a &lt;a href="http://blogs.msdn.com/b/sqlazure/archive/2011/03/24/10145578.aspx"&gt;post&lt;/a&gt; about the new import/export feature for SQL Azure that makes migrating databases between on-premises SQL Server and SQL Azure pretty simple, and will be tightly integrated into the database tools shipping with the next version of SQL Server (&amp;ldquo;Denali&amp;rdquo;).&amp;nbsp; Both schema and data are packaged together into a .bacpac file format (and no, I wasn&amp;rsquo;t involved in the naming of that file extension :) .&amp;nbsp; &lt;/p&gt;
&lt;p&gt;The improvements to the DAC Framework in 1.1 takes this a step further by enabling in-place upgrades of SQL Azure databases, changing the database schema as necessary while still preserving the data.&amp;nbsp; Very cool.&amp;nbsp; Used in conjunction with SQL Azure Data Sync, synchronizing data across on-premises and cloud creates very compelling opportunities to extend data from on-premises to reach users on the web, phone, tablets, and in next generation web apps via AJAX and jQuery.&lt;/p&gt;
&lt;p&gt;Over the next few weeks I&amp;rsquo;ll post more updates and examples of the new service enhancements.&amp;nbsp; Leave a comment and let me know which of these features you&amp;rsquo;re most interested in learning more about.&lt;/p&gt;
&lt;p&gt;Thanks! &lt;/p&gt;
&lt;p&gt;- Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10165048" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/16/10165048.aspx</link>
      <pubDate>Mon, 16 May 2011 19:30:00 GMT</pubDate>
    </item>
    <item>
      <title>SQL Azure And Data Services at TechEd 2011:  What’s Coming This Week.</title>
      <description>&lt;p&gt;&lt;span style="font-size: small;"&gt;TechEd is this week!&amp;nbsp; As I wrote in my post on Friday, TechEd is May 16-19 in Atlanta.&amp;nbsp; Unfortunately I am not there, I was at InterOp earlier this week in Vegas (I&amp;rsquo;ll send a recap of that in the next few days) and I&amp;rsquo;ll be sitting this one out to catch up on some work and to start work on an idea for a cloud application that I&amp;rsquo;ve been thinking about for a while.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;Don't forget!&amp;nbsp; My colleague, Tharun Tharian, will be there so I encourage you to say hi if you see him.&amp;nbsp; Of course he&amp;rsquo;ll be joined by the SQL Azure, DataMarket, and OData engineering teams delivering the latest on the respective services and technologies, and also manning the booth to answer your questions.&amp;nbsp; You&amp;rsquo;ll find them hanging out at the Cloud Data Services booth if you want to chat with them during the conference.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;Reminder for those of you going, below are the SQL Azure and OData sessions that I encourage you to check out the sessions listed below &amp;ndash; either live or over the web.&amp;nbsp; I encourage you to attend either Quentin Clark or Norm Judah&amp;rsquo;s foundational sessions right after the keynote to learn more about how to bridge on-premises investments with Windows Azure platform, and how SQL Server &amp;ldquo;Denali&amp;rdquo; and SQL Azure will work together in both the services offered, and updates in the tooling and development experience.&amp;nbsp; You may even hear some new announcements about SQL Azure and other investments in cloud data services.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;Enjoy the conference!&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;****&lt;/span&gt;&lt;/p&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;Foundational Sessions:&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: #16a5d9;"&gt;FDN04 | Microsoft SQL Server: The Data and BI Platform for Today and Tomorrow&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Quentin Clark&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Monday, May 16 | 11:00 AM - 12:00 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: Georgia Ballrm 3&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;FDN05 | From Servers to Services: On-Premise and in the Cloud&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Norm Judah&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Monday, May 16 | 11:00 AM - 12:00 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: Sidney Marcus Audit&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;SQL Azure Sessions:&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: #16a5d9;"&gt;DBI403 | Building Scalable Database Solutions Using Microsoft SQL Azure Database Federations&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Cihan Biyikoglu&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Monday, May 16 | 3:00 PM - 4:15 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: C201&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;DBI210 | Getting Started with Cloud Business Intelligence&lt;/span&gt;&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Pej Javaheri&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Tharun Tharian&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Monday, May 16 | 4:45 PM - 6:00 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: B213&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;COS310 | Microsoft SQL Azure Overview: Tools, Demos and Walkthroughs of Key Features&lt;/span&gt;&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;David Robinson&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Tuesday, May 17 | 10:15 AM - 11:30 AM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: B313&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;DBI323 | Using Cloud (Microsoft SQL Azure) and PowerPivot to Deliver Data and Self-Service BI at Microsoft&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Diana Putnam&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Harinarayan Paramasivan&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Sanjay Soni&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Tuesday, May 17 | 1:30 PM - 2:45 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: C208&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;DBI314 | Microsoft SQL Azure Performance Considerations and Troubleshooting&lt;/span&gt;&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 1:30 PM - 2:45 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: B312&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;DBI375-INT | Microsoft SQL Azure: Performance and Connectivity Tuning and Troubleshooting&lt;/span&gt;&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Peter Gvozdjak&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Sean Kelley&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 3:15 PM - 4:30 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: B302&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;COS308 | Using Microsoft SQL Azure with On-Premises Data: Migration and Synchronization Strategies and Practices&lt;/span&gt;&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Mark Scurrell&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Thursday, May 19 | 8:30 AM - 9:45 AM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: B213&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;DBI306 | Using Contained Databases and DACs to Build Applications in Microsoft SQL Server Code-Named "Denali" and SQL Azure&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Adrian Bethune&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Rick Negri&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Thursday, May 19 | 8:30 AM - 9:45 AM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: B312&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;DataMarket &amp;amp; OData Sessions:&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: #16a5d9;"&gt;DEV308 | Creating and Consuming OData Services &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Tuesday, May 17 | 3:15 PM - 4:30 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: B402&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;COS307 | Building Applications with the Windows Azure DataMarket&lt;/span&gt;&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Christian Liensberger&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Roger Mall&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 3:15 PM - 4:30 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: B312&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;DEV325 | Best Practices for Building Custom Open Data Protocol (OData) Services with Windows Azure&lt;/span&gt;&lt;/b&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Alex James&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Thursday, May 19 | 1:00 PM - 2:15 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: C211&lt;/span&gt;&lt;/a&gt; &lt;/p&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;Development Sessions:&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: #16a5d9;"&gt;DEV312 | Code First Development in EF 4.1&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Tuesday, May 17 | 10:15 AM - 11:30 AM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: C&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Times New Roman; color: #16a5d9; font-size: small;"&gt;307&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: #16a5d9;"&gt;DEV313 | Entity Framework 4 &amp;amp; Beyond: Building Real-World Apps&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 10:15 AM &amp;ndash; 11:30 AM | Georgia Ballroom 1&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;DEV207 | Introducing SQL Server Developer Tools, Codename &amp;ldquo;Juneau&amp;rdquo;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 3:00 PM - 4:15 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;&lt;span style="color: #16a5d9;"&gt;Room: B&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Times New Roman; color: #16a5d9; font-size: small;"&gt;406&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;span style="color: #16a5d9;"&gt;DEV314 | SQL Server Developer Tools, Codename &amp;ldquo;Juneau&amp;rdquo; &amp;amp; EF: Best Friends Forever&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 5:00 PM - 6:15 PM | Georgia Ballroom 3&lt;/p&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;Interactive Sessions&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: #16a5d9;"&gt;DEV374-INT | OData Unplugged&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 1:30 PM - 2:45 PM | B303&lt;/p&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/h1&gt;
&lt;h1&gt;&lt;span style="font-size: x-large;"&gt;Product Demo Stations &lt;/span&gt;(all week during Expo hours) &lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: #16a5d9;"&gt;Entity Framework &amp;amp; SQL Server Developer Tools, Codename &amp;ldquo;Juneau&amp;rdquo;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="color: #16a5d9;"&gt;&lt;b&gt;Data in the Cloud (OData, SQL Azure, Data Market)&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10164974" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/16/10164974.aspx</link>
      <pubDate>Mon, 16 May 2011 08:30:00 GMT</pubDate>
    </item>
    <item>
      <title>Gaining Performance Insight into SQL Azure</title>
      <description>&lt;p&gt;TechNet has an interesting article on understanding query performance in SQL Azure. &amp;nbsp;The article discusses how database administrators can track exactly what Transact-SQL statements are being submitted, and how the database returns those results and .&amp;nbsp; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://social.technet.microsoft.com/wiki/contents/articles/gaining-performance-insight-into-sql-azure.aspx"&gt;Click here to read more on TechNet&amp;rsquo;s article: &amp;ldquo;Gaining Performance Insight into SQL Azure.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10160627" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/16/10160627.aspx</link>
      <pubDate>Mon, 16 May 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>TechEd 2011 – What To See, Where To Go For Cloud Data Services</title>
      <description>&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;TechEd is next week!&amp;nbsp; May 16-19 to be exact, in Atlanta.&amp;nbsp; Unfortunately I won&amp;rsquo;t be there - I was at InterOp earlier this week in Vegas (I&amp;rsquo;ll send a recap of that in the next few days) and I&amp;rsquo;ll be sitting this one out to catch up on some work and to start work on an idea for a cloud application that I&amp;rsquo;ve been thinking about for a while.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;My colleague, Tharun Tharian, will be there so I encourage you to say hi if you see him.&amp;nbsp; He&amp;rsquo;ll be joined by the SQL Azure, DataMarket, and OData engineering teams delivering the latest on the respective services and technologies, and also manning the booth to answer your questions.&amp;nbsp; You&amp;rsquo;ll find them hanging out at the Cloud Data Services booth if you want to chat with them during the conference.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;For those of you going, below are the SQL Azure and OData sessions that I encourage you to check out the sessions listed below &amp;ndash; either live or over the web.&amp;nbsp; I encourage you to attend either Quentin Clark or Norm Judah&amp;rsquo;s foundational sessions right after the keynote to learn more about how to bridge on-premises investments with Windows Azure platform, and how SQL Server &amp;ldquo;Denali&amp;rdquo; and SQL Azure will work together in both the services offered, and updates in the tooling and development experience.&amp;nbsp; You may even hear some new announcements about SQL Azure and other investments in cloud data services.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;Enjoy the conference!&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;****&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h1&gt;&lt;span style="color: #365f91;"&gt;&lt;span style="font-family: Cambria;"&gt;Foundational Sessions:&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/FDN04#showdetails"&gt;&lt;b&gt;FDN04 | Microsoft SQL Server: The Data and BI Platform for Today and Tomorrow&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Quentin Clark&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Monday, May 16 | 11:00 AM - 12:00 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: Georgia Ballrm 3&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/FDN05#showdetails"&gt;&lt;b&gt;FDN05 | From Servers to Services: On-Premise and in the Cloud&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Norm Judah&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Monday, May 16 | 11:00 AM - 12:00 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: Sidney Marcus Audit&lt;/a&gt; &lt;/p&gt;
&lt;h1&gt;&lt;span style="color: #365f91;"&gt;&lt;span style="font-family: Cambria;"&gt;SQL Azure Sessions:&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/DBI403#showdetails"&gt;&lt;b&gt;DBI403 | Building Scalable Database Solutions Using Microsoft SQL Azure Database Federations&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Cihan Biyikoglu&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Monday, May 16 | 3:00 PM - 4:15 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: C201&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/DBI210#showdetails"&gt;&lt;b&gt;DBI210 | Getting Started with Cloud Business Intelligence&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Pej Javaheri&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Tharun Tharian&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Monday, May 16 | 4:45 PM - 6:00 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: B213&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/COS310#showdetails"&gt;&lt;b&gt;COS310 | Microsoft SQL Azure Overview: Tools, Demos and Walkthroughs of Key Features&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;David Robinson&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Tuesday, May 17 | 10:15 AM - 11:30 AM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: B313&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/DBI323#showdetails"&gt;&lt;b&gt;DBI323 | Using Cloud (Microsoft SQL Azure) and PowerPivot to Deliver Data and Self-Service BI at Microsoft&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Diana Putnam&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Harinarayan Paramasivan&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Sanjay Soni&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Tuesday, May 17 | 1:30 PM - 2:45 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: C208&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/DBI314#showdetails"&gt;&lt;b&gt;DBI314 | Microsoft SQL Azure Performance Considerations and Troubleshooting&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 1:30 PM - 2:45 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: B312&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/DBI375-INT#showdetails"&gt;&lt;b&gt;DBI375-INT | Microsoft SQL Azure: Performance and Connectivity Tuning and Troubleshooting&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Peter Gvozdjak&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Sean Kelley&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 3:15 PM - 4:30 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: B302&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/COS308#showdetails"&gt;&lt;b&gt;COS308 | Using Microsoft SQL Azure with On-Premises Data: Migration and Synchronization Strategies and Practices&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Mark Scurrell&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Thursday, May 19 | 8:30 AM - 9:45 AM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: B213&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/DBI306#showdetails"&gt;&lt;b&gt;DBI306 | Using Contained Databases and DACs to Build Applications in Microsoft SQL Server Code-Named "Denali" and SQL Azure&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Adrian Bethune&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Rick Negrin&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Thursday, May 19 | 8:30 AM - 9:45 AM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: B312&lt;/a&gt; &lt;/p&gt;
&lt;h1&gt;&lt;span style="color: #365f91;"&gt;&lt;span style="font-family: Cambria;"&gt;DataMarket &amp;amp; OData Sessions:&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/COS307#showdetails"&gt;&lt;b&gt;COS307 | Building Applications with the Windows Azure DataMarket&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Christian Liensberger&lt;/span&gt;, &lt;span style="text-decoration: underline;"&gt;Roger Mall&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Wednesday, May 18 | 3:15 PM - 4:30 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: B312&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href="http://northamerica.msteched.com/topic/details/DEV325#showdetails"&gt;&lt;b&gt;DEV325 | Best Practices for Building Custom Open Data Protocol (OData) Services with Windows Azure&lt;/b&gt;&lt;/a&gt;&lt;b&gt; &lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Speaker(s): &lt;span style="text-decoration: underline;"&gt;Alex James&lt;/span&gt; &lt;/p&gt;
&lt;p&gt;Thursday, May 19 | 1:00 PM - 2:15 PM | &lt;a href="http://northamerica.msteched.com/p/tena2011/resources/TENA11_Floorplan.pdf"&gt;Room: C211&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;****&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;-Steve&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10164403" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/13/10164403.aspx</link>
      <pubDate>Fri, 13 May 2011 15:10:00 GMT</pubDate>
    </item>
    <item>
      <title>SQL Azure Connection Security</title>
      <description>&lt;p&gt;Selcin Turkarslan
has written an in-depth TechNet wiki article about connection security
considerations when using SQL Azure. The article is primarily concerned with
writing secure connection strings for SQL Azure Database. I&amp;rsquo;d highly recommend
reading it, as it details good procedures and best practices when connecting
with SQL Azure. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://social.technet.microsoft.com/wiki/contents/articles/sql-azure-connection-security.aspx"&gt;Click here to read "SQL Azure
Connection Security"&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you have any
questions about connection security within SQL Azure, please leave a comment.
We&amp;rsquo;d like to be able to help you out if you have any questions.&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10163442" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/11/10163442.aspx</link>
      <pubDate>Wed, 11 May 2011 16:07:00 GMT</pubDate>
    </item>
    <item>
      <title>Video How To: Business Intelligence with Cloud Data</title>
      <description>&lt;p&gt;This walkthrough discusses how businesses can take business intelligence to the cloud with SQL Azure. The video covers the benefits of SQL Azure&amp;mdash;including the ability to establish business intelligence without adding hardware costs or IT overhead&amp;mdash;and it also introduces SQL Azure Reporting. &lt;/p&gt;
&lt;p&gt;The ability to embed SQL Azure reports into on-premises Apps and Windows Azure Web Apps&amp;mdash;and the ability to create and export SQL Azure reports using available report authoring tools is also covered. The demonstration portion of the video shows users how to author a report with Business Intelligence Development Studio (BIDS), display reports, embed a report into a web app, and manage and deliver reports. &lt;/p&gt;
&lt;p&gt;
&lt;object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="640" height="360"&gt;
&lt;param name="source" value="http://www.microsoft.com/showcase/silverlight/player/1/player-en.xap" /&gt;
&lt;param name="enableHtmlAccess" value="true" /&gt;
&lt;param name="background" value="#FF000000" /&gt;
&lt;param name="allowHtmlPopupwindow" value="true" /&gt;
&lt;param name="minRuntimeVersion" value="4.0.50401.0" /&gt;
&lt;param name="autoUpgrade" value="true" /&gt;
&lt;param name="initParams" value="Culture=en-US,Uuid=4b811bbb-3d9b-4a2f-9187-1cb06e175bc3,Autoplay=false,ShowMarketingOverlay=true,MiscControls=FullScreen;Detached,ShowMenu=True,Tabs=Embed;Email;Share;Info,VideoUrl=http://microsoft.com/showcase/en/us/details/4b811bbb-3d9b-4a2f-9187-1cb06e175bc3,Mode=Player" /&gt;
&lt;a href="http://go.microsoft.com/fwlink/?LinkID=149156" style="text-decoration: none;" onmousedown="javascript:new Image().src = 'http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/dcs.gif?dcsdat=' + new Date().getTime() + '&amp;amp;dcssip=www.microsoft.com&amp;amp;dcsuri=' + window.location.href + '&amp;amp;WT.tz=-8&amp;amp;WT.bh=16&amp;amp;WT.ul=en-US&amp;amp;WT.cd=32&amp;amp;WT.jo=Yes&amp;amp;WT.ti=&amp;amp;WT.js=Yes&amp;amp;WT.jv=1.5&amp;amp;WT.fi=Yes&amp;amp;WT.fv=10.0&amp;amp;WT.sli=Not%20Installed&amp;amp;WT.slv=Version%20Unavailable&amp;amp;WT.dl=1&amp;amp;WT.seg_1=Not%20Logged%20In&amp;amp;WT.vt_f_a=2&amp;amp;WT.vt_f=2&amp;amp;WT.vt_nvr1=2&amp;amp;WT.vt_nvr2=2&amp;amp;WT.vt_nvr3=2&amp;amp;WT.vt_nvr4=2&amp;amp;vp_site=Embedded&amp;amp;wtEvtSrc=' + window.location.href + '&amp;amp;vp_sli=Embedded'"&gt;
&lt;img src="http://img.microsoft.com/showcase/Content/img/resx/en-US/installSL.gif" alt="Get Microsoft Silverlight" style="border-style: none;" /&gt;
&lt;/a&gt;
&lt;noscript&gt;&lt;div&gt;&lt;img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcsygm2gb10000kf9xm7kfvub_9p1t/njs.gif?dcsuri=/nojavascript&amp;WT.js=No"/&gt;&lt;/div&gt;&lt;/noscript&gt;
&lt;/object&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src='" + (window.location.protocol) + "//c.microsoft.com/ms.js'" + "'&gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;/p&gt;
&lt;script type="text/javascript"&gt;// &lt;![CDATA[
    document.write("&lt;script type='text/javascript' src='" + (window.location.protocol) + "//c.microsoft.com/ms.js'" + "'&gt;&lt;\/script&gt;");
// ]]&gt;&lt;/script&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;If you would like to view the code&amp;nbsp;that was mentioned in this video, it is available&amp;nbsp;on &lt;a href="http://sqlazure.codeplex.com/releases/view/64328"&gt;Codeplex.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10160629" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/11/10160629.aspx</link>
      <pubDate>Wed, 11 May 2011 16:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Scheduled Maintenance for Bing API and Management Tools on May 9th</title>
      <description>&lt;p&gt;The Bing API and management tools are undergoing scheduled maintenance. This maintenance will have no impact on your current use of the Bing API. Please check back tomorrow to sign up for the API or manage your AppIDs. &lt;/p&gt;
&lt;p&gt;We apologize for any inconvenience this may cause. &lt;/p&gt;
&lt;p&gt;The Bing Team&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9650372" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2011/05/09/scheduled-maintenance-for-bing-api-and-management-tools.aspx</link>
      <pubDate>Mon, 09 May 2011 13:06:00 GMT</pubDate>
    </item>
    <item>
      <title>SQL Azure Diagnostics Tool Available</title>
      <description>&lt;p&gt;Evan Basalik has written a post which details the arrival of CSS SQL Azure Diagnostics (CSAD), developed by the our support team. The tool has been developed to shorten the data collection process when troubleshooting SQL Azure issues. You can point CSAD to your SQL Azure instance, provide the appropriate credentials and will then be presented with some good summary data about your instance.&lt;/p&gt;
&lt;p&gt;You can &lt;a href="http://csssqlazure.blob.core.windows.net/csssqlazuredeploy/publish.htm"&gt;download the CASD tool here.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The full detailed article is on the CSS SQL Server Engineers&amp;rsquo; blog: &lt;a href="http://blogs.msdn.com/b/psssql/archive/2011/04/25/css-sql-azure-diagnostics-tool-released.aspx"&gt;CSS SQL Azure Diagnostics tool released&lt;/a&gt;&amp;ndash; &amp;nbsp;Check it out.&lt;/p&gt;
&lt;p&gt;-Steve&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10160625" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/sqlazure/archive/2011/05/09/10160625.aspx</link>
      <pubDate>Mon, 09 May 2011 08:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Help Make Visual Studio Faster</title>
      <description>&lt;p&gt;One of the most difficult things about our job is trying to decipher why Visual Studio is slow for a customer.&amp;nbsp; Often it starts with a vague complaint (e.g. "Visual Studio is sluggish") which we then have to narrow down to a particular action that's slow, and try and get a profile.&amp;nbsp; Then we have to look through a large profile and figure out which code is running slower than it should be and why.&amp;nbsp; Sometimes the problem is CPU intensive, sometimes it's disk or network, sometimes it's a different program altogether that just happens to be slow.&amp;nbsp; I know the process is just as frustrating for customers, who have to try and figure out just where it is slow and get us a profile.&amp;nbsp; And of course, if VS is just a little bit slow, then it's often much easier to live with it than go through the hassle of trying to help us isolate it.&lt;/p&gt;
&lt;p&gt;That's why I'm pleased to announce that we now have a better approach.&amp;nbsp; &lt;a href="http://blogs.msdn.com/b/visualstudio/archive/2011/05/02/perfwatson.aspx" title="VS Blog - Perf Watson"&gt;Visual Studio Perf Watson&lt;/a&gt;&amp;nbsp;is now available for download and use with VS2010 SP1.&amp;nbsp; If you download and install Perf Watson it does everything for you (and us).&amp;nbsp; Here's how it works:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Perf Watson monitors VS to make sure it is responsive.&lt;/li&gt;
&lt;li&gt;If VS goes unresponsive for more than 2 seconds, Perf Watson grabs a stack frame.&lt;/li&gt;
&lt;li&gt;Perf Watson then times how long it takes for&amp;nbsp;VS to become responsive again.&lt;/li&gt;
&lt;li&gt;Perf Watson then takes the stack information along with the total time of the hang and sends it to Microsoft.&lt;/li&gt;
&lt;li&gt;We take the data and load it into a database.&lt;/li&gt;
&lt;li&gt;We analyze the data to see which call stacks are causing the longest hangs that impact the most customers, and then we log bugs on those.&lt;/li&gt;
&lt;li&gt;Since we have call stacks, the bugs tend to be very actionable.&lt;/li&gt;
&lt;li&gt;Since the data comes from real customers, with hit counts and severity information, we have no trouble prioritizing these performance hangs appropriately - we know exactly what they're costing you.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;We've been using Perf Watson internally for a while now, and we've been able to identify and fix a lot of problems just based on our internal product usage.&amp;nbsp; We've also seen some nice correlation between issues raised by Perf Watson and issues found through other analysis.&amp;nbsp; This correlation helps us know that we're on the right track and gives extra weight to getting these issues resolved.&lt;/p&gt;
&lt;p&gt;But our usage patterns aren't the same as yours.&amp;nbsp; Everyone uses VS a little bit differently.&amp;nbsp; That's why we're excited to put Perf Watson in your hands so that we can get an accurate picture of the performance issues you're running into, with strong metrics and data to back up the work we need to do.&lt;/p&gt;
&lt;p&gt;I hope you'll decide to download and install Perf Watson.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;David Berg&lt;br /&gt;DDPE&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10161686" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2011/05/05/help-make-visual-studio-faster.aspx</link>
      <pubDate>Fri, 06 May 2011 06:45:55 GMT</pubDate>
    </item>
    <item>
      <title>Pull Request Listing, Recent Releases in Followed Projects, and Projects You May Like</title>
      <description>&lt;p&gt;&lt;i&gt;[Do you tweet? Follow us on Twitter&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;a href="http://twitter.com/matthawley"&gt;&lt;i&gt;@matthawley&lt;/i&gt;&lt;/a&gt; and &lt;a href="http://twitter.com/codeplex"&gt;@&lt;i&gt;codeplex&lt;/i&gt;&lt;/a&gt;&lt;i&gt;]&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;We deployed a new version of the CodePlex website yesterday.&lt;/p&gt;
&lt;h3&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3&gt;Pull Request Listing&lt;/h3&gt;
&lt;p&gt;We now provide the ability to view a history of all of the pull requests that have been sent by project members. You can filter those requests by status and/or reviewer.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/4744.clip_5F00_image002_5F00_3DAB495D.jpg"&gt;&lt;img height="431" width="492" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/8867.clip_5F00_image002_5F00_thumb_5F00_3D3F1668.jpg" alt="clip_image002" border="0" title="clip_image002" style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" /&gt;&lt;/a&gt;&lt;/b&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;As you can see, each submitted pull request is listed, along with some metadata, including who submitted it, when it was submitted, its state, and the number of comments made. &lt;/p&gt;
&lt;h3&gt;Recent Releases in Followed Projects&lt;/h3&gt;
&lt;p&gt;If you&amp;rsquo;re following any projects, and you&amp;rsquo;re signed into the site, you&amp;rsquo;ll notice a list of recent releases in all of the projects that you&amp;rsquo;re following on the left most side of the &lt;a href="http://codeplex.com"&gt;CodePlex site home page&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-00-66-61-metablogapi/2514.clip_5F00_image004_5F00_640D2CA8.jpg"&gt;&lt;img height="358" width="337" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/8865.clip_5F00_image004_5F00_thumb_5F00_75E9C075.jpg" alt="clip_image004" border="0" title="clip_image004" style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" /&gt;&lt;/a&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Each item on the list consists of the project name, the most recent release, and the release description.&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;h3&gt;Projects You May Like&lt;/h3&gt;
&lt;p&gt;The &lt;b&gt;Projects Users Are Following&lt;/b&gt; section has been replaced with a generated list of projects that we think you may like based on the projects you&amp;rsquo;re currently following. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/2502.clip_5F00_image006_5F00_1CB7D6B6.jpg"&gt;&lt;img height="363" width="331" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-66-61-metablogapi/3681.clip_5F00_image006_5F00_thumb_5F00_2E946A83.jpg" alt="clip_image006" border="0" title="clip_image006" style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-width: 0px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Each item on the list consists of the project name and description. We also made it easy for you to follow the project should you wish to do so.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The CodePlex team values your feedback. We are frequently monitoring &lt;a href="http://twitter.com/codeplex"&gt;Twitter&lt;/a&gt;, our &lt;a href="http://codeplex.codeplex.com/discussions"&gt;Discussions&lt;/a&gt;, and &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;Issue Tracker&lt;/a&gt;. If you have not visited the Issue Tracker recently, please take a few minutes to suggest or vote on a feature you would like to see implemented. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10161598" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/05/06/pull-request-listing-recent-releases-in-followed-projects-and-projects-you-may-like.aspx</link>
      <pubDate>Thu, 05 May 2011 23:20:00 GMT</pubDate>
    </item>
    <item>
      <title>Announcing Support for OAuth 2.0</title>
      <description>&lt;p&gt;Members of the Windows Live Team as well as other teams from Microsoft are down at the &lt;a href="http://www.internetidentityworkshop.com/"&gt;Internet Identity Workshop&lt;/a&gt; (IIW) this week in Mountain View, California, USA. This is the 12th gathering of some of the thought leaders in the internet identity space and it's where many open web standards have been conceived in the past; Open ID v2, OAuth, Activity Streams as well as many others. Here's how the IIW describe the event:&lt;/p&gt;  &lt;p&gt;&lt;i&gt;The Internet Identity Workshop focuses on “user-centric identity” and trying to solve the technical challenge of how people can manage their own identity across the range of websites, services, companies and organizations that they belong to, purchase from and participate with. We also work on trying to address social and legal issues that arise with these new tools.&amp;#160; This conference we are going to also focus some attention on business models that can make this ecology of web services thrive.&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;Today, the Windows Live team is pleased to announce our support for &lt;a href="http://wiki.oauth.net/w/page/25236487/OAuth-2"&gt;OAuth 2.0&lt;/a&gt; in the next version of our developer platform, &lt;a href="http://dev.live.com"&gt;Messenger Connect&lt;/a&gt;, which allows developers to build sites and applications that use data from the Windows Live network. This development builds on our existing commitment to open web standards shown in the current version through our implementation of &lt;a href="http://activitystrea.ms/"&gt;ActivityStrea.ms&lt;/a&gt;, &lt;a href="http://wiki.oauth.net/w/page/12238537/OAuth-WRAP"&gt;OAuth Wrap&lt;/a&gt;, &lt;a href="http://www.portablecontacts.net"&gt;Portable Contacts&lt;/a&gt;, &amp;amp; &lt;a href="http://www.odata.org/"&gt;OData&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Here's to a great IIW and we are excited to be participating in this community. We'll have more to announce about the new version of platform in the coming months, stay tuned!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=559345" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2011/05/04/announcing-support-for-oauth-2-0.aspx</link>
      <pubDate>Wed, 04 May 2011 16:28:25 GMT</pubDate>
    </item>
    <item>
      <title>.NET Open Source Community – CodePlex / GitHub Comparision</title>
      <description>&lt;p&gt;The .NET segment of the open source ecosystem has been one of the fastest growing over the last few years.&amp;#160; The vast majority of all projects on CodePlex are .NET related, and among .NET developers CodePlex is generally the most well-known open source project hosting site.&amp;#160; The number of new projects started on CodePlex has been ever accelerating as shown in the following chart:&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/1256.image_5F00_2EB2DE97.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/8883.image_5F00_thumb_5F00_11408D8B.png" width="555" height="307" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;CodePlex / GitHub Comparisons&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;GitHub is another open source project hosting site that has been rising in popularity.&amp;#160; Although GitHub is primarily used by developers preferring Mac or Linux, there are also many .NET developers that use it for their projects.&amp;#160; Sometimes we get questions about how the .NET open source developer community compares between CodePlex and GitHub, so below includes some information around that.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Project Counts&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;After CodePlex, GitHub probably has the largest number of .NET projects among the various open source project hosting sites.&amp;#160; The following table shows both the total counts and “Popular Project” counts (projects with at least 5 followers):&lt;/p&gt;  &lt;p align="center"&gt;   &lt;table border="1" cellspacing="0" cellpadding="2" width="550"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="250"&gt;&amp;#160;&lt;/td&gt;          &lt;td valign="top" width="150" align="center"&gt;&lt;strong&gt;CodePlex&lt;/strong&gt;&lt;/td&gt;          &lt;td valign="top" width="150" align="center"&gt;&lt;strong&gt;GitHub (C# projects)&lt;/strong&gt;&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="250"&gt;Total Projects&lt;/td&gt;          &lt;td valign="top" width="150" align="center"&gt;22,030&lt;/td&gt;          &lt;td valign="top" width="150" align="center"&gt;&lt;a href="https://github.com/search?type=Repositories&amp;amp;language=&amp;amp;q=language%3AC%23+fork%3Afalse&amp;amp;repo=&amp;amp;langOverride=&amp;amp;start_value=1&amp;amp;x=0&amp;amp;y=0"&gt;8,908&lt;/a&gt; *&lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="250"&gt;Popular Projects (5+ followers)&lt;/td&gt;          &lt;td valign="top" width="150" align="center"&gt;3,621&lt;/td&gt;          &lt;td valign="top" width="150" align="center"&gt;&lt;a href="https://github.com/search?type=Repositories&amp;amp;language=&amp;amp;q=language%3AC%23+fork%3Afalse+followers%3A%5B5+TO+*%5D&amp;amp;repo=&amp;amp;langOverride=&amp;amp;start_value=1&amp;amp;x=11&amp;amp;y=15"&gt;910&lt;/a&gt;&lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;  &lt;p&gt;Between the two sites there are over thirty thousand projects, although CodePlex has approximately 2.5x as many .NET projects as GitHub.&amp;#160; For popular projects, CodePlex has approximately 4x as many.&amp;#160; We’re not sure whether this is because popular .NET projects are more likely to choose CodePlex, or the community on CodePlex is more likely to make a .NET project popular, but it is probably some combination of both.    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;* GitHub does not require developers to specify a license, and typically less than half of them do.&amp;#160; Without a license specified, a project is not considered true “Open Source” since without specifying a valid open source license, project users do not actually have the legal rights that an open source license provides.&amp;#160; The above table counts the total number, not just the number of C# projects with an open source license specified.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Popular Projects&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I think another interesting statistic is the percentage of total projects that are “Popular” using the same metric of having 5 or more followers.&amp;#160; The following table shows the popular project percentage for CodePlex and GitHub, including for just the subset of GitHub projects that are C# and Objective-C:&lt;/p&gt;  &lt;p align="center"&gt;   &lt;table border="1" cellspacing="0" cellpadding="2" width="500"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="166"&gt;&lt;strong&gt;Site&lt;/strong&gt; &lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;&lt;strong&gt;Languages&lt;/strong&gt; &lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;&lt;strong&gt;% Popular Projects&lt;/strong&gt; &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="166"&gt;CodePlex&lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;&amp;lt;All&amp;gt;&lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;16.4% &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="166"&gt;GitHub&lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;C# &lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;10.2% &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="166"&gt;GitHub&lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;&amp;lt;All&amp;gt;&lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;9.3% &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="166"&gt;GitHub&lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;Objective-C &lt;/td&gt;          &lt;td valign="top" width="166" align="center"&gt;24.9% &lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/p&gt;  &lt;p&gt;The percentage of popular projects on CodePlex is higher than for C# projects on GitHub, but both are higher than the percentage of popular projects across all languages on GitHub. However for Objective-C projects on GitHub, a very high percentage of them are popular. GitHub is very popular among Mac developers, so is presumably the correlation there.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Overall Summary&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I think it is great to see the growth in the .NET open source community, and all indications are it will only continue growing faster.  I believe CodePlex has done a lot to help encourage and support .NET open source developers and look forward to helping many thousand more open source projects become popular and successful!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10158261" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/04/26/net-open-source-community-codeplex-github-comparision.aspx</link>
      <pubDate>Tue, 26 Apr 2011 18:02:31 GMT</pubDate>
    </item>
    <item>
      <title>Enabling Web Deploy for Windows Azure Web Roles with Visual Studio</title>
      <description>&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;Last week the Windows Azure SDK team released the Windows Azure SDK 1.4.1 refresh. This refresh adds support for Web Deploy to the Visual Studio tools for Windows Azure. This is huge. Web Deploy lets developers deploy iterative code changes to a web role in Windows Azure in seconds. If you&amp;rsquo;ve ever had to wait&amp;nbsp;more than&amp;nbsp;five minutes for a code change to be updated so you could test it, this is for you. &lt;span style="font-size: small;"&gt;You can see the feature in action in &lt;a href="http://channel9.msdn.com/Blogs/funkyonex/Speed-Up-Azure-Deployments-with-the-New-Web-Deployment-Feature" title="this"&gt;this&lt;/a&gt; Channel 9 video.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;Web Deploy enables developers to quickly push incremental changes to a web role running in Windows Azure during development and testing. Changes are made directly on the target role without creating and deploying a new package (.cspack). This is a great way to tweak your code and configuration in the cloud before creating the final package that you deploy to your production environment. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;There are a number of constraints regarding the use of Web Deploy:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpFirst"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;Your web role must only have a single running instance.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpFirst"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;The changes that you make with Web Deploy are temporary. When the role instance is restarted, your changes will be gone.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div class="MsoListParagraphCxSpLast"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;Can only be used for development and testing. Not intended for updating applications in production.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;You can download the SDK refresh using the &lt;a href="http://www.microsoft.com/web/downloads/platform.aspx" title="Web Platform Installer"&gt;Web Platform Installer&lt;/a&gt;:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;o:p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-11-34/5428.blog1.png" border="0" /&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;o:p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;The Visual Studio Tools for Windows Azure have built in support for enabling Web Deploy. The tools also automatically create a publish profile so you can make incremental updates using the web application publish wizard. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;When you install the Web Deploy plug-in a new option will appear in the Cloud Tools publish dialog with the title &amp;ldquo;Enable Web Deploy for all Web Roles (requires Remote Desktop)&amp;rdquo;:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-11-34/0435.blog2.png" border="0" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: 'Calibri','sans-serif'; font-size: 11pt; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;In order to enable the feature you must first setup remote desktop. Follow the instructions &lt;/span&gt;&lt;/span&gt;&lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/gg443832.aspx"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;here&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt; to set up remote desktop. Once remote desktop is enabled, you can set the check mark to enable Web Deploy.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: 'Calibri','sans-serif'; font-size: 11pt; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: 'Calibri','sans-serif'; font-size: 11pt; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-size: 11pt; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-11-34/2451.blog3.png" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="line-height: 115%; font-family: 'Calibri','sans-serif'; font-size: 11pt; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;strong&gt;Notice:&lt;/strong&gt; Web Deploy is set up to use a self-signed certificate for SSL encryption by default. You can change the certificate in the IIS Manager on the web role.&lt;/span&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;Now publish your Windows Azure project as usual. That is all you have to do to enable Web Deploy from Visual Studio. Under the covers Visual Studio will include the Web Deploy plug-in and define an input endpoint in the ServiceDefinition. These changes are made as a part of the publish process and do not affect your design time files. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;Once deployment is complete, right click on the Web Application Project and choose &amp;ldquo;Publish&amp;rdquo;:&lt;/span&gt;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-11-34/2158.blog4.png" border="0" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;The Cloud Tools automatically created a publish profile with the right settings for you:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;o:p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-11-34/8284.blog5.png" border="0" /&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;o:p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;Web Deploy uses the same credentials as Remote Desktop. Type your password and click &amp;ldquo;Publish&amp;rdquo;. Web Deploy will now update your Web Role instance in a fraction of the time it normally takes to re-deploy to Windows Azure.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;Happy Web Deploying...&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;Changing Web Deploy port number&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;By default Web Deploy uses the Web Management port number 8172. In most cases this is fine. However, in some IT environments it is not possible to make SSL connections using this port. In such cases you will have to customize Web Deploy to use a different port. The Visual Studio Cloud Tools can be configured to setup the input endpoint for Web Deploy to a custom port number. Ask your IT department if they can recommend a port number. Otherwise you can configure Web Deploy to use port 443 which is the standard SSL port and therefore open in most environments. To manually configure the port number, you have to edit the cloud project file (.ccproj) by hand. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;1) Unload the project:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-11-34/2402.blog6.png" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;2) Edit the project file:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-11-34/6562.blog7.png" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;3) Add this setting to the project properties (replace 'WebRole1' with the name of your web role): &lt;span style="color: blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;WebDeployPorts&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;WebRole1:443&lt;span style="color: blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515;"&gt;WebDeployPorts&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-11-34/3343.blog8.png" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="color: blue;"&gt;&lt;span style="color: #000000;"&gt;You can add multiple Web Roles by separating them with '|' in the project setting: &lt;span style="color: blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515;"&gt;WebDeployPorts&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;WebRole1:443|WebRole2:444&lt;span style="color: blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515;"&gt;WebDeployPorts&lt;/span&gt;&lt;span style="color: blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Consolas; font-size: 9.5pt;"&gt;&lt;span style="color: blue;"&gt;&lt;o:p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p&gt;&lt;o:p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;4) Reload the project and deploy the cloud project to Windows Azure&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: small;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: verdana,geneva;"&gt;Troubleshooting Web Deploy for Windows Azure&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;Here are some of the most common problems with Web Deploy on Windows Azure:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Symptom:&lt;/strong&gt; I get this error message when I try to update my Web Role instance using Web Deploy: &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;"Error : Web deployment task failed. (...) The response header 'MSDeploy.Response' was '' but 'v1' was expected."&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Problem 1:&lt;/strong&gt; In some IT Environments it is not possible to make&amp;nbsp;SSL connections on port 8172, which is the default port for Web Deploy and the Web Management Service.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Solution 1: &lt;/strong&gt;Change the Web Deploy port number. (see above)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Problem 2:&lt;/strong&gt; The Web Deploy service isn&amp;rsquo;t running correctly on the Web Role instance.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Solution 2:&lt;/strong&gt; Log into the Web Role instance with Remote Desktop and make sure that the Web Management Service and Web Deploy Service are both running. Try to restart both services.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Symptom:&lt;/strong&gt; I checked the Web Deploy checkbox when I published my Cloud Project but there is no publish profile in my Web Application project.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Problem:&lt;/strong&gt; In some cases the publish profile gets deleted in Visual Studio 2010 RTM.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Solution:&lt;/strong&gt; This problem is solved in Visual Studio 2010 SP1.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10155445" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2011/04/19/enabling-web-deploy-for-windows-azure-web-roles-with-visual-studio.aspx</link>
      <pubDate>Mon, 18 Apr 2011 23:50:00 GMT</pubDate>
    </item>
    <item>
      <title>OData Service for TFS 2010, try it out on CodePlex</title>
      <description>&lt;p&gt;The Visual Studio team just recently released the beta of the &lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=d6f8968c-f27f-43fb-88ae-8805db257a67&amp;amp;displaylang=en"&gt;OData Service for Team Foundation Server 2010&lt;/a&gt;.&amp;nbsp; Check out the announcement &lt;a href="http://blogs.msdn.com/b/briankel/archive/2011/04/07/odata-service-for-team-foundation-server-2010.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;To help get customer feedback, they made the service available to all CodePlex TFS users here: &lt;a href="https://codeplexodata.cloudapp.net/"&gt;https://codeplexodata.cloudapp.net/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So go ahead and give it a try.&amp;nbsp; Any questions or feedback about the service can be sent to &lt;a href="mailto:TFSOData@Microsoft.com"&gt;TFSOData@Microsoft.com&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=10152274" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/04/11/odata-service-for-tfs-2010-try-it-out-on-codeplex.aspx</link>
      <pubDate>Mon, 11 Apr 2011 22:39:00 GMT</pubDate>
    </item>
    <item>
      <title>Pull Request Diff Notes, Adding Changesets, and a Vertical Splitter</title>
      <description>&lt;p&gt;&lt;i&gt;[Do you tweet? Follow us on Twitter&lt;/i&gt;&lt;i&gt; &lt;/i&gt;&lt;a href="http://twitter.com/matthawley"&gt;&lt;i&gt;@matthawley&lt;/i&gt;&lt;/a&gt; and &lt;a href="http://twitter.com/codeplex"&gt;@&lt;i&gt;codeplex&lt;/i&gt;&lt;/a&gt;&lt;i&gt;]&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;We deployed a new version of the CodePlex website yesterday.&lt;/p&gt;
&lt;h4&gt;Pull Request Diff Notes&lt;/h4&gt;
&lt;p&gt;In a continuation of the pull request conversations feature that we added in our March release, we&amp;rsquo;ve added the ability to add notes to files that are submitted as part of a pull request. As a signed in user, you can click on individual file lines within a pull request diff view and enter a note for others to see.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/7776.image_5F00_5003E8FB.png"&gt;&lt;img height="307" width="557" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/3632.image_5F00_thumb_5F00_2BAEDEAC.png" alt="image" border="0" title="image" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The notes that you and other contributors enter are integrated into the pull request comments view. Clicking on the linked file name will bring up the inline diff view and jump to the line that the note is associated with.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/4721.image_5F00_3261E82F.png"&gt;&lt;img height="192" width="218" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/1172.image_5F00_thumb_5F00_592FFE6F.png" alt="image" border="0" title="image" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4&gt;Updating Pull Requests&lt;/h4&gt;
&lt;p&gt;One of our most common requests has been for us to provide the ability to update a pull request with change sets that have been added since the pull request was sent. This is now attainable by way of the &amp;lsquo;Add Change Sets&amp;rsquo; link on the pull request page.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/0508.image_5F00_6B0C923C.png"&gt;&lt;img height="301" width="568" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/2063.image_5F00_thumb_5F00_43D24907.png" alt="image" border="0" title="image" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;Vertical Splitter&lt;/h4&gt;
&lt;p&gt;The inline diff and source control browser views have been updated with an adjustable vertical splitter that allows you to expand/shrink the file/diff view to your liking.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/1581.image_5F00_1C97FFD2.png"&gt;&lt;img height="219" width="564" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/0027.image_5F00_thumb_5F00_5C61E657.png" alt="image" border="0" title="image" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px; padding-top: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can see these enhancements live by viewing the associated &lt;a href="http://wikiplex.codeplex.com/SourceControl/network/Forks/csano/blogtest/contribution/1093"&gt;pull request&lt;/a&gt; on&lt;a href="http://wikiplex.codeplex.com/"&gt;WikiPlex&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The CodePlex team values your feedback. We are frequently monitoring &lt;a href="http://twitter.com/codeplex"&gt;Twitter&lt;/a&gt;, our &lt;a href="http://codeplex.codeplex.com/discussions"&gt;Discussions&lt;/a&gt;, and &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;Issue Tracker&lt;/a&gt;. If you have not visited the Issue Tracker recently, please take a few minutes to suggest or vote on a feature you would like to see implemented.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10151506" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/04/08/pull-request-diff-notes-adding-changesets-and-a-vertical-splitter.aspx</link>
      <pubDate>Fri, 08 Apr 2011 18:40:00 GMT</pubDate>
    </item>
    <item>
      <title>Pull Request Conversations, Inline Diff Enhancements</title>
      <description>&lt;p&gt;&lt;i&gt;[Do you tweet? Follow us on Twitter &lt;/i&gt;&lt;a href="http://twitter.com/matthawley"&gt;&lt;i&gt;@matthawley&lt;/i&gt;&lt;/a&gt;&lt;i&gt; &lt;/i&gt;&lt;i&gt;and &lt;/i&gt;&lt;a&gt;&lt;/a&gt;&lt;a href="http://twitter.com/adacole_msft"&gt;&lt;i&gt;@adacole_msft&lt;/i&gt;&lt;/a&gt;&lt;i&gt;]&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;We deployed a new version of the CodePlex website today.&lt;/p&gt;  &lt;h4&gt;Pull Request Conversations&lt;/h4&gt;  &lt;p&gt;Previously, the only way for project members and users who submitted pull requests to converse was via e-mail. This complicated the review process and made conversations isolated and difficult to track. For this release, we’ve added functionality that enables you to have those same conversations within the pull request page.&lt;/p&gt;  &lt;p&gt;When you view a pull request, you’ll now see “Comments” and “Changes” tabs, with current comments displayed.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/2068.image_5F00_0E8C7218.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/7268.image_5F00_thumb_5F00_73DFD5FE.png" width="596" height="373" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;Inline Diff Enhancements&lt;/h4&gt;  &lt;p&gt;We tweaked the inline diff experience to make it easier to traverse diff blocks. When you open up the inline diff experience, you’ll now see up and down arrows.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/7356.image_5F00_5A0B9FCF.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/2477.image_5F00_thumb_5F00_585AD3FB.png" width="590" height="288" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;To move between the diff blocks, you can use those arrows or utilize the available keyboard shortcuts.&lt;/p&gt;  &lt;p&gt;Lastly, we have also brought the inline diff experience to the source control changes page for project and fork changesets. &lt;/p&gt;  &lt;p&gt;You can see both enhancements live by viewing the associated &lt;a href="http://wikiplex.codeplex.com/SourceControl/network/Forks/squeak/Demo/contribution/959"&gt;pull request&lt;/a&gt; or &lt;a href="http://wikiplex.codeplex.com/SourceControl/network/Forks/squeak/Demo/changeset/changes/37010f64bb3b#WikiPlex%2fParsing%2fParser.cs"&gt;changeset changes&lt;/a&gt; on &lt;a href="http://wikiplex.codeplex.com"&gt;WikiPlex&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;The CodePlex team values your feedback. We are frequently monitoring &lt;a href="http://twitter.com/codeplex"&gt;Twitter&lt;/a&gt;, our &lt;a href="http://codeplex.codeplex.com/discussions"&gt;Discussions&lt;/a&gt;, and &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;Issue Tracker&lt;/a&gt;. If you have not visited the Issue Tracker recently, please take a few minutes to suggest or vote on a feature you would like to see implemented.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10139544" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/03/10/pull-request-conversations-inline-diff-enhancements.aspx</link>
      <pubDate>Thu, 10 Mar 2011 22:56:39 GMT</pubDate>
    </item>
    <item>
      <title>Performance Troubleshooting Article and VS2010 SP1 Change</title>
      <description>&lt;p&gt;Jason Zander just posted an article on &lt;a href="http://blogs.msdn.com/b/jasonz/archive/2011/03/03/performance-troubleshooting-article-and-vs2010-sp1-change.aspx"&gt;Performance Troubleshooting Article and VS2010 SP1 Change&lt;/a&gt;, where he talks about some changes we made in SP1 and links to an article on &lt;a href="http://msdn.microsoft.com/en-us/vstudio/ff716700"&gt;Visual Studio (Performance) Troubleshooting&lt;/a&gt;.&amp;nbsp; Check it out and let us know if it helps, and what other type of information would be useful.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10135762" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2011/03/01/visual-studio-troubleshooting.aspx</link>
      <pubDate>Wed, 02 Mar 2011 00:48:00 GMT</pubDate>
    </item>
    <item>
      <title>Deprecating the Application Contacts feature of Messenger Connect</title>
      <description>&lt;p&gt;In 2009, we introduced &lt;a href="http://msdn.microsoft.com/en-us/library/ff752572.aspx"&gt;the application contacts feature&lt;/a&gt;, which makes it possible for web sites to offer the ability to IM based on site-defined user relationships.&amp;#160; Messenger users can&amp;#160; chat with other Messenger users based on the relationships they have on web sites without becoming Messenger friends and sharing email addresses.&amp;#160; Based on low usage of this feature, we have decided to remove support for application contacts in the Messenger Web Toolkit in six months.&amp;#160; Core IM functionality will continue to be supported after this date.&lt;/p&gt;  &lt;p&gt;We appreciate the feedback that users and developers provide on Messenger Connect.&amp;#160; Please keep your questions and suggestions coming!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=554871" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2011/02/11/deprecating-the-application-contacts-feature-of-messenger-connect.aspx</link>
      <pubDate>Fri, 11 Feb 2011 12:12:47 GMT</pubDate>
    </item>
    <item>
      <title>Pull Request Changes, Multi-Selection in Advanced View, and Advertisement Changes</title>
      <description>&lt;p&gt;&lt;i&gt;[Do you tweet? Follow us on Twitter &lt;/i&gt;&lt;a href="http://twitter.com/matthawley"&gt;&lt;i&gt;@matthawley&lt;/i&gt;&lt;/a&gt;&lt;i&gt; and &lt;/i&gt;&lt;a href="http://twitter.com/adacole_msft"&gt;&lt;i&gt;@adacole_msft&lt;/i&gt;&lt;/a&gt;&lt;i&gt;]&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;We deployed a new version of the CodePlex website today.&lt;/p&gt;  &lt;h4&gt;Pull Request Changes&lt;/h4&gt;  &lt;p&gt;In this release, we have begun to re-focus on Pull Requests to ensure a productive experience between the project users and developers. We feel we made significant progress in this area for this release and look forward to using your feedback to drive future iterations.&lt;/p&gt;  &lt;p&gt;One of the biggest hurdles people have indicated is the inability to see what a pull request includes without pulling the source down from a Mercurial client. With today’s changes, any user has the ability to view a pull request, the changesets / changes included, and perform an inline diff of the file.&lt;/p&gt;  &lt;p&gt;When a pull request is made, the CodePlex website will query for all outgoing changes from the fork to the main repository for a point-in-time comparison. Because of this point-in-time comparison…&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;All existing pull requests created prior to this release will &lt;b&gt;not&lt;/b&gt; have changesets associated with them. &lt;/li&gt;    &lt;li&gt;If new commits are pushed to the fork while a pull request is active, they will &lt;b&gt;not&lt;/b&gt; appear associated with the pull request. The pull request will need to be re-submitted for them to appear. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Once a pull request is created, you can “View the Pull Request” which takes you to a page that looks like&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/7142.image_5F00_72A88B29.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/2043.image_5F00_thumb_5F00_22EF5FE0.png" width="580" height="155" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;As you may notice, we now display a lot more detailed information regarding that pull request including who it was requested by and when, the associated changesets, the description, who it’s assigned to (we’ll come back to this) and the listing of summarized file changes. What you’ll also notice, is that each modified file has the ability to view a diff of all changes made. When you click “(view diff)” for a file, an inline diff experience appears.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/2330.image_5F00_305572E6.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/4118.image_5F00_thumb_5F00_28CA0379.png" width="574" height="304" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This new experience allows you to quickly navigate through all of the modified files as well as viewing the various change blocks for each file. You’ll also notice as you browse through each file’s changes, we update the URL to include the file path so you can quickly send a direct link to a pull request’s file. Clicking “(close diff)” will bring you back to the original pull request view. View this &lt;a href="http://wikiplex.codeplex.com/SourceControl/network/Forks/squeak/Demo/contribution/959"&gt;pull request&lt;/a&gt; live on &lt;a href="http://wikiplex.codeplex.com/"&gt;WikiPlex&lt;/a&gt;.&lt;/p&gt;  &lt;h4&gt;Pull Request Review Assignment&lt;/h4&gt;  &lt;p&gt;Another new feature we added for pull requests is the ability for project members to assign pull requests for review. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/7144.image_5F00_27F19D8F.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/2450.image_5F00_thumb_5F00_799817E1.png" width="367" height="240" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Any project member has the ability to assign (and re-assign if needed) a pull request to a project member. Once the assignment has been made, that project member will be notified via email of the assignment. Once they complete the review of the pull request, they can either accept or deny it similarly to the previous process.&lt;/p&gt;  &lt;h4&gt;Multi-Selection in Advanced View Filters&lt;/h4&gt;  &lt;p&gt;One of the more recent requests we have heard from users is the ability multi-select advanced view filters for work items. We are happy to announce this is now possible. Simply control-click the multiple options for each filter item and your work item query will be refined as such.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/5670.image_5F00_66E31E2A.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-66-61-metablogapi/5076.image_5F00_thumb_5F00_3889987D.png" width="587" height="115" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Should you happen to unselect all options for a given filter, it will automatically reset to the default option for that filter. Furthermore, the “Direct Link” URL will be updated to include the multi-selected options for each filter.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; The “Direct Link” feature was released in our previous deployment, just never written about. It allows you to capture the current state of your query and send it to other individuals.&lt;/p&gt;  &lt;h4&gt;Advertisement Changes&lt;/h4&gt;  &lt;p&gt;Very recently, the advertiser (The Lounge) we partnered to provide advertising revenue for projects, or donated to charity, was acquired by &lt;a href="http://www.lakequincy.com"&gt;Lake Quincy Media&lt;/a&gt;. There has been no change in the advertising platform offering, and all projects have been converted over to using the new infrastructure. Project owners should note the new &lt;a href="http://codeplex.codeplex.com/wikipage?title=Start%20a%20Project#Ads"&gt;contact information&lt;/a&gt; for getting paid.&lt;/p&gt;  &lt;p&gt;The CodePlex team values your feedback, and is frequently monitoring &lt;a href="http://twitter.com/codeplex"&gt;Twitter&lt;/a&gt;, our &lt;a href="http://codeplex.codeplex.com/discussions"&gt;Discussions&lt;/a&gt; and &lt;a href="http://codeplex.codeplex.com/workitem/list/basic"&gt;Issue Tracker&lt;/a&gt; for new features or problems. If you’ve not visited the Issue Tracker recently, please take a few moments to log an idea or vote for the features you would most like to see implemented on CodePlex.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10127768" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/codeplex/archive/2011/02/11/pull-request-changes-multi-selection-in-advanced-view-and-advertisement-changes.aspx</link>
      <pubDate>Fri, 11 Feb 2011 00:15:00 GMT</pubDate>
    </item>
    <item>
      <title>Bing.com/siteowner being shut down on April 4th, 2011</title>
      <description>&lt;p&gt;Gang, we've got a quick note here to alert users to an item we'll be shutting down in 60 days. &lt;/p&gt;
&lt;p&gt;As of April 4th, 2011 we will discontinue support for the &lt;a target="_blank" href="http://www.bing.com/siteowner"&gt;bing.com/siteowner&lt;/a&gt; functionality. If you continue to leverage the feature after this date (April 4th, 2011), users who attempt to query in the search box will be redirected to a 404 page. This means that you will need to move to the &lt;a target="_blank" href="http://www.bing.com/toolbox/developers/?FORM=L8SP70"&gt;Bing API&lt;/a&gt; in order to continue to receive web or site search results from us. We have decided to take this step for two reasons. &lt;/p&gt;
&lt;p&gt;First, the tool has not been getting a lot of use and while we have some very loyal customers on it, we believe we can provide you better alternatives in the future as we free up resources. &lt;/p&gt;
&lt;p&gt;Second, the functionality available through bing.com/siteowner can be replicated with the Bing search API and so it feels a bit redundant. &lt;/p&gt;
&lt;p&gt;As has become customary, we will give you a window to migrate off and ask us any questions you may have about this change. We will also provide reminders as we get closer to April 4th. Thank you so much for your support. &lt;/p&gt;
&lt;p&gt;The Bing Developer Team&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9644450" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2011/02/04/bing-com-siteowner-being-shut-down-on-april-4th-2011.aspx</link>
      <pubDate>Fri, 04 Feb 2011 19:06:04 GMT</pubDate>
    </item>
    <item>
      <title>Check Out the Gigya White Paper on Integrating with Messenger Connect</title>
      <description>&lt;p&gt;Earlier this year we announced &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/28/messenger-connect-is-now-available.aspx"&gt;the general availability of Messenger Connect&lt;/a&gt; which enables users of Windows Live services to &lt;a href="http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/25/messenger-connect-making-your-data-more-portable-while-retaining-control-over-its-use.aspx"&gt;opt in&lt;/a&gt; to provide access to their identity, contacts, social updates and more with websites and apps. One of the key partners that has adopted Messenger Connect is &lt;a href="http://www.gigya.com/"&gt;Gigya&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Gigya provides social optimization for online businesses by unifying the top social APIs and protocols, including Facebook for Websites, Sign in With Twitter, Y!OS, LinkedIn, Windows Live, MySpace and others. Websites get the ability to offer sign-in to their sites as well as the ability to have their customers share content to their friends on these networks. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2287.clip_5F00_image001_5F00_46035382.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6835.clip_5F00_image001_5F00_thumb_5F00_7A377CC8.jpg" width="644" height="118" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The team at Gigya recently &lt;a href="http://info.gigya.com/WMC.html"&gt;published a white paper&lt;/a&gt; which shows their customers how to leverage Messenger Connect on their platform. The white paper goes into the options websites have for leveraging the activity streams that flow throughout Windows Live to reach our audience of hundreds of millions of users. Gigya’s customers can now easily reach: &lt;/p&gt;  &lt;p&gt;· over 298 million Messenger customers worldwide&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3225.clip_5F00_image002_5F00_2BC2EA5E.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6712.clip_5F00_image002_5F00_thumb_5F00_437A21C4.jpg" width="432" height="487" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;· 359 million people that use Hotmail&lt;/p&gt;  &lt;p&gt;&lt;a href="file:///C:\Users\dareo\AppData\Local\Temp\WindowsLiveWriter1286139640\supfiles21D6FD\image%5b3%5d.png"&gt;&lt;b&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2538.clip_5F00_image003_5F00_1B6772A5.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image003" border="0" alt="clip_image003" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3542.clip_5F00_image003_5F00_thumb_5F00_20D5E349.png" width="530" height="389" /&gt;&lt;/a&gt;&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;·&amp;#160; millions of users of the iPhone client &lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5127.clip_5F00_image004_5F00_786B652F.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5148.clip_5F00_image004_5F00_thumb_5F00_1BB859D5.jpg" width="324" height="464" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;· users of “People Hub” of the new Windows Phone 7&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/4034.image_5F00_4D12C51D.png"&gt;&lt;b&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image005" border="0" alt="clip_image005" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6406.clip_5F00_image005_5F00_1ADFF3EB.png" width="534" height="260" /&gt;&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If you are a Gigya customer you should &lt;a href="http://info.gigya.com/WMC.html"&gt;check out the white paper&lt;/a&gt; and if not you should probably give them a try if kicking up traffic to your website user the power of social distribution sounds interesting. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=553471" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/12/07/check-out-the-gigya-white-paper-on-integrating-with-messenger-connect.aspx</link>
      <pubDate>Tue, 07 Dec 2010 17:10:42 GMT</pubDate>
    </item>
    <item>
      <title>Announce the November 2010 Release of the Windows Azure Tools + SDK</title>
      <description>&lt;p style="margin-bottom: 2.25pt; background: white; margin-left: 0in; margin-right: 0in;"&gt;&lt;span&gt;Today, coinciding with the general availability of the new &lt;/span&gt;&lt;span&gt;&lt;a target="_blank" href="http://windows.azure.com"&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: #0066dd; font-size: 9pt;"&gt;Windows Azure Management Portal&lt;/span&gt;&lt;/a&gt;, &lt;/span&gt;&lt;span lang="EN" style="font-family: 'Segoe UI','sans-serif'; color: #333333; font-size: 9pt;"&gt;we have released version 1.3 of the &lt;/span&gt;&lt;span style="color: black;"&gt;&lt;a target="_blank" href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=7a1089b6-4050-4307-86c4-9dadaa5ed018&amp;amp;displaylang=en"&gt;&lt;span lang="EN" style="font-family: 'Segoe UI','sans-serif'; color: #0066dd; font-size: 9pt;"&gt;Windows Azure Tools and SDK&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang="EN" style="font-family: 'Segoe UI','sans-serif'; color: #333333; font-size: 9pt;"&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p style="line-height: 10.5pt; background: white;"&gt;&lt;span lang="EN" style="font-family: 'Segoe UI','sans-serif'; color: #333333; font-size: 9pt;"&gt;The Windows Azure Tools for Microsoft Visual Studio extends&lt;/span&gt;&lt;span lang="EN" style="font-family: 'Segoe UI','sans-serif'; color: #333333; font-size: 9pt;"&gt; Visual Studio 2010 to enable the creation, configuration, building, debugging, running, packaging and deployment of scalable web applications and services on Windows Azure.&lt;/span&gt;&lt;span style="font-family: 'Tahoma','sans-serif'; color: black; font-size: 10pt;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="line-height: 10.5pt; background: white;"&gt;&lt;span style="font-family: 'Tahoma','sans-serif'; color: black; font-size: 10pt;"&gt;&lt;/span&gt;&lt;span lang="EN" style="font-family: 'Segoe UI','sans-serif'; color: #333333; font-size: 9pt;"&gt;&lt;/span&gt;&amp;nbsp;&lt;span lang="EN" style="font-family: 'Segoe UI','sans-serif'; color: #333333; font-size: 9pt;"&gt;New in&amp;nbsp;&lt;/span&gt;&lt;span lang="EN" style="font-family: 'Segoe UI','sans-serif'; color: #333333; font-size: 9pt;"&gt;this release:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;IIS Support:&lt;/strong&gt;&lt;span&gt; Full IIS is supported for building and deploying web roles, both in the development environment and in Windows Azure.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div style="line-height: 10.5pt; background: white;"&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;&lt;/span&gt;&lt;span style="color: black; font-size: 7pt;"&gt;&amp;nbsp;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;Remote Desktop:&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt; Support to enable and configure Remote Desktop connections for all your roles in the Windows Azure project;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div style="line-height: 10.5pt; background: white;"&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;Virtual Machine (VM) Role&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;: Allow you to add a VM role to your Windows Azure project, select the VHD for your VM role, configure and deploy the VM role;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div style="line-height: 10.5pt; background: white;"&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;Virtual Network&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;:&amp;nbsp; Support to activate Windows Azure Connect for your roles, to provide connection between Azure and on-premise resources;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div style="line-height: 10.5pt; background: white;"&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;Diagnostics&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;: Updated support for diagnostics to use the new plug-In;&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div style="line-height: 10.5pt; background: white;"&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;EndPoints Support Enhancements&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Segoe UI','sans-serif'; color: black; font-size: 9pt;"&gt;: Refreshed support for Endpoints according to platform update.&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="text-align: left;"&gt;&lt;span style="font-family: 'Tahoma','sans-serif'; color: black; font-size: 10pt;"&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10095617" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/11/23/announce-the-november-2010-release-of-the-windows-azure-tools-sdk.aspx</link>
      <pubDate>Tue, 23 Nov 2010 20:31:00 GMT</pubDate>
    </item>
    <item>
      <title>Introducing the Messenger Connect Chat Control</title>
      <description>&lt;p&gt;A few weeks ago we announced that Messenger Connect was out of beta and available worldwide. I wanted to take this opportunity to share some details about one of the features I worked on: the Messenger Connect Chat Control. This control allows people on your site to chat in real time. Any user can view the chat session. To participate, a user simply needs to sign-in with a Windows Live ID, that is, with a Hotmail or Messenger account.&lt;/p&gt;  &lt;p&gt;The Chat Control currently comes in two color themes: light and dark. Here are a couple of snapshots.&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="0" width="745"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="334"&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1055.image_5F00_543D0329.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1464.image_5F00_thumb_5F00_5E8E2789.png" width="314" height="412" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="409"&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1563.image_5F00_7DD0CE5C.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5611.image_5F00_thumb_5F00_0417A4EB.png" width="305" height="406" /&gt;&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;    &lt;h2&gt;How does the Chat Control add value to your site?&lt;/h2&gt;  &lt;p&gt;The Chat Control adds value to your site in a number of ways. Here are just a few.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Users will spend more time on your site&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Your users will be more engaged with your site’s content, because they’ll be able to talk about it with others in real-time.&lt;/li&gt;    &lt;li&gt;It’s great for real-time events but it is also a cool commenting tool. When you have live content, such as a video stream of an event, adding nearby real-time chat capabilities is nice because your users can talk about what they see as it is happening. Because the Chat Control preserves the chat history for a while, adding it next to an article or some other static content makes it a great commenting gadget that has the added value of updates in real time.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;You’ll acquire new users through the social networks of your existing users&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Sharing and inviting is easy with the Chat Control. Users can invite their friends to participate in the chat, and can post to their news feed so that their friends see it. This means that you’ll acquire more new users through the social networks of your existing users.&lt;/li&gt;    &lt;li&gt;As users invite their friends, they can have private conversations in the Chat Control without having to leave your site.&lt;/li&gt;    &lt;li&gt;If a user has connected a Windows Live account to Facebook, that user can easily invite Facebook friends into the chat and write on the wall.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;It requires no resources from your site and yet it is scalable and easy to add&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The Chat Control comes with the scale and reliability of the Messenger service. The Chat Control can handle many users, right out of the box – you don’t need to invest in additional hardware or bandwidth, and don’t need to write any server code.&lt;/li&gt;    &lt;li&gt;You can easily add the Chat Control to your site. Just register for an application ID, add a few lines of code to your HTML, and you’re done.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;You’re in control&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;You can moderate the content of the chat. You can delete messages and can block users from posting to any chat in your site.&lt;/li&gt;    &lt;li&gt;You can create more than one chat in the same page, around different topics.&lt;/li&gt;    &lt;li&gt;You can have a conversation on the same topic appear on more than one page in your site.&lt;/li&gt;    &lt;li&gt;The Chat Control loads asynchronously and runs in an IFRAME. This means it will have minimal effect on your page’s load time and resources.&lt;/li&gt; &lt;/ul&gt;  &lt;h2&gt;Look and Feel&lt;/h2&gt;  &lt;p&gt;A user who browses a site with the Chat Control sees a live steam of messages.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6710.image_5F00_0A5E7B79.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/8780.image_5F00_thumb_5F00_10A55207.png" width="313" height="410" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The user is requested to sign in with a Windows Live ID in order to participate.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7723.image_5F00_16EC2895.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/0714.image_5F00_thumb_5F00_415859B2.png" width="313" height="413" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Once signed in, the user can post messages. Messages posted by the user’s friends are highlighted in light blue.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1803.image_5F00_2EA35FFB.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5050.image_5F00_thumb_5F00_1FF8B416.png" width="360" height="413" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;When the user applies the Friends filter—as indicated by the yellow arrow—the user sees only messages made by the user’s friends.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5140.image_5F00_263F8AA4.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1106.image_5F00_thumb_5F00_1794DEBF.png" width="360" height="412" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If the rate of message posting becomes high, the Messenger service arranges people into virtual subgroups so that they are not overwhelmed with messages. When this happens, the user is still guaranteed to see all messages made by friends.&lt;/p&gt;  &lt;h2&gt;Invite and share experience&lt;/h2&gt;  &lt;p&gt;As shown above in the sign-in screen, the user can select a check box to indicate the desire to share a link with friends. If the user selects that check box, information about the page will be posted to the user’s feed in Windows Live. If the user has connected a Windows Live account to a Facebook account, the information will also be posted to the user’s wall on Facebook.&lt;/p&gt;  &lt;p&gt;In addition, the user can choose to invite friends to participate in the chat. Clicking on the &lt;b&gt;Friends&lt;/b&gt; tab shows friends who are currently online.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5086.image_5F00_4BC90805.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2287.image_5F00_thumb_5F00_443D9898.png" width="315" height="413" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Choosing a friend in the list and then clicking &lt;b&gt;Invite&lt;/b&gt; starts a private IM conversation with the user’s friend.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2625.image_5F00_6A9F7BE3.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/0564.image_5F00_thumb_5F00_11015F2F.png" width="313" height="412" /&gt;&lt;/a&gt;&lt;/p&gt;   The friend who is being invited will see the conversation anywhere that friend is signed into Messenger.  &lt;h2&gt;Administrative capabilities&lt;/h2&gt;  &lt;p&gt;The Chat Control wouldn’t be complete without some administrative capabilities. The owner of the application ID—that is, the user whose Live ID was used to register for the application ID—has additional rights. Once you sign in to the Chat Control with the Live ID of the application owner, you will have the addition functionality of blocking users and deleting any messages.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1663.image_5F00_74846D4E.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3644.image_5F00_thumb_5F00_7ACB43DC.png" width="312" height="411" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Once a user is blocked by the owner of the application, that user will not be able to publish content to any chat on the site.&lt;/p&gt;  &lt;p&gt;And obviously, users can also delete their own messages.&lt;/p&gt;  &lt;h2&gt;Adding the Chat Control to your site&lt;/h2&gt;  &lt;p&gt;Let’s get down to the details of what it takes to add the Chat Control to your page. Here is an example of a minimal page that has only the Chat Control in it.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/0028.image_5F00_5324C7B2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3000.image_5F00_thumb_5F00_406FCDFB.png" width="569" height="290" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Interesting lines to note here:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Line 4—Declaring the &lt;font face="Courier New"&gt;wl&lt;/font&gt; XML namespace. This namespace is used to add Windows Live Messenger Connect custom tags. The Chat Control is one of those tags.&lt;/li&gt;    &lt;li&gt;Line 7—Getting the Messenger Connect loader. This is a client-side loader that loads Windows Live scripts asynchronously without blocking the page load time. &lt;/li&gt;    &lt;li&gt;Line 10—Adding the Chat Control custom tag:&lt;/li&gt;    &lt;/ul&gt;&lt;ul&gt;     &lt;p&gt;o Line 11—Your application ID.&lt;/p&gt;      &lt;p&gt;o Line 15—Here you give a name for the topic of conversation. When you place more than one Chat Control with the same &lt;b&gt;event-name&lt;/b&gt; attribute in your site, they all render the same conversation.&lt;/p&gt;   &lt;/ul&gt;   &lt;p&gt;This page can be a static HTML page. No server code is needed. When the Messenger Connect loader is loaded by the browser, it runs client-side code that scans the page looking for HTML tags prefixed with &lt;font face="Courier New"&gt;wl&lt;/font&gt;. After that, some client-side code runs and adds HTML elements to those tags, and then the Chat Control is rendered.&lt;/p&gt;  &lt;p&gt;You may register for an application ID by going to &lt;a href="http://manage.dev.live.com"&gt;http://manage.dev.live.com&lt;/a&gt;.&lt;/p&gt;  &lt;h2&gt;What’s next?&lt;/h2&gt;  &lt;ul&gt;   &lt;p&gt;· To learn more about the Messenger Connect Chat Control, go to the &lt;a href="http://msdn.microsoft.com/library/ff750122"&gt;Chat Control reference&lt;/a&gt; of our &lt;a href="http://msdn.microsoft.com/en-us/library/ff749458.aspx"&gt;Messenger Connect documentation&lt;/a&gt;.&lt;/p&gt;    &lt;p&gt;· To learn about other features of Messenger Connect, visit the &lt;a href="http://msdn.microsoft.com/en-us/windowslive/default.aspx"&gt;Windows Live Developer Center&lt;/a&gt;.&lt;/p&gt; &lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=552030" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/11/03/introducing-the-messenger-connect-chat-control.aspx</link>
      <pubDate>Wed, 03 Nov 2010 22:32:46 GMT</pubDate>
    </item>
    <item>
      <title>Creating Desktop Applications with Messenger Connect</title>
      <description>&lt;p&gt;Recently, we released version 4.1 of &lt;a href="http://msdn.microsoft.com/en-us/library/ff749458.aspx"&gt;Windows Live Messenger Connect&lt;/a&gt;. This version brings Messenger Connect out of beta and makes it available to everyone. Angus Logan describes many of the changes we've made in&lt;a href="http://windowsteamblog.com/windows_live/b/developer/archive/2010/10/12/what-is-new-in-the-latest-messenger-connect-release.aspx"&gt; his recent blog post&lt;/a&gt;. I also highly recommend you check out our new &lt;a href="http://msdn.microsoft.com/en-us/library/gg251990.aspx"&gt;developer guide&lt;/a&gt;, which outlines how you can start building applications that integrate with Windows Live.&lt;/p&gt;  &lt;p&gt;A common question that we've been asked has been on building desktop applications with Messenger Connect. While it's true that most of the Messenger Connect documentation focuses on web-based applications, you can still build applications for the desktop using Messenger Connect. All you need is the Messenger Connect Desktop Starter Kit, &lt;a href="http://code.msdn.microsoft.com/messengerconnect"&gt;now available for download&lt;/a&gt; from the MSDN Code Gallery. (Look for the file named &lt;b&gt;Desktop_Sample_App.zip&lt;/b&gt; under the &lt;a href="http://code.msdn.microsoft.com/messengerconnect/Release/ProjectReleases.aspx?ReleaseId=5065"&gt;v4.1 samples release&lt;/a&gt;.)&lt;/p&gt;  &lt;p&gt;Before you begin using the starter kit, you need to register your application at &lt;a href="http://manage.dev.live.com/"&gt;http://manage.dev.live.com&lt;/a&gt;. Registration takes just a couple of minutes; you can find more detailed steps on the registration process in the &lt;a href="http://msdn.microsoft.com/en-us/library/ff751474.aspx"&gt;Messenger Connect documentation&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;When you open the starter kit, you'll find a couple of different sample projects. The best one to start with is the AuthTest project. This project provides a basic introduction into how to use the Messenger Connect authentication and consent process. For this project to compile and run correctly, open the SigninTester.cs file in the AuthTest Project. Then, locate the line:&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: consolas; color: #2b91af; font-size: 9.5pt"&gt;AppInformation&lt;/span&gt;&lt;span style="line-height: 115%; font-family: consolas; font-size: 9.5pt"&gt; appInfo = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;AppInformation&lt;/span&gt;(&lt;span style="color: #a31515"&gt;&amp;quot;00000000YourClientID&amp;quot;&lt;/span&gt;, &lt;span style="color: #a31515"&gt;&amp;quot;YourSecretKey&amp;quot;&lt;/span&gt;, requestedScopes);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;Change the values in line to contain the client ID and secret key you received when you registered your application.&lt;/p&gt;  &lt;p&gt;When you compile and run the sample, you get a pretty basic dialog box.&lt;/p&gt;  &lt;p&gt;&lt;img border="0" src="http://windowsteamblog.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34/7563.start_5F00_dialog.png" /&gt;&lt;/p&gt;  &lt;p&gt;Nothing too exciting, yet. But notice the http://apis.live.net/V4.1 endpoint in the text box - more on that shortly. First, let's get things going by clicking the SignIn button. This brings up the Windows Live consent dialog box. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;img border="0" src="http://windowsteamblog.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34/0724.consent_5F00_window.png" /&gt;&lt;/p&gt;  &lt;p&gt;Type in a valid Windows Live ID and password, and then click Connect. Back in our sample application, the SignIn button has changed to a Navigate button. Click the button, and the dialog updates with the top-level REST data located at http://apis.live.net/V4.1.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;img border="0" src="http://windowsteamblog.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34/1207.service_5F00_document.png" /&gt;&lt;/p&gt;  &lt;p&gt;From here, you can navigate through the REST endpoints by copying and pasting them into the URI text box. For example, if I want to get my profile information, I would use http://profiles.apis.live.net/v4.0/cid-&lt;i&gt;XXX&lt;/i&gt;/Profiles, where XXX is the CID the application received after I signed in.&lt;/p&gt;  &lt;p&gt;&lt;img border="0" src="http://windowsteamblog.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34/0675.profiles_5F00_document.png" /&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;You can get a really good sense of how the REST endpoints work in Messenger Connect using our REST Explorer: &lt;a href="http://rex.mslivelabs.com/"&gt;http://rex.mslivelabs.com/&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;So what's going behind the scenes here? Let's close out of the dialog box and return to Visual Studio. Open up the SignInTester.cs file. This is the file that's doing most of the work. Two methods stand out in particular: SigninSynchronous and btnNavigate_Click. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&amp;#160;&lt;span style="font-family: consolas; color: blue; font-size: 9.5pt"&gt;void&lt;/span&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt; SigninSynchronous()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;user1 = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;MessengerConnectSigninContext&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; color: #2b91af; font-size: 9.5pt"&gt;Collection&lt;/span&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;Scope&lt;/span&gt;&amp;gt; requestedScopes = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;Collection&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;Scope&lt;/span&gt;&amp;gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;requestedScopes.Add(&lt;span style="color: #2b91af"&gt;Scope&lt;/span&gt;.ContactsView);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; color: #2b91af; font-size: 9.5pt"&gt;AppInformation&lt;/span&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt; appInfo = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;AppInformation&lt;/span&gt;(&lt;span style="color: #a31515"&gt;&amp;quot;&lt;span style="line-height: 115%; font-family: consolas; color: #a31515; font-size: 9.5pt; mso-fareast-font-family: calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: en-us; mso-fareast-language: en-us; mso-bidi-language: ar-sa"&gt;00000000YourClientID&lt;/span&gt;&amp;quot;&lt;/span&gt;, &lt;span style="color: #a31515"&gt;&amp;quot;&lt;span style="line-height: 115%; font-family: consolas; color: #a31515; font-size: 9.5pt; mso-fareast-font-family: calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: en-us; mso-fareast-language: en-us; mso-bidi-language: ar-sa"&gt;YourSecretKey&lt;/span&gt;&amp;quot;&lt;/span&gt;, requestedScopes);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;user1.GetToken(appInfo);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;EnableMessengerConnectBrowsing();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt; The SigninSynchronous method fires when the user clicks the Signin button. The really interesting part here is the scopes collection: &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;span style="line-height: 115%; font-family: consolas; color: #2b91af; font-size: 9.5pt"&gt;Collection&lt;/span&gt;&lt;span style="line-height: 115%; font-family: consolas; font-size: 9.5pt"&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;Scope&lt;/span&gt;&amp;gt; requestedScopes = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;Collection&lt;/span&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;Scope&lt;/span&gt;&amp;gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;This line makes it easy to add the scopes that control what Windows Live data you can access on a user's behalf. In the starter kit, we're getting the WL_Contacts.View scope from a pre-defined constant, as shown in the line:&lt;/p&gt;  &lt;p&gt;&lt;span style="line-height: 115%; font-family: consolas; font-size: 9.5pt; mso-fareast-font-family: calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: en-us; mso-fareast-language: en-us; mso-bidi-language: ar-sa"&gt;requestedScopes.Add(&lt;span style="color: #2b91af"&gt;Scope&lt;/span&gt;.ContactsView);&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;If we wanted to request additional scopes, we'd just need to call requestedScopes.Add again for each additional scope. &lt;a href="http://msdn.microsoft.com/en-us/library/ff749529.aspx"&gt;Check out the SDK&lt;/a&gt; for more information on what scopes are available, and what they do.&lt;/p&gt;  &lt;p&gt;Once we have the scopes we want, it's just a matter of creating a new AppInformation object that contains your application's client ID, secret key, and requested scopes. The GetToken method handles opening the Windows Live Consent dialog box and processing the access token we get back when the user signs in successfully.&lt;/p&gt;  &lt;p&gt;The btnNavigate_Click method is very similar to what you would do if you were writing a web application. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; color: blue; font-size: 9.5pt"&gt;private&lt;/span&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt; &lt;span style="color: blue"&gt;void&lt;/span&gt; btnNavigate_Click(&lt;span style="color: blue"&gt;object&lt;/span&gt; sender, &lt;span style="color: #2b91af"&gt;EventArgs&lt;/span&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;o:p&gt;&amp;#160;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;try&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;Uri&lt;/span&gt; someUri = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;Uri&lt;/span&gt;(txtUri.Text);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;WebRequest&lt;/span&gt; webRequest = &lt;span style="color: #2b91af"&gt;HttpWebRequest&lt;/span&gt;.Create(someUri);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;webRequest.Method = &lt;span style="color: #a31515"&gt;&amp;quot;GET&amp;quot;&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;webRequest.Headers[&lt;span style="color: #2b91af"&gt;MessengerConnectConstants&lt;/span&gt;.AuthorizationHeader] = user1.AuthorizationToken;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;WebResponse&lt;/span&gt; webResponse = webRequest.GetResponse();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;o:p&gt;&amp;#160;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;o:p&gt;&amp;#160;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;StreamReader&lt;/span&gt; responseStreamReader = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;StreamReader&lt;/span&gt;(webResponse.GetResponseStream());&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;o:p&gt;&amp;#160;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;String&lt;/span&gt; response = responseStreamReader.ReadToEnd();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;XmlDocument&lt;/span&gt; doc = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;XmlDocument&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;doc.LoadXml(response);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;StringBuilder&lt;/span&gt; formattedBuilder = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;StringBuilder&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;XmlWriterSettings&lt;/span&gt; settings = &lt;span style="color: blue"&gt;new&lt;/span&gt; &lt;span style="color: #2b91af"&gt;XmlWriterSettings&lt;/span&gt;();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;settings.Indent = &lt;span style="color: blue"&gt;true&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: #2b91af"&gt;XmlWriter&lt;/span&gt; writer = &lt;span style="color: #2b91af"&gt;XmlWriter&lt;/span&gt;.Create(formattedBuilder, settings);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;doc.WriteTo(writer);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;writer.Close();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;o:p&gt;&amp;#160;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;txtOutput.Text = formattedBuilder.ToString();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color: blue"&gt;catch&lt;/span&gt; (&lt;span style="color: #2b91af"&gt;Exception&lt;/span&gt; exception)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;txtOutput.Text = exception.Message + &lt;span style="color: #a31515"&gt;&amp;quot;\r\n&amp;quot;&lt;/span&gt; + exception.StackTrace;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family: consolas; font-size: 9.5pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="line-height: 115%; font-family: consolas; font-size: 9.5pt; mso-fareast-font-family: calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: en-us; mso-fareast-language: en-us; mso-bidi-language: ar-sa"&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;As you can see, it takes a URI and creates a WebRequest using the access token of the Windows Live user. As this is a pretty simple example, the method just writes the response back out to the dialog box. This is where you can leverage the REST Explorer and the Windows Live SDK to build more functionality into the sample.&lt;/p&gt;  &lt;p&gt;We hope this starter kit gives you some good insight on how to build desktop applications with Messenger Connect. We're working hard on providing more information on how to code with Messenger Connect - meanwhile, if you have questions or feedback, please leave a comment.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=551072" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/10/15/creating-desktop-applications-with-messenger-connect.aspx</link>
      <pubDate>Fri, 15 Oct 2010 19:19:00 GMT</pubDate>
    </item>
    <item>
      <title>What is new in the latest Messenger Connect release</title>
      <description>&lt;p&gt;&lt;a target="_blank" href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/10/14/messenger-connect-is-out-of-beta-and-available-worldwide.aspx"&gt;Jeff just announced on Inside Windows Live&lt;/a&gt; that &lt;b&gt;Messenger Connect is now out of beta&lt;/b&gt;. In this post I want to give you some context on the technical changes. These changes are the result great feedback from the 2500+ people who participated in the beta and a couple of months of development time. We focused on: &lt;b&gt;Making it easier to get up and running&lt;/b&gt;, &lt;b&gt;easier and faster development&lt;/b&gt;, and&lt;b&gt; delivering some core scenarios based on feedback&lt;/b&gt;.&amp;nbsp; &lt;/p&gt;
&lt;h3&gt;Easier to check out&lt;/h3&gt;
&lt;p&gt;If you are new to a service you want to: understand what it can do, kick the tires, and get access quickly. We &lt;a target="_blank" href="http://dev.live.com/"&gt;revamped dev.live.com&lt;/a&gt;&lt;b&gt;&lt;/b&gt; so you can more quickly determine if Messenger Connect is something you want to add to your site. Seeing-is-believing, so we added &lt;b&gt;a few links to small sample sites&lt;/b&gt; (&lt;b&gt;try them&lt;/b&gt;: &lt;a target="_blank" href="http://messengerconnectidentity.mslivelabs.com/"&gt;identity&lt;/a&gt;, &lt;a target="_blank" href="http://messengerconnectsharingbadge.mslivelabs.com"&gt;sharing badge&lt;/a&gt;, &lt;a href="http://messengerconnectchatcontrol.mslivelabs.com/"&gt;chat control&lt;/a&gt;). &lt;/p&gt;
&lt;p&gt;During the beta we got a lot of the questions about which permissions (scopes) web sites can ask consumers for. Some scopes are &amp;ldquo;restricted&amp;rdquo; and they are technically available in the platform but were not made available to all companies for various reasons (security, privacy, supportability, etc.). We hadn&amp;rsquo;t done a great job of making it clear which ones were widely available and which ones were not (in line with our &lt;a target="_blank" href="http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/25/messenger-connect-making-your-data-more-portable-while-retaining-control-over-its-use.aspx"&gt;data portability &amp;amp; privacy principles&lt;/a&gt;) &amp;ndash; so we rewrote the &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/ff749529.aspx"&gt;Messenger Connect Scopes page&lt;/a&gt; to appropriately set expectations with developers.&lt;/p&gt;
&lt;p&gt;Once you decide to add Messenger Connect to your site, we wanted to make that easier to do, so we created some new tools. For the &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/windowslive/ff796213.aspx"&gt;sharing badge&lt;/a&gt; (which doesn&amp;rsquo;t require registration via our developer portal), we now &lt;b&gt;list all the &amp;ldquo;aggregators&amp;rdquo; that include the Messenger sharing badge&lt;/b&gt;. We also built a &lt;b&gt;&lt;a target="_blank" href="http://messengerconnectsharingbadge.mslivelabs.com/"&gt;small prototype tool to demonstrate how you can generate the code to add the badge to your site&lt;/a&gt;&lt;/b&gt;. This prototype does some interesting things like only showing the sharing badge for specific browser locales etc.&lt;/p&gt;
&lt;p&gt;If you are using functionality like &lt;i&gt;identity, social distribution, and in page IM/chat&lt;/i&gt;, you must have a Client ID &amp;ndash; &lt;b&gt;you can now get a Client ID via the developer portal without requiring acceptance into the beta&lt;/b&gt;. You can just go to &lt;a target="_blank" href="https://manage.dev.live.com"&gt;https://manage.dev.live.com&lt;/a&gt; and sign in with your Windows Live ID, and create a Client ID. During the beta we had limited access and were periodically onboarding developers.&lt;/p&gt;
&lt;h3&gt;Easier to adopt and integrate&lt;/h3&gt;
&lt;p&gt;We spent a lot of time thinking about how we can make it easier for developers to complement their websites with a Messenger Connect implementation. To do this we focused on the questions and suggestions from the people who participated in the beta. We wrote a &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/gg251990.aspx"&gt;new developer guide&lt;/a&gt;, which outlines how you can start building applications that integrate with Windows Live.&lt;/p&gt;
&lt;p&gt;Whilst coding, developers like to run code over and over again, tweaking it a little, but services need throttling limits for overall service stability. To overcome these conflicting requirements, we created the &lt;b&gt;debug endpoint which has very high throttle limits. &lt;/b&gt;You can code away and publish tons of activities &lt;b&gt;without fear of a throttle limit error messing with your development mojo&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;For &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/windowslive/gg252700.aspx"&gt;sharing user activities&lt;/a&gt; into Windows Live, &lt;a target="_blank" href="http://activitystrea.ms/"&gt;ActivityStrea.ms&lt;/a&gt; is super powerful specification, and we love it. But the format itself isn&amp;rsquo;t the prize &amp;ndash; your content (or user activity) and how it appears in the user experience is. We support &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/ff748008.aspx"&gt;~20 different templates&lt;/a&gt;, but knowing which will appear best in Windows Live and get the most amount of clickbacks is sometimes difficult. That is why we &lt;b&gt;&lt;a target="_blank" href="http://messengerconnectactivities.mslivelabs.com/"&gt;created the ActivityStrea.ms template selection tool&lt;/a&gt;&lt;/b&gt; which helps you select the template, see the code, see how it is going to be rendered in Windows Live (and which parts of the &lt;a target="_blank" href="http://activitystrea.ms/"&gt;ActivityStrea.ms&lt;/a&gt; get rendered where), and try it out.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1134.image_5F00_5B25F838.png"&gt;&lt;img height="340" width="624" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/4300.image_5F00_thumb_5F00_4F240804.png" alt="Messenger Connect Web Activity Feed Templates (ActivityStrea.ms)" border="0" title="Messenger Connect Web Activity Feed Templates (ActivityStrea.ms)" style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Partners using &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/windowslive/ff723757.aspx"&gt;Messenger Connect for identity&lt;/a&gt; and calling the Profile API gave us feedback that multiple calls were required to deliver mainstream scenarios (such as: get the user&amp;rsquo;s name, email address, and profile picture). To make this easier we &lt;b&gt;condensed the response for the Profile API &lt;/b&gt;and also made the &lt;b&gt;avatar available without authentication &lt;/b&gt;(of course user consent is required)&lt;b&gt;.&lt;/b&gt;&lt;/p&gt;
&lt;h3&gt;More complete, and consistent with our data portability and privacy principles&lt;/h3&gt;
&lt;p&gt;During the beta we heard about 2 things which were blocking adoption: 1) I want to be able to email the connected user&amp;rsquo;s friends, and 2) the &lt;a href="http://msdn.microsoft.com/en-us/windowslive/gg252699.aspx"&gt;chat control&lt;/a&gt; is cool, but moderation is required.&lt;/p&gt;
&lt;p&gt;Given our &lt;a target="_blank" href="http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/25/messenger-connect-making-your-data-more-portable-while-retaining-control-over-its-use.aspx"&gt;view on data portability and privacy&lt;/a&gt;, instead of sharing the connected user&amp;rsquo;s friends&amp;rsquo; email addresses, instead we &lt;b&gt;created an Invitation API&lt;/b&gt;. This API enables web sites to send out email invitations &lt;b&gt;on behalf of the connected user&lt;/b&gt; to their Windows Live friends. This &lt;b&gt;increases deliverability and also conversion&lt;/b&gt; because it is sent on behalf of the connected user. &lt;/p&gt;
&lt;p&gt;The &lt;a target="_blank" href="http://msdn.microsoft.com/en-us/windowslive/gg252699.aspx"&gt;Chat Control&lt;/a&gt; is a good way to harness the power of digital flashmobs (where lots of people will be on the same site at the same time) and will want to be able to chat or comment on an item in realtime. The comments aren&amp;rsquo;t persisted but they are visible in your site. We &lt;b&gt;&lt;a target="_blank" href="http://msdn.microsoft.com/en-us/library/gg262189.aspx"&gt;added after the fact moderation of the chat control&lt;/a&gt;. &lt;/b&gt;You can enable a chat moderator to delete messages, view a larger message history, and block users from posting.&lt;/p&gt;
&lt;p&gt;Analytics are a key part of any project. In this release &lt;b&gt;we have added more analytics reports&lt;/b&gt; and ways for you to see exactly how your Messenger Connect implementation is performing.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/0005.image_5F00_6747725F.png"&gt;&lt;img height="513" width="437" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1172.image_5F00_thumb_5F00_74AD8565.png" alt="Example report" border="0" title="Example report" style="background-image: none; border-right-width: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;Finding where to invest and where not to&lt;/h3&gt;
&lt;p&gt;Based on feedback from early adopters, the strongly typed &lt;b&gt;Messenger Connect .NET library has been discontinued&lt;/b&gt;. Future development efforts in this area will focus on samples that work directly with our REST-based web services.&lt;/p&gt;
&lt;h3&gt;Just the beginning&lt;/h3&gt;
&lt;p&gt;&lt;b&gt;This release was driven by our beta participants because they gave us great feedback&lt;/b&gt;. If you think there is something we should do or change, please &lt;b&gt;spend some time in our forum &lt;/b&gt;&lt;a href="http://dev.live.com/forums"&gt;&lt;b&gt;dev.live.com/forums&lt;/b&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Angus Logan&lt;/p&gt;
&lt;p&gt;Senior technical product manager, Windows Live &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=551023" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/10/12/what-is-new-in-the-latest-messenger-connect-release.aspx</link>
      <pubDate>Wed, 13 Oct 2010 00:12:00 GMT</pubDate>
    </item>
    <item>
      <title>Windows Phone People Hub Powered by Activity Streams</title>
      <description>&lt;p&gt;As you may have heard, Microsoft made a &lt;a href="http://www.microsoft.com/presspass/presskits/windowsphone/"&gt;major announcement about Windows Phone 7&lt;/a&gt; this morning. On the &lt;a href="http://windowsteamblog.com/Windows_Live/b/windowslive/"&gt;Inside Windows Live blog&lt;/a&gt;, my colleague Chris Jones wrote about some of the many places where Windows Phone integrates with Windows Live in &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/10/11/windows-live-and-windows-phone-7.aspx"&gt;this blog post&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Here on our Windows Live for Developers, I&amp;rsquo;m excited to let you know that the &lt;b&gt;Windows Live activities on the &amp;ldquo;People Hub&amp;rdquo; of Windows Phone 7 are powered by &lt;/b&gt;&lt;a href="http://ActivityStrea.ms/"&gt;&lt;b&gt;Activity Streams&lt;/b&gt;&lt;/a&gt;. Yes, the same &lt;a href="http://activitystrea.ms/head/atom-activity.html"&gt;Atom Activity Extensions&lt;/a&gt; format that &lt;a href="http://windowsteamblog.com/windows_live/b/developer/archive/2010/08/25/windows-live-and-activity-streams.aspx"&gt;I wrote about in August&lt;/a&gt; are powering the &amp;ldquo;what&amp;rsquo;s new&amp;rdquo; view on the Windows Phone 7 &amp;ldquo;People Hub.&amp;rdquo;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/4034.image_5F00_4D12C51D.png"&gt;&lt;img height="256" width="530" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7077.image_5F00_thumb_5F00_7B3C9B0A.png" alt="image" border="0" title="image" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Also, while the above screenshot shows only Windows Live and Facebook, if you &lt;a href="http://profile.live.com/services/"&gt;connect other services to Windows Live&lt;/a&gt; like LinkedIn, YouTube, Flickr, WordPress, and ~70 more, you and your friends will also see these in the People Hub experience on Windows Phone 7.&lt;/p&gt;
&lt;p&gt;For example of what a Windows Live Activity Streams feed looks like, browse to your Windows Live Profile at &lt;a href="http://profile.live.com/"&gt;http://profile.live.com/&lt;/a&gt; (or feel free to &lt;a href="http://cid-b8a48430223e3c38.profile.live.com/"&gt;use mine&lt;/a&gt;) and then click the orange RSS/Atom button in your web browser to see a public version of that user&amp;rsquo;s activity stream. You&amp;rsquo;ll see a URL like: &lt;br /&gt;&lt;a href="http://api.live.net/Users(-5141839532282463176)/Activities?$format=atom10&amp;amp;mkt=en-US"&gt;http://api.live.net/Users(-5141839532282463176)/Activities?$format=atom10&amp;amp;mkt=en-US&lt;/a&gt; &lt;br /&gt;and if you View | Source, &lt;b&gt;you&amp;rsquo;ll see the Activity Streams feed, just like what is used by Win Phone 7:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7343.image_5F00_3085AD70.png"&gt;&lt;img height="572" width="604" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5531.image_5F00_thumb_5F00_790F7674.png" alt="image" border="0" title="image" style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;d like to learn more about Activity Streams, visit &lt;a href="http://ActivityStrea.ms/"&gt;http://ActivityStrea.ms/&lt;/a&gt;, and &lt;b&gt;if you&amp;rsquo;d like to join the Windows Phone 7 team in developing with the Windows Live Activity Streams API&amp;rsquo;s, check-out &lt;/b&gt;&lt;a href="file:///C:\Users\robdolin\AppData\Local\Microsoft\Windows\Temporary%20Internet%20Files\Content.Outlook\F8GSPEJL\this%20blog%20post"&gt;&lt;b&gt;this blog post&lt;/b&gt;&lt;/a&gt;&lt;b&gt; and &lt;/b&gt;&lt;a href="http://dev.live.com/"&gt;&lt;b&gt;http://dev.live.com/&lt;/b&gt;&lt;/a&gt;&lt;b&gt;.&lt;/b&gt; Thanks very much-- &lt;br /&gt;--&lt;a href="http://blog.robdolin.com/"&gt;Rob&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=550988" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/10/11/windows-phone-people-hub-powered-by-activity-streams.aspx</link>
      <pubDate>Tue, 12 Oct 2010 03:24:00 GMT</pubDate>
    </item>
    <item>
      <title>Visual Studio 2010 Survey</title>
      <description>&lt;p&gt;We'd like to know what you think about Visual Studio 2010.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;We are especially interested in hearing about your experience with regards to &lt;strong&gt;performance&lt;/strong&gt;, &lt;strong&gt;reliability&lt;/strong&gt;,&lt;strong&gt; &lt;/strong&gt;and&lt;strong&gt; quality&lt;/strong&gt;.&amp;nbsp; The more details you share with us in this survey, the better we can understand your&amp;nbsp;experience and apply what we learn into future versions.&lt;/p&gt;
&lt;p&gt;The survey is very short and should take you no more than a few minutes. You can get&amp;nbsp;started by clicking on&amp;nbsp;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=203459" title="Visual Studio 2010 Survey"&gt;&lt;strong&gt;&lt;span style="color: #366df4;"&gt;Visual Studio 2010 Survey&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It's important that we here from you whether you love us or hate us.&amp;nbsp; The more people who respond, the better we can understand how we're doing and whether or not we're doing the right things to make a difference.&lt;/p&gt;
&lt;p&gt;Regards and thanks for your time,&lt;/p&gt;
&lt;p&gt;David Berg&lt;br /&gt;Developer Division Performance Engineering Team&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10073795" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2010/10/10/visual-studio-2010-survey.aspx</link>
      <pubDate>Sun, 10 Oct 2010 14:18:38 GMT</pubDate>
    </item>
    <item>
      <title>New research supports business impact of “Connecting”</title>
      <description>&lt;p&gt;One of the things I’ve found hard to measure is the industry’s perception (in aggregate) of the impact to user engagement and user acquisition when a site deeply connects to large audiences through “Connect like” solutions. This morning I may have found part of the answer in &lt;a href="http://info.gigya.com/MR-SSO.html" target="_blank"&gt;some new research&lt;/a&gt; from Gigya (conducted by Edge Research) that helps answer the question – &lt;b&gt;“[what is] the value of social sign-on and the registered user?”&lt;/b&gt;.&lt;/p&gt;  &lt;p&gt;You should read the entire research from &lt;a href="http://info.gigya.com/MR-SSO.html" target="_blank"&gt;here&lt;/a&gt; . The two big takeaways I got from the research about “social sign-on” (the term the research uses) are:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;There is massive awareness and intent to deploy&lt;/li&gt;    &lt;li&gt;There is clear alignment in the potential benefits, and a belief in achieving these benefits &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Massive awareness and intent to deploy&lt;/h3&gt;  &lt;p&gt;The research showed a huge awareness with 92% of respondents said that they have heard of solutions that allow sign in using an existing [social] identity. Beyond the huge awareness, for online publishers about 59% had either fully implemented or had an implementation in progress.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7848.image_5F00_2DF86B73.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2161.image_5F00_thumb_5F00_57F8699B.png" width="268" height="345" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Clear belief in the benefits&lt;/h3&gt;  &lt;p&gt;Another interesting tidbit is that the top 3 potential benefits (of a total of 10) were well aligned from both an importance and also a belief in the likelihood of achieving the benefit.&lt;/p&gt;  &lt;table border="1" cellspacing="0" cellpadding="0"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="343"&gt;         &lt;p&gt;&lt;b&gt;Potential benefit&lt;/b&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="91"&gt;         &lt;p&gt;&lt;b&gt;Importance&lt;/b&gt;&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="191"&gt;         &lt;p&gt;&lt;b&gt;Likelihood of being achieved&lt;/b&gt;&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="343"&gt;         &lt;p&gt;Increase engagement/relationships&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="91"&gt;         &lt;p&gt;84%&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="191"&gt;         &lt;p&gt;77%&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="343"&gt;         &lt;p&gt;Richer profile information to target and customize&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="91"&gt;         &lt;p&gt;80%&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="191"&gt;         &lt;p&gt;81%&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="343"&gt;         &lt;p&gt;Easier to share information and promote organization to social network&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="91"&gt;         &lt;p&gt;77%&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="191"&gt;         &lt;p&gt;78%&lt;/p&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;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6724.image_5F00_4BF67967.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/8715.image_5F00_thumb_5F00_3CDF9A8D.png" width="311" height="422" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;There is a lot more in the research, &lt;a href="http://info.gigya.com/MR-SSO.html" target="_blank"&gt;check it out here&lt;/a&gt;, and if you have any data or research you’d like to share – leave a comment!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=550221" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/09/21/new-research-supports-business-impact-of-connecting.aspx</link>
      <pubDate>Tue, 21 Sep 2010 20:18:20 GMT</pubDate>
    </item>
    <item>
      <title>VS2010 Performance and Bad Video Drivers/Hardware - Redux</title>
      <description>&lt;p&gt;&lt;span style="font-size: x-small;"&gt;Since we shipped Visual Studio 2010 we've continued to have a small but notable series of complaints about performance that we've been able to attribute to bugs in video drivers and GPUs.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;The issue first came up back during &lt;/span&gt;&lt;a href="http://blogs.msdn.com/b/ddperf/archive/2009/10/29/vs2010-performance-and-bad-video-drivers-hardware.aspx"&gt;&lt;span style="font-size: x-small;"&gt;VS 2010 beta in October of 2009&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: x-small;"&gt;.&amp;nbsp; Since then we've learned that while old, buggy drivers are the usual cause, some newer drivers and GPUs aren't as good at supporting VS's UI as we'd like.&amp;nbsp; (This is also an issue with VMs and VM hosts as Video Virtualization technology isn't very good and requires CPU level TLB virtualization support for decent performance, which most CPUs don't have.)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;Fortunately, the software rendering inside WPF is pretty good, so the easy fix here is to force WPF to ignore the GPU and use software rendering (I've tested this on my own system, and I found that WPF's software rendering was actually &lt;span style="text-decoration: underline;"&gt;slightly&lt;/span&gt; faster than GPU based rendering on my high end CPU with a mid-range graphics card - your mileage may vary).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;But first, if you're seeing slow / broken screen updates you should verify you have the latest display drivers for your system.&amp;nbsp; (See "&lt;/span&gt;&lt;a href="http://support.microsoft.com/kb/963021"&gt;&lt;span style="font-size: x-small;"&gt;Guidelines for troubleshooting graphics issues in WPF applications&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: x-small;"&gt;" for more information.)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;If that doesn't fix it, then there are three ways to force WPF to use software rendering.&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;First and preferred, the final RTM version of VS2010 includes a &lt;a href="http://support.microsoft.com/kb/2023207"&gt;UI for forcing hardware rendering off&lt;/a&gt; - for just VS.&amp;nbsp; With VS2010 open, go to Tools | Options, then select Environment | General (as shown below).&amp;nbsp; Then uncheck "Automatically adjust visual experience..." and "Use hardware graphics acceleration..."&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;&amp;nbsp;&lt;img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-01-00-79/0513.Turn-off-HW-acceleration.png" border="0" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;That should be sufficient.&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;However, if you want to &lt;/span&gt;&lt;span style="font-size: x-small;"&gt;force software rendering mode for ALL WPF applications (not just VS), you have a second option.&amp;nbsp; Change (or add) one registry key:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;&amp;nbsp;[HKEY_CURRENT_USER\Software\Microsoft\Avalon.Graphics]&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;"DisableHWAcceleration"=dword:00000001&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;Note that this key probably won't exist, and you'll probably need to create it.&amp;nbsp; To turn hardware acceleration back on, just change the "1" to a "0".&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;A third alternative is to adjust the hardware acceleration options from the display control panel.&amp;nbsp; However, we don't recommend this option as it impacts the entire machine, the details vary by manufacturer, and the exact impact of all the different options is untested.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;If you try any of these - let us know how it works for you (&lt;/span&gt;&lt;a href="mailto:DevPerf@Microsoft.com"&gt;&lt;span style="font-size: x-small;"&gt;DevPerf@Microsoft.com&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: x-small;"&gt;).&amp;nbsp; If it does improve performance, be sure to let us know how much and attach a DXDIAG output so we'll know which video driver / hardware configurations aren't working well.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;Regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;David Berg&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: x-small;"&gt;Developer Division Performance Engineering Team&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10063790" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2010/09/16/vs2010-performance-and-bad-video-drivers-hardware-redux.aspx</link>
      <pubDate>Fri, 17 Sep 2010 06:19:00 GMT</pubDate>
    </item>
    <item>
      <title>Windows Live and Activity Streams</title>
      <description>&lt;p&gt;Did you know that Microsoft’s Windows Live has been actively embracing the emerging &lt;a href="http://ActivityStrea.ms/"&gt;Activity Streams&lt;/a&gt; open standard?&lt;/p&gt;  &lt;p&gt;About a month ago, I traveled to Portland, Oregon, USA to participate in a “Federated Social Web Summit” organized the day before &lt;a href="http://www.oscon.com/oscon2010"&gt;OSCON&lt;/a&gt; by &lt;a href="http://www.crunchbase.com/person/evan-prodromou" target="_blank"&gt;Evan Prodromou&lt;/a&gt; and the team from &lt;a href="http://status.net/"&gt;Status.net&lt;/a&gt;. We spent the morning with each participant demo’ing their project or protocol for about five minutes. &lt;b&gt;Below is my attempt to re-format my presentation as a blog entry.&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;---&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;My name is Rob Dolin and I’m a Program Manager on the Windows Live Social team. I’m also a co-author of the &lt;a href="http://activitystrea.ms"&gt;Activity Streams&lt;/a&gt; in Atom spec. You can find me &lt;a href="http://identi.ca/robdolin"&gt;on identi.ca as @RobDolin&lt;/a&gt; (and a few &lt;a href="http://blog.robdolin.com/"&gt;other&lt;/a&gt; &lt;a href="http://twitter.com/robdolin"&gt;places&lt;/a&gt;.) In the next few minutes, I’ll try to briefly explain: &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;What is “Windows Live” (from the perspective of federated social activities) &lt;/li&gt;    &lt;li&gt;Where activity streams show-up &lt;/li&gt;    &lt;li&gt;How can your project or service read activities from Windows Live &lt;/li&gt;    &lt;li&gt;How can your project or service write activities to Windows Live &lt;/li&gt;    &lt;li&gt;How can Windows Live direct users to your project or service &lt;/li&gt; &lt;/ol&gt;  &lt;h2&gt;Windows Live as an activities generator, store, and display&lt;/h2&gt;  &lt;p&gt;Windows Live includes a set of web services, PC apps, and mobile apps:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;Web services&lt;/b&gt;: &lt;a href="http://www.hotmail.com"&gt;Hotmail&lt;/a&gt;, &lt;a href="http://skydrive.live.com/"&gt;SkyDrive&lt;/a&gt;, &lt;a href="http://profile.live.com/"&gt;Profile&lt;/a&gt;, &lt;a href="http://groups.live.com/"&gt;Groups&lt;/a&gt;, &lt;a href="http://spaces.live.com/"&gt;Spaces&lt;/a&gt;, … &lt;/li&gt;    &lt;li&gt;&lt;b&gt;PC apps&lt;/b&gt;: Messenger, Writer, Photo Gallery, Movie Maker, Mail, …; together “Windows Live Essentials” (WLE) – &lt;a href="http://bit.ly/WLEBeta"&gt;Download the WLE Beta&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Mobile apps&lt;/b&gt;: &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/28/windows-live-messenger-app-for-iphone-passes-one-million-downloads.aspx"&gt;Messenger for iPhone&lt;/a&gt;, Messenger for Windows Phone, &lt;a href="http://m.live.com/"&gt;http://m.live.com/&lt;/a&gt;, &lt;a href="http://sms.live.com/"&gt;SMS Messenger&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;If you only do one thing to get a sense of how Windows Live integrates activities, I recommend &lt;a href="http://bit.ly/WLEBeta"&gt;downloading the WLE Beta&lt;/a&gt; and running Messenger.&lt;/p&gt;  &lt;h2&gt;Activity streams integrated throughout Windows Live and other Microsoft services&lt;/h2&gt;  &lt;p&gt;The activity stream from Windows Live (sometimes referred to as “Messenger social updates”) is integrated throughout Windows Live services and apps.&lt;/p&gt;  &lt;h3&gt;Windows Live Messenger&lt;/h3&gt;  &lt;p&gt;Windows Live Messenger has a new (default) full window view that dedicates more than 2/3 of the screen to the Windows Live activity stream:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6378.wlm_5F00_357B3735.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Screenshot of Messenger" border="0" alt="Screenshot of Messenger" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6116.wlm_5F00_thumb_5F00_53E5781E.png" width="717" height="427" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Windows Live Hotmail&lt;/h3&gt;  &lt;p&gt;The new Hotmail homepage also includes a large area dedicated to the Windows Live activity stream:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6661.hotmail_5F00_1CDB7418.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Screenshot of Hotmail" border="0" alt="Screenshot of Hotmail" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7713.hotmail_5F00_thumb_5F00_6CD12296.png" width="726" height="880" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;&lt;/h3&gt;  &lt;p&gt;The Windows Live activity steam is not just displayed in Windows Live branded properties, but it’s integrated into Outlook, MSN, and the forthcoming Windows Phone 7:&lt;/p&gt;  &lt;h3&gt;Outlook Social Connector&lt;/h3&gt;  &lt;p&gt;If you install the &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=B45B3D7F-22E1-403C-B0FB-587FD33AA6F3&amp;amp;displaylang=en"&gt;Outlook Social Connector for Windows Live Messenger&lt;/a&gt;, you’ll be able to see recent social activities of your contacts when you email with them:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3036.Outlook_5F00_63F0F47D.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Screenshot of Outlook with the Social Connector expanded." border="0" alt="Screenshot of Outlook with the Social Connector expanded." src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5025.Outlook_5F00_thumb_5F00_49B08B59.png" width="727" height="540" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;As you can see above, the Windows Live activities stream doesn’t just include activities from Windows Live, in Douglas’s case above, it includes photos he shared on Flickr. &lt;b&gt;Users can bring activities they have done from across the web into the Windows Live activities stream.&lt;/b&gt; I’ll explain more below about how you can enable your users to share activities from your service or app into Windows Live.&lt;/p&gt;  &lt;h3&gt;MSN&lt;/h3&gt;  &lt;p&gt;There’s also a new social module on the MSN homepage. On the USA homepage of MSN, this is in the right column:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6064.MSN_5F00_332DC705.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Screenshot of MSN" border="0" alt="Screenshot of MSN" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7802.MSN_5F00_thumb_5F00_0B1B17E6.png" width="312" height="431" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/0676.MSN2_5F00_61C3CFE7.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Screenshot of MSN right rail" border="0" alt="Screenshot of MSN right rail" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6874.MSN2_5F00_thumb_5F00_32FE1745.png" width="194" height="431" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Windows Phone&lt;/h3&gt;  &lt;p&gt;The upcoming Windows Phone 7 has a new “People” view that is powered by Windows Live Activity Streams:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3681.WP71_5F00_4D5E0A5C.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Windows Phone 7" border="0" alt="Windows Phone 7" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1070.WP71_5F00_thumb_5F00_17791542.png" width="263" height="486" /&gt;&lt;/a&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5102.WP72_5F00_4421CF1B.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="WP7-2" border="0" alt="WP7-2" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3482.WP72_5F00_thumb_5F00_6E21CD43.png" width="263" height="486" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;How to Read Activities&lt;/h2&gt;  &lt;p&gt;On every one of the hundreds of millions of Windows Live users’s profile pages, there is a link to an &lt;a href="http://activitystrea.ms/spec/1.0/atom-activity-01.html"&gt;Activity Streams (Atom)&lt;/a&gt; feed of that user’s publicly shared activities. You can easily get to this from your web browser by clicking the orange RSS/Atom icon:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2450.image_5F00_3AE593DA.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3513.image_5F00_thumb_5F00_0C8C0E2D.png" width="129" height="60" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This will take you to a feed of the user’s publicly shared activities on Windows Live. Try it on your own Windows Live profile: &lt;a href="http://profile.live.com/"&gt;http://profile.live.com/&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;You can view this in a web browser or your favorite RSS reader. And if you view the source of this feed, you’ll notice that it includes the &amp;lt;activity:verb&amp;gt; and &amp;lt;activity:object&amp;gt; elements of Activity Streams in Atom:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5826.image_5F00_5308FE35.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6471.image_5F00_thumb_5F00_58776ED9.png" width="347" height="274" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In addition to this link on profile pages to public Windows Live activities, developers can also read non-public activities (if a user gives permission) through the new “Messenger Connect” API’s. I’ll talk more about these below and you can learn more about these at &lt;a href="http://dev.live.com/"&gt;http://dev.live.com/&lt;/a&gt;.&lt;/p&gt;  &lt;h2&gt;Activities in Windows Live from 75+ partners and growing&lt;/h2&gt;  &lt;p&gt;Since December 2008, users have been able to bring their social activities from dozens of services across the web into Windows Live. This has included services you likely know well like Facebook, YouTube, MySpace, Pandora, Hulu, and WordPress:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/8081.image_5F00_2FF88CC5.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6242.image_5F00_thumb_5F00_140757CD.png" width="624" height="479" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;And this includes services from all around the world like AlloCine, Arto, Azbuz, Biip.no, Bilddagboken, Blingee, and more:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/4162.image_5F00_7EC92C57.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1234.image_5F00_thumb_5F00_2DCB682F.png" width="624" height="479" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;All of these integrations are powered by open standards including RSS 2.0, Atom 1.0, MediaRSS, Activity Streams in Atom, and at base, XML. &lt;b&gt;In the next few paragraphs, I’ll briefly explain how you can add your project or service to write activities to the Windows Live activity stream so that they show-up in Messenger, Hotmail, MSN, Outlook, and Windows Phone&lt;/b&gt;.&lt;/p&gt;  &lt;h2&gt;How to Write Activities&lt;/h2&gt;  &lt;p&gt;There are three ways to enable your users to bring their activities from your project or service into Windows Live:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Badge &lt;/li&gt;    &lt;li&gt;Feed &lt;/li&gt;    &lt;li&gt;API &lt;/li&gt; &lt;/ol&gt;  &lt;h3&gt;Writing Activities to Windows Live via Badge&lt;/h3&gt;  &lt;p&gt;The easiest way to write an activity to Windows Live is to have a user click a “badge” link. For example, try clicking this link: &lt;a href="http://profile.live.com/badge/?url=http://status.net/2010/06/28/federated-social-web-summit-2010-announced" target="_blank"&gt;http://profile.live.com/badge/?url=http://status.net/2010/06/28/federated-social-web-summit-2010-announced&lt;/a&gt;. This takes you to a page (below) where you can add your own user message and confirm that you want to share that particular URL. As a developer, you can replace the “url” QueryString parameter with whatever URL your user has indicated he or she wants to share.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3833.image_5F00_11DA3337.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5344.image_5F00_thumb_5F00_76C16428.png" width="508" height="513" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The &lt;a href="http://profile.live.com/badge/"&gt;http://profile.live.com/badge/&lt;/a&gt; page will pre-populate a page title, description, and screenshot image for you from the page, OR you can pass these in as QueryString params to specifically populate them. You can also pass a return URL as a QueryString param so the user gets redirected back to your site after they share the link.&lt;/p&gt;  &lt;p&gt;More details on the “badge” are at: &lt;a href="http://msdn.microsoft.com/en-us/windowslive/ff796213.aspx"&gt;http://msdn.microsoft.com/en-us/windowslive/ff796213.aspx&lt;/a&gt; including sample code you can quickly cut and paste into your own website:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5658.image_5F00_3F97D62F.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/0336.image_5F00_thumb_5F00_0AAAD0F2.png" width="624" height="479" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;Writing Activities to Windows Live via Feed&lt;/h3&gt;  &lt;p&gt;If your service has RSS, Atom, MediaRSS, or Activity Streams (in Atom) feeds, you can enable your users to tell Windows Live to poll their activity stream feed from your service. To set-up your service, you get an Application ID and fill-out a relatively simple form at: &lt;a href="http://manage.dev.live.com/"&gt;http://manage.dev.live.com/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;As shown below, this will ask you for some basic info like your Home page URL, Sign-up URL, Support URL, and of course, Feed type:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3426.image_5F00_35A2BEF7.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3872.image_5F00_thumb_5F00_1443195B.png" width="590" height="358" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You’ll also tell Windows Live how to compose a URL to retrieve your feed. For example below, Windows Live asks users to enter a “User name” and then uses the “replacement patterns” you specify:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7522.image_5F00_44F62106.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/4834.image_5F00_thumb_5F00_4A6491AA.png" width="595" height="360" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Windows Live gives you a variety of choices for “User input label” and has these values translated into over 40 languages so you don’t need to know how to ask a Hungarian user for their email address.&lt;/p&gt;  &lt;p&gt;After you’ve set-up Windows Live to know how to poll your service’s feed, you can direct users to the page where they can add your service: &lt;a href="http://profile.live.com/services/add.aspx?AppID=%7bYourAppID%7d&amp;amp;ru=http://www.YourService.com/return"&gt;http://profile.live.com/services/add.aspx?&lt;b&gt;AppID&lt;/b&gt;={YourAppID}&amp;amp;&lt;b&gt;ru&lt;/b&gt;=http://www.YourService.com/return&lt;/a&gt;. You can even pass a “ru” QueryString parameter to specify the “return URL” for Windows Live to direct users to after they have connected Windows Live to your service. To get started, go to &lt;a href="http://manage.dev.live.com/"&gt;http://manage.dev.live.com/&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;For each user who connects your service, Windows Live will start polling relatively frequently (every 30-60 minutes) and then start polling less frequently for less active users on your service.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;If your service already has RSS, Atom, or Activity Streams feeds, this is likely the easiest way to help your users bring their content into Windows Live. &lt;/b&gt;To get the nicest looking results (i.e. photos treated as photos, etc.) you might just need to add a few &amp;lt;activity:…&amp;gt; elements as described in the “Choosing your Activity Type(s)” section below.&lt;/p&gt;  &lt;h3&gt;Writing Activities to Windows Live via API&lt;/h3&gt;  &lt;p&gt;Finally, your service can also write activities to Windows Live via our “Messenger Connect” set of API’s. You’ll set-up your connection to Windows Live and similarly point your user to an add.aspx page passing-in your AppID. The user will consent to have you write activities on their behalf (and possibly do other things like read and write SkyDrive photos or Messenger contacts ) and the user will be returned to your site (or client application) along with a token you can use to make calls on the user’s behalf.&lt;/p&gt;  &lt;p&gt;To push write activities to Windows Live, you’ll make HTTP POST’s where the body of your request is in the Activity Streams in Atom format. The below screenshot from &lt;a href="http://msdn.microsoft.com/library/ff748785.aspx"&gt;the online documentation&lt;/a&gt; describes how this gets rendered:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2146.image_5F00_21E5AF96.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7220.image_5F00_thumb_5F00_7FADA40F.png" width="624" height="479" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;While there are potentially hundreds of &amp;lt;activity:verb&amp;gt; + &amp;lt;activity:object&amp;gt; combinations from Activity Streams, Windows Live supports a large portion of the most common combinations:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7356.image_5F00_168C758C.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6131.image_5F00_thumb_5F00_425CC97B.png" width="624" height="479" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;More details on publishing activities to Windows Live via API can be found at: &lt;a href="http://msdn.microsoft.com/library/ff748785.aspx"&gt;http://msdn.microsoft.com/library/ff748785.aspx&lt;/a&gt;. &lt;/p&gt;  &lt;h2&gt;Choosing your Activity Type(s)&lt;/h2&gt;  &lt;p&gt;(This section was added at the suggestion of my colleague, @&lt;a href="http://twitter.com/AngusLogan"&gt;AngusLogan&lt;/a&gt;)&lt;/p&gt;  &lt;p&gt;Whether you’re writing via feed or writing via API, if you choose a specific pairing of &amp;lt;activity:verb&amp;gt; and &amp;lt;activity:object-type&amp;gt;, users will potentially see your activity looking differently. For example:&lt;/p&gt;  &lt;p&gt;A &lt;a href="http://msdn.microsoft.com/en-us/library/ff749310.aspx"&gt;“Post” of a “Status Update”&lt;/a&gt; is displayed in Messenger as:     &lt;br /&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6646.clip_5F00_image001_5F00_1971B472.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6175.clip_5F00_image001_5F00_thumb_5F00_11E64505.png" width="558" height="83" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;A &lt;a href="http://msdn.microsoft.com/en-us/library/ff752246.aspx"&gt;“Post” of a “Photo”&lt;/a&gt; or a &lt;a href="http://msdn.microsoft.com/en-us/library/ff749345.aspx"&gt;“Post” of multiple “Photo” objects in a target “Album”&lt;/a&gt; looks like:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5315.image_5F00_266B9483.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2664.image_5F00_thumb_5F00_27144AAD.png" width="465" height="398" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;A &lt;a href="http://msdn.microsoft.com/en-us/library/ff748701.aspx"&gt;“Post” of a “Bookmark”&lt;/a&gt; looks like:     &lt;br /&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/4152.clip_5F00_image0016_5F00_7F8D5875.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image001[6]" border="0" alt="clip_image001[6]" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5734.clip_5F00_image0016_5F00_thumb_5F00_7F212580.png" width="586" height="108" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;And a &lt;a href="http://msdn.microsoft.com/en-us/library/ff747595.aspx"&gt;“Post” of a “Blog-entry”&lt;/a&gt;:     &lt;br /&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1121.clip_5F00_image002_5F00_02BF405E.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6254.clip_5F00_image002_5F00_thumb_5F00_10255364.png" width="624" height="107" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;There are about a dozen more variations and you can see examples of what all of these look like on the web and what the XML for these looks like at: &lt;a href="http://msdn.microsoft.com/en-us/library/ff748785.aspx"&gt;http://msdn.microsoft.com/en-us/library/ff748785.aspx&lt;/a&gt;.&lt;/p&gt;  &lt;h2&gt;Thank you, more?&lt;/h2&gt;  &lt;p&gt;I hope that you found this blog entry both useful and informative. To learn more:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="file:///C:/Users/alogan/AppData/Local/Microsoft/Windows/Temporary Internet Files/Content.Outlook/UB6DDH1I/bit.ly/WLEBeta"&gt;Download Windows Live Essentials&lt;/a&gt; for PC and/or &lt;a href="http://itunes.com/apps/windowslivemessenger"&gt;Messenger for iPhone&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Connect some of the services you use: &lt;a href="http://profile.live.com/services/"&gt;http://profile.live.com/services/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Check-out Messenger Connect and all of the great information at &lt;a href="http://dev.live.com/"&gt;http://dev.live.com/&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Leveraging Activity Streams, you can read activities from Windows Live into your app or service; and write activities from your app or service to Windows Live so your users and their friends will see them in Messenger, Hotmail, MSN, Outlook, Windows Phone, and more. &lt;/p&gt;  &lt;p&gt;Thanks very much for reading and for your interest in Messenger Connect—&lt;/p&gt;  &lt;p&gt;--&lt;a href="http://blog.RobDolin.com/"&gt;Rob Dolin&lt;/a&gt;     &lt;br /&gt;Program Manager, &lt;a href="http://www.WindowsLive.com/"&gt;Windows Live&lt;/a&gt; team&lt;/p&gt;  &lt;p&gt;P.S. If you enjoyed this blog entry and would like to see more blog entries along similar topics, please leave a comment explaining what you’d like to learn more about.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=548721" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/08/25/windows-live-and-activity-streams.aspx</link>
      <pubDate>Thu, 26 Aug 2010 01:15:33 GMT</pubDate>
    </item>
    <item>
      <title>Bing Product Guidelines released (Update)</title>
      <description>&lt;p&gt;The &lt;a href="http://download.microsoft.com/download/0/4/E/04E076D4-60B2-4D31-BCC7-C4805B558DBB/Bing%20product%20guidelines.pdf"&gt;Bing Product Guidelines&lt;/a&gt;&amp;nbsp;provides visual guidelines and recommendations to implement the branding for Bing for third parties. These guidelines can help echo the Bing product brand experience into your environment.&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;ve updated the&amp;nbsp;Bing Product Guidelines&amp;nbsp;on the Microsoft Download Center&amp;nbsp;to include new logo and search box format and instructions on use to help you&amp;nbsp;more easily implement a consistent Bing experience.&amp;nbsp; Sections that were removed with this update are crossed out below.&lt;/p&gt;
&lt;p&gt;Topics include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Bing branding guidelines &lt;/li&gt;
&lt;li&gt;Bing searchbox guidelines &lt;/li&gt;
&lt;li&gt;Bing searchbox guidelines for third party (web) &lt;/li&gt;
&lt;li&gt;Font guidelines for UI &lt;/li&gt;
&lt;li&gt;Visual elements for Bing search UI &lt;/li&gt;
&lt;li&gt;&lt;span style="text-decoration:line-through;"&gt;Editorial style &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="text-decoration:line-through;"&gt;Approach to UI error messages&lt;/span&gt; &lt;/li&gt;
&lt;li&gt;&lt;span style="text-decoration:line-through;"&gt;Overview of China Transliterated Logo &lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="text-decoration:line-through;"&gt;China Transliterated Logo searchbox guidelines for third party (web)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;br /&gt;Please use&amp;nbsp;these guidelines&amp;nbsp;as a starting point for any questions you have about how to incorporate the Bing brand in your applications.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Alessandro Catorcini, Lead Program Manager, Bing API&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9542446" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/08/23/bing-product-guidelines-released.aspx</link>
      <pubDate>Mon, 23 Aug 2010 19:39:00 GMT</pubDate>
    </item>
    <item>
      <title>Visual Studio 2010 runs faster when the Windows Automation API 3.0 is installed</title>
      <description>&lt;p&gt;If you're running Visual Studio 2010 on XP or Vista you may benefit from installing this upgrade: &lt;a href="http://support.microsoft.com/kb/981741"&gt;http://support.microsoft.com/kb/981741&lt;/a&gt;&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;Applications that use Windows Automation APIs can significantly decrease Microsoft Visual Studio IntelliSense performance if Windows Automation API 3.0 is not installed. For example, the Windows pen and touch services can significantly decrease Visual Studio IntelliSense performance if Windows Automation API 3.0 is not installed. This article describes how to install the Windows Automation API 3.0 update. This update is available as a stand-alone download for 32-bit editions of Windows XP and for Windows Server 2003. This update is not available for 64-bit editions of Windows XP. The Windows Automation API is a component of the platform update for Windows Vista and of the platform update for Windows Server 2008. &lt;/p&gt;
&lt;p&gt;Note that if you're running Windows XP SP2 you'll be told the patch isn't applicable, that's because you need to upgrade to XP SP3 first.&amp;nbsp; If you're running Vista or Windows Server 2008 you may already have the upgrade, since it's part of the automatic updates.&amp;nbsp; If not you can download the upgrade at the link above.&amp;nbsp; Windows 7 and Windows Server 2008 R2 ships with with Windows Automation API 3.0, so no upgrade is required.&lt;/p&gt;
&lt;p&gt;The problem is that earlier versions of the Windows Automation API try to read the entire contents of list boxes that we post to the screen, which blocks us from virualizing them.&amp;nbsp; This is particularly a problem with intellisense as the number of items in an intellisense list is HUGE and it pops up on every character you type.&lt;/p&gt;
&lt;p&gt;The API is typically activated when using accessibility devices (such as screen readers), pen / tablet computers,&amp;nbsp;or touch devices, but some software activates it anyway (including iPhone synchronization).&amp;nbsp; Once activated it affects the entire system.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10050496" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2010/08/16/visual-studio-2010-runs-faster-when-the-windows-automation-api-3-0-is-installed.aspx</link>
      <pubDate>Mon, 16 Aug 2010 13:08:34 GMT</pubDate>
    </item>
    <item>
      <title>Phasing out the Bing Search API 1.1</title>
      <description>&lt;div&gt;&lt;span style="font-family: 'Arial','sans-serif';"&gt;&lt;o:p&gt;
&lt;p class="MsoNormal"&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="line-height: 115%; font-family: 'Arial','sans-serif'; font-size: 10pt;"&gt;&lt;span style="mso-spacerun: yes;"&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;h3 style="margin: 0in 0in 0pt; background: white;"&gt;&lt;b&gt;&lt;span lang="EN" style="font-family: 'Arial','sans-serif'; color: black; font-size: 11.5pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN;"&gt;UPDATE: &lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;h3 style="margin: 0in 0in 0pt; background: white;"&gt;&lt;b&gt;&lt;span lang="EN" style="font-family: 'Arial','sans-serif'; color: black; font-size: 11.5pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;
&lt;h3 style="margin: 0in 0in 0pt; background: white;"&gt;&lt;span lang="EN" style="font-family: 'Arial','sans-serif'; color: black; font-size: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN;"&gt;&lt;em&gt;Following &lt;/em&gt;&lt;a href="http://www.bing.com/community/site_blogs/b/developer/archive/2010/08/06/phasing-out-the-bing-search-api-1-1.aspx"&gt;&lt;span style="color: #0000ff;"&gt;&lt;em&gt;our announcement&lt;/em&gt;&lt;/span&gt;&lt;/a&gt;&lt;em&gt; (8/6/2010) to discontinue support to Bing API 1.1, the API 1.1 service will go offline on Monday May 2, 2011 at 11:00AM PST.&amp;nbsp; What this means to you is that customers who have built search applications that leverage the API 1.1 will cease to return Bing search results.&lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;h3 style="margin: 0in 0in 0pt; background: white;"&gt;&lt;span lang="EN" style="font-family: 'Arial','sans-serif'; color: black; font-size: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN;"&gt;&lt;o:p&gt;&lt;em&gt;&amp;nbsp;&lt;/em&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;h3 style="margin: 0in 0in 0pt; background: white;"&gt;&lt;span lang="EN" style="font-family: 'Arial','sans-serif'; color: black; font-size: 9pt; mso-fareast-font-family: 'Times New Roman'; mso-ansi-language: EN;"&gt;&lt;em&gt;To continue serving Bing search results, you will need to migrate your application to Bing API 2.0.&amp;nbsp; For migration resources and general API assistance, see the original post below.&lt;/em&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;Some time ago, we announced &lt;a href="http://www.bing.com/community/blogs/developer/archive/2010/08/06/phasing-out-the-bing-search-api-1-1.aspx"&gt;Bing Search API 2.0&lt;/a&gt;, a release which introduced a number of significant improvements (outlined below) over the older API 1.1.&amp;nbsp; While we continued to support the older version by incrementally updating supporting documentation, today marks the final step in what has been a gradual transition to a single Bing Search API.&lt;/p&gt;
&lt;p&gt;As of November 1&lt;sup&gt;st&lt;/sup&gt;, 2010 we will discontinue support for the Bing Search API 1.1. &amp;nbsp;For those of you using the older API, this means that you will need to switch over to the newer API over the course of the next 3 months. To help make the switch to the new API as easy as possible, we have developed a number of resources which can be found &lt;a href="http://msdn.microsoft.com/en-us/library/dd251056.aspx"&gt;here&lt;/a&gt;.&amp;nbsp; This includes implementation instructions, code examples, links to forums, and other helpful resources.&lt;/p&gt;
&lt;p&gt;The considerable benefits that come from moving to the newer API include:&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New SourceTypes&lt;/b&gt;&lt;/p&gt;
&lt;ul type="disc"&gt;
&lt;li&gt;&lt;strong&gt;RelatedSearch&lt;/strong&gt; - view searches that provide information in which you might be interested, based on your current search&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Instant Answer&lt;/strong&gt; - get authoritative answers to questions, such as "What is 789*12?", "How many seconds are in a year?" as well as airline flight status.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MobileWeb&lt;/strong&gt; - Get mobile Web search results - primarily Extensible Hypertext Markup Language (XHTML) or Wireless Markup Language (WML) pages relevant to the queried term.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Video&lt;/strong&gt; - Get videos relevant to your search terms.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Translation&lt;/strong&gt; - Translate terms or small blocks of text from one language to another&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New Protocols&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;In this version, your application does not have to adapt to a single protocol. Instead, you can choose from a number of different protocols, including:&lt;/p&gt;
&lt;ul type="disc"&gt;
&lt;li&gt;JSON&lt;/li&gt;
&lt;li&gt;XML&lt;/li&gt;
&lt;li&gt;SOAP&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;b&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Strong Typing&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;In this version, data returned is strongly typed and ready to be consumed. For example, an image or a weather forecast is an object - not just a title, a URL and a description.&lt;/p&gt;
&lt;p&gt;The previous version had a single SearchRequest object that included all request parameters and a single SearchResponse that included all response fields. The fields in the response were populated or not based on the SourceTypes in the request.&lt;/p&gt;
&lt;p&gt;In this version, every SourceType has its own request and response objects. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Developer portal&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;This version unveils a new &lt;a href="http://www.bing.com/developers"&gt;Bing Developer Center&lt;/a&gt;, including new traffic management functionality.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Unlimited traffic&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Version 2 offers new &lt;a href="http://www.bing.com/developers/tou.aspx"&gt;Terms of Use&lt;/a&gt;. Provided you comply with the stated terms, your applications can send an unlimited number of requests to the API.&lt;/p&gt;
&lt;p&gt;There are other benefits of this transition as well.&amp;nbsp; The new Bing Search API introduced considerable improvements for maintenance and updates so that going forward, we can introduce feature improvements and other changes without switching API versions.&amp;nbsp; Furthermore, we will better able to aid you in your requests for assistance as there will now be a single version to monitor and support.&amp;nbsp;&amp;nbsp; &lt;/p&gt;
&lt;p&gt;As always, if you have any questions or need any guidance on any API issues, please reach out to &lt;a href="mailto:api_tou@microsoft.com"&gt;api_tou@microsoft.com&lt;/a&gt;.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;Thanks for all your continued &lt;a name="_GoBack"&gt;&lt;/a&gt;support,&lt;/p&gt;
&lt;p&gt;Reed Shaffner&lt;/p&gt;
&lt;p&gt;Senior Product Manager&lt;/p&gt;
&lt;p&gt;Bing Developer Platform &amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;
&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;p class="MsoNormal"&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9615494" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/08/06/phasing-out-the-bing-search-api-1-1.aspx</link>
      <pubDate>Fri, 06 Aug 2010 16:47:00 GMT</pubDate>
    </item>
    <item>
      <title>Identity (authentication, profile &amp; relationships)</title>
      <description>&lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px 0px 0px 5px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="Messenger Connect for sign-in/sign-up" border="0" alt="Messenger Connect for sign-in/sign-up" align="right" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/4540.image9_5F00_522412B3.png" width="360" height="240" /&gt;There are over 500 million Windows Live IDs that are used every month. That is a lot of users who can sign into web sites. In addition to base level authentication you can also pre-fill registration forms with things such as the user’s email address, so that information doesn’t need to be manually typed again and again (&lt;a href="http://www.vimeo.com/610179" target="_blank"&gt;remember this video?&lt;/a&gt;). Users are able to quickly &lt;u&gt;sign in and sign-up&lt;/u&gt; without needing to enter a username and password. Many users will already be signed into Windows Live (e.g. Hotmail) so they won’t need to enter their password again and can effectively sign into your web site in 2 clicks (1 on &lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="Messenger Connect button" border="0" alt="Messenger Connect button" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/0882.image_5F00_63D0B697.png" width="59" height="18" /&gt; the in the page, 1 within the popup window).&lt;/p&gt;  &lt;p&gt;There are several additional things we’ve been working on from a user experience perspective. We’ll cover these in more detail in subsequent posts but they include:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Conditionally showing the sign in button if the user has recently signed into Windows Live ID (&lt;a href="http://isdk.dev.live.com/ApiPlayground.aspx?sampleId=IsLiveUser&amp;amp;idx=1" target="_blank"&gt;more technical info&lt;/a&gt;) &lt;/li&gt;    &lt;li&gt;Registration forms can be customized based on the email address the user entered. E.g. if a user typed @hotmail.com (or any other email address in a Windows Live namespace) the registration form could be tweaked to encourage use of Messenger Connect (&lt;a href="http://msdn.microsoft.com/en-us/library/ff748280.aspx" target="_blank"&gt;more technical info&lt;/a&gt;) &lt;/li&gt;    &lt;li&gt;Inbound traffic such as email marketing/invitations to @hotmail.com addresses or Messenger social updates could include some parameters to tell the web site “the user came from Windows Live” to encourage them to sign in/sign up quickly using Messenger Connect (&lt;a href="http://www.readwriteweb.com/archives/comcast_property_sees_92_success_rate_openid.php" target="_blank"&gt;remember when Plaxo got 92% conversion?&lt;/a&gt;) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;For more information about the underlying technology of authentication, see &lt;a href="http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/27/developing-with-messenger-connect.aspx" target="_blank"&gt;this post&lt;/a&gt; or &lt;a href="http://msdn.microsoft.com/en-us/windowslive/ff723757.aspx" target="_blank"&gt;this page&lt;/a&gt;.&lt;/p&gt;  &lt;h3&gt;My contacts/relationships are part of my identity too&lt;/h3&gt;  &lt;p&gt;Another thing we’ve heard from customers, and observed on the web, is that customers want to be able to automatically find their friends on a web site or be able to invite them to a site via email. Historically the Windows Live Contact API enabled users to take their entire address book with them to another web site for the purposes of &lt;b&gt;friend finding&lt;/b&gt; (indexed by email) and &lt;b&gt;friend inviting&lt;/b&gt; (by sending an email), or in very specific circumstances &lt;b&gt;migrating their address book&lt;/b&gt;. &lt;/p&gt;  &lt;p&gt;We believe in these scenarios, they are important, and we think they add value to users and partners. However, we also believe in sharing the minimum amount of data required to let a user complete a desired action (&lt;a href="http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/25/messenger-connect-making-your-data-more-portable-while-retaining-control-over-its-use.aspx" target="_blank"&gt;more info&lt;/a&gt;). To that end, in the near future, we will &lt;b&gt;deprecate the existing Windows Live Contacts API and remove email addresses from the Messenger Web Toolkit JavaScript Object Model. &lt;/b&gt;We will post more information regarding the specific timelines and what this means if you are using these interfaces. Moving forward, access to the entire address book (including email addresses of a Windows Live user’s contacts will be restricted (&lt;a href="http://msdn.microsoft.com/en-us/library/ff749529.aspx" target="_blank"&gt;more info&lt;/a&gt;). &lt;b&gt;We are working hard on building public APIs (subject to the &lt;a href="http://msdn.microsoft.com/en-us/windowslive/ff765012.aspx" target="_blank"&gt;Terms of Use&lt;/a&gt;) to enable the &lt;i&gt;find my friends by email address&lt;/i&gt; &amp;amp; &lt;i&gt;invite via Email &lt;/i&gt;APIs – look for another post on this topic in the near future.&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.anguslogan.com" target="_blank"&gt;Angus Logan&lt;/a&gt; (&lt;a href="http://twitter.com/anguslogan" target="_blank"&gt;@anguslogan&lt;/a&gt;)     &lt;br /&gt;Senior Technical Product Manager     &lt;br /&gt;Windows Live&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=543774" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/28/identity.aspx</link>
      <pubDate>Mon, 28 Jun 2010 17:36:00 GMT</pubDate>
    </item>
    <item>
      <title>Realtime Shared Experiences with Messenger Connect</title>
      <description>&lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px 0px 0px 5px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="Realtime Shared Experiences with Messenger Connect" border="0" alt="Realtime Shared Experiences with Messenger Connect" align="right" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/8510.image_5F00_174849F7.png" width="360" height="240" /&gt;Communication and sharing has emerged over the past few years as a critical element making experiences more personalized and compelling across the web. Lots of sharing is done asynchronously (via activity feed or email), but for some things you want real time sharing (it is tough &lt;a href="http://public.bay.livefilestore.com/y1pFDdKBkzhokl8qZm7tioL0I5y1gSN1t0CAdupv3-W42iEzXTSwKnC_HniCNRexd6rgGCOGdM3pWmkHoAWk1tF3A/SharingVideoCall02.png" target="_blank"&gt;to view photos&lt;/a&gt; or &lt;a href="http://blogs.msdn.com/b/angus_logan/archive/2010/05/27/new-bbc-iplayer-to-integrate-messenger-for-social-shared-viewing-experiences.aspx" target="_blank"&gt;watch a TV show&lt;/a&gt; together asynchronously &lt;img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/4454.wlEmoticonsmile_5F00_01D684F2.png" /&gt;). The challenge is: how do you know when your friends are available to engage in a real-time sharing experience, knowing the “presence” of your friends is important because it can shape how you engage with them. &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/04/28/preview-of-the-new-windows-live-messenger.aspx" target="_blank"&gt;Having an always-on real time client is essential&lt;/a&gt;, because the likelihood of both users being on the same website at the same time is low except for very special circumstances. Connecting to a persistent chat client via a third party website is necessary to deliver on these scenarios.&lt;/p&gt;  &lt;p&gt;People want to be able to share experiences like inviting a friend to a site &lt;u&gt;in realtime&lt;/u&gt;, chatting with their friends without context switching, and see who else is on the web site. By integrating Messenger, the #1 most used free instant messaging service in the world (&lt;a href="http://windowsteamblog.com/blogs/windowslive/archive/2010/02/25/engineering-messenger-for-real-relationships.aspx" target="_blank"&gt;see some staggering stats&lt;/a&gt;) into your site you will be able to:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Let users connect with their friends in a differentiated, more personal mode of communication &lt;/li&gt;    &lt;li&gt;Reach their friends no matter where they are, on your web site, on their phone, in one of the many Messenger clients (Windows, Mac, iPhone, etc.) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;By adding real time experiences to your site, you are in essence making the site do something it didn’t do before, and conversations are “sticky”, therefore user engagement will go up.&lt;/p&gt;  &lt;p&gt;Some shared experiences you can add to your site are:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;Targeted (to one person or a few people), real time sharing of content&lt;/b&gt;. An example of where this is useful is sharing a picture that you want to discuss, or collaborating on travel plans – things that require realtime action by the other party. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Creating immersive experiences and reducing context switching&lt;/b&gt; - if someone is watching your glorious full screen video or playing an immersive game, they may be worried they’ll miss conversations or not be able to chat with their friends, embedding chat in your media consumption or game play experience will reduce context switching. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Rendezvous (are my friends on this site?) &lt;/b&gt;– for high traffic properties such as live streaming events or video play back, being able to tell if your friends are on the site (after opt-in of course) can drive more time on the site and shared experiences. &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Implementation Options&lt;/h3&gt;  &lt;p&gt;There are a range of implementation options ranging from simplest (least amount of time to code) to most flexible:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/windowslive/ff796213.aspx" target="_blank"&gt;&lt;strong&gt;Sharing Badge&lt;/strong&gt;&lt;/a&gt; – the sharing badge can be added to a site with just a few lines of HTML and can allow users to publish/broadcast to Messenger Social or IM content to one of their friends&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff750122.aspx" target="_blank"&gt;&lt;strong&gt;Chat control for real time events&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; – &lt;/strong&gt;to allow users on the same page to leave real time messages for each other. Users will be able to see the messages from their friends and others on the site.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" class="wlDisabledImage" title="Messenger Connect Chat control" border="0" alt="Messenger Connect Chat control" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6607.image_5F00_77CF0B99.png" width="266" height="393" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff748677.aspx" target="_blank"&gt;&lt;strong&gt;UI Controls&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; – &lt;/strong&gt;a set of JavaScript building blocks which can be combined to speed up development. These controls can be easily skinned using CSS and extended using JavaScript. Try the &lt;a href="http://isdk.dev.live.com/ControlsPlayground.aspx" target="_blank"&gt;Controls Playground&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff752649.aspx" target="_blank"&gt;&lt;strong&gt;JavaScript Library&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; &lt;/strong&gt;– the most advanced and most powerful way to integrate real time experiences into your site. &lt;/p&gt;  &lt;p&gt;To get started adding real-time shared experiences so your site, check out this &lt;a href="http://msdn.microsoft.com/en-us/windowslive/ff759527.aspx"&gt;documentation&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.anguslogan.com" target="_blank"&gt;Angus Logan&lt;/a&gt; (&lt;a href="http://twitter.com/anguslogan" target="_blank"&gt;@anguslogan&lt;/a&gt;)     &lt;br /&gt;Senior Technical Product Manager     &lt;br /&gt;Windows Live&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=543773" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/28/realtime-shared-experiences.aspx</link>
      <pubDate>Mon, 28 Jun 2010 17:36:00 GMT</pubDate>
    </item>
    <item>
      <title>Social Distribution</title>
      <description>&lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px 0px 0px 5px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="Social distribution with Messenger Connect" border="0" alt="Social distribution with Messenger Connect" align="right" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/8105.image_5F00_0474EC9B.png" width="360" height="240" /&gt;Messenger social is the “newsfeed” which is associated with a Windows Live user and shown to their Messenger contacts across Windows Live, including Messenger and Hotmail. The new &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/22/windows-live-messenger-full-or-compact-view-you-decide.aspx" target="_blank"&gt;Messenger full view&lt;/a&gt; is optimized for showing users their friend’s activity across a range of sites. For a limited set of partners (Facebook and MySpace today, LinkedIn coming soon) it allows users to comment inline back to these sites. For others, it allows users to share activities with their friends in Windows Live and enables users to click through to partner sites.&lt;/p&gt;  &lt;p&gt;The simplest and most unique is the &lt;a href="http://msdn.microsoft.com/en-us/windowslive/ff796213.aspx" target="_blank"&gt;Messenger Connect sharing badge&lt;/a&gt;. This badge operates like other sharing badges, resulting in a social update. If the user chooses to; they can send an instant message to one of their Messenger contacts and have a conversation in real time about the content.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" class="wlDisabledImage" title="Bing using Messenger Connect to share results" border="0" alt="Bing using Messenger Connect to share results" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6763.image_5F00_6CFA3869.png" width="450" height="274" /&gt;&lt;/p&gt;  &lt;p&gt;An individual entry in the newsfeed (aka activity) is known as a &lt;i&gt;social update in Messenger&lt;/i&gt;. There are &lt;a href="http://msdn.microsoft.com/en-us/library/ff748785.aspx" target="_blank"&gt;many different types&lt;/a&gt; (~ 20) of activities (e.g. pictures, comments, ratings), and when clicked they drive traffic back to the partner’s website. &lt;/p&gt;  &lt;p&gt;The supported templates will be evolved on a quarterly basis as new activities become popular. Messenger Connect uses the &lt;a href="http://ActivityStrea.ms" target="_blank"&gt;ActivityStrea.ms&lt;/a&gt; format which is an emerging specification for making user activities portable.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" class="wlDisabledImage" title="Screenshot of Messenger" border="0" alt="Screenshot of Messenger" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/3324.image_5F00_1E38FCFD.png" width="450" height="338" /&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p align="left"&gt;A screenshot of the new &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/22/windows-live-messenger-full-or-compact-view-you-decide.aspx" target="_blank"&gt;Windows Live Messenger in full mode&lt;/a&gt;, activities appear on the left hand side&lt;/p&gt;  &lt;p align="left"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="Screenshot of Messenger for the iPhone" border="0" alt="Screenshot of Messenger for the iPhone" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/1512.image_5F00_46780984.png" width="227" height="323" /&gt;&lt;/p&gt;  &lt;p align="left"&gt;Screenshot of Messenger social in the &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/21/taking-windows-live-messenger-with-you-on-your-iphone.aspxhttp:/windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/21/taking-windows-live-messenger-with-you-on-your-iphone.aspx" target="_blank"&gt;Windows Live Messenger for iPhone&lt;/a&gt; &lt;/p&gt;  &lt;p align="left"&gt;For a website to publish to Messenger social, push (via &lt;a href="http://msdn.microsoft.com/en-us/library/ff748295.aspx" target="_blank"&gt;JavaScript&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/ff750702.aspx" target="_blank"&gt;REST&lt;/a&gt;) and &lt;a href="http://msdn.microsoft.com/en-us/library/ff750968.aspx" target="_blank"&gt;pull&lt;/a&gt; interfaces exist. The pull interface can be done with existing RSS or Atom feeds with minimal modifications. Below is an example of a comment and the corresponding Atom feed:&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" class="wlDisabledImage" title="Screenshot of a Messenger social update" border="0" alt="Screenshot of a Messenger social update" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6786.image_5F00_0FDA3873.png" width="453" height="123" /&gt;&lt;/p&gt;  &lt;pre&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;?&lt;/span&gt;xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;&lt;span style="color: #0000ff"&gt;?&amp;gt;&lt;/span&gt;
&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;feed&lt;/span&gt; &lt;span style="color: #ff0000"&gt;xmlns&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;http://www.w3.org/2005/Atom&amp;quot;&lt;/span&gt;      
 &lt;span style="color: #ff0000"&gt;xmlns&lt;/span&gt;:&lt;span style="color: #ff0000"&gt;activity&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;http://activitystrea.ms/spec/1.0/&amp;quot;&lt;/span&gt;  
 &lt;span style="color: #ff0000"&gt;xmlns&lt;/span&gt;:&lt;span style="color: #ff0000"&gt;thr&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;http://purl.org/syndication/thread/1.0&amp;quot;&lt;/span&gt; 
 &lt;span style="color: #ff0000"&gt;xmlns&lt;/span&gt;:&lt;span style="color: #ff0000"&gt;media&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;http://purl.org/syndication/atommedia&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Title of the feed&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;http://www.contoso.com/profileid&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;link&lt;/span&gt; &lt;span style="color: #ff0000"&gt;rel&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;alternate&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;type&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;text/html&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;href&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;http://www.contoso.com/profile&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;updated&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Mon, 10 May 2010 14:12:21 GMT&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;updated&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;entry&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;http://www.contoso.com/profileid&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Cool Stuff&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;published&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Mon, 10 May 2010 14:12:21 GMT&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;published&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;updated&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Mon, 10 May 2010 14:12:21 GMT&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;updated&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;link&lt;/span&gt; &lt;span style="color: #ff0000"&gt;rel&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;alternate&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;type&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;text/html&amp;quot;&lt;/span&gt; &lt;br /&gt;     &lt;span style="color: #ff0000"&gt;href&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;http://www.contoso.com/link_to_content&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;content&lt;/span&gt; &lt;span style="color: #ff0000"&gt;type&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;html&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;I think this is cool&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;content&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;activity&lt;/span&gt;:&lt;span style="color: #800000"&gt;verb&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;http://activitystrea.ms/schema/1.0/post&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #c71585"&gt;activity&lt;/span&gt;:&lt;span style="color: #800000"&gt;verb&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;activity&lt;/span&gt;:&lt;span style="color: #800000"&gt;object&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #c71585"&gt;activity&lt;/span&gt;:&lt;span style="color: #800000"&gt;object&lt;/span&gt;-&lt;span style="color: #ff0000"&gt;type&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;http://activitystrea.ms/schema/1.0/comment&lt;br /&gt;&lt;span style="color: #0000ff"&gt;    &amp;lt;/&lt;/span&gt;&lt;span style="color: #c71585"&gt;activity&lt;/span&gt;:&lt;span style="color: #800000"&gt;object&lt;/span&gt;-type&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
      &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Cool Stuff&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
      &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;link&lt;/span&gt; &lt;span style="color: #ff0000"&gt;rel&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;alternate&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;type&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;text/html&amp;quot;&lt;/span&gt; &lt;br /&gt;       &lt;span style="color: #ff0000"&gt;href&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;http://www.contoso.com/link_to_content&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;
      &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;link&lt;/span&gt; &lt;span style="color: #ff0000"&gt;rel&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;preview&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;type&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;image/jpeg&amp;quot;&lt;/span&gt; &lt;br /&gt;       &lt;span style="color: #ff0000"&gt;href&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;http://www.contoso/thumbnail.jpg&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;
      &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;summary&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;I think this is cool&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;summary&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
    &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #c71585"&gt;activity&lt;/span&gt;:&lt;span style="color: #800000"&gt;object&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
  &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;entry&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;feed&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;p&gt;To let your users share activities from your site with their friends in Messenger social, &lt;a href="http://msdn.microsoft.com/en-us/windowslive/ff759528.aspx" target="_blank"&gt;visit this page&lt;/a&gt;. Additionally, if you know what the next big social &lt;a href="http://msdn.microsoft.com/en-us/library/ff747900.aspx" target="_blank"&gt;activity type&lt;/a&gt; will be, leave us a note in the &lt;a href="http://social.msdn.microsoft.com/Forums/en-US/messengerconnect/threads" target="_blank"&gt;forum&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.anguslogan.com" target="_blank"&gt;Angus Logan&lt;/a&gt; (&lt;a href="http://twitter.com/anguslogan" target="_blank"&gt;@anguslogan&lt;/a&gt;) 

  &lt;br /&gt;Senior Technical Product Manager 

  &lt;br /&gt;Windows Live&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=543772" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/28/social-distribution.aspx</link>
      <pubDate>Mon, 28 Jun 2010 17:35:00 GMT</pubDate>
    </item>
    <item>
      <title>Developing with Messenger Connect: Recognizable &amp; intuitive</title>
      <description>&lt;p&gt;&lt;img style="border-right-width: 0px; margin: 0px 0px 0px 5px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="Windows Live REST Explorer screenshot" border="0" alt="Windows Live REST Explorer screenshot" align="right" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2476.image_5F00_044224FB.png" width="360" height="292" /&gt;The primary goal of Messenger Connect is to help web sites &amp;amp; apps grow their traffic and engagement, at a reasonable cost. To that end, the technical implementation and business terms have been designed to be predictable for web developers and marketers who are familiar with the social connections domain. &lt;/p&gt;  &lt;h3&gt;First question I get asked: Is Messenger Connect standards based?&lt;/h3&gt;  &lt;p&gt;We’ve tried to make Messenger Connect as easy as possible for developers to implement. Where possible, the latest emerging specifications and standards have been implemented and Microsoft engineers are actively involved in the community to help evolve the technologies which enable the relatively new use case of social connections. Some of the technologies we have implemented or contributed to are: OAuth WRAP, &lt;a href="http://www.portablecontacts.net" target="_blank"&gt;Portable Contacts&lt;/a&gt;, &lt;a href="http://ActivityStrea.ms" target="_blank"&gt;ActivityStrea.ms&lt;/a&gt;, and &lt;a href="http://www.odata.org" target="_blank"&gt;OData&lt;/a&gt;. &lt;i&gt;What about the next big thing?&lt;/i&gt; As new technologies are created, and developers ask us to implement those technologies, we will work with the community and evaluate adding them to the mix.&lt;/p&gt;  &lt;h3&gt;Implementation options&lt;/h3&gt;  &lt;p&gt;Messenger Connect can be used on web sites (and other apps) to provide Windows Live users access to their information and communicate/share with their friends. This &lt;i&gt;access to information and friends &lt;/i&gt;is made possible by several types of programmatic interfaces:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;b&gt;Badges &lt;/b&gt;– simple HTML tags that can be added to a page &lt;/li&gt;    &lt;li&gt;&lt;b&gt;JavaScript APIs&lt;/b&gt; (including user interface controls) which execute within most popular browsers and talk directly to the Windows Live services &lt;/li&gt;    &lt;li&gt;&lt;b&gt;.NET APIs&lt;/b&gt; which can be used in server-side ASP.NET code or in rich client applications &lt;/li&gt;    &lt;li&gt;&lt;b&gt;RESTful services &lt;/b&gt;end points which can be called in a server-to-server manner &lt;/li&gt; &lt;/ol&gt;  &lt;h4&gt;Badges&lt;/h4&gt;  &lt;p&gt;Some developers don’t want to write JavaScript or server side code. That is OK. Our sharing badge can be simply added to a page in a few lines of code. &lt;/p&gt;  &lt;blockquote&gt;   &lt;pre&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;a&lt;/span&gt; &lt;span style="color: #ff0000"&gt;href&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;http://profile.live.com/badge?url={your URL}&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;title&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;Share with Messenger&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;target&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;”blank”&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;  &amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;img&lt;/span&gt; &lt;span style="color: #ff0000"&gt;style&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;border-style:none; vertical-align:middle; margin-right:4px&amp;quot;&lt;/span&gt; &lt;br /&gt;     &lt;span style="color: #ff0000"&gt;src&lt;/span&gt;=&amp;quot;&lt;span style="color: #0000ff"&gt;http://img.wlxrs.com/$Live.SN.MessengerBadge/icon16wh.png&amp;quot;&lt;/span&gt; &lt;br /&gt;&lt;span style="color: #ff0000"&gt;     alt&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;&amp;quot;Share with Messenger&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;Messenger&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;a&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;p&gt;Try it: &lt;a title="Share with Messenger" href="http://profile.live.com/badge?url=http%3A%2F%2Fwindowsteamblog.com%2Fwindows_live%2Fb%2Fdeveloper%2Farchive%2F2010%2F06%2F27%2Fdeveloping-with-messenger-connect.aspx" target="_blank"&gt;&lt;img style="border-bottom-style: none; border-right-style: none; border-top-style: none; vertical-align: middle; border-left-style: none; margin-right: 4px" alt="Share with Messenger" src="http://img.wlxrs.com/$Live.SN.MessengerBadge/icon16wh.png" /&gt;Share&lt;/a&gt; &lt;/p&gt;
&lt;/blockquote&gt;

&lt;h4&gt;Consent, access, privacy, data rights, revocation&lt;/h4&gt;

&lt;p&gt;We recently posted about the privacy aspects of Messenger Connect (&lt;a href="http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/25/messenger-connect-making-your-data-more-portable-while-retaining-control-over-its-use.aspx" target="_blank"&gt;read it here&lt;/a&gt;). We strongly believe that users own their data and they should be able to share or access it from the websites and applications they want to. Web sites cannot access any of a user’s non-public information from Windows Live without prior consent (&lt;i&gt;see the experience below&lt;/i&gt;) from the Windows Live user. App developers are encouraged to only request the bare minimum of permissions required to &lt;i&gt;complete the desired scenario &lt;/i&gt;in a just in time manner (E.g. if a user is signing up, ask for their profile, if a user is adding something to their calendar, ask for calendar write permissions). If a user chooses not to grant permission for the site to access what they requested, the web site must handle the exception flow and reduce the permission requests, or explain why those permissions are required.&lt;/p&gt;

&lt;p&gt;If the user leaves the “Remember this connection” checkbox checked (it is checked by default), the web site will be granted permission for 1 year (or until the user revokes the permissions). If the user unchecks the “Remember this connection” button, the web site will get access for 3 hours. At any point in time the user can browse to &lt;a href="http://consent.live.com" target="_blank"&gt;http://consent.live.com&lt;/a&gt; and revoke the permissions they previously granted the web site. After the token expires, or the user revokes permission, the web site would get 401 Unauthorized errors when trying to access the data, and would need to re-request that the user grants permission. &lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;The web site renders a “sign in” button either manually by creating HTML, or using the wl:signin tag. If the web site uses the wl:signin tag (&lt;a href="http://isdk.dev.live.com/ControlsPlayground.aspx?controlId=signincontrol"&gt;more info&lt;/a&gt;), an additional attribute can be added to only show the sign in button if a Windows Live cookie exists. &lt;/li&gt;

  &lt;li&gt;The user browsing the website (e.g. www.example.com) and sees a Messenger Connect button and clicks Sign In. To ensure the most Windows Live users know they can “Connect”, the iconography used for button will be &lt;u&gt;aligned behind a single brand&lt;/u&gt; used across all “non-Windows Live” web sites (i.e. the current Hotmail / Messenger / Windows Live / SkyDrive brand fragmentation will be reduced in “off-network” scenarios). &lt;/li&gt;

  &lt;li&gt;A popup window is opened which includes the partner’s logo, a link to their Terms of Service and Privacy Statement. The partner must clearly outline in their ToS &amp;amp; Privacy Statement what they will be doing with the permission granted by the end user. &lt;/li&gt;

  &lt;li&gt;The user can click “What will I share?” to see each individual permission the partner is requesting. &lt;/li&gt;
&lt;/ul&gt;

&lt;p align="left"&gt;&lt;img style="border-right-width: 0px; margin: 5px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="Messenger Connect Consent User Experience" border="0" alt="Messenger Connect Consent User Experience" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/4300.image14_5F00_5D1B29BB.png" width="240" height="234" /&gt;&lt;img style="border-right-width: 0px; margin: 5px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="Messenger Connect Consent User Experience (Details)" border="0" alt="Messenger Connect Consent User Experience (Details)" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5618.image16_5F00_17D2ACC5.png" width="240" height="232" /&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;If the user grants permission, a token is returns to the site, and the window will be closed. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One a website has been granted the appropriate permissions and has received the token, access to the user’s Windows Live data &amp;amp; services is possible through two interfaces: JavaScript &amp;amp; RESTful interfaces. &lt;/p&gt;

&lt;p&gt;The permission granted is for 1 year (unless the user unchecks &lt;i&gt;Remember this Connection&lt;/i&gt;). If the web site wants to access the Windows Live resources without the user being present, or without the user seeing the Messenger Connect consent screen again, the token should be stored alongside the user’s profile in the partner’s website. &lt;/p&gt;

&lt;p&gt;If the user changes their mind and no longer wants the web site to have the ability to interact with their Windows Live account, the user can go to &lt;a href="http://consent.live.com" target="_blank"&gt;http://consent.live.com&lt;/a&gt; to revoke permissions at any time. If the partner tries to interact with the user’s Windows Live account after consent has been revoked, they would get “unauthorized access” errors and would need to re-request access from the user.&lt;/p&gt;

&lt;h4&gt;JavaScript libraries &amp;amp; user interface controls&lt;/h4&gt;

&lt;p&gt;Adding a script reference to the Messenger Connect dynamic loader enables access to a wide range of Windows Live data and Messenger features, including IM conversations. Developers can choose to use the data objects only or can add UI elements such as &amp;lt;wl:signin&amp;gt;, &amp;lt;wl:userinfo&amp;gt; or &amp;lt;wl:bar&amp;gt; to their page. You can experiment with the data model and controls hands-on using our new interactive SDK at &lt;a href="http://isdk.dev.live.com/" target="_blank"&gt;http://isdk.dev.live.com/&lt;/a&gt;.&lt;/p&gt;

&lt;h4&gt;RESTful service endpoints&lt;/h4&gt;

&lt;p&gt;A set of cloud endpoints are available to web sites and applications for the purposes of accessing and managing user data. Generally the RESTful service endpoints will be used for web sites that want more of a “roll your own” approach to data access. Additionally, the RESTful endpoints are useful for sites that want to access the user’s data while the user is not present (for example: out of band processing of data - each week the website could make a call to Windows Live to download a user’s address book to see if some of their Windows Live friends have joined the web site).&lt;/p&gt;

&lt;p&gt;These endpoints are multi-headed (&lt;i&gt;the data is generally available in several formats&lt;/i&gt;), and can be queried and sorted. If developers prefer the data to be returned in several formats this is easily configurable using the $format query string key (for plain XML $format=XML, for JavaScript Object Notation (JSON) use $format=JSON, the dynamic formatting is also applied to emerging specifications/standards such as $type=portable). Additional formats for representing user data will be added based on partner feedback.&lt;/p&gt;

&lt;p&gt;The RESTful service endpoints are also intelligent and most data-types exposed will support filter, select, orderby, and count the protocol used is the &lt;a href="http://www.odata.net/" target="_blank"&gt;Open Data Protocol&lt;/a&gt; (&lt;a href="http://www.odata.net" target="_blank"&gt;OData&lt;/a&gt;). &lt;/p&gt;

&lt;h3&gt;&lt;a name="_Standards_we_use"&gt;&lt;/a&gt;&lt;a name="_Getting_access_and"&gt;&lt;/a&gt;Developer tooling&lt;/h3&gt;

&lt;p&gt;To make it easy for developers to kick the tires, we’ve created a few tools: the &lt;b&gt;Controls Playground&lt;/b&gt;, the &lt;b&gt;API Playground&lt;/b&gt;, and the &lt;b&gt;REST Explorer&lt;/b&gt; – these tools will evolve over time as we see where developers need help. In a future post we’ll share details about the statistics which will be available from the application management portal.&lt;/p&gt;

&lt;p&gt;The &lt;a href="http://isdk.dev.live.com/ControlsPlayground.aspx" target="_blank"&gt;Controls Playground&lt;/a&gt; lets you quickly preview the Windows Live UI controls in action, customize controls and see results in real-time and also generates markup for these controls for you to copy, paste in your application.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7266.image_5F00_3B262F25.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" class="wlDisabledImage" title="Windows Live Interactive SDK - Controls Playground" border="0" alt="Windows Live Interactive SDK - Controls Playground" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6320.image_5F00_thumb_5F00_125AA40F.png" width="470" height="284" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The &lt;a href="http://isdk.dev.live.com/ApiPlayground.aspx" target="_blank"&gt;API Playground&lt;/a&gt; lets you try out the API service to see what type of interactions are possible:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Select common tasks such as adding a new contact to Windows Live, and preview the code &lt;/li&gt;

  &lt;li&gt;See common API usage patterns &lt;/li&gt;

  &lt;li&gt;Run API code, using sample data, and see the output in real-time &lt;/li&gt;

  &lt;li&gt;See the underlying REST HTTP traffic including request and response &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/8836.image_5F00_20D5A034.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" class="wlDisabledImage" title="Windows Live Interactive SDK - API Playground" border="0" alt="Windows Live Interactive SDK - API Playground" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7673.image_5F00_thumb_5F00_5401B3D0.png" width="470" height="313" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The &lt;a href="http://rex.mslivelabs.com" target="_blank"&gt;REST Explorer&lt;/a&gt; lets you interact with the RESTful endpoints directly against your own Windows Live ID.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5488.image_5F00_3018DC76.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" class="wlDisabledImage" title="Windows Live Interactive SDK - REST Explorer" border="0" alt="Windows Live Interactive SDK - REST Explorer" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/8345.image_5F00_thumb_5F00_1DBFEFE7.png" width="470" height="378" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you have any questions about the different ways of developing with Messenger Connect, please visit &lt;a href="http://social.msdn.microsoft.com/Forums/en-US/messengerconnect/threads" target="_blank"&gt;our forums&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.anguslogan.com" target="_blank"&gt;Angus Logan&lt;/a&gt; (&lt;a href="http://twitter.com/anguslogan" target="_blank"&gt;@anguslogan&lt;/a&gt;) 

  &lt;br /&gt;Senior Technical Product Manager 

  &lt;br /&gt;Windows Live&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=543771" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/28/developing-with-messenger-connect.aspx</link>
      <pubDate>Mon, 28 Jun 2010 17:35:00 GMT</pubDate>
    </item>
    <item>
      <title>Messenger Connect – Making your data more portable while retaining control over its use</title>
      <description>&lt;p&gt;Last week Omar Shahine blogged about our &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/17/giving-you-more-meaningful-choices-to-control-your-privacy.aspx" target="_blank"&gt;new privacy features in Windows Live&lt;/a&gt;, where we’ve made some improvements that we hope you will appreciate and find both powerful and easy to use. We also recently &lt;a href="http://windowsteamblog.com/Windows_Live/b/windowslive/archive/2010/04/29/messenger-across-the-web.aspx" target="_blank"&gt;announced Windows Live Messenger Connect&lt;/a&gt;, an exciting new feature set that enables you to easily connect to Windows Live from third party applications and lets you &lt;b&gt;take your Windows Live experience and data,&lt;/b&gt; &lt;b&gt;with your consent and at your discretion&lt;/b&gt;. Additionally, we also announced the &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/04/28/preview-of-the-new-windows-live-messenger.aspx" target="_blank"&gt;new Messenger&lt;/a&gt; (&lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/23/announcing-the-new-windows-live-essentials-beta.aspx" target="_blank"&gt;try it now&lt;/a&gt;), which provides the most complete picture of what your friends are doing across your social networks and other sharing sites, including comprehensive integration with Facebook, LinkedIn, and MySpace.&lt;/p&gt;  &lt;p&gt;We believe that you should be able to choose to take your Windows Live data with you when you travel the web. Messenger Connect allows you to do that by providing a way to sign in to third party web and client applications using your Windows Live ID. Messenger Connect allows you to bring your Windows Live profile and contacts with you; easily share with your friends and enable Windows Live Messenger-based chat within third party applications; and access your photos, calendar, and more. In order to enable third party applications to ‘connect’ and interact with Windows Live accounts, we needed to design to help to ensure that customers’ data is protected and accessed in a manner consistent with customers’ expectations and desires, as well as enable great partner experiences. These principles guided our design work: &lt;/p&gt;  &lt;h3&gt;Principle 1: Data portability (you own your data)&lt;/h3&gt;  &lt;p&gt;As a top-level principle, &lt;a href="http://dev.live.com/blogs/devlive/archive/2008/03/25/237.aspx" target="_blank"&gt;we believe that customers own their data&lt;/a&gt;. Your identity and profile, your address book, your newsfeed, your photos, your documents: as a Windows Live customer, you own all that data. So you should be able to take that data with you. Our role is to help you protect your data, help you make informed decisions about how your data is accessed and updated, and help you port your data to other places like the PC. That means that if you would like to access your Windows Live data from a different third party service, or even take your data completely to another service, you should be able to do that. To enable this, we give you ways to export your data from Windows Live into common formats, so that you can import it to wherever you like, as well as in many cases make this more seamless with direct integrations with partners. In a world where people are connecting services back and forth from each other, this can be complex. Just to be clear, when you connect one of your social networks (like Facebook, MySpace, and LinkedIn) to Messenger, any of your data or your friends data made available to Messenger via those connections is governed by our partners’ policies and our agreements with them.&lt;/p&gt;  &lt;h3&gt;Principle 2: You have control over your data&lt;/h3&gt;  &lt;p&gt;As Omar discussed in his &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/17/giving-you-more-meaningful-choices-to-control-your-privacy.aspx" target="_blank"&gt;post&lt;/a&gt;, customers should be able to easily control who has access to their data in Windows Live. You entrust Windows Live with your data, and it is only available and accessible within Windows Live. But we also know that you may want to be able to access your Windows Live data in the third party applications or websites you use. For example, you may want to share your photos or other non-public data with your friends. We make it possible for you to do so, but you have to give us your consent first. And, if at any point, you decide you would like to revoke a partner’s access to your data – you should be able to easily do so.&lt;/p&gt;  &lt;h3&gt;Principle 3: Right data for the right scenario&lt;/h3&gt;  &lt;p&gt;We believe that third party applications that access Windows Live should only access the minimum amount of user information required to complete the desired scenarios. For example: if a web site only needs permission to publish social updates, they shouldn’t also request permissions for reading photos. &lt;/p&gt;  &lt;h3&gt;Messenger Connect: Making my data and my friends data available in a responsible manner&lt;/h3&gt;  &lt;p&gt;There are cases where challenges and tradeoffs between privacy and data portability exist. An example of this tension is where a customer would like to share their complete address book with a third party, and that address book contains information such as email addresses and phone numbers. The contents of my address book are a combination of “my information” as it is “my address book” but may also include my friends’ email addresses and phone numbers. These shared data ownership scenarios are complex and have informed our design choices.&lt;/p&gt;  &lt;p&gt;Independent of the information type or service access being made available, we have been working to replace unauthorized “&lt;a href="http://en.wikipedia.org/wiki/Web_scraping" target="_blank"&gt;screen-scraping&lt;/a&gt;” models, which require customers to share their usernames &amp;amp; passwords (“credentials”) in an unsecure manner with many sites, with the use of safer, legitimate APIs. The use of legitimate APIs and clear user consent flows have been important across the industry as they provide a safer alternative to requiring customers to share their credentials with third parties. Moving third parties away from screen scraping and the practice of asking users for their credentials without the use of APIs that use delegated authentication (&lt;a href="http://oauth.net/about/" target="_blank"&gt;more info&lt;/a&gt;) is important because when you share your credentials in the clear these websites can now act on your behalf. Even if a web site is not malicious, your credentials could be exposed if the third party service is compromised. Use of APIs helps to promote customer credential security, enables selective disclosure of information and the ability to revoke access.&lt;/p&gt;  &lt;p&gt;To help us safeguard customers’ privacy and enable partner scenarios, we’ve created two distinct tiers of partner access policies. Both tiers require explicit customer consent, and follow the same security model, but are available for different group of third parties.&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;u&gt;Public APIs&lt;/u&gt;: Our “Public APIs” are available to all developers and third parties to access in a self-service manner. Appropriate use is governed by our &lt;a href="http://msdn.microsoft.com/en-us/windowslive/ff765012.aspx" target="_blank"&gt;Terms of Use&lt;/a&gt; and &lt;a href="http://explore.live.com/microsoft-service-agreement?mkt=en-us" target="_blank"&gt;Terms of Service&lt;/a&gt;, and is monitored for abuse reported by customers. Third parties can sign-up for access through our application management tool at &lt;a href="http://manage.dev.live.com"&gt;http://manage.dev.live.com&lt;/a&gt;. &lt;/li&gt;    &lt;li&gt;&lt;u&gt;Restricted APIs&lt;/u&gt;: Our “Restricted APIs” allows third parties to access more sensitive information on behalf of customers. Therefore, these APIs are reserved for a select group of third parties explicitly approved by Microsoft, and meet clear and consistent criteria. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;It is worth noting that within each policy tier, we have provided many ‘granular access scopes’, which allow third parties to request access to specific sets of data to complete a specific scenario. You can learn more about these scopes &lt;a href="http://msdn.microsoft.com/en-us/library/ff749529.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;h4&gt;The experience&lt;/h4&gt;  &lt;p&gt;So, let’s take a quick look at what the experience looks like when connecting with third party applications through Messenger Connect.&lt;/p&gt;  &lt;p&gt;Sign-in and consent. When you click a Windows Live ‘Connect’ &lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5025.image_5F00_3273F289.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6505.image_5F00_thumb_5F00_46F94207.png" width="81" height="24" /&gt;&lt;/a&gt;button on a third party website (explicit customer content is required), it initiates the sign-in and consent experience.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/8055.image_5F00_26DE354A.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7024.image_5F00_thumb_5F00_2605CF60.png" width="485" height="468" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The initial screen provides you with the ability to sign in with your Windows Live ID, and learn about the level of access the third party application is requesting.&lt;/p&gt;  &lt;p&gt;Making informed decisions. When you click the “What will I share?” link, you get detailed information about the specific pieces of data and capabilities the application is looking to access.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5710.image_5F00_3056F3C0.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/5756.image_5F00_thumb_5F00_0FCFB40E.png" width="485" height="469" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Managing access to your data. At any point, you can edit your permissions for any third party application within Windows Live and revoke its access to your data.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/6204.image_5F00_4F2D679E.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7536.image_5F00_thumb_5F00_1BF12E35.png" width="485" height="340" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Reporting abuse. In addition, we provide “Report abuse” links from the Windows Live services so that you can inform us of any application that may be violating our Terms of Service, or generally behaving in a way you find inappropriate. In extreme circumstances, we also have the ability to suspend or revoke a third party application’s ability to use Messenger Connect, thus automatically revoking any permissions a customer granted the third party. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/7701.image_5F00_03BEEA9E.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://windowsteamblog.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-59-34-metablogapi/2110.image_5F00_thumb_5F00_548CFF06.png" width="515" height="414" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I hope this post has given you some insight into how we approach your privacy in Messenger Connect. As Omar &lt;a href="http://windowsteamblog.com/windows_live/b/windowslive/archive/2010/06/17/giving-you-more-meaningful-choices-to-control-your-privacy.aspx" target="_blank"&gt;previously noted&lt;/a&gt;, this is a challenging problem with many complex dimensions, and one that many in the industry continue to struggle with and refine. We are committed to continuously listening to our customers and partners, and together improving the experiences, technologies, and policies.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.anguslogan.com" target="_blank"&gt;Angus Logan&lt;/a&gt; (&lt;a href="http://twitter.com/anguslogan" target="_blank"&gt;@anguslogan&lt;/a&gt;)     &lt;br /&gt;Senior Technical Product Manager     &lt;br /&gt;Windows Live&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://windowsteamblog.com/aggbug.aspx?PostID=543710" width="1" height="1"&gt;</description>
      <link>http://windowsteamblog.com/windows_live/b/developer/archive/2010/06/25/messenger-connect-making-your-data-more-portable-while-retaining-control-over-its-use.aspx</link>
      <pubDate>Fri, 25 Jun 2010 23:30:47 GMT</pubDate>
    </item>
    <item>
      <title>Guide to Bing Query Language Published</title>
      <description>&lt;p&gt;Bing offers several ways to augment a basic Bing query. For the most part, we&amp;rsquo;ve talked about using the Bing API to tailor requests. However, there is another tool that you can use in either an API request or a Bing box: Advanced Query Language. We&amp;rsquo;ve just published an extensive list (with descriptions and examples) of the operators, or syntactical units, that comprise this language. &lt;/p&gt;
&lt;p&gt;For example, if you want to augment a query for &amp;ldquo;windows&amp;rdquo; so that the result pages are from Microsoft.com, you would enter:&lt;/p&gt;
&lt;blockquote&gt;&lt;strong&gt;windows site:microsoft.com&lt;/strong&gt;&lt;/blockquote&gt;
&lt;p&gt;You can view &amp;ldquo;Bing Query Language&amp;rdquo; in one of three formats:&lt;/p&gt;
&lt;div align="center"&gt;
&lt;table width="40%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td width="33%"&gt;&lt;b&gt;FORMAT&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;
&lt;div align="left"&gt;&lt;b&gt;AVAILABLE FROM&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HTML&lt;/td&gt;
&lt;td&gt;
&lt;div align="left"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff795667.aspx"&gt;MSDN&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PDF&lt;/td&gt;
&lt;td&gt;
&lt;div align="left"&gt;&lt;a href="http://download.microsoft.com/download/4/0/B/40B434BE-610D-498E-9365-C474BE4C33C3/Bing_QL_Public.pdf"&gt;Microsoft Download Center&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CHM&lt;/td&gt;
&lt;td&gt;
&lt;div align="left"&gt;&lt;a href="http://www.bing.com/toolbox/media/p/9607860.aspx"&gt;Developer Center&lt;/a&gt;&lt;/div&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;&amp;mdash; Ian Whyte, Bing Developer Center&lt;/i&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9607845" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/06/25/guide-to-bing-query-language-published.aspx</link>
      <pubDate>Fri, 25 Jun 2010 19:19:00 GMT</pubDate>
    </item>
    <item>
      <title>The new Windows Azure Storage Browser in Visual Studio</title>
      <description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/b/jnak/archive/2010/06/10/windows-azure-storage-browser-in-the-visual-studio-server-explorer.aspx"&gt;Jim talks about the new Windows Azure Storage browser in the Server Explorer&lt;/a&gt; that was released with the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=2274a0a8-5d37-4eac-b50a-e197dc340f6f&amp;amp;displaylang=en"&gt;June 2010 release of the Windows Azure Tools&lt;/a&gt;.&amp;nbsp; He talks about what it does as well as some of our thinking when we were building it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10023014" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/06/10/the-new-windows-azure-storage-browser-in-visual-studio.aspx</link>
      <pubDate>Thu, 10 Jun 2010 16:04:21 GMT</pubDate>
    </item>
    <item>
      <title>Writing Your First Bing Map App</title>
      <description>&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;With the Bing Maps Apps SDK just released, it&amp;rsquo;s time to get started writing apps using the Bing Maps platform.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;The first thing you need is something to map.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;I wanted to do something a little more interesting than your typical &amp;ldquo;Hello World!&amp;rdquo; app, so I chose to map the locations of the planets relative to the earth.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;The necessary calculations are taken care of by the CodePlex project &lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;a href="http://aaplus.codeplex.com/"&gt;&lt;span style="font-family: 'Calibri','sans-serif'; color: blue;"&gt;AAPlus&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;To get started, download the AAPlus code from CodePlex, and compile it against the Silverlight runtime, or use the DLL included in the attached source project.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;After you have that ready, you should set up your solution by following the steps in &lt;a href="http://www.bing.com/community/blogs/maps/archive/2010/06/07/announcing-the-bing-map-app-sdk-and-3-new-bing-map-apps.aspx"&gt;&lt;span style="color: blue;"&gt;this post&lt;/span&gt;&lt;/a&gt;.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;Now that you&amp;rsquo;re set up and ready to go, let&amp;rsquo;s get to coding!&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;We&amp;rsquo;ll start by making a class that extends Microsoft.Maps.Plugins.Plugin.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;The Plugin class is used to import and export functionality needed, and it also acts as the entry point for your app.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;We will need to use several contracts provided by the SDK.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;To get a reference to those contracts, simple create public properties on your plugin class, and decorate them with an ImportSingleAttribute, and the name of the contact to import.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;For this sample, we will add the following properties to import the desired functionality.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Import the LayerManagerContract so we can add the AstronomyLayer upon activation&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; tab-stops: 105.75pt;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;[&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;ImportSingle&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #a31515; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;"Microsoft/LayerManagerContract"&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;, &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;ImportLoadPolicy&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Synchronous)]&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;LayerManagerContract&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; LayerManagerContract { &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;get&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;set&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; }&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Import the PushpinFactoryContract so we can add standard pushpins to the map&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;[&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;ImportSingle&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #a31515; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;"Microsoft/PushpinFactoryContract"&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;, &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;ImportLoadPolicy&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Synchronous)]&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;PushpinFactoryContract&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; PushpinFactoryContract { &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;get&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;set&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; }&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Import the PopupContract so we can register each entity to show a popup on hover&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;[&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;ImportSingle&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #a31515; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;"Microsoft/PopupContract"&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;, &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;ImportLoadPolicy&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Synchronous)]&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;PopupContract&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; PopupContract { &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;get&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;set&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; }&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Import the map contract so we can zoom out to world view upon activation&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;[&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;ImportSingle&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #a31515; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;"Microsoft/MapContract"&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;, &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;ImportLoadPolicy&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Synchronous)]&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;MapContract&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; MapContract { &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;get&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;set&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; }&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;These properties will automatically be set before Initialize is called.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;In Initialize, we just want to set up our primary layer.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;A layer is what allows you to add items to the map, and show UI in the left pane.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;A plugin can have multiple layers, but it&amp;rsquo;s more common to just have one layer per plugin, which is the case here.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;Since there will only ever be one layer, we set it up in our Initialize method.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;// The singleton layer that contains each of the AstronomyEntities&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;private&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyLayer&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; _layer;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Called after all the imports are populated&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;override&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;void&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Initialize()&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;base&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Initialize();&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;_layer = &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyLayer&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;);&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Activate can be thought of as one of the entry points to your application. The other entry point is layer deserialization via permalinks, but I won&amp;rsquo;t cover that in this post.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;In the Activate method, we want to add our layer or bring it to the front.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;This is done by using the LayerManagerContract which we previously imported.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;We also set the map view using the MapContract to show the entire world.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Called when the user launches the application&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Either add the AstronomyLayer or bring it to the front, then zoom out so the entire world is visible.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;override&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;void&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Activate(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;IDictionary&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;string&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;, &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;string&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;gt; activationParameters)&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;base&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Activate(activationParameters);&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;if&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; (LayerManagerContract.ContainsLayer(_layer))&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;LayerManagerContract.BringToFront(_layer);&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;else&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;LayerManagerContract.AddLayer(_layer);&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;// The the view to show the whole world&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;MapContract.SetView(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;LocationRect&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(90, -180, -90, 180));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;We now need to provide an implementation of AstronomyLayer which will add each planet to the layer, and update their positions based on the simulated time.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;// Add each planet to the list of enties&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;// Each entity in this.Entites will be rendered by Entity.Primitive on the map.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Entities.Add(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Mercury, plugin.PushpinFactoryContract));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Entities.Add(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Venus, plugin.PushpinFactoryContract));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Entities.Add(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Mars, plugin.PushpinFactoryContract));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Entities.Add(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Jupiter, plugin.PushpinFactoryContract));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Entities.Add(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Saturn, plugin.PushpinFactoryContract));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Entities.Add(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Uranus, plugin.PushpinFactoryContract));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Entities.Add(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Neptune, plugin.PushpinFactoryContract));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Entities.Add(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Pluto, plugin.PushpinFactoryContract));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;An entity on a layer is a point of interest, business, location, region or other item that you want to place on the map surface.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;We create a custom entity class called AstronomyEntity which holds information about which planet the entity represents, and calls the AAPluss library to find the location of the planet at a given time.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Represents a planet we are tracking on the map&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;class&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; : &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Entity&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; The planet enum value&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;private&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; _ellipticalObject; &lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Creates a new AstronomyEntity&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;param name="ellipticalObject"&amp;gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;The planet to track&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;param name="pushpinFactory"&amp;gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;The PushpinFactoryContract used to create pushpins&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; AstronomyEntity(&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalObject&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; ellipticalObject, &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;PushpinFactoryContract&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; pushpinFactory)&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;_ellipticalObject = ellipticalObject;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;// Create a pushpin with the first letter of the planet name in it&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;// Setting the primitive is what will give the entity a visual representation&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;// We can use the default constructor on Location, because we just replace the location as soon as UpdateLocation is called.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Primitive = pushpinFactory.CreateStandardPushpin(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Location&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(), _ellipticalObject.ToString().Substring(0, 1));&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;// Set the entity's name to show in the popup&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Name = _ellipticalObject.ToString();&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Updates the location of the entity to match where the planet would be at a given julian day.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;param name="julianDay"&amp;gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;The julian day&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;void&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; UpdateLocation(&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;double&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; julianDay)&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;EllipticalPlanetaryDetails&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; details = &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Elliptical&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Calculate(julianDay, _ellipticalObject);&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;((&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;PointPrimitive&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;)Primitive).Location = &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Location&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(details.ApparentGeocentricLatitude, details.ApparentGeocentricLongitude);&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; The name of the planet&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;string&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; Name { &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;get&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;private&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;set&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;; }&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;In our AstronomyEntityClass we set the Primitive to a PointPrimitive which is generated using the PushpinFactoryContract we imported.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;In UpdateLocation, we set the PointPrimitive&amp;rsquo;s location to the position of the planet at the given time.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;Now we just need to call UpdateLocation to get the planets to their correct location.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;We add the following line to the AstronomyLayer&amp;rsquo;s constructor:&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;// Initialize the planet locations to their position today&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;DisplayDate = &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;DateTime&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Now;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;Then add the display date property that converts the DateTime to a Julian day, and updates each AstronomyEntity&amp;rsquo;s location.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; The current date that the planets are positioned to.&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;///&lt;/span&gt;&lt;span style="font-family: Consolas; color: green; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: gray; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;public&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;DateTime&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; DisplayDate&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;get&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; { &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;return&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; _displayDate; }&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;set&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;_displayDate = &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;value&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;DateTime&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; utcDate = _displayDate.ToUniversalTime();&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Date&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; date = &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;new&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;Date&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;(utcDate.Year, utcDate.Month, utcDate.Day, &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;true&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;);&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;double&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; julianDay = date.Julian();&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;foreach&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; (&lt;/span&gt;&lt;span style="font-family: Consolas; color: #2b91af; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;AstronomyEntity&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; entity &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;in&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt; &lt;/span&gt;&lt;span style="font-family: Consolas; color: blue; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;this&lt;/span&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;.Entities)&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 3;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;entity.UpdateLocation(julianDay);&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 2;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;span style="mso-tab-count: 1;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;}&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Consolas; color: black; font-size: 9.5pt; mso-bidi-font-family: Consolas; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;We now have enough code to get some pins on the map.&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;Go ahead and try your plugin out and you&amp;rsquo;ll see the planets placed on the map surface near the equator!&lt;span style="mso-spacerun: yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;&lt;span style="font-family: Calibri;"&gt;I&amp;rsquo;ve added a few more features (noted below) to the attached sample. Download it and try it out, then try extending it further or writing your own app.&lt;/span&gt;&lt;/span&gt;&lt;a name="_GoBack"&gt;&lt;/a&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Symbol; color: black; font-size: 12pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 7pt; mso-fareast-font-family: Symbol;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: Arial; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;Animating the DisplayDate so you can watch the planets follow their path over the earth&lt;/span&gt;&lt;span style="font-family: 'Arial','sans-serif'; color: black; font-size: 9pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Symbol; color: black; font-size: 12pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 7pt; mso-fareast-font-family: Symbol;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: Arial; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;Showing popups over the pushpins so you can tell the difference between Mercury and Mars&lt;/span&gt;&lt;span style="font-family: 'Arial','sans-serif'; color: black; font-size: 9pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Symbol; color: black; font-size: 12pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol;"&gt;&amp;middot;&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 7pt; mso-fareast-font-family: Symbol;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: Arial; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;Showing custom UI in the left panel&lt;/span&gt;&lt;span style="font-family: 'Arial','sans-serif'; color: black; font-size: 9pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: Calibri;"&gt;&lt;span style="color: black; font-size: 12pt; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri;"&gt;Ben Lemmon &amp;ndash; Bing Maps Developer&lt;/span&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="line-height: normal; margin: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;"&gt;&lt;span style="font-family: 'Times New Roman','serif'; color: black; font-size: 12pt; mso-fareast-font-family: 'Times New Roman';"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="margin: 0in 0in 10pt;"&gt;&lt;o:p&gt;&lt;span style="font-family: Calibri; font-size: small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9604009" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/06/07/writing-your-first-bing-map-app.aspx</link>
      <pubDate>Mon, 07 Jun 2010 14:03:00 GMT</pubDate>
    </item>
    <item>
      <title>Debug your Windows Azure Cloud Services using IntelliTrace</title>
      <description>&lt;p&gt;A cool new feature in the June 2010 release of the Windows Azure Tools + SDK is the ability to use IntelliTrace in the Cloud.&amp;nbsp; Check out &lt;a href="http://blogs.msdn.com/b/jnak/archive/2010/06/07/using-intellitrace-to-debug-windows-azure-cloud-services.aspx"&gt;this post for more information&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=10020896" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/06/07/debug-your-windows-azure-cloud-services-using-intellitrace.aspx</link>
      <pubDate>Mon, 07 Jun 2010 13:43:22 GMT</pubDate>
    </item>
    <item>
      <title>Announcing the June 2010 Release of the Windows Azure Tools + SDK</title>
      <description>&lt;p&gt;We're &amp;nbsp;pleased to announce the release of the&amp;nbsp;&lt;a href="http://go.microsoft.com/fwlink/?LinkID=128752"&gt;&lt;strong&gt;June&lt;span style="color: #0066dd;"&gt; 2010 Windows Azure Tools + SDK&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The Windows Azure Tools for Microsoft Visual Studio extend Visual Studio 2010 and Visual Studio 2008 to enable the creation, configuration, building, debugging, running, packaging and deployment of scalable web applications and services on Windows Azure.&lt;/p&gt;
&lt;p&gt;New for this release: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Visual Studio 2010 RTM Support: Full support for Visual Studio 2010 RTM. &lt;/li&gt;
&lt;li&gt;.NET 4 support: Choose to build services targeting either the .NET 3.5 or .NET 4 framework. &lt;/li&gt;
&lt;li&gt;Cloud storage explorer: Displays a read-only view of Windows Azure tables and blob containers through Server Explorer. &lt;/li&gt;
&lt;li&gt;Integrated deployment: Deploy services directly from Visual Studio by selecting &amp;lsquo;Publish&amp;rsquo; from Solution Explorer. &lt;/li&gt;
&lt;li&gt;Service monitoring: Keep track of the state of your services through the &amp;lsquo;compute&amp;rsquo; node in Server Explorer. &lt;/li&gt;
&lt;li&gt;IntelliTrace support for services running in the cloud: Adds support for debugging services in the cloud by using the Visual Studio 2010 IntelliTrace feature. This is enabled by using the deployment feature, and logs are retrieved through Server Explorer. Note: Requires Visual Studio Ultimate and .NET 4 roles. &lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://code.msdn.microsoft.com/KB983301"&gt;&lt;strong&gt;&lt;span style="color: #0066dd;"&gt;QFE to enable IntelliTrace on 32-Bit OS&lt;/span&gt;&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10020880" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/06/07/announcing-the-june-2010-release-of-the-windows-azure-tools-sdk.aspx</link>
      <pubDate>Mon, 07 Jun 2010 13:40:00 GMT</pubDate>
    </item>
    <item>
      <title>Bing404 plugin for WordPress</title>
      <description>&lt;p&gt;Announcing the Bing404 plugin for WordPress -- a great new plugin that returns a page of intelligent search results in place&amp;nbsp;of the unhelpful WordPress&amp;nbsp;404 error page by using keywords extracted from the dead URL that otherwise would have resulted in a dreaded "Page Not Found" error. The plugin is part of the Bing Search Library for PHP project and was created in conjunction with PHP guru &lt;a target="_blank" href="http://blog.calevans.com/epk/" title="http://blog.calevans.com/epk/"&gt;Cal Evans&lt;/a&gt;, who has posted a &lt;a target="_blank" href="http://www.phparch.com/2010/06/04/wordpress-404-plugin-built-on-bing-wrapper/" title="Bing404 WordPress plugin tutorial by Cal Evans"&gt;tutorial and details about the plugin on php | architect&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Simply brilliant! And installation is a breeze:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a target="_blank" href="http://wordpress.org/extend/plugins/bing-404/" title="Download the Bing404 plugin from WordPress"&gt;Download the Bing404 plugin from WordPress&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Upload the plugin to your blog&lt;/li&gt;
&lt;li&gt;Activate the plugin&lt;/li&gt;
&lt;li&gt;Insert your AppID*&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Additional&amp;nbsp;information:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;* &lt;a target="_blank" href="http://www.bing.com/developers/appids.aspx" title="Create and App ID"&gt;Create an AppID&lt;/a&gt; if you do not yet have one (Windows Live ID required)&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bing.com/toolbox/developers/" title="Learn more about the Bing API"&gt;Learn more about the Bing API&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://bingphp.codeplex.com/" title="Bing Search Library for PHP"&gt;Bing Search Library for PHP&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thank you for your continued support.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;-- George Thomas Jr., Bing Developer Center&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9603446" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/06/03/bing404-plugin-for-wordpress.aspx</link>
      <pubDate>Thu, 03 Jun 2010 22:55:00 GMT</pubDate>
    </item>
    <item>
      <title>Bing Search Library for PHP</title>
      <description>&lt;p&gt;Announcing the new &lt;a href="http://bingphp.codeplex.com/"&gt;Bing Search Library for PHP&lt;/a&gt;, created&amp;nbsp;in conjunction&amp;nbsp;with&amp;nbsp;&lt;a target="_blank" href="http://blog.calevans.com/epk/" title="PHP guru Cal Evans"&gt;PHP guru Cal Evans&lt;/a&gt;, which is available under an open source BSD license.&amp;nbsp;Not only did Cal design and&amp;nbsp;write the code, but he also posted a &lt;a target="_blank" href="http://blog.calevans.com/2010/06/01/bing-search-api-wrapper-for-php/" title="sample Bing Search Library PHP code"&gt;tutorial&amp;nbsp;that includes sample code for PHP&amp;nbsp;developers&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;The Bing Search Library for PHP provides a simple way to submit queries to and retrieve results from the Bing Engine.&lt;/p&gt;
&lt;p&gt;Visit &lt;a target="_blank" href="http://bingphp.codeplex.com" title="http://bingphp.codeplex.com"&gt;http://bingphp.codeplex.com&lt;/a&gt; for&amp;nbsp;more info about the Bing Search Library for PHP, documentation, to give feedback, ask questions and make feature requests.&lt;/p&gt;
&lt;p&gt;Thank you for your continued support.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;-- George Thomas Jr., Bing Developer Center&lt;/i&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9603204" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/06/01/bing-search-library-for-php.aspx</link>
      <pubDate>Tue, 01 Jun 2010 17:44:00 GMT</pubDate>
    </item>
    <item>
      <title>WCF on Windows Azure</title>
      <description>&lt;p&gt;Jim just &lt;a href="http://blogs.msdn.com/b/jnak/archive/2010/05/27/wcf-on-windows-azure.aspx"&gt;posted about updates to our wcfazure code gallery page &lt;/a&gt;and walks through one of the more common issues with using WCF on Windows Azure - generating proxies.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10016561" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/05/27/wcf-on-windows-azure.aspx</link>
      <pubDate>Thu, 27 May 2010 20:48:56 GMT</pubDate>
    </item>
    <item>
      <title>Comment spam policy update for Bing blogs &amp; forums</title>
      <description>&lt;p&gt;In our continued effort to improve the community experience for all users, we are updating our spam policy, which will take effect May 24, 2010.&lt;/p&gt;
&lt;p&gt;Please review Rick DeJarnette's blog post about the updates, posted to the Webmaster Blog:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.bing.com/community/blogs/webmaster/archive/2010/05/19/comment-spam-policy-update-for-bing-blogs-amp-forums.aspx"&gt;&lt;span style="color: #663399; font-size: small;"&gt;Comment spam policy update for Bing blogs &amp;amp; forums&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thank you for your continued support.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;-- George Thomas Jr., Bing Developer Center&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9601355" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/05/19/comment-spam-policy-update-for-bing-blogs-amp-forums.aspx</link>
      <pubDate>Wed, 19 May 2010 19:42:00 GMT</pubDate>
    </item>
    <item>
      <title>Are you a candidate to run Visual Studio 2010 on a 64-bit OS?</title>
      <description>&lt;P&gt;Brian Harry's just posted an article on configuring an ideal Visual Studio development machine.&amp;nbsp; You can read about it here: &lt;A href="http://blogs.msdn.com/bharry/archive/2010/04/29/your-visual-studio-2010-dream-machine.aspx" mce_href="http://blogs.msdn.com/bharry/archive/2010/04/29/your-visual-studio-2010-dream-machine.aspx"&gt;http://blogs.msdn.com/bharry/archive/2010/04/29/your-visual-studio-2010-dream-machine.aspx&lt;/A&gt;. By the way, if you scroll down and peruse the comments that customers have posted there, you will see recommendations for several other configuration options. Some of these go well beyond the simpler &amp;amp; less expensive ones Brian discussed. If you rely on Visual Studio in your daily work, you may want to give serious consideration to some of these advanced configuration options.&lt;/P&gt;
&lt;P&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;One of topics Brian addresses in his blog was the benefit of running Visual Studio on a 64-bit OS. We’d like to drill into that topic a little deeper in this post.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Visual Studio’s devenv.exe process still runs as a 32-bit process. Under a 32-bit OS, a 32-bit process can only address up to 2 GB of private virtual memory. (For the sake of simplicity, we are going to ignore the &lt;B style="mso-bidi-font-weight: normal"&gt;/3 GB&lt;/B&gt; boot option for 32-bit Windows machines.) The remaining 2 GB of the 4 GB virtual address space is reserved for system addresses. This 2 GB max is an architectural limit on the size of a 32-bit process. All the code and data that gets loaded has to fit in this 2 GB virtual memory space. This may seem a little strange, but as developers working on Visual Studio, but we consider your code – and forms, XAML, DBML, DGML, PDBs for debugging, TFS Work items, and whatever else your Solution loads – as the data Visual Studio has to load &amp;amp; process. The problem arises when Visual Studio needs to load some combination of our code and your data that exceeds this 2 GB architectural limit.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Actually, memory fragmentation issues prevent a 32-bit process like devenv.exe from ever reaching its 2 GB architectural limit. Due to fragmentation, when a 32-bit process address space starts to grow into the 1.7 – 1.8 GB range, the risk that a virtual memory allocation request will fail starts to increase sharply. When a virtual memory allocation request fails, Visual Studio encounters an End of Memory error and crashes. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Obviously, this is a scenario you want to avoid. The cleanest way to get around the problem is to run Visual Studio on a 64-bit OS. On a 64-bit version of Windows, the private area of a 32-bit process expands to encompass the full 4 GB virtual memory addressing range. Due to fragmentation, you can’t quite get to the 4 GB upper limit either, but the effect of the change is to allow devenv.exe to address twice as much private virtual memory. Please don’t take this as a challenge, but&amp;nbsp;we have yet to see a customer scenario that exhausts the full 4 GB address range. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;So, if you think you could be a good candidate for running Visual Studio 2010 under a 64-bit OS, here is what to look for.&amp;nbsp;We will run through a scenario we ran recently on the final RTM version of Visual Studio 2010 Ultimate. The test project is a smallish Web solution with a handful of simple ASP.NET Pages that use LINQ to query the MS SQL Server AdventureWorks demo database. This is a version of an app&amp;nbsp;one of us&amp;nbsp;built last year originally for stress testing some Visual Studio components he was working on. We would characterize this app as “borderline realistic.” For example, the AdventureWorks database has fifty or so inter-related Tables, and its SaleOrderDetail Table contains in excess of 120,000 rows. So it is not a trivial “Hello World” type of app, but the web forms themselves are pretty basic, lacking many of the UI components that you are likely to put into a real-world e-commerce application. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Table 1 shows the main steps in my test scenario and the amount of virtual memory Visual Studio consumed at the end of end of each step. The tool&amp;nbsp;we recommend for measuring virtual memory usage at the process level is &lt;/FONT&gt;&lt;A href="http://technet.microsoft.com/en-us/sysinternals/dd535533.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;VMMap&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;, one of the free Sysinternals utilities. With VMMap, I can see the overall virtual memory usage of the devenv.exe process, broken down according to different types of allocations, which is something&amp;nbsp;we will drill into in a moment.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Here is a summary of the steps of the scenario&amp;nbsp;we ran and the amount of virtual memory allocated by the devenv.exe process at the end of each step.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;
&lt;TABLE style="BORDER-COLLAPSE: collapse; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 0in 0in 0in" class=MsoNormalTable border=0 cellSpacing=0 cellPadding=0 class="MsoNormalTable"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 45.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=61&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;FONT face=Calibri&gt;Step&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 369pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=492&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;FONT face=Calibri&gt;Scenario&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 63.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: black 1pt solid; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=85&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;FONT face=Calibri&gt;VM Usage&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 45.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=61&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 369pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=492&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Open VS with empty solution&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 63.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=85&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;300&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 2"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 45.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=61&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 369pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=492&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Open VS with web solution:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-add-space: auto; mso-list: l1 level1 lfo1" class=MsoListParagraphCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Solution Explorer, Team Explorer, and Server Explorer&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-add-space: auto; mso-list: l1 level1 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&amp;nbsp;Connect to TFS&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-add-space: auto; mso-list: l1 level1 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Open one .cs file Opened in the VS Editor&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-add-space: auto; mso-list: l1 level1 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Open one simple web form opened in Split mode&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-add-space: auto; mso-list: l1 level1 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Open one (.dbml) Data Designer &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-add-space: auto; mso-list: l1 level1 lfo1" class=MsoListParagraphCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Open one TFS Work Item open&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 63.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=85&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;910&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 3"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 45.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=61&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;3&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 369pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=492&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Step 2, plus F5 to Debug Solution, and run to a breakpoint&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-add-space: auto; mso-list: l0 level1 lfo2" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Intellitrace is active at its low (default) setting&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 63.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=85&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;975&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 4"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 45.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=61&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 369pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=492&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Step 3, run to Breakpoint; plus step 10x and then run to 2&lt;SUP&gt;nd&lt;/SUP&gt; Breakpoint&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 63.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=85&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;1060&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 5; mso-yfti-lastrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: black 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 45.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=61&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;5&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 369pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=492&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Step 4, with Resharper installed&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: black 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; WIDTH: 63.9pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: black 1pt solid; PADDING-TOP: 0in" vAlign=top width=85&gt;
&lt;P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" class=MsoNormal align=center&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&amp;gt; 1300&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;FONT face=Calibri&gt;Table 1. Virtual memory usage of Visual Studio at the end of each scenario step.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;In Step 5,&amp;nbsp;we repeated the full scenario, but this time with Resharper, a popular Visual Studio add-in, installed. As Figure 1 shows, at that point, the virtual memory footprint of Visual Studio 2010 exceeds 1.3 GB. Committed bytes exceeds 1.2 GB. While that is not a particularly dangerous amount of virtual memory for Visual Studio to consume, it is still enough to start to make you wary. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;IMG style="WIDTH: 531px; HEIGHT: 363px" title="VMMap screen shot of VS 2010" alt="VMMap screen shot of VS 2010" align=left src="http://rtsdpg.bay.livefilestore.com/y1pGdYZF0QneXOC46VEipluJdVwW1bXzhlItJvCdr6yPqwTB1Q4c-iq1v8vjJRE_5hTL2IjmPH6-pl-X1bgfoqa6wnNg-HF4Djl/VS%20vm%20usage%20with%20resharper%20Screen%20Snaper%20Image.jpg" width=531 height=363 mce_src="http://rtsdpg.bay.livefilestore.com/y1pGdYZF0QneXOC46VEipluJdVwW1bXzhlItJvCdr6yPqwTB1Q4c-iq1v8vjJRE_5hTL2IjmPH6-pl-X1bgfoqa6wnNg-HF4Djl/VS%20vm%20usage%20with%20resharper%20Screen%20Snaper%20Image.jpg"&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;&lt;o:p&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;/SPAN&gt;&lt;/B&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;/SPAN&gt;&lt;/B&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;/SPAN&gt;&lt;/B&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;/SPAN&gt;&lt;/B&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;Figure 1. VMMAP report on Visual Studio’s virtual memory usage for Step 5 in the scenario.&amp;nbsp; (&lt;A title="VMMap report for Visual Studio's devenv process" href="http://rtsdpg.bay.livefilestore.com/y1pGdYZF0QneXOC46VEipluJdVwW1bXzhlItJvCdr6yPqwTB1Q4c-iq1v8vjJRE_5hTL2IjmPH6-pl-X1bgfoqa6wnNg-HF4Djl/VS%20vm%20usage%20with%20resharper%20Screen%20Snaper%20Image.jpg" target=_blank mce_href="http://rtsdpg.bay.livefilestore.com/y1pGdYZF0QneXOC46VEipluJdVwW1bXzhlItJvCdr6yPqwTB1Q4c-iq1v8vjJRE_5hTL2IjmPH6-pl-X1bgfoqa6wnNg-HF4Djl/VS%20vm%20usage%20with%20resharper%20Screen%20Snaper%20Image.jpg"&gt;Click&lt;/A&gt; for full size image.)&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;/SPAN&gt;&lt;/B&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 9pt"&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;FONT size=3&gt;From the standpoint of Visual Studio responsiveness, it is worth noting that the high water mark for the devenv.exe working set was just under 600 MB in Step 5. So this is a scenario that can still readily fit in a machine with the minimum of 1 GB of RAM, and should perform quite well on a machine with 2 GB of RAM.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;Drilling into the virtual memory footprint using the VMMap report shown in Figure 1, we see that the largest single contributor is Images files, code that Visual Studio is loading. For the scenario in step 5, Visual Studio needs to load 775 MB of executable code.&amp;nbsp;we zoomed the VMMap detail report into the Image data and then sorted by Image file size. You can see that many of the image files that Visual Studio loads are quite large, in excess of 10 MB. Meanwhile, private data areas accounted for only about 220 MB of virtual.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;One thing about the Image files that get loaded&lt;SPAN style="COLOR: #1f497d"&gt; &lt;/SPAN&gt;in Visual Studio, the more components of the IDE you use, the more code gets loaded. And once loaded, Visual Studio does not have a mechanism to unload components that you are no longer using. The Image File footprint just keeps on growing throughout your Visual Studio session. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;So, take this simple scenario and apply it to a very large project or solution and exercise a few more Visual Studio components like architectural diagrams and performance profiling, and you may quickly be up against the architectural limit of a 2 GB private process virtual address space. As Visual Studio virtual memory usage approaches that limit, the product becomes unstable on a 32-bit OS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;As Brian’s blog discusses, to avoid possible instability problems, the workaround is to install and run Visual Studio on a 64-bit version of the OS. Hopefully, this discussion will help you understand better whether you are a good candidate to run Visual Studio on a 64-bit version of the OS. Running VMMap to gain a more detailed look at Visual Studio’s virtual memory usage in your specific environment can also be useful.&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;-- David Berg and Mark Friedman&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;o:p&gt;posted May 3, 2010&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10004608" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2010/04/29/your-visual-studio-2010-dream-machine.aspx</link>
      <pubDate>Thu, 29 Apr 2010 07:56:00 GMT</pubDate>
    </item>
    <item>
      <title>Measuring Processor Utilization and Queuing Delays in Windows applications</title>
      <description>&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Continuing my answer to the mail I received recently from Uriel Carrasquilla… &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Uri’s note, reprinted in the previous &lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/ddperf/archive/2010/01/27/statistical-process-control-techniques-in-performance-monitoring-and-alerting.aspx" mce_href="http://blogs.msdn.com/ddperf/archive/2010/01/27/statistical-process-control-techniques-in-performance-monitoring-and-alerting.aspx"&gt;&lt;FONT size=3 face=Calibri&gt;post&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;, refers to an "issue" associated with the current technique for measuring processor utilization in Windows. As my reply mentioned, these are documented and well-understood issues. At the core is the methodology used to calculate processor utilization that was originally designed 20 years ago for Windows NT. Since one of the original goals of Windows NT was to be hardware independent, the measurement methodology was also designed so that it was not dependent on any specific set of hardware measurement features. And therein lies a tale.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;This methodology was amply documented in my &lt;I style="mso-bidi-font-style: normal"&gt;Windows 2003 Server Performance Guide&lt;/I&gt;, published in the Windows 2003 Server Resource Kit. As you know, I wrote that book before I came to work at Microsoft as a full-time employee, but the Windows Server performance team that helped me at the time was quite open to documenting the existing facility, warts and all.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Briefly summarizing what I wrote there (and which still applies today), the % Processor Time counters in Windows are measurements derived using a sampling technique. The OS Scheduler samples the state of the CPU once per system clock tick, driven by a high priority timer-based interrupt. Currently, the clock tick interval the OS Scheduler uses is usually 15.6 ms. (The precise value that the OS uses between timer interrupts is available by calling &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;the &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms724394(VS.85).aspx%20" mce_href="http://msdn.microsoft.com/en-us/library/ms724394(VS.85).aspx%20"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;GetSystemTimeAdjustment()&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt; function.) If the processor is running the Idle loop when the quantum interrupt occurs, it is recorded as an Idle Time sample. If the processor is running some application thread, that is recorded as a busy sample. Busy samples are accumulated continuously at both the thread and process level. When a clock interrupt occurs, the Scheduler performs a number of other tasks, including adjusting the dispatching priority of threads that are currently executing, stopping the progress of any thread that has exceeded its time slice, as well as performing its CPU accounting. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The &lt;I style="mso-bidi-font-style: normal"&gt;System\Processor Queue Length&lt;/I&gt; counter in Perfmon is an &lt;I style="mso-bidi-font-style: normal"&gt;instantaneous&lt;/I&gt; counter that reflects the current number of Ready threads waiting in the OS Scheduler queue. When a performance monitoring application such as Perfmon requests the Processor Queue counter, there is a measurement function that traverses the Scheduler Ready Queue and counts the number of threads waiting for an available processor. Thus, the &lt;I style="mso-bidi-font-style: normal"&gt;System\Processor Queue Length&lt;/I&gt; counter represents one sampled observation, and needs to be interpreted with that in mind. (If memory serves, the data collection process that Charles’ analysis relies upon gathers samples of this measurement several times per minute, &amp;amp; his servers are not idle by design. Which basically means I think what he is doing is just fine.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;What I believe Uri is referring to with regard to this processor Queue Length metric not being “correct” is anomalies in this measurement that are due to the kind of phased behavior you can sometimes see on an otherwise idle system. Even on an mostly idle system, a sizable number of threads can be waiting on the same clock interrupt (typically, polling the system state once per second), one of which also happens to be the Perfmon measurement thread, also cycling once per second. These sleeping threads tend to clump together so that they get woken up &lt;I style="mso-bidi-font-style: normal"&gt;at the exact same time&lt;/I&gt; by the timer interrupt. (As I mentioned, this happens mainly when the machine is idling with little or no real work to do.) These awakened threads then flood the OS dispatching queue at exactly the same time. If one of these threads is the Perfmon measurement thread that gathers the Processor Queue Length measurement, you can see how this “clumping” behavior could distort the measurements. The Perfmon measurement thread executes at an elevated priority level of 15, so it is scheduled for execution ahead of any other User mode threads that were also awakened by the same Scheduler clock tick. The effect is that at the precise time when the Processor ready queue length is measured, there are likely to be a fair number of Ready Threads. Compared to the modeling assumption where processor scheduling is subject to random arrivals, one observes a disproportionate number of Ready Threads waiting for service, even (or especially) when the processor itself is not very busy overall.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;This anomaly is best characterized as a &lt;I style="mso-bidi-font-style: normal"&gt;low-utilization effect&lt;/I&gt; that perturbs the measurement when the machine is loafing. It generally ceases to be an issue when processor utilization climbs or there are more available processors on the machine. But this bunching of timer-based interrupts remains a serious concern, for instance, whenever Windows is running as a guest virtual machine under VMware or Hyper-V. (Please don’t get me started on that topic.) &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Another interesting side discussion is how this clumping of timer-based interrupts interacts with power management, but I do not intend to go there either.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;To summarize, the CPU utilization measurements at the system, process and thread level in Windows are based on a sampling methodology. Similarly, the processor queue length is also sampled. Like any sampling approach, the data gathered is subject to typical sampling errors, including &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;accumulating a sufficient number of sample observations to be able to make a reliable statistical inference about the underlying population, and&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.5in; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;ensuring that there aren’t systemic sources of sampling error that causes sub-classes of the underlying population to be under or over-sampled markedly &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;So, these CPU measurements face familiar issues with sampling size and the potential for systematic sampling bias, as well as the usual difficulty in ensuring that the sample data is &lt;I style="mso-bidi-font-style: normal"&gt;representative&lt;/I&gt; of the underlying population (something known as &lt;I style="mso-bidi-font-style: normal"&gt;non-sampling error&lt;/I&gt;). For example, the interpretation of the CPU utilization data that Perfmon gathers at the process and thread level is subject to limitations based on a small sample size for collection intervals less than, for example, 15 seconds. The &lt;I style="mso-bidi-font-style: normal"&gt;Performance Guide&lt;/I&gt; has a more detailed discussion of these issues, if you are interested.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;
&lt;H3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;FONT size=3&gt;Event-driven measurement approaches.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H3&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;What exactly Windows is going to do about this, I couldn't say -- I work in a different part of the company -- but I have consistently lobbied for a more accurate, event-driven approach to gathering CPU measurements. Efficient power management, for example, strongly argues for an event-driven approach. You do not want the OS to wake up periodically on an idle machine that could otherwise be powered down just to perform its CPU usage accounting duties, for example. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;It is encouraging that recent versions of Windows have taken major steps in this direction, supporting a more accurate event-driven approach using instrumentation added to the Scheduler to measure CPU utilization. The improvements in this area have not gotten much notice, which is something I will try to rectify a bit here. Windows exploits a machine timing facility that is present in both x86 and x64 hardware, namely, the &lt;B style="mso-bidi-font-weight: normal"&gt;rdtsc&lt;/B&gt; Read TimeStamp Counter instruction. Moreover, these improvements position the Windows OS so it can replace its legacy CPU measurement facility with something more reliable and accurate sometime in the near future. Unfortunately, converting all existing features in Windows, including Perfmon and Task Manager, to support the new measurements is a big job, not without its complications and not always as straightforward as one would hope. (One of the complications is using &lt;B style="mso-bidi-font-weight: normal"&gt;rdtsc&lt;/B&gt; on older hardware where the hardware tick rate changes when there is a power management event. There are also issues of clock drift across multiprocessor cores when they are not re-synchronized periodically. I do not want to take the time to discuss these issues in detail here.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;To see this new processor measurement facility at work, access the new Resource Monitor application (resmon.exe) that is available beginning in Vista and Windows Server 2008. Resource Monitor can be launched directly from the command line, or from either Performance Monitor or Task Manager. In case you are not familiar with it, here is a screen shot that shows Resource Monitor in action on a Windows Server 2008 R2 machine, calculating CPU utilization over the last 60 seconds of operation, breaking out that utilization by process. The CPU utilization measurements that ResMon calculates are based on new OS Scheduler instrumentation. These measurements are very accurate, about as good as it gets from a vantage point inside the OS.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&lt;IMG style="WIDTH: 402px; HEIGHT: 302px" title="Windows Resource Monitor" alt="Windows Resource Monitor" align=left src="http://5l3vgw.bay.livefilestore.com/y1pX1wNrsIvjzPmgE1gAtYmHpWhyV51wumpGCzUzdb1hVKHtsSIMsvqf1LAaymfwIr8WhHs612ZOfbnAc_zwq4MHRNI1EIGW7ug/Win7%20Resource%20Monitor.jpg" width=402 height=302 mce_src="http://5l3vgw.bay.livefilestore.com/y1pX1wNrsIvjzPmgE1gAtYmHpWhyV51wumpGCzUzdb1hVKHtsSIMsvqf1LAaymfwIr8WhHs612ZOfbnAc_zwq4MHRNI1EIGW7ug/Win7%20Resource%20Monitor.jpg"&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;Figure 1. The Windows 7 Resource Manager application.&amp;nbsp; (&lt;A title="Windows Resource Manager" href="http://public.bay.livefilestore.com/y1pmGNsLRE7KXC71flyu1tDbdviKnxOsXXi4gjqrnPoelib2crxOBZa-nLKVN7LyRX7GZoevqdD1wcHt3_ZwnhNUQ/Win7%20Resource%20Monitor.jpg" target=_blank mce_href="http://public.bay.livefilestore.com/y1pmGNsLRE7KXC71flyu1tDbdviKnxOsXXi4gjqrnPoelib2crxOBZa-nLKVN7LyRX7GZoevqdD1wcHt3_ZwnhNUQ/Win7%20Resource%20Monitor.jpg"&gt;Click&lt;/A&gt; for full size image.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;FONT size=3&gt;&lt;FONT size=2&gt;&lt;o:p&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;The Resource Monitor measures CPU busy in real time using event-orient measurement data gathered by the OS Scheduler each time a context switch occurs. A context switch occurs in Windows whenever the processor switches the processor execution context to run a different thread. Context switches also occur as a result of high priority Interrupt Service Routines (ISRs), as well as the Deferred Procedure Calls (DPCs) that ISRs schedule to complete the interrupt processing. Starting in Windows 6, the OS Scheduler began issuing &lt;/FONT&gt;&lt;FONT size=3&gt;&lt;STRONG&gt;rdtsc&lt;/STRONG&gt; instructions to get the internal processor clock each time a context switch occurs. (Note: The Windows OS Scheduler not only orders ready threads in its dispatcher queue by priority, it also lets a higher priority thread preemptively interrupt the execution of a lower priority one. This is known as &lt;I style="mso-bidi-font-style: normal"&gt;Preemptive Scheduling with Priority Queuing&lt;/I&gt;. Once executing, a thread is also subject to a maximum time-slice interval, sometimes referred to as the &lt;I style="mso-bidi-font-style: normal"&gt;quantum&lt;/I&gt;. When the Scheduler determines that a thread’s time-slice has expired, the thread is also subject to preemption in favor of another thread from the ready queue of equal priority.&lt;/FONT&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-SIZE: 9pt; mso-bidi-font-size: 11.0pt"&gt;) &lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Meanwhile, the hardware manufacturers have improved the performance of the &lt;STRONG&gt;rdtsc&lt;/STRONG&gt; instruction, making it considerably more efficient for the Scheduler to gather these processor utilization measurements. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;You will notice in the example screen shot shown here in Figure 1 that Resource Manager has calculated that System Interrupts (from ISR and DPC routines) accounts for most of the processor utilization during the last 60 second interval. The machine being monitored is mainly doing file I/O, so this is expected. Although the Resource Monitor display doesn’t say so explicitly, it is worth noting that this is all work being performed in kernel mode.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;Conceptually, a context switch event is something like &lt;STRONG&gt;switch&lt;/STRONG&gt;(&lt;I style="mso-bidi-font-style: normal"&gt;oldThreadId,&lt;/I&gt; &lt;I style="mso-bidi-font-style: normal"&gt;newThreadId&lt;/I&gt;), with an &lt;STRONG&gt;rdtsc&lt;/STRONG&gt; time stamp identifying when the context switch occurred. The Context Switch event also provides the old thread’s Wait Reason code, which helps you to understand why the sequence of thread scheduling events occurred. For reference, a Windows context switch is defined &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms682105(VS.85).aspx"&gt;&lt;FONT color=#0000ff size=3&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;, while the contents of the ETW (Event Tracing for Windows) context switch event record are defined &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/aa964744(VS.85).aspx"&gt;&lt;FONT size=3&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;. Also, see the series of articles by Insung Park and Alex Bendetov that were published in MSDN Magazine entitled “&lt;A href="http://msdn.microsoft.com/en-us/magazine/ee412263.aspx"&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; text-underline: none"&gt;&lt;FONT size=3&gt;Core OS Events in Windows 7&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;FONT size=3&gt;” for additional background and perspective. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;(Note: You have to hunt a bit to find the current values of the KWait_Reason enumeration. Officially, the KWait_Reason enumeration is published in the Wdm.h header file available in the Windows Driver Kit (WDK). Unfortunately, in MSDN, ordinarily the most authoritative places to find something like this, the available documentation tends to lag recent releases of Windows. For instance, the version of the enum provided to the .NET developer available here is considerably out of date. The explain text in Perfmon for the Thread\Thread Wait Reason counter is also not current. If you do not have access to the WDK, try either ProcessHacker or NirSoft instead for more up-to-date documentation.) &lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;The same calculation that the Resource Manager in Windows 7 uses can be performed after the fact using event data from ETW. In their article, Insung and Alex write, “In state machine construction, combining Context Switch, DPC and ISR events enables a very accurate accounting of CPU utilization.” This is the technique used in the &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/performance/default.aspx"&gt;&lt;FONT color=#0000ff size=3&gt;Windows Performance Toolkit&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt; (WPT, which is also known as xperf), for example, to calculate its CPU utilization statistics. (For reference, there is a discussion that illustrates using the WPT to analyze ISR and DPC event data in a previous blog entry entitled “Mainstream NUMA and the TCP/IP stack” posted &lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/ddperf/archive/2008/06/10/mainstream-numa-and-the-tcp-ip-stack-part-i.aspx"&gt;&lt;FONT color=#0000ff size=3&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;The new Concurrency Visualizer, which my colleague Hazim Shafi discusses in &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/magazine/ee336027.aspx"&gt;&lt;FONT color=#0000ff size=3&gt;a recent MSDN Magazine article &lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;entitled “Performance Tuning with the Concurrency Visualizer in Visual Studio 2010 in the Visual Studio 2010 Profiler”, also consumes Context Switch events to calculate processor utilization for the application being profiled. An interesting twist in the Concurrency Visualizer’s CPU Utilization View is that the view pivots based on the application you are profiling, which is likely how a developer engaged in a performance investigation wants to see things. Based on the sequence of context switch trace events, the Concurrency Visualizer calculates processor utilization by the process, aggregates it for the current selection window, and displays it in the CPU Utilization View. In the CPU Utilization View, all other processor activity for processes (other than one being profiled) is lumped together under a category called “Other Processes.” System-processes and the “Idle process,” which is a bookkeeping mechanism, not an actual process that is dispatched, are also broken out separately. See Hazim’s article for more details. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;Beyond its CPU utilization calculations, the Concurrency Visualizer’s primary focus is on being able to reconstruct the sequence of events that impact an application’s execution progress. The Concurrency Visualizer’s Threads View is the main display showing an application’s execution path. The view here is of execution progress on a thread by thread basis. For each thread in your application, the Concurrency Visualizer shows the precise sequence of context switch events that occurred. These OS Scheduler events reflect that thread’s execution state. See Figure 2 for an example of this view.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;Figure 2 shows the execution path of six application threads, a Main thread, a generic worker thread, and 4 CLR worker threads that the application created by instantiating a &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/3dasc8as(VS.100).aspx"&gt;&lt;FONT size=3&gt;ThreadPool&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt; object. (There were originally more threads than this, but I have hidden some that were inactive over the entire run.) For each thread, the execution state of the thread – whether it is running or whether it is blocked –is indicated over time. The upper part of the display is a timeline that shows the execution state of each thread over time. The execution progress of each thread display is constructed horizontally from left to right from rectangles that indicate the start and end of a particular thread state. An interval when the thread was running shows as green. An interval where the thread is sleeping is shown in blue. A ready thread that is blocked from executing because a higher priority thread is running is shown in yellow. (This state is labeled “preemption.”) A thread in a synchronization delay waiting on a lock is shown as red.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;On the lower left of the display is a Visible Timeline Profile. This summarizes the state of all threads that are visible within the selected time window. In the screen shot in Figure 2, I have zoomed into a window that is approximately 150 milliseconds wide. During that interval, the threads shown were in a state where they were actively executing instruction only 11% of the time. For 25% of the time interval, threads were blocked waiting on a lock. There is a tabbed display at the lower right. If you click on the “Profile Report” tab, a histogram displays that summarizes the execution state of each individual thread over the time window. In the screen shot, I have clicked on the “Current stack,” which displays the call stack associated with the ETW context switch event. If the thread is blocked, the call stack indicates where in the code the thread will resume execution once it unblocks. We will drill into that call stack in a moment.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;Note: The Threads View also displays call stacks from processor utilization samples that ETW gathers on a system-wide basis once per millisecond. These are available during any periods when the thread is executing instructions (and ETW execution sampling is active).&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;One of the other ETW events that the Concurrency Visualizer analyzes is the &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/dd765158(VS.85).aspx"&gt;&lt;FONT size=3&gt;ReadyThread&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt; event. The interval between a ReadyThread event and a subsequent Context Switch that signals that a ready Thread is being dispatched measures CPU queue time delay directly. Using event data, it is possible to measure CPU queuing delays to a degree of precision that far exceeds anything that can be done using performance counters.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;The Concurrency Visualizer screen shot in Figure 2 illustrates the calculation of CPU queue time delay. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Thread 6920, which happens to be a CLR thread pool worker thread, is shown at a point in time where it was preempted by a higher priority task. The specific delay that I zoomed in on in the screen shot is preemption due to the scheduling of a high priority LPC or ISR – note this category also encompasses assorted APCs and DPCs. In this specific example, execution of Thread 6920 was delayed for 0.7718 milliseconds. According to the trace, that is the amount of time between Thread 6920 being preempted by a high priority system routine and a subsequent context switch where the ready thread was finally re-dispatched. &lt;/FONT&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;IMG style="WIDTH: 491px; HEIGHT: 413px" title="Thread 6920 preempted by an ISR" alt="Thread 6920 preempted by an ISR" align=left src="http://public.bay.livefilestore.com/y1psA60dtVg4Nh_gGSu9X72_Y7sgeRdJKr_37IOLqa11r7AR_ibr5K6zOqkqdGk4op643-na84TRUpksKJZiuSjBg/Concurrency%20visualizer%20screen%20shot%20showing%20preemption%20by%20a%20higher%20priority%20ISS%20or%20DPC%20event.jpg" width=491 height=413 mce_src="http://public.bay.livefilestore.com/y1psA60dtVg4Nh_gGSu9X72_Y7sgeRdJKr_37IOLqa11r7AR_ibr5K6zOqkqdGk4op643-na84TRUpksKJZiuSjBg/Concurrency%20visualizer%20screen%20shot%20showing%20preemption%20by%20a%20higher%20priority%20ISS%20or%20DPC%20event.jpg"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;Figure 2. Screen shot of the Concurrency Visualizer illustrating thread preemption by a higher priority system routine.&amp;nbsp; (&lt;A title="Thread 6920 preempted by an ISR" href="http://public.bay.livefilestore.com/y1psA60dtVg4Nh_gGSu9X72_Y7sgeRdJKr_37IOLqa11r7AR_ibr5K6zOqkqdGk4op643-na84TRUpksKJZiuSjBg/Concurrency%20visualizer%20screen%20shot%20showing%20preemption%20by%20a%20higher%20priority%20ISS%20or%20DPC%20event.jpg" target=_blank mce_href="http://public.bay.livefilestore.com/y1psA60dtVg4Nh_gGSu9X72_Y7sgeRdJKr_37IOLqa11r7AR_ibr5K6zOqkqdGk4op643-na84TRUpksKJZiuSjBg/Concurrency%20visualizer%20screen%20shot%20showing%20preemption%20by%20a%20higher%20priority%20ISS%20or%20DPC%20event.jpg"&gt;Click&lt;/A&gt; for full size image.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;The tool also displays the call stack of the preempted thread. The call stack indicates that the CLR’s garbage collector (GC) was running at the time that thread execution was preempted. From the call stack, it looks like the GC is sweeping the Large Object Heap (LOH), trying to free up some previously allocated virtual memory. This is not an opportune time to get preempted. You can see that one of the other CLR worker threads, Thread 6420, is also delayed. Notice from the color coding that Thread 6420 is delayed waiting on a lock. Presumably, one of the other active CLR worker threads in the parent process holds the lock that Thread 6420 is waiting for. &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;This is one of those “Aha” moments. If you click on the synchronization delay that Thread 6420 is experiencing, as illustrated in Figure 3, you can see that the lock that Thread 6420 is trying to acquire is, in fact, currently held by Thread 6920. Clicking on the tab that says “Current Stack” (not shown) indicates that the duration of the synchronization delay that Thread 6420 suffered in this specific instance of lock contention was about 250 milliseconds. &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;The scenario here shows one CLR worker thread blocked on a lock that is held by another CLR worker thread, which in turn finds itself being delayed due to preemptions from higher priority Interrupt processing. We can see that whatever high priority work preempted Thread 6920 has the side effect of also delaying Thread 6420, since 6420 was waiting on a lock that Thread 6920 just happened to be holding at the time. The tool in Figure 3 displays the Unblocking stack from Thread 6920 which shows the original memory allocation from the Dictionary.Resize() method call being satisfied, releasing a global GC lock. When Thread 6920 resumed execution following its preemption, the GC operation completes, releasing the global GC lock. Thread 6920 continues to execute for another 25 microseconds or so, before it is preempted because its time slice expired. Even as Thread 6920 blocks, Thread 6420 continues to wait while a different CLR thread pool thread (4664) begins to execute instead. Finally, after another 25 microseconds delay, Thread 6420 resumes execution. For a brief period both 6420 and 4664 execute in parallel from approximately the 7640 to 7650 microsecond milestones. (However, they are subject to frequent preemptions during that period of overlapped execution.) Welcome to the wonderful world of&amp;nbsp;&lt;I style="mso-bidi-font-style: normal"&gt;indeterminancy&lt;/I&gt; in concurrent programming.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&lt;IMG style="WIDTH: 541px; HEIGHT: 413px" title="Thread 6420 delayed waiting on a lock" alt="Thread 6420 delayed waiting on a lock" align=left src="http://public.bay.livefilestore.com/y1pwyW9xNPqEHc-r2iqHj2NluFVeNqc4-NSgJoJ83e9GzhMlfifaSquwuZHN4qZqWPEhgR5vp5ou6ipEtVsJFO8NA/Concurrency%20visualizer%20screen%20shot%20showing%20a%20different%20thread%20blocked%20by%20a%20GC%20lock%20jpg.jpg" width=541 height=413 mce_src="http://public.bay.livefilestore.com/y1pwyW9xNPqEHc-r2iqHj2NluFVeNqc4-NSgJoJ83e9GzhMlfifaSquwuZHN4qZqWPEhgR5vp5ou6ipEtVsJFO8NA/Concurrency%20visualizer%20screen%20shot%20showing%20a%20different%20thread%20blocked%20by%20a%20GC%20lock%20jpg.jpg"&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;Figure 3. CLR Worker Thread 6420 blocked because it is waiting on a GC lock that happens to be held by Thread 6920, which is subject to preemption by higher priority system routines. (&lt;A title="Thread 6420 delayed waiting on a lock" href="http://public.bay.livefilestore.com/y1pwyW9xNPqEHc-r2iqHj2NluFVeNqc4-NSgJoJ83e9GzhMlfifaSquwuZHN4qZqWPEhgR5vp5ou6ipEtVsJFO8NA/Concurrency%20visualizer%20screen%20shot%20showing%20a%20different%20thread%20blocked%20by%20a%20GC%20lock%20jpg.jpg" target=_blank mce_href="http://public.bay.livefilestore.com/y1pwyW9xNPqEHc-r2iqHj2NluFVeNqc4-NSgJoJ83e9GzhMlfifaSquwuZHN4qZqWPEhgR5vp5ou6ipEtVsJFO8NA/Concurrency%20visualizer%20screen%20shot%20showing%20a%20different%20thread%20blocked%20by%20a%20GC%20lock%20jpg.jpg"&gt;Click&lt;/A&gt; for full size image.)&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/STRONG&gt;&amp;nbsp;I won’t take the time now to go into what this little concurrent CLR thread pool application is doing. Suffice to say that I wrote it to illustrate some of the performance issues developers can face trying to do parallel programming, which is the other topic I have been blogging about. (I should note that the test program puts the worker threads to sleep periodically to simulate synchronous I/O waits.) As I started to run the test app I developed using the Concurrency Visualizer, I was able to see blocking issues like this one where the Common Language Runtime introduced synchronization and locking considerations that are otherwise opaque to the developer. I eventually tweaked the test app into an especially ghoulish version I call the LockNestMonster program to shine an even brighter light on these issues. (More about this later when I resume blogging about concurrent programming in .NET.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;H3 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;FONT size=3&gt;Time-slicing. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H3&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;The Concurrency Visualizer also breaks out preemption due to the expiration of a thread’s time-slice, the duration of a time slice being one of the few tuning adjustments available in the OS. For the record, I normally recommend that system administrators &lt;I style="mso-bidi-font-style: normal"&gt;&lt;U&gt;not&lt;/U&gt;&lt;/I&gt; fiddle with this tuning knob, unless they have a whole lot of extra time on their hands. (This older &lt;A href="http://support.microsoft.com/kb/111405"&gt;&lt;FONT color=#0000ff&gt;KB article&lt;/FONT&gt;&lt;/A&gt; provides some flavor for what is involved.) For those of you that cannot resist the temptation, the &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Concurrency Visualizer Threads View is the first Windows performance tool that can help you determine if changing the OS default time-slice value is doing your application any good, or harm, for that matter. &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;In Figure 4, I clicked on the large yellow block on the right hand side of the execution time bar graph for Thread 6920 indicating another long delay. As in Figure 3, I have hidden all but the three active CLR thread pool threads. Using a combination of zooming to a point of interest in the event stream and filtering out extraneous threads, Figure 4 shows that the Concurrency Visualizer computes an execution time profile for just those events that are visible in the current window. Overall, the three active CLR worker threads are only able to execute 18% of the time, while they are delayed by synchronization 9% of the time and subject to preemption 39% of the time. (You can click on the Profile Report tab in the lower right portion of the display and see a profile report by thread.) &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption mce_keep="true"&gt;&lt;IMG style="WIDTH: 541px; HEIGHT: 413px" title="Time slice quantum expiration" alt="Time slice quantum expiration" src="http://public.bay.livefilestore.com/y1pIUdtMiovFTJ3M9eUrDmJduTMusQTD04M89k_gUT3CcA3oIUDxbEdWNEGt9qkpsdtNY_pvkH94GbvQ1DttYt-_A/Concurrency%20visualizer%20screen%20shot%20showing%20preemption%20due%20to%20quantum%20expiration.jpg" width=541 height=413 mce_src="http://public.bay.livefilestore.com/y1pIUdtMiovFTJ3M9eUrDmJduTMusQTD04M89k_gUT3CcA3oIUDxbEdWNEGt9qkpsdtNY_pvkH94GbvQ1DttYt-_A/Concurrency%20visualizer%20screen%20shot%20showing%20preemption%20due%20to%20quantum%20expiration.jpg"&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption&gt;&lt;STRONG&gt;&lt;FONT size=2&gt;Figure 4. Using the Concurrency Visualizer to drill into thread preemption delays. (&lt;A title="Preemption due to quantum time-slice expiration" href="http://public.bay.livefilestore.com/y1pIUdtMiovFTJ3M9eUrDmJduTMusQTD04M89k_gUT3CcA3oIUDxbEdWNEGt9qkpsdtNY_pvkH94GbvQ1DttYt-_A/Concurrency%20visualizer%20screen%20shot%20showing%20preemption%20due%20to%20quantum%20expiration.jpg" target=_blank mce_href="http://public.bay.livefilestore.com/y1pIUdtMiovFTJ3M9eUrDmJduTMusQTD04M89k_gUT3CcA3oIUDxbEdWNEGt9qkpsdtNY_pvkH94GbvQ1DttYt-_A/Concurrency%20visualizer%20screen%20shot%20showing%20preemption%20due%20to%20quantum%20expiration.jpg"&gt;Click&lt;/A&gt; for full size image.)&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;At the point indicated in the tool, the time-slice quantum for Thread 6920 expired and the Scheduler preempted the executing thread in favor of some other ready thread. Looking at the visualization, it should be apparent that the ready thread the Scheduler chose to execute next was another CLR thread pool worker thread, namely Thread 4664, which then blocked Thread 6920 from continuing. The tool reports that a &lt;I style="mso-bidi-font-style: normal"&gt;context switch&lt;/I&gt;(6920, 4664) occurred, and that Thread 6920 was delayed for about 275 milliseconds before it resumed execution as a result of being preempted.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;As illustrated in this example, the Concurrency Visualizer uses the ETW-based event data from a profiling run to construct a state machine that reflects the precise execution state of each application thread over the time interval being monitored. It goes considerably beyond calculating processor queue time at the thread level. It understands how to weave the sequence of Ready Thread and Context switch events together to create this execution time profile. It summarizes the profiling data, calculating the precise amount time of time each thread is delayed by synchronous IO, page faults (i.e., Memory Management overhead), processor contention, preemption by priority work, and lock contention over the profiling interval. Furthermore, it analyzes the call stacks gathered at each Context Switch event, looking for signatures that identify the specific blocking reason. And, specifically, to help with lock contention issues, which are otherwise often very difficult to identify, it also identifies the thread that ultimately unblocks the thread that was found waiting to acquire a lock. &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;I will discuss another new facility for capturing CPU time accurately at the thread level as your program executes in the next blog post in this series.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MyCaption mce_keep="true"&gt;-- Mark Friedman&lt;/P&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9990328" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2010/04/04/measuring-processor-utilization-and-queuing-delays-in-windows-applications.aspx</link>
      <pubDate>Sun, 04 Apr 2010 18:20:00 GMT</pubDate>
    </item>
    <item>
      <title>Add a Bing Search Box to your site in 3 easy steps</title>
      <description>&lt;p&gt;Got Bing on your site yet? If not, there's an online tool that makes adding a Bing search box to your site nice and easy. &lt;/p&gt;
&lt;p&gt;Simply go to &lt;a target="_blank" href="http://www.bing.com/siteowner" title="Add Bing Search to your site"&gt;http://www.bing.com/siteowner&lt;/a&gt; for the 3-step process to add an advanced search box that you can customize, so users can search your site or search the Web from your site..&lt;/p&gt;
&lt;p&gt;If you prefer working directly with the code, read on.&lt;/p&gt;
&lt;p&gt;To let your visitors search the Web from your website, add the following code to your webpage:&lt;/p&gt;
&lt;!-- Web search from Bing--&gt;
&lt;div style="font-family: Courier New;"&gt;
&lt;p&gt;&amp;lt;form method="get" action="http://www.bing.com/search"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" name="cp" value="&lt;i&gt;CODE PAGE USED BY YOUR HTML PAGE&lt;/i&gt;" /&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" name="FORM" value="FREEWS" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;lt;table bgcolor="#FFFFFF"&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;td&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;a href="http://www.bing.com/"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;img src="http://www.bing.com/siteowner/s/siteowner/Logo_51x19_Dark.png" border="0" ALT="bing" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/a&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/td&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;td&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type="text" name="q" size="30" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type="submit" value="Search Web" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/td&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;lt;/table&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt; &lt;/p&gt;
&lt;/div&gt;
&lt;!-- Web Search from Bing --&gt;
&lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; replace "CODE PAGE USED BY YOUR HTML PAGE" with the code page number of the language your website is written in. For example, if your website is written in a western European-based (also known as Latin 1) language, such as French, English, or German, replace this instruction with the number 1252:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; value="1252"&lt;/p&gt;
&lt;p&gt;For a list of code-page values for all languages, see the &lt;a target="_blank" href="http://g.live.com/0HE_TRACKSTAR_ENUS9/91008"&gt;Code pages supported by Windows&lt;/a&gt; webpage.&lt;/p&gt;
&lt;p&gt;To let your visitors search your website, add the following code to your page(s):&lt;/p&gt;
&lt;div style="font-family: Courier New;"&gt;&lt;!-- Site search from Bing--&gt;&amp;lt;form method="get" action="http://www.bing.com/search"&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" name="cp" value="&lt;i&gt;CODE PAGE USED BY YOUR HTML PAGE&lt;/i&gt;" /&amp;gt;&lt;br /&gt;&amp;lt;input type="hidden" name="FORM" value="FREESS" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;lt;table bgcolor="#FFFFFF"&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;tr&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;td&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;a href="http://www.bing.com/"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;img src="http://www.bing.com/siteowner/s/siteowner/Logo_51x19_Dark.png" border="0" ALT="bing" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/a&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/td&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;td&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type="text" name="q" size="30" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type="submit" value="Search Site" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type="hidden" name="q1" value="site:&lt;i&gt;YOUR DOMAIN NAME GOES HERE&lt;/i&gt;" /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;/td&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;lt;/table&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&lt;/div&gt;
&lt;!-- Site Search from Bing --&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Follow the same instructions from the first snippet to locate your Code and also don't forget to substitute your domain name where indicated. &lt;/p&gt;
&lt;p&gt;Within minutes you can enjoy the&amp;nbsp;power of Bing Search directly on your site.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;i&gt;-- George Thomas Jr., Bing Developer Center&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9591240" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/03/22/add-a-bing-search-box-to-your-site-in-3-easy-steps.aspx</link>
      <pubDate>Tue, 23 Mar 2010 01:36:00 GMT</pubDate>
    </item>
    <item>
      <title>Bing API, Version 2 documentation available as .pdf</title>
      <description>&lt;p&gt;You&amp;rsquo;ve said you&amp;rsquo;d like us to expand the range of our portable documentation beyond the current CHM offering. We&amp;rsquo;ve heard you!&lt;/p&gt;
&lt;p&gt;Now, everything you ever wanted to know about the Bing Application Programming Interface (API), Version 2, is conveniently available in a single download. Get an overview, survey, and detailed information for each important area of the API: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;What the API does, and what it does that it did not do before.&lt;/li&gt;
&lt;li&gt;Survey information for protocols, SourceTypes, and properties.&lt;/li&gt;
&lt;li&gt;Detailed samples demonstrating all of the above, including code samples.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can download the documentation as a&amp;nbsp;.pdf or a smaller .zip file:&lt;/p&gt;
&lt;blockquote&gt;&lt;a target="_blank" href="http://download.microsoft.com/download/3/1/6/316E0612-33B4-4346-9AE3-A74511AE2536/BingAPI.pdf"&gt;Download the .pdf (5.4 MB)&lt;/a&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -&amp;nbsp; or&amp;nbsp; -&amp;nbsp;&lt;br /&gt;&lt;a target="_blank" href="http://download.microsoft.com/download/3/1/6/316E0612-33B4-4346-9AE3-A74511AE2536/BingAPI.zip"&gt;Download the .zip (1.9 MB)&lt;/a&gt;&lt;/blockquote&gt;
&lt;p&gt;If you are new to Bing, version 2 of the API enables developers to build applications that can: &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Retrieve information from the Internet.&lt;/li&gt;
&lt;li&gt;Monetize an application with advertisements.&lt;/li&gt;
&lt;li&gt;Improve and enhance search requests and results.&lt;/li&gt;
&lt;li&gt;Find location-specific information.&lt;/li&gt;
&lt;li&gt;Translate terms and blocks of text.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Check out the document's Getting Started section, or if you are an advanced developer you can go straight to the code samples. The document also provides links to online resources.&lt;/p&gt;
&lt;p&gt;Get the documentation and learn what&amp;nbsp;all you can do with the API to engage your customers and monetize your applications.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;-- George Thomas Jr., Bing Developer Center&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9588930" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/03/12/bing-api-version-2-documentation-available-for-download.aspx</link>
      <pubDate>Fri, 12 Mar 2010 18:24:00 GMT</pubDate>
    </item>
    <item>
      <title>RoleEntryPoint Method Call Order</title>
      <description>Learn more about the &lt;A href="http://blogs.msdn.com/jnak/archive/2010/02/11/windows-azure-roleentrypoint-method-call-order.aspx" mce_href="http://blogs.msdn.com/jnak/archive/2010/02/11/windows-azure-roleentrypoint-method-call-order.aspx"&gt;RoleEntryPoint methods and call order in Windows Azure&lt;/A&gt;.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9962133" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/02/11/roleentrypoint-method-call-order.aspx</link>
      <pubDate>Thu, 11 Feb 2010 18:48:00 GMT</pubDate>
    </item>
    <item>
      <title>SourceType code samples on MSDN</title>
      <description>&lt;p&gt;Whether you are new to the Bing API or have been working with it for some time, you may not be aware of the &lt;a target="_self" href="http://msdn.microsoft.com/en-us/library/dd251066.aspx"&gt;SourceType code samples available on the Microsoft Developer Network&lt;/a&gt;. A SourceType is a source of information accessible to the API, and you can include multiple SourceTypes in a single request, which is preferable to creating multiple requests.&lt;/p&gt;
&lt;p&gt;Specifically, code samples are available for:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ad SourceType (Bing, Version 2.0)&lt;/li&gt;
&lt;li&gt;Image SourceType (Bing, Version 2.0)&lt;/li&gt;
&lt;li&gt;InstantAnswer SourceType (Bing, Version 2.0)&lt;/li&gt;
&lt;li&gt;MobileWeb SourceType (Bing, Version 2.1) &lt;/li&gt;
&lt;li&gt;News SourceType (Bing, Version 2.0) &lt;/li&gt;
&lt;li&gt;Phonebook SourceType (Bing, Version 2.0) &lt;/li&gt;
&lt;li&gt;RelatedSearch SourceType (Bing, Version 2.0)&lt;/li&gt;
&lt;li&gt;Spell SourceType (Bing, Version 2.0) &lt;/li&gt;
&lt;li&gt;Translation SourceType (Bing, Version 2.2)&lt;/li&gt;
&lt;li&gt;Video SourceType (Bing, Version 2.x)&lt;/li&gt;
&lt;li&gt;Web SourceType (Bing, Version 2)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The code samples are available for the following protocols:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;JSON&lt;/li&gt;
&lt;li&gt;XML&lt;/li&gt;
&lt;li&gt;SOAP&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Visit &lt;a href="http://www.bing.com/toolbox/developers/"&gt;http://www.bing.com/toolbox/developers/&lt;/a&gt;&amp;nbsp;for a variety of information about the API, including how to get started using the Bing API.&lt;/p&gt;
&lt;p&gt;--George, Bing Toolbox team&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9583157" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/02/08/sourcetype-code-samples-on-msdn.aspx</link>
      <pubDate>Mon, 08 Feb 2010 21:38:00 GMT</pubDate>
    </item>
    <item>
      <title>Walkthrough: Migrating an ASP.NET Web App to Windows Azure</title>
      <description>&lt;P&gt;Using NerdDinner as an example, Jim walks through migrating an ASP.NET Web App to Windows Azure taking it from a single instance IIS hosted app to a scalable cloud application that runs on Windows Azure and uses SQL Azure for the data and ASP.NET providers.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/jnak/archive/2010/02/08/migrating-an-existing-asp-net-app-to-run-on-windows-azure.aspx"&gt;http://blogs.msdn.com/jnak/archive/2010/02/08/migrating-an-existing-asp-net-app-to-run-on-windows-azure.aspx&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=9959926" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/02/08/walkthrough-migrating-an-asp-net-web-app-to-windows-azure.aspx</link>
      <pubDate>Mon, 08 Feb 2010 19:51:00 GMT</pubDate>
    </item>
    <item>
      <title>Windows Azure Tools and SDK v1.1 February 2010 Release</title>
      <description>&lt;P&gt;Today, coinciding with the general availability of Windows Azure, we have released version 1.1 of the &lt;A href="http://go.microsoft.com/fwlink/?LinkID=128752" mce_href="http://go.microsoft.com/fwlink/?LinkID=128752"&gt;Windows Azure Tools and SDK&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;This release supports VS 2008 and the upcoming VS 2010 RC.&amp;nbsp; For VS 2010 Beta 2 please use the &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=6967FF37-813E-47C7-B987-889124B43ABD&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=6967FF37-813E-47C7-B987-889124B43ABD&amp;amp;displaylang=en"&gt;November 2009&lt;/A&gt; release.&lt;/P&gt;
&lt;P&gt;New for version 1.1: &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Windows Azure Drive: Enable a Windows Azure application to use existing NTFS APIs to access a durable drive. This allows the Windows Azure application to mount a page blob as a drive letter, such as X:, and enables easy migration of existing NTFS applications to the cloud.&lt;/LI&gt;
&lt;LI&gt;OS Version Support: Allows a Windows Azure application to choose the appropriate Guest OS to run on in the cloud.&lt;/LI&gt;
&lt;LI&gt;Bug Fixes 
&lt;UL&gt;
&lt;LI&gt;StorageClient: Expose account key from storage credentials, expose continuation tokens for pagination, and reduce maximum buffer size for parallel uploads.&lt;/LI&gt;
&lt;LI&gt;Windows Azure Diagnostics: Fix path corruption for crash dumps, OnDemandTransfer now respects LogLevelFilter.&lt;/LI&gt;
&lt;LI&gt;VS 2010: Improved packaging performance.&lt;/LI&gt;
&lt;LI&gt;VS 2010: Support for linked files in Web projects.&lt;/LI&gt;
&lt;LI&gt;VS 2010: Support for ASP.NET web project web.config transformations.&lt;/LI&gt;
&lt;LI&gt;Certificate selection lists certificates from LocalMachine\My instead of CurrentUser\My.&lt;/LI&gt;
&lt;LI&gt;Right click on Role under Roles folder to select whether to launch the browser against HTTP, HTTPS or not at all.&lt;/LI&gt;&lt;/UL&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Updated and additional samples are available at: &lt;A href="http://code.msdn.microsoft.com/windowsazuresamples" mce_href="http://code.msdn.microsoft.com/windowsazuresamples"&gt;http://code.msdn.microsoft.com/windowsazuresamples&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=9955492" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/02/01/just-released-windows-azure-tools-for-microsoft-visual-studio-v1-1-february-2010.aspx</link>
      <pubDate>Tue, 02 Feb 2010 00:00:00 GMT</pubDate>
    </item>
    <item>
      <title>Windows Azure Role Instance Process IDs</title>
      <description>&lt;P&gt;Jim talks about &lt;A href="http://blogs.msdn.com/jnak/archive/2010/01/26/windows-azure-debugging-matching-an-instance-in-the-devfabric-to-its-process.aspx" mce_href="http://blogs.msdn.com/jnak/archive/2010/01/26/windows-azure-debugging-matching-an-instance-in-the-devfabric-to-its-process.aspx"&gt;how to correlate the Windows Azure Role instances&lt;/A&gt; you see in the Development Fabric to process IDs which in turn is useful for correlating that instances to an instance being debugged.&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9955499" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/01/29/windows-azure-role-instance-process-ids.aspx</link>
      <pubDate>Fri, 29 Jan 2010 20:33:00 GMT</pubDate>
    </item>
    <item>
      <title>Installing Certificates into Windows Azure VMs</title>
      <description>&lt;P&gt;Interested in uploading certificates in the OS of the VMs that run in the Windows Azure cloud?&amp;nbsp; Jim has written a &lt;A href="http://blogs.msdn.com/jnak/archive/2010/01/29/installing-certificates-in-windows-azure-vms.aspx" mce_href="http://blogs.msdn.com/jnak/archive/2010/01/29/installing-certificates-in-windows-azure-vms.aspx"&gt;walkthrough&lt;/A&gt; that will explain and guide you through the process.&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9955494" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/01/29/installing-certificates-into-windows-azure-vms.aspx</link>
      <pubDate>Fri, 29 Jan 2010 20:27:00 GMT</pubDate>
    </item>
    <item>
      <title>Statistical Process Control Techniques in Performance Monitoring and Alerting</title>
      <description>&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Being focused on the upcoming release of Visual Studio 2010 for the past six months or so, I, unfortunately, have been neglecting to blog about it. Before I get back to the series of blog posts I started about writing in parallel programming, I thought I’d first answer the mail.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/o:p&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Concerning a recent presentation by Charles Loboz, my colleague at Microsoft, at CMG09 in Texas (DEC 2009), Uriel Carrasquilla, a very knowledgeable and resourceful performance analyst at NCCI in Florida, writes, &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;EM&gt;“Mr. Loboz indicated that the theoretical calculations were based on Windows reporting of CPU busy and CPU queue length. My results indicate that the CPU queue length reported by Microsoft can't be correct.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;I found that other CMG researchers came up with the same conclusion.&lt;o:p&gt;&lt;/o:p&gt;&lt;/EM&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;EM&gt;“I used similar ideas for my Linux, AIX and Sun Solaris data as reported by SAR, and Mr. Loboz ideas work like a charm.&lt;o:p&gt;&lt;/o:p&gt;&lt;/EM&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;EM&gt;“Question:&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;are you aware of this problem with Microsoft performance reporting? Is anybody working on this issue?”&lt;o:p&gt;&lt;/o:p&gt;&lt;/EM&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Uri,&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The short answer is, &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;“The derivation and interpretation of the System\Processor Queue Length performance counter is well-documented in the &lt;I style="mso-bidi-font-style: normal"&gt;Windows 2003 Server Performance Guide&lt;/I&gt;, published back in the Windows 2003 Server Resource Kit. I believe the Processor Queue Length performance counter continues to be a very useful metric to track, as Charles and his team that is responsible for capacity planning for the many of the Microsoft online properties do.”&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.5in; mso-list: l0 level1 lfo1" class=MsoListParagraph&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;n&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Mark&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;I will post a more expansive answer soon, allowing me to expound a little on a question that gets asked quite frequently, namely, “How are measures of CPU utilization in Windows derived and how can they be interpreted?”&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;First, though, I’d like to mention some of the work Charles Loboz and his team have been doing in the context of capacity planning to support some of the massive applications Microsoft provisions and supports. Consider an application like Hotmail that supports something in the neighborhood of 500 million mailboxes (give or take a couple hundred million) and a customer base that is global in scale. That is an order of magnitude larger than the largest corporate entity responsible for a single e-mail or messaging infrastructure. (My guess is that the largest corporate entity responsible for a single e-mail infrastructure is the US Department of Defense. Although, it might be the US Army instead since the different service branches probably operate separate infrastructures.) Performance monitoring and capacity planning on the scale of Hotmail or Search is certainly unprecedented. Do you think performance and capacity planning are important in an application the size of Hotmail. The answer is, “You bet.” The investment in hardware and power consumption alone justifies the capacity planning effort.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;I had an opportunity to see some of the material that Charles was working on back in the summer &amp;amp; gave him some feedback on measurements and what valid inferences can be drawn from them. I haven’t read the final published version, but, I am certainly in sympathy with the approach he has adopted. (BTW, people like Uri that attended the recent CMG Conference have access to Charles’ paper, but no one else at the moment. As soon as Charles posts it somewhere publicly, I will point this blog entry to it.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Although the scale Charles has to deal with is something new, the approach isn’t. I remember I also sent Charles a pointer to Igor Trobin's work, which I believe is very complementary. Igor writes an interesting blog called “&lt;/FONT&gt;&lt;A href="http://itrubin.blogspot.com/" mce_href="http://itrubin.blogspot.com/"&gt;&lt;FONT size=3 face=Calibri&gt;System Management by Exception&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt;.” In addition, Jeff Buzen and Annie Shum published a very influential paper on this subject called “MASF: Multivariate Adaptive Statistical Filtering” back in 1995. (Igor’s papers on the subject and the original Buzen and Shum paper are all available at &lt;/FONT&gt;&lt;A href="http://www.cmg.org/" mce_href="http://www.cmg.org/"&gt;&lt;FONT size=3 face=Calibri&gt;www.cmg.org&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt;.) My colleague &lt;/FONT&gt;&lt;A href="http://bezsys.blogspot.com/" mce_href="http://bezsys.blogspot.com/"&gt;&lt;FONT size=3 face=Calibri&gt;Boris Zibitsker&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt; has also made a substantial contribution to what I consider a very useful approach, namely applying statistical process control (SPC) techniques to mine for gold within the enormous amounts of performance data that IT organizations routinely gather. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;For perspective, Carnegie Mellon’s Software Engineering Institute (SEI) is usually credited with the original application of SPC techniques to software engineering. Len Bass at SEI wrote an excellent book entitled &lt;/FONT&gt;&lt;A href="http://www.amazon.com/Software-Architecture-Practice-2nd-Bass/dp/0321154959/ref=ntt_at_ep_dpi_1" mce_href="http://www.amazon.com/Software-Architecture-Practice-2nd-Bass/dp/0321154959/ref=ntt_at_ep_dpi_1"&gt;&lt;FONT size=3 face=Calibri&gt;Software Architecture in Practice&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt; that embraces a broader perspective on quality in software development that I share. Len’s work on software quality metrics is close to my current interests here in Developer Division, especially around the potential value of scenario-driven development processes. (More on scenarios in the next blog post. Len’s submitted to a brief interview on Channel 9 recently that is posted &lt;/FONT&gt;&lt;A href="http://channel9vip.orcsweb.com/posts/mattdeacon/Talking-Architects-with-Len-Bass/" mce_href="http://channel9vip.orcsweb.com/posts/mattdeacon/Talking-Architects-with-Len-Bass/"&gt;&lt;FONT size=3 face=Calibri&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;.) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Within the application life-cycle, performance, unfortunately, is considered one of the &lt;I style="mso-bidi-font-style: normal"&gt;non-functional&lt;/I&gt; requirements associated with a system specification, which often means it is relegated to a secondary role during the much of the application life-cycle. In the specification process, getting the business requirements and translating them into system specifications correctly is the most pressing problem for developers of Line of Business applications. Performance is one of those aspects of software quality that often doesn’t get expressed during the software development life cycle until very late in the process when design flaws that lead to scalability problems are very expensive to fix. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Len Bass’s suggestion is that the requirements definition of a scenario should include a response time specification that can then be monitored throughout the development life cycle, just like any other set of requirements. That is the approach that we advocate using here in the Microsoft Developer Division for the software products that we built here. In developing Visual Studio 2010, for example, we made major commitments to performance requirements and regularly conduct automated acceptance testing against those requirements. However, you can also see from the many recent blogs on VS 2010 performance coming from the Microsoft Developer Division that we have not exactly gotten this down to a science yet.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The Len Bass and SEI approach is informed by experience building real-time control systems to fly airplanes, for example, where performance goals absolutely have to be met or the system cannot function as designed. &lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/B&gt;The performance requirements for real-time control systems applications are fundamentally easy to specify. If the computer system doesn’t recognize a condition and respond to it in time, the plane is going to crash. Bass makes the case for that&lt;STRONG&gt; &lt;/STRONG&gt;system performance being one of those important Quality Attributes that needs to be addressed at the outset of the development life cycle, beginning with the architectural specification and continuing through the design, development and QA processes, to the delivered software’s operational phase, where it finally becomes the focus of performance analysts and capacity planners like Charles Loboz, Uriel Carrasquilla,&amp;nbsp;and Igor Torbin. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;What if you need to specify performance requirements for your LOB application, but don’t know where to start? Consider these two approaches:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 38.55pt; mso-list: l1 level1 lfo2; mso-add-space: auto" class=MsoListParagraphCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3 face=Calibri&gt;Research in human factors engineering has generated a set of performance requirements for specific types of human-computer interactions in order to promote usability and improve customer satisfaction. &lt;/FONT&gt;&lt;A href="http://stevenseow.com/" mce_href="http://stevenseow.com/"&gt;&lt;FONT size=3 face=Calibri&gt;Steve Seow&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt;, another colleague here in Microsoft, has an excellent, concise book on this topic called “&lt;/FONT&gt;&lt;A href="http://www.amazon.com/Designing-Engineering-Time-Psychology-Perception/dp/0321509188/" mce_href="http://www.amazon.com/Designing-Engineering-Time-Psychology-Perception/dp/0321509188/"&gt;&lt;FONT size=3 face=Calibri&gt;Designing and Engineering Time&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;,” complete with application responsiveness guidelines to help improve customer satisfaction. If you are in a position to design a new application from scratch from First Principles, Steve’s book will be an invaluable guide.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 38.55pt; mso-list: l1 level1 lfo2; mso-add-space: auto" class=MsoListParagraphCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;If the application currently exists in some form or another, measure its current performance. When you deliver the next version of the application, any significant decrease in performance from one release to the next will be perceived as an irritant and received negatively by existing users. In other words, measure the scenario of interest on the current system &amp;amp; use that as a &lt;EM&gt;baseline&lt;/EM&gt; that you won’t regress in a subsequent version. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt 2.55pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;If you have to start somewhere, measuring current levels of performance around key scenarios and using them as a baseline gives you a place to start, at least. My experience is that the current level of performance sets expectations that the next version of the application must meet if you want your customers to be satisfied. In this context, Steve Seow's book&amp;nbsp;cites psychological research into how much of a response time difference is necessary to be perceived as a difference. (About 20% in either direction makes a difference.) This reminds me of &lt;/FONT&gt;&lt;A href="http://en.wikipedia.org/wiki/Gregory_Bateson" mce_href="http://en.wikipedia.org/wiki/Gregory_Bateson"&gt;&lt;FONT size=3 face=Calibri&gt;Gregory Bateson&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;’s adage that “information is a difference that &lt;I style="mso-bidi-font-style: normal"&gt;makes&lt;/I&gt; a difference.” &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt 2.55pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;I do think that over time, humans adapt themselves to the response times they experience, such that, eventually, the response times of the new version become the new baseline. In other words, our positive or negative perception tends to atrophy over time. For example, consider the last time you acquired a new desktop or portable computer that was noticeably faster than its predecessor. How long was it before that rush of enthusiasm for the fast, new machine started to diminish? About 30 days, in my experience.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Twenty-five years ago, I was in a similar position to Charles, responsible for performance and capacity planning at a large telecommunications company for maybe 20 IBM mainframe computers, which was considered a whole lot of machines to keep track of back in those days. We used a product called MICS (full disclosure, I was a developer on MICS for a brief period in the mid-80s) to warehouse the performance data we were gathering from these machines and the SAS language for statistical reporting. Subsequently, at Landmark Systems, I designed a “management by exception” feature for our monitoring products that our customers loved based on very simple statistical process control techniques. Today, for Charles’ team that needs to monitor performance on 100,000s of servers, these statistical techniques are the only viable approach.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;But, of course, Uri is correct. You do have to choose the right metrics. I believe Charles has. I will discuss the CPU utilization metrics in Windows &lt;A title="next post in series" href="http://blogs.msdn.com/ddperf/archive/2010/04/04/measuring-processor-utilization-and-queuing-delays-in-windows-applications.aspx" mce_href="http://blogs.msdn.com/ddperf/archive/2010/04/04/measuring-processor-utilization-and-queuing-delays-in-windows-applications.aspx"&gt;in my next post&lt;/A&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;-- Mark Friedman&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9953831" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2010/01/27/statistical-process-control-techniques-in-performance-monitoring-and-alerting.aspx</link>
      <pubDate>Wed, 27 Jan 2010 01:31:00 GMT</pubDate>
    </item>
    <item>
      <title>Windows Azure Blob Storage Walkthrough</title>
      <description>&lt;P&gt;Want to learn how to get build a Windows Azure cloud service that uses blob storage?&amp;nbsp; Have a look at Jim's &lt;A href="http://blogs.msdn.com/jnak/archive/2010/01/11/walkthrough-windows-azure-blob-storage-nov-2009-and-later.aspx" mce_href="http://blogs.msdn.com/jnak/archive/2010/01/11/walkthrough-windows-azure-blob-storage-nov-2009-and-later.aspx"&gt;blob storage walkthrough&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=9946646" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/01/11/windows-azure-blob-storage-walkthrough.aspx</link>
      <pubDate>Mon, 11 Jan 2010 18:05:00 GMT</pubDate>
    </item>
    <item>
      <title>How to use: Windows Azure Table Storage</title>
      <description>Jim posted an &lt;A href="http://blogs.msdn.com/jnak/archive/2010/01/06/walkthrough-windows-azure-table-storage-nov-2009-and-later.aspx" mce_href="http://blogs.msdn.com/jnak/archive/2010/01/06/walkthrough-windows-azure-table-storage-nov-2009-and-later.aspx"&gt;intro walkthrough on using Windows Azure Table Storage&lt;/A&gt;.&amp;nbsp; If you are looking to get your head around using Windows Azure Tables, definitely check this out.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9944728" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2010/01/06/how-to-use-windows-azure-table-storage.aspx</link>
      <pubDate>Wed, 06 Jan 2010 18:31:00 GMT</pubDate>
    </item>
    <item>
      <title>Bing Developer FAQs available for download</title>
      <description>&lt;p&gt;Got questions about the API, SourceTypes, working with PHP? The answers to these and other Bing developer "frequently asked questions" now are available in a single document:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&amp;nbsp;&lt;a target="_blank" href="http://download.microsoft.com/download/1/A/2/1A24833E-E774-4D27-9BA0-94BA077BB84E/DeveloperFAQs.pdf" title="Bing Developer FAQs"&gt;Download the Bing Developer FAQs now&lt;/a&gt; (512 KB .pdf)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;These are the same FAQs that have always been available in the&amp;nbsp;&amp;nbsp;&lt;a href="http://www.bing.com/toolbox/support/faqs.aspx" title="Bing Toolbox support FAQs"&gt;Bing Toolbox support center&lt;/a&gt;. We just wanted to provide the FAQs in a single, indexed&amp;nbsp;document as a convenient alternative to searching online. &lt;/p&gt;
&lt;p&gt;If you have questions or comments, please post them to the &lt;a target="_self" href="http://www.bing.com/community/forums/default.aspx?GroupID=12" title="Bing Developer Forum"&gt;Developer forum&lt;/a&gt;. The forum also is a good&amp;nbsp;source for help and advice from other developers.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://www.bing.com/community/aggbug.aspx?PostID=9574042" width="1" height="1"&gt;</description>
      <link>http://www.bing.com/community/Site_Blogs/b/developer/archive/2010/01/05/bing-developer-faqs-available-for-download.aspx</link>
      <pubDate>Tue, 05 Jan 2010 19:12:00 GMT</pubDate>
    </item>
    <item>
      <title>Looking at Virtual Memory Usage</title>
      <description>&lt;P&gt;Brian Harry is continuing a great series of posts on VS2010 performance, you can read the latest in that series &lt;A class="" title="BHarry's blog - Virtual Memory Usahe" href="http://blogs.msdn.com/bharry/archive/2009/12/08/looking-at-virtual-memory-usage.aspx" mce_href="http://blogs.msdn.com/bharry/archive/2009/12/08/looking-at-virtual-memory-usage.aspx"&gt;here&lt;/A&gt;; where Brian talks about the issues we've been seeing around Virtual Memory Exhaustion and what we're doing to address it.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9934093" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2009/12/08/looking-at-virtual-memory-usage.aspx</link>
      <pubDate>Tue, 08 Dec 2009 15:43:00 GMT</pubDate>
    </item>
    <item>
      <title>Improvements in Intellisense post Beta 2</title>
      <description>&lt;P&gt;&lt;A class="" title="bharry - Improvements in Intellisense Post Beta 2" href="http://blogs.msdn.com/bharry/archive/2009/12/04/improvements-in-intellisense-post-beta-2.aspx" mce_href="http://blogs.msdn.com/bharry/archive/2009/12/04/improvements-in-intellisense-post-beta-2.aspx"&gt;Brian Harry has posted a discussion of Intellisense performance improvements&lt;/A&gt; in VS2010 that we've made since Beta 2, including bothe before and after videos.&amp;nbsp; He also touches a little on the massive performance effort we're making as a division to address the performance issues identified by our external and internal customers.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9932898" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/ddperf/archive/2009/12/04/improvements-in-intellisense-post-beta-2.aspx</link>
      <pubDate>Sat, 05 Dec 2009 06:06:00 GMT</pubDate>
    </item>
    <item>
      <title>Adding an HTTPS Endpoint to a Windows Azure Web Role Walkthrough</title>
      <description>Jim posted a &lt;A href="http://blogs.msdn.com/jnak/archive/2009/12/01/how-to-add-an-https-endpoint-to-a-windows-azure-cloud-service.aspx" mce_href="http://blogs.msdn.com/jnak/archive/2009/12/01/how-to-add-an-https-endpoint-to-a-windows-azure-cloud-service.aspx"&gt;"how to" / Walkthrough on adding an HTTPS endpoint and setting up the certificate on Windows Azure&lt;/A&gt;.&amp;nbsp; The way to do this changed with the November 2009 release.&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9931061" width="1" height="1"&gt;</description>
      <link>http://blogs.msdn.com/b/cloud/archive/2009/12/01/adding-an-https-endpoint-to-a-windows-azure-web-role-walkthrough.aspx</link>
      <pubDate>Tue, 01 Dec 2009 20:55:00 GMT</pubDate>
    </item>
  </channel>
</rss>
