<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2enclosuresfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Canadian Developer Connection</title><link>http://blogs.msdn.com/b/cdndevs/</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 5.6.583.21163 (Build: 5.6.583.21163)</generator><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/CanDevs" /><feedburner:info uri="candevs" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><itunes:explicit>no</itunes:explicit><itunes:subtitle></itunes:subtitle><item><title>Security requires a prison not a fortress</title><link>http://feedproxy.google.com/~r/CanDevs/~3/mUfKu6XSEIY/security-requires-a-prison-not-a-fortress.aspx</link><pubDate>Thu, 09 Feb 2012 08:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10264575</guid><dc:creator>Susan Ibach</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10264575</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/02/09/security-requires-a-prison-not-a-fortress.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/8132.Prison_5F00_76189164.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px 0px 10px 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="Prison" border="0" alt="Prison" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/8304.Prison_5F00_thumb_5F00_717260DD.jpg" width="300" height="225" /&gt;&lt;/a&gt;Rob Labbe, Senior Security Program Manager at Microsoft challenges us to think about security in a new way: does it matter if someone gets in to your system if you stop them from taking anything out?&lt;/em&gt;&lt;/strong&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;One of the best parts of doing webcasts is people often ask you questions you hadn’t quite thought about, or make you think about issues in different ways. I just finished recording a &lt;a href="http://www.dotnetrocks.com/default.aspx?showNum=738"&gt;security webcast on .NET Rocks&lt;/a&gt; with Carl Franklin and Richard Campbell and it got me thinking. Shame they never warned me I’d have to think.&lt;/p&gt;  &lt;p&gt;The information security “industry” has turned out thousands of security products, tools, methodologies, processes, you name it… some of it is even pretty good. Given all that innovation, why is it, at a macro level it appears we’re not getting any better as an IT industry or as developers in security our systems and preventing large scale compromise?&lt;/p&gt;  &lt;p&gt;It can’t be a lack of tools, platforms and processes can it? Given the huge advances in all those areas, I think it is pretty safe to say &lt;strong&gt;we have the tools in our toolbox to be more secure&lt;/strong&gt;. So, if it isn’t the tools, could it be us? Could it be that as developers and IT pros we’re simply looking at security the wrong way?&lt;/p&gt;  &lt;p&gt;Since the beginning of time, when we have something of value&lt;strong&gt; we try to protect it by ensuring the bad guys can’t get to it&lt;/strong&gt;. We build castles, moats, and walls… Banks build vaults, we bury important military installations in the middle of mountains or solid chunks of granite. All that thinking carried over to our IT systems.&amp;#160; We focus on firewalls to keep the bad guys out, intrusion detection to let us know if they find a way in, and all manner of systems and technologies to do it. We’re building a big, digital vault to keep our company crown jewels locked up. In theory it’s a great plan. If we keep all the bad guys out, then there is no way they can steal our stuff.&lt;/p&gt;  &lt;p&gt;Before we have a chance to finish our perfect, high security vault, we get a wrinkle, one I like to call “The Business”. They have requirements, they want to let people into our vault. All sorts of people. Good people, bad people, people we don’t even know about. By the time we’re finished poking holes in our vault for all the services and users want, a complex system can have thousands upon thousands of endpoints, holes and possible entry points.&lt;/p&gt;  &lt;p&gt;I think we need a new analogy. Rather than building a vault or fortress, &lt;strong&gt;perhaps we need to design our networks as prisons&lt;/strong&gt;. Classify our applications and data according to their sensitivity (minimum security right through super max) and flip a lot of our security and detective controls inward. Lets focus on controlling the known, our data, and relatively few users and systems that are within our span of control. Time has proven that we can’t prevent the determined human adversary from finding some foothold in, however we can make great strides in limiting that impact. &lt;strong&gt;Does it matter who gets in, if the important data doesn’t get out?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;For IT Pros, most of this comes down to doing a really good job with hygiene tasks: Keeping machines patched, doing a good job with identity management (particularly privileged Identity) and you’re 90% of the way there. For developers, again it is partly hygiene, but we need to remember that our applications need to be installed on systems, so we need to work with the IT pros to ensure least privilege, and intelligent encryption and data protection for data based on the risk and data classification.&lt;/p&gt;  &lt;p&gt;For Developers, to enable good application security hygiene we need a good Security Development Lifecycle. A good SDL will help you build that prison for your key data, help you identify the key assets, identify risks and design security controls to protect those key assets. Regardless of what is going on “out there” the SDL will help you manage and identify those places you need to work with IT to come up with one big plan.&lt;/p&gt;  &lt;p&gt;Over the next several guest blog posts, I’m going to walk through the SDL from a developer’s perspective, using the prison as the analogy, we’ll look at how following good SDL practices will help us not only build a more secure application, but also do it in a way that has minimal impact on the project budget and schedule. It should be a fun ride, stay tuned!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10264575" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=mUfKu6XSEIY:cbABgmF0m3g:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=mUfKu6XSEIY:cbABgmF0m3g:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=mUfKu6XSEIY:cbABgmF0m3g:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=mUfKu6XSEIY:cbABgmF0m3g:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=mUfKu6XSEIY:cbABgmF0m3g:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=mUfKu6XSEIY:cbABgmF0m3g:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=mUfKu6XSEIY:cbABgmF0m3g:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/mUfKu6XSEIY" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Security/">Security</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/TechDays_5F00_CA/">TechDays_CA</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Tips_2C00_+Tricks_2C00_+and+Tools/">Tips, Tricks, and Tools</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/TechDays_5F00_Prime/">TechDays_Prime</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/tips/">tips</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/best+practice/">best practice</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/02/09/security-requires-a-prison-not-a-fortress.aspx</feedburner:origLink></item><item><title>The Which, the When, and the How of Windows Azure Services: Social Apps and Games</title><link>http://feedproxy.google.com/~r/CanDevs/~3/gZJ1jDAaqzQ/the-which-the-when-and-the-how-of-windows-azure-services-social-apps-and-games.aspx</link><pubDate>Thu, 09 Feb 2012 03:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10265698</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10265698</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/02/08/the-which-the-when-and-the-how-of-windows-azure-services-social-apps-and-games.aspx#comments</comments><description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;Windows Azure is a platform with many different services that you, the developer can piece together to create your solutions. But when do you use which service and how? In this blog series, you&amp;rsquo;ll discover the answer to that by using different scenarios used by developers working with Windows Azure today.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;img style="margin: 0px 0px 20px 20px; float: right; display: inline; background-image: none;" title="WhichWay" border="0" alt="WhichWay" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4540.WhichWay_5F00_thumb_5F00_39041DB0.jpg" width="240" height="191" /&gt;I&amp;rsquo;ll never forget this one time (at band camp? LOL) I was doing a presentation and after a full 2 hours of going through the Windows Azure platform, a developer at the back of the room stood up and said to me &amp;ldquo;Jonathan, now that I understand what Windows Azure is, what do I use when?&amp;rdquo; I took a minute to reflect on the question &amp;ndash; to understand exactly what he was asking me. I thought he was joking at first, but after thinking about it for a bit, the question made sense. It&amp;rsquo;s very easy to understand what each individual service does, but it is a bit harder to piece together how all the different services work together.&lt;/p&gt;
&lt;p&gt;In the next few posts, I&amp;rsquo;ll go through some scenarios that I see often being used today and will endeavour to highlight how different services can be used to meet certain requirements.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a name="PreviousPosts"&gt;&lt;/a&gt;Previous Posts&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/b/cdndevs/archive/2012/01/11/the-which-the-when-and-the-how-of-windows-azure-services-websites.aspx" target="_blank"&gt;Websites&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/b/cdndevs/archive/2012/01/18/the-which-the-when-and-the-how-of-windows-azure-services-devices.aspx" target="_blank"&gt;Devices&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="note"&gt;&lt;a href="http://azurecamp.ca/OnlineHome" target="_blank"&gt;&lt;img style="float: right; display: inline; background-image: none;" title="AzureCamp" border="0" alt="AzureCamp" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/2502.AzureCamp_5F00_32BE32F8.png" width="70" height="57" /&gt;&lt;/a&gt;If you need a crash course or a refresher on the Windows Azure platform, check out my &lt;a href="http://azurecamp.ca/OnlineHome" target="_blank"&gt;Azure Camp Online&lt;/a&gt; series or visit an &lt;a href="http://azurecamp.ca/CampsHome" target="_blank"&gt;Azure Camp&lt;/a&gt; in a city near you.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;This week, we&amp;rsquo;ll talk about &lt;em&gt;social apps and games&lt;/em&gt;. Just to make sure that we&amp;rsquo;re on the same page, let&amp;rsquo;s define them first:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A &lt;em&gt;social application &lt;/em&gt;is an application that centers around the communication and interaction between several people. Further, one might argue that social applications are the same as social networks. There is no clear cut definition, so for the purposes of this discussion, let&amp;rsquo;s consider them as either/or. Facebook, Twitter, and FourSquare are all examples of social networks, all of which have front ends that are the social applications.&lt;/li&gt;
&lt;li&gt;A &lt;em&gt;social game&lt;/em&gt; is a game that, similar to &lt;em&gt;social applications&lt;/em&gt;, centers around the interaction between people. Notice I say &lt;em&gt;people&lt;/em&gt; rather than &lt;em&gt;players&lt;/em&gt; who may actually be computer simulated players.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Attributes of Social Apps and Games&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Before going to into the which, the when, and the how of Windows Azure services for social apps and games, let&amp;rsquo;s take a moment to understand some of their key attributes:&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;Centered around the communication and interaction between people &lt;br /&gt;&lt;/em&gt;This attribute is self-explanatory. Where it gets interesting, however, is when you look at the number of people that are involved in the communication or interaction. This number could be in the single digits or in the millions, either way, the architecture of the app/game and its infrastructure need to be able to handle it. &lt;br /&gt;&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Potential of Viral Growth &lt;br /&gt;&lt;/em&gt;Chances are that if you&amp;rsquo;re thinking of creating a social app/game, you&amp;rsquo;re thinking of either building it to be accessed from existing social networks like Facebook, Twitter, LinkedIn, and others or creating a new social network between those that will use your app. Especially in the case of the former, where you&amp;rsquo;re integrating into existing networks, those networks have millions of users that may potentially want to use your app/game. All it takes is a few people who really like it to share with their friends, followers, connections, etc. and your app/game goes viral in no time. &lt;/li&gt;
&lt;li&gt;&lt;em&gt;Expectations of Immediacy &lt;br /&gt;&lt;/em&gt;When we think social, we think shared experiences. When we think shared experiences, we think of real-time or immediate interactions. Unlike email where you send and eventually expect a response back, social apps and games are all about what&amp;rsquo;s happening now. If you&amp;rsquo;re playing a game, like &lt;a href="http://tankster.net" target="_blank"&gt;Tankster&lt;/a&gt;, with someone, you&amp;rsquo;re going to expect that when he or she makes a move, you immediately know about it. If you&amp;rsquo;re updating your status or posting something in your social app, you&amp;rsquo;re not only going to want people to see it on their end right away (because whatever you&amp;rsquo;re talking about is happening now), but when they respond, you&amp;rsquo;re going to want to see their responses right away. Social apps and games are all about the &lt;em&gt;now&lt;/em&gt;. &lt;br /&gt; &lt;br /&gt;In addition, when integrating with established social networks, they&amp;rsquo;ve set the bar for performance. When you integrate, you simply must meet or exceed that bar in order for your users to be happy. For example, say you build a Facebook application. Someone accesses your application from their Facebook profile. They&amp;rsquo;re going to expect it to respond just as fast, if not faster, than Facebook itself did. &lt;/li&gt;
&lt;li&gt;&lt;em&gt;Connections from anywhere&lt;/em&gt; &lt;br /&gt;Not only can your app/game go viral easily, the likeliness of your users to be in one geographic location is quite low. Most use social experiences like apps and games to bridge the distance that exists when people are all over the world.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;There are definitely more, but we&amp;rsquo;ll focus on these for this discussion.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Mapping Attributes to Services&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Now that we know the above, we can map these attributes to Windows Azure services:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Let&amp;rsquo;s look at &lt;em&gt;centered around the communication and interaction between people &lt;/em&gt;and the &lt;em&gt;potential of viral growth &lt;/em&gt;first. Similar to &lt;a href="http://blogs.msdn.com/b/cdndevs/archive/2012/01/11/the-which-the-when-and-the-how-of-windows-azure-services-websites.aspx" target="_blank"&gt;websites&lt;/a&gt;, the ability to react to increased demand relates to &lt;em&gt;scale&lt;/em&gt;. Scale is achieved by using more than one Windows Azure Compute instances. The more compute instances you add, the more &amp;ldquo;horse power&amp;rdquo; your app/game will have and therefore the more it will be able to take on. This increases the speed at which the app/game will respond to requests, and more importantly, its ability to handle the traffic that comes to it by sharing the work across the multiple instances. &lt;br /&gt; &lt;br /&gt;If you&amp;rsquo;re social app/game is device-based or even PC-based, scale will refer to the backend services that support you app/game &amp;ndash; i.e. the services that the app/game connect to and work with. In this case, those would be deployed to the compute instances and would get the additional &amp;ldquo;horsepower&amp;rdquo;. (More about this in the &lt;a href="http://blogs.msdn.com/b/cdndevs/archive/2012/01/18/the-which-the-when-and-the-how-of-windows-azure-services-devices.aspx" target="_blank"&gt;devices&lt;/a&gt; discussion) &lt;/li&gt;
&lt;li&gt;&lt;em&gt;Expectations of immediacy &lt;/em&gt;actually breaks into a few areas and consequently has different services that address them: &lt;br /&gt; &lt;br /&gt;&lt;em&gt;Performance &amp;ndash; &lt;/em&gt;Performance is addressed with &lt;em&gt;Windows Azure Compute instances &lt;/em&gt;as mentioned above. In addition to &lt;em&gt;Windows Azure Compute&lt;/em&gt; instances, the &lt;a href="http://www.windowsazure.com/en-us/develop/net/how-to-guides/cache/" target="_blank"&gt;&lt;em&gt;Caching Service&lt;/em&gt;&lt;/a&gt; can increase the performance of your app/game by temporarily storing information in memory (within the service), saving you the trip back to relatively slower data mediums, such as Storage Services or SQL Azure (it can also reduce the costs associated with transactions against those services). &lt;br /&gt; &lt;br /&gt;&lt;em&gt;Latency&lt;/em&gt; - Latency is the amount of delay your application can tolerate between requesting a resource and receiving a response. The most basic thing you can do to ensure low latency is host your app/game or backend services in a datacenter that is geographically close to your users.&amp;nbsp; Choosing where to deploy your compute instance(s) is a feature that comes out of the box with Windows Azure.&amp;nbsp; There are also two additional services that can assist with reducing latency. &lt;em&gt;&lt;a href="http://www.windowsazure.com/en-us/home/tour/virtual-network/" target="_blank"&gt;Traffic Manager&lt;/a&gt;&lt;/em&gt; takes care of intelligently routing requests from users to a datacenter that is closest to where the user is located based on rules that you can define. For example, if you have your app/game/backend services deployed to one of the Windows Azure North American datacenters and to one of the European data centers and a user is using accessing the app/game from Asia, Traffic Manager can route the user to the European data center. The European data center is physically closer, thereby reducing the length of the trip, and getting the data back to the user as fast as possible. For content such as graphics, app/game data, and other binary data, you&amp;rsquo;ll want to use the &lt;em&gt;&lt;a href="http://www.windowsazure.com/en-us/home/tour/cdn/" target="_blank"&gt;Content Delivery Network (CDN)&lt;/a&gt;&lt;/em&gt; to geographically distribute those storage objects, placing copies in &amp;ldquo;edge nodes&amp;rdquo;, or cache nodes around the world. These copies would then be physically closer to application requests, reduce the distance the storage objects have to travel, and ultimately increase the responsiveness of your app/game. &lt;/li&gt;
&lt;li&gt;The &lt;em&gt;connections from anywhere &lt;/em&gt;attribute is addressed by the services mentioned above.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Using the attributes of social app/games applications as a guide, we&amp;rsquo;ve now been able to map Windows Azure services to meet the requirements of each.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Next Steps&lt;/strong&gt;&lt;/p&gt;
&lt;p align="left"&gt;If you&amp;rsquo;ve read the &lt;a href="#PreviousPosts" target="_blank"&gt;previous posts&lt;/a&gt; in this series, you know what I&amp;rsquo;m going to say - as with everything in technology, there is always more than one way of achieving the same result, but one way will work better than another for the requirements of your particular application. The best way to figure out which one is best, is to try it out yourself.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re thinking of developing social apps and/or games, you can download the &lt;a href="https://github.com/WindowsAzure-Toolkits/wa-toolkit-games" target="_blank"&gt;Windows Azure Toolkits for Social Games&lt;/a&gt; that, through its core libraries and samples, will show you how to build the components you would need for real-time, scalable social apps and games. The toolkit contains native libraries in different languages, samples that you can peruse and learn from, project templates, and of course, documentation.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Keep In Mind&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Testing with the &lt;a href="http://msdn.microsoft.com/en-ca/library/windowsazure/gg432968.aspx" target="_blank"&gt;emulators&lt;/a&gt; that are included with the &lt;a href="http://www.windowsazure.com/en-us/develop/overview/" target="_blank"&gt;Windows Azure SDK&lt;/a&gt; (while it is definitely something you should do before deploying)will not give you as accurate of an idea as testing with the live production environment. In order to truly determine what will work best, you&amp;rsquo;ll definitely want to test with Windows Azure itself.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;If your social app/game is going to be deployed to Windows Azure, you&amp;rsquo;ll want to test it with the &lt;a href="http://msdn.microsoft.com/en-ca/library/windowsazure/hh403990.aspx" target="_blank"&gt;Compute emulator&lt;/a&gt; first to make sure that everything is working as expected. Once that&amp;rsquo;s done, deploy it to Windows Azure, test the app/game in the staging environment, and then finally, deploy it to the production environment.&lt;/li&gt;
&lt;li&gt;If you&amp;rsquo;re social app/game is going to deployed outside of Windows Azure but will be communicating with services deployed to Windows Azure, you&amp;rsquo;ll want to first test the services themselves running in instances of the Compute emulator. Then test with your app/game, pointing it to the services at the address provided by the emulator. Once that&amp;rsquo;s done, deploy the services to Windows Azure and test the app/game connected to the Staging URL. Once that&amp;rsquo;s done, test the app/game connected to the production URL.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you&amp;rsquo;re an &lt;a href="http://www.windowsazure.com/en-us/pricing/member-offers/" target="_blank"&gt;MSDN, MPN, or BizSpark member&lt;/a&gt;, you have Windows Azure benefits included with your subscription that give you ample resources with which to test Windows Azure. If you&amp;rsquo;re not a member, you can use the &lt;a href="http://www.windowsazure.com/en-us/pricing/free-trial/" target="_blank"&gt;90 day free trial&lt;/a&gt; which also gives you ample resources with which to test. The only difference is that you&amp;rsquo;ll have 90 days to do it in. For most scenarios, 90 days is sufficient to do the necessary testing.&lt;/p&gt;
&lt;p class="note"&gt;&lt;em&gt;TIP:&lt;/em&gt;&lt;strong&gt; &lt;/strong&gt;You can now set usage limits on your Windows Azure deployments. This will help you ensure that you don&amp;rsquo;t go over the resources that are included with the trial or MSDN, MPN, and BizSpark memberships. This will then prevent any unwanted charges going on your credit card.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Get a Conversation Going&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Do you have any questions about Windows Azure as it relates to social apps/games? Have you already tried different services and architectures for your solution and learned a few things along the way? Start a &lt;a href="http://linkd.in/CdnDevs" target="_blank"&gt;conversation on LinkedIn&lt;/a&gt; and ask or share with others.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Disclosure&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;As I mentioned above, there is more than one way to do anything mentioned above and different scenarios will call for different architectures. What&amp;rsquo;s mentioned in this post is just A way of architecting the solution. Don&amp;rsquo;t take this post to mean that it is the only way or the best way.&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10265698" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=gZJ1jDAaqzQ:dDPPK_l51kc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=gZJ1jDAaqzQ:dDPPK_l51kc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=gZJ1jDAaqzQ:dDPPK_l51kc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=gZJ1jDAaqzQ:dDPPK_l51kc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=gZJ1jDAaqzQ:dDPPK_l51kc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=gZJ1jDAaqzQ:dDPPK_l51kc:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=gZJ1jDAaqzQ:dDPPK_l51kc:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/gZJ1jDAaqzQ" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Azure/">Windows Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Azure/">Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/TechDays_5F00_Prime/">TechDays_Prime</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/the+When/">the When</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/The+Which/">The Which</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/and+the+How+of+Windows+Azure+Services/">and the How of Windows Azure Services</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/02/08/the-which-the-when-and-the-how-of-windows-azure-services-social-apps-and-games.aspx</feedburner:origLink></item><item><title>Canadian students get a chance to strut their stuff at Imagine Cup</title><link>http://feedproxy.google.com/~r/CanDevs/~3/khC5KceWp30/canadian-students-get-a-chance-to-strut-their-stuff-at-imagine-cup.aspx</link><pubDate>Tue, 07 Feb 2012 14:11:18 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10264929</guid><dc:creator>Susan Ibach</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10264929</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/02/07/canadian-students-get-a-chance-to-strut-their-stuff-at-imagine-cup.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/0486.IC_2D00_Logo_5F00_300pxWide_5F00_4D199352.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px 0px 10px 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="IC-Logo_300pxWide" border="0" alt="IC-Logo_300pxWide" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/8311.IC_2D00_Logo_5F00_300pxWide_5F00_thumb_5F00_5A137363.jpg" width="300" height="102" /&gt;&lt;/a&gt;Microsoft Canada is hosting Canadian finals this year for the Imagine Cup, a worldwide technology competition for students. Do you know someone who might be interested?&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Have you heard about Imagine Cup? This is the worldwide competition organized by Microsoft where students from around the world use technology to try and solve some of the worlds problems. Students choose the problem they want to solve. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Could text recognition software on a windows phone help someone with dyslexia? &lt;/li&gt;    &lt;li&gt;Can we build a stronger First Nations community with Kinect sensors and cameras connecting different bands? &lt;/li&gt;    &lt;li&gt;Can we help the local food bank spread the word on what they need restocking on their shelves with an Azure service that can be accessed by phone applications or screen displays at the local grocery stores? &lt;/li&gt;    &lt;li&gt;Can we find an easier way to determine if water is safe to drink? &lt;/li&gt;    &lt;li&gt;Can we predict the spread of malaria through mosquitos so we can take preventive measures? &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The world is faced with so many problems, big and small, and we have a world of technology at our fingertips. Technology that in the past was only available in high end research labs is now accessible to all of us through smart phones and Kinect! Now we ask students to use this incredible technology to solve a problem and this year, we’re going to shine the spotlight brighter than ever on Canadian students with our &lt;font color="#ff0000" size="3"&gt;&lt;strong&gt;&lt;a href="http://www.microsoft.ca/imaginecup"&gt;Canadian Imagine Cup&lt;/a&gt;&lt;/strong&gt;&lt;/font&gt;! &lt;/p&gt;  &lt;p&gt;Last year 400 students from 70 countries participated in the WorldWide Finals. This year &lt;strong&gt;Canada will be one at the World Finals in Sydney, Australia&lt;/strong&gt;! The top 3 Canadian teams who enter the &lt;a href="http://www.imaginecup.com/Competition/mycompetitionportal.aspx?competitionId=60"&gt;Software Design Competition&lt;/a&gt; will travel to Toronto for the Canadian finals. They will present their projects on stage and a panel of judges will be faced with the difficult task of selecting a team to move forward to the WorldWide Finals in Australia. The top 3 Canadian teams in the &lt;a href="http://www.imaginecup.com/Competition/mycompetitionportal.aspx?competitionId=62"&gt;Game Design: Phone&lt;/a&gt; competition will also be brought to Toronto for the finals to showcase their games and could win mentorship opportunities, windows phones, and if selected by the international judging committee they too could attend the world finals (we can’t choose who goes to world finals in this category, that’s just how it works). Although they are not part of our Canadian Imagine Cup there are&amp;#160; additional categories for the &lt;a href="http://www.imaginecup.com/"&gt;WorldWide Imagine Cup&lt;/a&gt; as well: Game Design Xbox/Windows, Kinect Fun Labs, Windows Metro Style Challenge, Windows Phone, and more! So many opportunities for Canada and the world to discover what students can do! &lt;strong&gt;If you know a student, an instructor, or a professor, make sure they don’t miss out on the opportunity to be a part of &lt;a href="www.microsoft.ca/imaginecup"&gt;Imagine Cup Canada!&lt;/a&gt; The deadline for submitting ideas for Windows Phone Game is February 14th and for Software Design is March 13th.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;To really get a feel for the excitement, check out this short video from last years Imagine Cup finals in New York City. These &lt;strong&gt;students are going to make a difference&lt;/strong&gt;!&lt;/p&gt;  &lt;div style="padding-bottom: 0px; padding-left: 0px; width: 425px; padding-right: 0px; display: block; float: none; margin-left: auto; margin-right: auto; padding-top: 0px" id="scid:53357c8b-5919-4e32-8c25-305d27c17a37:3935c536-b1ba-4311-b6b7-e41282ba25cc" class="wlWriterEditableSmartContent"&gt;&lt;embed src="http://www.youtube.com/v/gdjglptt6XU" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"&gt;&lt;/embed&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10264929" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=khC5KceWp30:py3-90RA7d8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=khC5KceWp30:py3-90RA7d8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=khC5KceWp30:py3-90RA7d8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=khC5KceWp30:py3-90RA7d8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=khC5KceWp30:py3-90RA7d8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=khC5KceWp30:py3-90RA7d8:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=khC5KceWp30:py3-90RA7d8:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/khC5KceWp30" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Students/">Students</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Imagine+Cup/">Imagine Cup</category><media:content url="http://feedproxy.google.com/~r/CanDevs/~5/dL9blMNMZxU/gdjglptt6XU" fileSize="1162" type="application/x-shockwave-flash" /><itunes:subtitle> Microsoft Canada is hosting Canadian finals this year for the Imagine Cup, a worldwide technology competition for students. Do you know someone who might be interested? Have you heard about Imagine Cup? This is the worldwide competition organized by Micr</itunes:subtitle><itunes:summary> Microsoft Canada is hosting Canadian finals this year for the Imagine Cup, a worldwide technology competition for students. Do you know someone who might be interested? Have you heard about Imagine Cup? This is the worldwide competition organized by Microsoft where students from around the world use technology to try and solve some of the worlds problems. Students choose the problem they want to solve. Could text recognition software on a windows phone help someone with dyslexia? Can we build a stronger First Nations community with Kinect sensors and cameras connecting different bands? Can we help the local food bank spread the word on what they need restocking on their shelves with an Azure service that can be accessed by phone applications or screen displays at the local grocery stores? Can we find an easier way to determine if water is safe to drink? Can we predict the spread of malaria through mosquitos so we can take preventive measures? The world is faced with so many problems, big and small, and we have a world of technology at our fingertips. Technology that in the past was only available in high end research labs is now accessible to all of us through smart phones and Kinect! Now we ask students to use this incredible technology to solve a problem and this year, we’re going to shine the spotlight brighter than ever on Canadian students with our Canadian Imagine Cup! Last year 400 students from 70 countries participated in the WorldWide Finals. This year Canada will be one at the World Finals in Sydney, Australia! The top 3 Canadian teams who enter the Software Design Competition will travel to Toronto for the Canadian finals. They will present their projects on stage and a panel of judges will be faced with the difficult task of selecting a team to move forward to the WorldWide Finals in Australia. The top 3 Canadian teams in the Game Design: Phone competition will also be brought to Toronto for the finals to showcase their games and could win mentorship opportunities, windows phones, and if selected by the international judging committee they too could attend the world finals (we can’t choose who goes to world finals in this category, that’s just how it works). Although they are not part of our Canadian Imagine Cup there are&amp;#160; additional categories for the WorldWide Imagine Cup as well: Game Design Xbox/Windows, Kinect Fun Labs, Windows Metro Style Challenge, Windows Phone, and more! So many opportunities for Canada and the world to discover what students can do! If you know a student, an instructor, or a professor, make sure they don’t miss out on the opportunity to be a part of Imagine Cup Canada! The deadline for submitting ideas for Windows Phone Game is February 14th and for Software Design is March 13th. To really get a feel for the excitement, check out this short video from last years Imagine Cup finals in New York City. These students are going to make a difference! </itunes:summary><itunes:keywords>Students, Imagine Cup</itunes:keywords><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/02/07/canadian-students-get-a-chance-to-strut-their-stuff-at-imagine-cup.aspx</feedburner:origLink><enclosure url="http://feedproxy.google.com/~r/CanDevs/~5/dL9blMNMZxU/gdjglptt6XU" length="1162" type="application/x-shockwave-flash" /><feedburner:origEnclosureLink>http://www.youtube.com/v/gdjglptt6XU</feedburner:origEnclosureLink></item><item><title>Winning on the Marketplace: Tips on getting promoted</title><link>http://feedproxy.google.com/~r/CanDevs/~3/0-NsCiFNMuk/winning-on-the-marketplace-tips-on-getting-promoted.aspx</link><pubDate>Tue, 07 Feb 2012 04:02:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10264728</guid><dc:creator>Paul Laberge</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10264728</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/02/07/winning-on-the-marketplace-tips-on-getting-promoted.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;Once you have built your app or game and have published it into the Windows Phone Marketplace, you’re likely going to want to monitor the uptake of your app via download and (potentially) revenue statistics.&amp;#160; You are also going to want to find ways to market your app to people who may not know about it.&amp;#160; There are several ways of doing this, some more costly than others.&amp;#160; One of the most effective ways of marketing your app is actually completely free – have the Windows Phone Marketplace showcase your app!&amp;#160; It sounds easy but there are a few things you need to do to increase the chances of this happening and that is what this post focuses on.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;One of the more effective ways of marketing your app is being chosen for promotion in the Windows Phone Marketplace.&amp;#160; We’ve seen how being promoted in the Marketplace can materially affect the download numbers of you app in a positive way.&amp;#160; The Windows Phone Marketplace offers a great number of different ways your apps can be promoted as well, which we will talk about, but first here is a graphic that shows the different ways you can be promoted and how each type of promotion increases your downloads (based on averages from apps that have been promoted on the Windows Phone Marketplace in similar ways in the past):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/3058.PromotionStats_5F00_04140353.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="PromotionStats" border="0" alt="PromotionStats" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/1817.PromotionStats_5F00_thumb_5F00_28956B0A.png" width="747" height="336" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;In essence, there are 3 types of promotion available on the Marketplace and the graphic above shows those ways.&amp;#160; Each has value and being featured in any of those buckets can mean good things to the adoption of your app or game.&amp;#160; Each type of promotion is unique and their values are described below:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Panorama Placement:&lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&amp;#160; Panorama placement is the premiere placement for promotion on the Windows Phone Marketplace.&amp;#160; In essence, the when a user opens the Marketplace app on his/her phone, that user will be greeted by a panaroma image of your app (this is the panorama image that you included with your app upon its submission for certification).&amp;#160; The value of this placement is immense as we have seen a &lt;strong&gt;&lt;font color="#ff0000"&gt;2000% increase&lt;/font&gt;&lt;/strong&gt; in downloads for an app (on average) that is featured in panorma mode. &lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Featured Icon Placement:&lt;/strong&gt;&amp;#160; &lt;/font&gt;&lt;font color="#000000"&gt;Being promoted as a featured icon is the second best way to be featured on the Marketplace.&amp;#160; Your app/game will be seen on the very left portion of the screen of the panorama of the Marketplace (i.e.:&amp;#160; if you flip the screen left by one full phone screen).&amp;#160; Your tile is prominently shown as is the app name, basically enticing users to tap on it and explore what your app entry on the Marketplace says.&amp;#160; Apps that get Featured Icon Placement on average see an &lt;strong&gt;&lt;font color="#ff0000"&gt;800% increase&lt;/font&gt;&lt;/strong&gt; in app/game downloads during their time being featured.&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Featured List:&amp;#160; &lt;/strong&gt;&lt;/font&gt;&lt;font color="#000000"&gt;The third mode of getting featured in the Marketplace is the Featured List.&amp;#160; In this list, your app will be featured alongside a number of other apps.&amp;#160; Featured List apps appear in the list of apps in the categories of the Marketplace.&amp;#160; While your app is not as prominently visible compared to the other two methods, it does return an average of a &lt;strong&gt;&lt;font color="#ff0000"&gt;150% increase&lt;/font&gt;&lt;/strong&gt; in app/game downloads.&lt;/font&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;font color="#000000"&gt;As you can see, being featured is very much worth your while.&amp;#160; While your app is featured (usually for a period that lasts anywhere from 3 to 5 days), you will likely see a noticeable uptick in your app downloads which you can then amplify through any other marketing methods you choose to use throughout your app’s lifecycle.&lt;/font&gt;&lt;/p&gt;  &lt;h3&gt;So how do I get promoted?&lt;/h3&gt;  &lt;p&gt;So you’re sold on the whole featured app thing and want in.&amp;#160; How exactly do you get your app featured?&amp;#160; While there is no specific steps that will guarantee your ability to be featured, the featured apps process is implicitly a fair one (the best, most popular apps will bubble up to the top).&amp;#160; If you feel you have a great app or game, you should read the following sub-sections to get a better understanding of how the Marketplace team assesses quality apps.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/2577.gettingpromoted_5F00_0367FAD1.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="gettingpromoted" border="0" alt="gettingpromoted" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/3554.gettingpromoted_5F00_thumb_5F00_5097F45C.png" width="556" height="197" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h5&gt;Functionality&lt;/h5&gt;  &lt;p&gt;A &lt;strong&gt;&lt;font color="#ff0000"&gt;functional&lt;/font&gt;&lt;/strong&gt; app is more than one that passes the Marketplace certification.&amp;#160; Think of a functional app as a &lt;strong&gt;&lt;font color="#ff0000"&gt;contract&lt;/font&gt;&lt;/strong&gt; between yourself and the user.&amp;#160; When a user downloads your app or game, they are likely doing so either from the description of your app on the Marketplace, it’s screenshots or by recommendation from friends or other users (including ratings).&amp;#160; In any case, they expect your app to have an experience that is consistent with any of those inputs.&amp;#160; If it’s not, then the app is likely to be less popular and as a result, be less likely to be promoted.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7183.Functionality_5F00_36578B38.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="Functionality" border="0" alt="Functionality" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7776.Functionality_5F00_thumb_5F00_6D516971.png" width="596" height="231" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h5&gt;Utility&lt;/h5&gt;  &lt;p&gt;An app that shows &lt;strong&gt;&lt;font color="#ff0000"&gt;utility&lt;/font&gt;&lt;/strong&gt; is one that thoughtfully includes &lt;font color="#ff0000"&gt;&lt;strong&gt;features that take advantage of the Windows Phone platform&lt;/strong&gt;&lt;/font&gt;.&amp;#160; Features like Live Tiles, Search Extras, multi-tasking and the like.&amp;#160; It also refers to apps that differentiate themselves with &lt;font color="#ff0000"&gt;&lt;strong&gt;amazing user interfaces&lt;/strong&gt;&lt;/font&gt; that are both visually appealing as well as intuitive and productive.&amp;#160; The Marketplace team also look at the &lt;strong&gt;&lt;font color="#ff0000"&gt;stickiness&lt;/font&gt;&lt;/strong&gt; of the app, which is another way of saying “is this an app that users will use often?”.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4075.Utility_5F00_76CA27E7.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="Utility" border="0" alt="Utility" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4555.Utility_5F00_thumb_5F00_72902A55.png" width="602" height="246" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h5&gt;Delight&lt;/h5&gt;  &lt;p&gt;The final area of differentiation that the Marketplace team will look at in apps and games is how the app will delight users.&amp;#160; This is where most featured apps really, really shine.&amp;#160; If the app shows a “&lt;strong&gt;&lt;font color="#ff0000"&gt;wow factor&lt;/font&gt;&lt;/strong&gt;” (a decidedly unscientific term for sure, but you generally know it when you see it), if it is really unique and has something that no other app or game has, then that is a way that your creation will delight users.&amp;#160; &lt;/p&gt;  &lt;p&gt;A must for the delight factor is proper and effective use of &lt;font color="#ff0000"&gt;&lt;strong&gt;Metro&lt;/strong&gt;&lt;/font&gt;, the Windows Phone Design language.&amp;#160; This is more than just square tiles and lots of text.&amp;#160; To implement Metro properly, you need to take into account a number of principles of the Metro design language (see &lt;a href="http://ux.artu.tv/?page_id=190" target="_blank"&gt;here&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/09/unlocking-the-motivation-of-your-mobile-app-user.aspx" target="_blank"&gt;here&lt;/a&gt;).&amp;#160; If your app follows these principles properly, your app will look amazing on Windows Phone and have a truly awesome experience on the platform.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/3482.delight_5F00_76BA021A.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="delight" border="0" alt="delight" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7230.delight_5F00_thumb_5F00_49586C4A.png" width="594" height="238" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;As you can see, you need to think hard about the quality of your app if you hope for it to be featured.&amp;#160; That said, the payoff of getting featured might very be worth the effort you put in.&lt;/p&gt;  &lt;p&gt;I have just one last tip for you before this blog post series on Marketplace success strategies is finished:&amp;#160; When looking at apps to build, sometimes being featured is a numbers/statistics game.&amp;#160; If there are categories within the Marketplace that are currently underserved compared to other categories (for example, as of the publication date of this post, the Politics section is light in apps compared to other categories like Entertainment and Sports), then your chances of getting featured are that much greater.&amp;#160; Just food for thought…&lt;/p&gt;  &lt;p&gt;&lt;em&gt;This post was the fifth and final post in a series of five posts on strategies for being successful on the Windows Phone Marketplace. The first post (publishing in the right geographies) is &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/23/winning-on-the-marketplace-where-in-the-world-are-you-publishing.aspx"&gt;here&lt;/a&gt;. The second post (trial mode and the art of the upsell) is &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/25/winning-on-the-marketplace-trial-mode-the-art-of-the-upsell.aspx"&gt;here&lt;/a&gt;. The third post (finding the pricing sweet spot) is &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/26/winning-on-the-marketplace-finding-the-pricing-sweet-spot.aspx"&gt;here&lt;/a&gt;. The fourth post (the differentiation game) is &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/30/winning-on-the-marketplace-the-differentiation-game.aspx" target="_blank"&gt;here&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10264728" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=0-NsCiFNMuk:SvR_mB3Yi2U:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=0-NsCiFNMuk:SvR_mB3Yi2U:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=0-NsCiFNMuk:SvR_mB3Yi2U:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=0-NsCiFNMuk:SvR_mB3Yi2U:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=0-NsCiFNMuk:SvR_mB3Yi2U:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=0-NsCiFNMuk:SvR_mB3Yi2U:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=0-NsCiFNMuk:SvR_mB3Yi2U:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/0-NsCiFNMuk" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Phone/">Windows Phone</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Marketplace/">Marketplace</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Apps/">Apps</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/02/07/winning-on-the-marketplace-tips-on-getting-promoted.aspx</feedburner:origLink></item><item><title>Canada Does Windows Azure: Epilogger</title><link>http://feedproxy.google.com/~r/CanDevs/~3/hhVVZLAlgD8/canada-does-windows-azure-epilogger.aspx</link><pubDate>Sat, 04 Feb 2012 14:01:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10263912</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10263912</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/02/04/canada-does-windows-azure-epilogger.aspx#comments</comments><description>&lt;p&gt;&lt;img src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/1768.Canada_2D00_Does_2D00_Azure_2D00_Background_5F00_thumb_5F00_7AC21F7B.png" /&gt;&lt;/p&gt;  &lt;p&gt;I believe that the best way to learn is to learn from each other, so I’m always on the search for stories of Canadian developers who have either built new applications using Windows Azure services or have migrated existing applications to Windows Azure. This is the story of &lt;a href="http://epilogger.com" target="_blank"&gt;Epilogger&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;iframe style="width: 512px; height: 288px;" src="http://channel9.msdn.com/posts/cdnazure-epilogger/player?w=512&amp;amp;h=288" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Key Points&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;[01:42] (Rationale behind using Windows Azure for storage)&lt;/strong&gt;      &lt;br /&gt;”We needed some place that was not hosted by us because we have a limited amount of disk space, where we can store tons of photos, and that we can access them quickly. So the great thing about &lt;a href="http://www.windows.com/"&gt;Windows&lt;/a&gt; Azure is that we put them all up there, we get a URL back that we can use our own domain name on, and when we serve images back on the website, they come straight from &lt;a href="http://www.windows.com/"&gt;Windows&lt;/a&gt; Azure. They don’t even come off our own web server, so we don’t have to worry about traffic that way.“&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[04:14]&lt;/strong&gt; &lt;strong&gt;(Moving large databases to SQL Azure, sharding, and a limitation of Table Storage)&lt;/strong&gt;      &lt;br /&gt;”SQL Azure is limited to 10GB [NOTE: With the latest updates to the SQL Azure platform, the maximum database size is currently 150GB], so we would have to &lt;a href="http://social.technet.microsoft.com/wiki/contents/articles/how-to-shard-with-sql-azure.aspx" target="_blank"&gt;shard&lt;/a&gt; that … table across a whole bunch of databases. That’s one thing we’ve thought about. We’ve also looked at simple Table Storage, which gave us the functionality of the mass amount of data, but didn’t necessarily give us the ability to do aggregate functions – at least right now – to be able to report on that data.”&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[04:50]&lt;/strong&gt; &lt;strong&gt;(Examples of workloads possible to move to Windows Azure)       &lt;br /&gt;&lt;/strong&gt;”… we do eventually want to scale beyond that server, so if we have all of these processes, we could throw those processes on &lt;a href="http://www.windows.com/"&gt;Windows&lt;/a&gt; Azure – like the worker processes and have them run all the time.”&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[05:40] (Continued rationale behind using Windows Azure Storage)       &lt;br /&gt;&lt;/strong&gt;”We just didn’t want to manage that many photos and having to manage the storage of that many photos. Having hundreds and hundreds of gigs [to manage] and who knows how many and when it will ever stop. We also wanted that archive to be permanent, so we didn’t want to have to setup a whole backup strategy on our main server just for the images so they could be permanent, as well as serve them if that server is down. With &lt;a href="http://www.windows.com/"&gt;Windows&lt;/a&gt; Azure we’ve thrown them all up there, they’re replicated all over, they are accessible quickly – it’s a win-win.”&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[06:29] (Learning curve for a .NET developer to work with Windows Azure)       &lt;br /&gt;&lt;/strong&gt;”As a .NET developer, I didn’t find it difficult at all. The blob storage is dead simple. You drop in the SDK (you download it, you install it), you reference the libraries, a few lines of code, you’re storing blobs, you’re getting back URLs, everything is good. Really really easy, really straight forward. Simple table storage was a little bit different. It took a little bit of time to wrap your head around the NoSQL thing and how to access entities and how to put entities up. It took a long time to figure out how to do aggregate stuff [functions and queries] because it wasn’t a function that was provided like you’re used to in SQL, like count of records or average of these rows.” &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[07:40] (Learning resources)&lt;/strong&gt;      &lt;br /&gt;”The code samples were all right there in the SDK. That’s it. Just &lt;a href="http://microsoft.com/azure"&gt;http://microsoft.com/azure&lt;/a&gt;, download the SDK, videos, code samples.”&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[08:21] (Managing hybrid – traditionally hosted components access/consuming Windows Azure services – solutions)&lt;/strong&gt;      &lt;br /&gt;&amp;quot;[Do you find it difficult?] No, not at all.”       &lt;br /&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Relevant Architecture Points&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Hybrid solution – traditionally hosted components accessing/consuming Windows Azure services.&lt;/li&gt;    &lt;li&gt;Use of Windows Azure Storage for mass amounts of data, scalability, and performance.&lt;/li&gt;    &lt;li&gt;Use of Windows Azure platform to remove need for infrastructure management&lt;/li&gt;    &lt;li&gt;No need for backup or high availability strategies as a result of using Windows Azure (out of the box capabilities with Windows Azure)&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://microsoft.ca/canadadoesazure"&gt;More Windows Azure developer stories &amp;gt;&amp;gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;EPILOGGER      &lt;br /&gt;      &lt;br /&gt;&lt;/strong&gt;&lt;img style="margin: 0px 20px 20px 0px; float: left; display: inline;" align="left" src="http://epilogger.com/public/images/logo.png" /&gt;People share their entire lives. But memories on the web are fragmented. &lt;a href="http://epilogger.com"&gt;Epilogger&lt;/a&gt; unite all your social memories to discover and relive events.&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160; &lt;br /&gt;&lt;strong&gt;CHRIS BROOKER&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;img style="margin: 0px 10px 0px 0px; float: left; display: inline;" align="left" src="http://epilogger.com/Public/images/homepage/about-chris.jpg" /&gt;President and co-founder of Epilogger. He masterminds the code and idea along with his partner in crime!     &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10263912" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=hhVVZLAlgD8:oq2qlWMDnXM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=hhVVZLAlgD8:oq2qlWMDnXM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=hhVVZLAlgD8:oq2qlWMDnXM:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=hhVVZLAlgD8:oq2qlWMDnXM:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=hhVVZLAlgD8:oq2qlWMDnXM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=hhVVZLAlgD8:oq2qlWMDnXM:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=hhVVZLAlgD8:oq2qlWMDnXM:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/hhVVZLAlgD8" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Azure/">Windows Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Azure/">Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/interview/">interview</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Canada+Does+Windows+Azure/">Canada Does Windows Azure</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/02/04/canada-does-windows-azure-epilogger.aspx</feedburner:origLink></item><item><title>A Vision Needs a Roadmap</title><link>http://feedproxy.google.com/~r/CanDevs/~3/ou49fwHxCvw/a-vision-needs-a-roadmap.aspx</link><pubDate>Fri, 03 Feb 2012 13:25:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10263678</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10263678</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/02/03/a-vision-needs-a-roadmap.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/0184.image_5F00_29AFE026.png"&gt;&lt;img style="border: 0px currentcolor; display: inline; background-image: none;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4382.image_5F00_thumb_5F00_6B1A6CB2.png" width="625" height="174" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You know the projects you’re currently working on and the technologies you use to get them done. But what about future projects? What would they be using? &lt;strong&gt;The people that can answer that are the developers and architects that not only keep themselves up to date with technologies of today, but that also know what’s coming tomorrow and how to get there.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;On &lt;strong&gt;February 22&lt;/strong&gt;,&lt;strong&gt; you’ll have the opportunity to be one of those developers and architects.&lt;/strong&gt; Join me in the Developer and Software Architect track as I take you through an exploration into the many new ways your investment in Microsoft technologies can drive innovation, productivity, efficiency, and potential cost savings. We’ll talk about what you’re doing, your challenges, and your needs, and answer any business or technical questions you may have. &lt;/p&gt;  &lt;p&gt;Here’s what the event will look like:&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="590"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;tbody&gt;&lt;strong&gt;&lt;/strong&gt;      &lt;tr&gt;&lt;strong&gt;&lt;/strong&gt;        &lt;td valign="top" width="167"&gt;8:00 - 8:30am&lt;/td&gt;        &lt;td valign="top" width="423"&gt;Registration and Breakfast&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="167"&gt;8:30 - 9:00am&lt;/td&gt;        &lt;td valign="top" width="423"&gt;Keynote- Microsoft's Enterprise Vision&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="167"&gt;9:00 - 9:15am&lt;/td&gt;        &lt;td valign="top" width="423"&gt;Windows Devices Showcase&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="167"&gt;9:15 - 9:30am&lt;/td&gt;        &lt;td valign="top" width="423"&gt;Break&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="167"&gt;9:30 - 10:15am&lt;/td&gt;        &lt;td valign="top" width="423"&gt;&lt;em&gt;&lt;strong&gt;The Public Cloud, Windows Azure™, and Your Enterprise              &lt;br /&gt;&lt;/strong&gt;&lt;/em&gt;Discover when and how you can use Windows Azure™, Microsoft’s public cloud platform, as part of your enterprise solutions. You’ll take a look at the parts that make up the platform and scenarios where you can leverage them. The discussion will then dive deeper, focusing on the key architectural elements that need to be taken into consideration when moving to Windows Azure.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="167"&gt;10:15 - 11:00am&lt;/td&gt;        &lt;td valign="top" width="423"&gt;&lt;em&gt;&lt;strong&gt;Enterprises Go Mobile with Windows Phone 7              &lt;br /&gt;&lt;/strong&gt;&lt;/em&gt;In this session, you’ll explore how enterprises can improve employee productivity by using Windows Phone. You’ll learn how Windows Phone helps enterprises get employees access to their information while mobile, how to extend/build LOB applications to use mobile devices, and how the integration with Microsoft Server products and services leads to a smooth deployment of Windows Phone across the workforce. Case studies of how customers are using mobile devices in the Enterprise will also be shared. &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="167"&gt;11:00 - 11:15am&lt;/td&gt;        &lt;td valign="top" width="423"&gt;Break&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="167"&gt;11:15 - 12:00pm&lt;/td&gt;        &lt;td valign="top" width="423"&gt;&lt;strong&gt;In the Real World            &lt;br /&gt;&lt;/strong&gt;When looking to make decisions that will impact the direction of your solutions, enterprise standards, infrastructure, tooling, etc, there are always many questions to ask. To get the best possible answers, it is best to ask those who have experience architecting, developing, testing, and implementing solutions in the “real world”. This interactive discussion will give you an opportunity to ask experts, those who have “real world” experience, your questions. You’ll hear about enterprise scenarios they have encountered, problems they have solved, and the benefits and hurdles they encountered along the way.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="167"&gt;12:00 - 12:15pm&lt;/td&gt;        &lt;td valign="top" width="423"&gt;Thank you&lt;/td&gt;     &lt;/tr&gt;     &lt;strong&gt;&lt;/strong&gt;&lt;/tbody&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/table&gt;  &lt;p&gt;&lt;strong&gt;Register Today&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;There’s no charge to attend so make sure you register today. &lt;/p&gt;  &lt;p&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032502194&amp;amp;Culture=en-CA" target="_blank"&gt;Register &amp;gt;&amp;gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Some more details&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If you’re interested, you can also attend other tracks – you’ll just have to register for those separately. Here’s the information you need for those:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032502192&amp;amp;Culture=en-CA" target="_blank"&gt;Technical decision makers&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032502193&amp;amp;Culture=en-CA" target="_blank"&gt;Infrastructure and IT managers&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I look forward to seeing and connecting with you there,&lt;/p&gt;  &lt;p&gt;&lt;img src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29/0474.jrsignature.png" width="126" height="39" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="1"&gt;**Please note that this is an NDA event. If your organization does not have a signed Non Disclosure Agreement in place please contact your account manager to make the proper arrangements&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10263678" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ou49fwHxCvw:WCTSD8EdpYk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ou49fwHxCvw:WCTSD8EdpYk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=ou49fwHxCvw:WCTSD8EdpYk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ou49fwHxCvw:WCTSD8EdpYk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ou49fwHxCvw:WCTSD8EdpYk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ou49fwHxCvw:WCTSD8EdpYk:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=ou49fwHxCvw:WCTSD8EdpYk:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/ou49fwHxCvw" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Events/">Events</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Toronto/">Toronto</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Azure/">Windows Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Phone/">Windows Phone</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Azure/">Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/phone/">phone</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Phone+7/">Windows Phone 7</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Mississauga/">Mississauga</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Event/">Event</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/roadmap/">roadmap</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/02/03/a-vision-needs-a-roadmap.aspx</feedburner:origLink></item><item><title>Learn, then Drink to Celebrate!</title><link>http://feedproxy.google.com/~r/CanDevs/~3/XN5EQ5gq0Pw/learn-then-drink-to-celebrate.aspx</link><pubDate>Wed, 01 Feb 2012 20:44:49 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10262949</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10262949</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/02/01/learn-then-drink-to-celebrate.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7206.CampChallenge_5F00_4E3806C3.png"&gt;&lt;img style="border: 0px currentcolor; display: inline; background-image: none;" title="CampChallenge" border="0" alt="CampChallenge" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7801.CampChallenge_5F00_thumb_5F00_0CBD546A.png" width="786" height="279" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Even though it hasn’t really been a typical winter for many areas across the country, it’s still cold enough for most of us to want to stay inside. The question is, what are you doing with your indoor time? If you’re like me, this is the time to catch up on the latest and greatest, taking the time to sit and learn something new. &lt;/p&gt;  &lt;p&gt;If you’ve had a chance to watch the &lt;a href="http://devs3.ms/devscubed"&gt;D³: LIVE &amp;amp; INTERACTiVE&lt;/a&gt; special with Paula Rainford, &lt;a href="http://devs3.ms/D3-SP02" target="_blank"&gt;Current IT Market Conditions and Hiring Trends in 2012&lt;/a&gt;, you know that the need for developers with Cloud Computing knowledge and skills is increasing. So, take that as a sign, or a forcing function if you will, and try out something new, expand your skill base and become either a Hero in your current company or more attractive for new companies. &lt;/p&gt;  &lt;p class="note"&gt;&lt;a href="http://azurecamp.ca/OnlineHome" target="_blank"&gt;&lt;img style="margin: 0px 0px 0px 10px; border: 0px currentcolor; float: right; display: inline; background-image: none;" title="2502.AzureCamp_5F00_32BE32F8[1]" border="0" alt="2502.AzureCamp_5F00_32BE32F8[1]" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/5340.2502.AzureCamp_5F00_5F00_5F00_32BE32F81_5F00_170E78CA.png" width="70" height="57" /&gt;&lt;/a&gt;If you’re wondering why Cloud Computing and Windows Azure skills and knowledge are being sought after by companies of all sizes, watch the &lt;a href="http://azurecamp.ca/OnlineHome" target="_blank"&gt;Windows Azure Camp Online videos&lt;/a&gt; that teach you all about Windows Azure and what you can do with it. If you prefer to learn in-person with an instructor, look for a Windows Azure Camp in a &lt;a href="http://blogs.msdn.com/b/cdndevs/p/azurecamps-inperson.aspx?WT.mc_id=otc-n-ca-loc-azurecampdirect-40848" target="_blank"&gt;city near you&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;If the industry demand or the &lt;a href="http://blogs.msdn.com/b/cdndevs/archive/tags/the+which_2c00_+the+when_2c00_+and+the+how+of+windows+azure+services/" target="_blank"&gt;things you can do&lt;/a&gt; with &lt;a href="http://windowsazure.com" target="_blank"&gt;Windows Azure&lt;/a&gt; aren’t enough to get you interested in getting the jump on your skills adjustment and checking out what the Windows Azure platform can do, how about I sweeten the deal for you? The title of this post is &lt;strong&gt;Learn, then Drink to Celebrate&lt;/strong&gt; for a reason right?&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;Learn&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I believe the best way to learn is by trying. Here’s what you’ll do:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Download the &lt;a href="https://skydrive.live.com/redir.aspx?cid=77394cd2ee114c7c&amp;amp;resid=77394CD2EE114C7C!1379&amp;amp;parid=77394CD2EE114C7C!1378" target="_blank"&gt;Introduction to Windows Azure hands-on lab&lt;/a&gt;. &lt;/li&gt;    &lt;li&gt;Follow the steps in the lab manual to complete the lab. If you prefer to work backwards, you can start from the completed solution (also included) and look at the code to understand what’s going on.&lt;/li&gt;    &lt;li&gt;When you’ve completed the entire lab, take two screenshots like those below, showing the &lt;em&gt;complete&lt;/em&gt; DNS name of your hands-on lab and all of the instances running in production.       &lt;br /&gt;      &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/1856.image_5F00_1297F803.png"&gt;&lt;img style="border: 0px currentcolor; display: inline; background-image: none;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/1537.image_5F00_thumb_5F00_7210B850.png" width="400" height="208" /&gt;&lt;/a&gt;&amp;#160; &lt;br /&gt;      &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/3000.image_5F00_316E6BE1.png"&gt;&lt;img style="border: 0px currentcolor; display: inline; background-image: none;" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/8461.image_5F00_thumb_5F00_42DECCB9.png" width="400" height="185" /&gt;&lt;/a&gt;      &lt;br /&gt;      &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;Send your lab’s DNS name (&lt;em&gt;something.cloudapp.net)&lt;/em&gt;, your mailing address, and the two screenshots to &lt;a href="mailto:cdnazure@microsoft.com"&gt;cdnazure@microsoft.com&lt;/a&gt;.&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;That’s it! I do recommend watching the &lt;em&gt;&lt;a href="http://azurecamp.ca/azurec01" target="_blank"&gt;Getting Started with Windows Azure&lt;/a&gt;&lt;/em&gt; video, but that’s entirely up to you. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;Drink to Celebrate&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;So why bother doing all of the above? Seeing how easy it is to start using Windows Azure with your existing applications, of course! Aside from that, I’ll be sending you a gift card for about 5 drinks so that you can reward yourself for learning something new. You’ll be on your way to becoming the Cloud guru at your company in no time. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;IMPORTANT: &lt;/strong&gt;Make sure that you don’t stop or delete your deployment until you hear from me. I have to verify that you completed the lab, so your lab needs to be accessible at the DNS name you submit.&lt;/p&gt;  &lt;p&gt;(By the way, the drinks are from a famous Canadian coffee retailer whose name rhymes with Jim Morton’s. What kind of drink did you think I was talking about?)&lt;/p&gt;  &lt;p&gt;&lt;font size="3"&gt;&lt;strong&gt;So…&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Don’t Delay – &lt;strong&gt;I’ve only set aside a certain number of cards.&lt;/strong&gt; Once they are gone – they are gone! And before anyone asks – &lt;strong&gt;this offer is valid and available to Canadian developers who deploy their hands-on labs to their Windows Azure accounts. &lt;/strong&gt;Those accounts can be &lt;a href="http://www.windowsazure.com/en-us/pricing/free-trial/" target="_blank"&gt;Windows Azure trial accounts&lt;/a&gt; (you can get a free one for 90 days), MSDN, BizSpark, or MPN Windows Azure benefit accounts as long as you don’t have any other deployments in the account&lt;sup&gt;*&lt;/sup&gt;.&lt;/p&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;  &lt;p&gt;&lt;font size="1"&gt;&lt;sup&gt;* &lt;/sup&gt;Offer good only in Canada and is available to the first 200 individuals, including residents of Quebec, who complete the hands-on lab, are verified by the Microsoft Canada Team, and have received a verification email from &lt;a href="mailto:cdnazure@microsoft.com"&gt;cdnazure@microsoft.com&lt;/a&gt;. &lt;/font&gt;&lt;font size="1"&gt;Limit one gift per person. The gift is a $10 Tim Horton's gift card. The offer is non-transferable and cannot be combined with any other offer. Due to government gift and ethics laws, government employees are not eligible to participate. This offer is valid until all 200 gifts have been awarded. Any gift returned as non-deliverable will not be re-sent. Please allow up to 3 weeks for verification and 6-8 weeks for delivery of your gift which will be provided to you via mail. We reserve the right to substitute a gift of equal or greater value.&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10262949" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=XN5EQ5gq0Pw:Vg0mdFon3TU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=XN5EQ5gq0Pw:Vg0mdFon3TU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=XN5EQ5gq0Pw:Vg0mdFon3TU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=XN5EQ5gq0Pw:Vg0mdFon3TU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=XN5EQ5gq0Pw:Vg0mdFon3TU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=XN5EQ5gq0Pw:Vg0mdFon3TU:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=XN5EQ5gq0Pw:Vg0mdFon3TU:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/XN5EQ5gq0Pw" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Azure/">Windows Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Azure/">Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/hands_2D00_on+lab/">hands-on lab</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Azure+Camp/">Azure Camp</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/promotion/">promotion</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/02/01/learn-then-drink-to-celebrate.aspx</feedburner:origLink></item><item><title>Ok. Let’s Start from the Beginning.</title><link>http://feedproxy.google.com/~r/CanDevs/~3/PKgxWBENXvs/ok-let-s-start-from-the-beginning.aspx</link><pubDate>Wed, 01 Feb 2012 01:28:32 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10262535</guid><dc:creator>Tommy Lee</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10262535</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/31/ok-let-s-start-from-the-beginning.aspx#comments</comments><description>&lt;p&gt;One of my favorite things to do is to check and see what folks are talking about on that Internet thing and one of the people I enjoy reading is the handsome and dapper &lt;a href="http://blogs.msdn.com/b/thebeebs/"&gt;Martin Beeby&lt;/a&gt; who we lovingly refer to as &lt;a href="http://blogs.msdn.com/b/thebeebs/"&gt;“The Beebs”&lt;/a&gt;. He is a developer evangelist for Microsoft and loves HTML5 just like me, but because he is on the other side of the world, he tends to see things before I do (grrr!).&lt;/p&gt;  &lt;p&gt;The past few days, it has been interesting that folks have been asking me about how to get up-to-speed on HTML5. &lt;a href="http://blogs.msdn.com/b/thebeebs/archive/2012/01/31/learning-html5-amp-css3.aspx"&gt;Like The Beebs wrote today&lt;/a&gt;, I ran into kids this weekend (I was at a way cool gaming hackathon event) and was asked multiple times how to get started with HTML, CSS and JavaScript. What I enjoyed was that they were not ashamed to say they didn’t know something. &lt;strong&gt;It is too bad that grown ups feel like they have to know everything.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Now, everyone typically has their stock answer, but I am always intrigued by new ways to learn and have been trying to find good material that actually have some design sensibilities as most of the good stuff looks like it was designed by a monkey with finger paints harkening back to web design circa 1997. But I digress…&lt;/p&gt;  &lt;p&gt;As I am always looking for new things to help folks design or build amazingly brutal web apps, I have found a few things I am going to review and start recommending for those new to the web world.&lt;/p&gt;  &lt;h2&gt;Based on text: A Beginners Guide to HTML and CSS&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://learn.shayhowe.com/html-css/terminology-syntax-intro"&gt;This website&lt;/a&gt; is nicely done with good typography and a clean layout. Even the ampersands are beautiful. &lt;a href="http://twitter.com/shayhowe"&gt;Shay Howe&lt;/a&gt; does a great job of describing the fundamentals while not doing to typical element by element linear way of teaching, but organizing it in a coherent way.&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://learn.shayhowe.com/html-css/terminology-syntax-intro"&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://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4774.image_5F00_7CE8DC87.png" width="511" height="365" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;Based on book: HTML &amp;amp; CSS -- design and build websites&lt;/h2&gt;  &lt;p&gt;Unfortunately, it isn’t hip these days to actually read printed paper. Hipsters will proclaim “I am all digital bro”. Fine. But then I saw &lt;a href="http://www.htmlandcssbook.com/"&gt;HTML &amp;amp; CSS&lt;/a&gt; in a beautiful and colorful format and I just had to order it. Mine should arrive tomorrow and promise that at some point I will write a book report about it. &lt;/p&gt;  &lt;p&gt;Do kids in school do book reports still? Let me know in the comments. Oops, I digress…&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://www.htmlandcssbook.com/"&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://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/1541.image_5F00_54D62D68.png" width="508" height="357" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h2&gt;Based on video: Treehouse&lt;/h2&gt;  &lt;p&gt;&lt;a href="http://teamtreehouse.com/"&gt;Treehouse&lt;/a&gt; is a video website that teaches a variety of web design and development subjects and uses a badging system to keep you engaged and motivated. It is a monthly sign-up which gives you access to a wide coverage of topics including the fundamentals.&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://teamtreehouse.com/"&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://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/5355.image_5F00_3EA01216.png" width="512" height="360" /&gt;&lt;/a&gt;&lt;/p&gt;        &lt;h2&gt;What Now?&lt;/h2&gt;  &lt;p&gt;You can consume all of the content there is on the planet about HTML and CSS, but that does not mean that you will become an expert. &lt;strong&gt;The number one way to learn is to DO IT!&lt;/strong&gt; I recommend folks not only find good content like those provided above, but to then take that knowledge and apply it to an app that you would like to build. Also, feel free to create experiments as you may be surprised at what you will learn.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;How did you learn the fundamentals of HTML and CSS? Let us know below!&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10262535" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=PKgxWBENXvs:0LXVnj1djb8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=PKgxWBENXvs:0LXVnj1djb8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=PKgxWBENXvs:0LXVnj1djb8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=PKgxWBENXvs:0LXVnj1djb8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=PKgxWBENXvs:0LXVnj1djb8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=PKgxWBENXvs:0LXVnj1djb8:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=PKgxWBENXvs:0LXVnj1djb8:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/PKgxWBENXvs" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/standards/">standards</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/HTML/">HTML</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/design/">design</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/web/">web</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/CSS/">CSS</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/31/ok-let-s-start-from-the-beginning.aspx</feedburner:origLink></item><item><title>Windows Phone links for the week</title><link>http://feedproxy.google.com/~r/CanDevs/~3/actVZHcMPCU/windows-phone-links-for-the-week.aspx</link><pubDate>Mon, 30 Jan 2012 23:48:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10262000</guid><dc:creator>Paul Laberge</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10262000</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/30/windows-phone-links-for-the-week.aspx#comments</comments><description>&lt;p&gt;A good number of us from the team are in Redmond this week on our annual pilgrimage to the mothership (Microsoft Headquarters) for training, so content from me will be a little lighter than usual.&lt;/p&gt;  &lt;p&gt;As a result, I wanted to share with you a set of links and resources that are new to help you learn more on Windows Phone development and also a reminder of some older links that you might want to bookmark as well.&lt;/p&gt;  &lt;p&gt;Happy coding!&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="100%"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="398"&gt;         &lt;p&gt;Five-Part Series on Metro Design&lt;/p&gt;          &lt;ul&gt;           &lt;ul&gt;             &lt;li&gt;Part 1: &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/09/unlocking-the-motivation-of-your-mobile-app-user.aspx"&gt;Unlocking the motivation of your mobile app user&lt;/a&gt;&lt;/li&gt;              &lt;li&gt;Part 2: &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/11/my-app-has-principles-understanding-the-metro-design-principles.aspx"&gt;My app has principles – understanding the Metro design principles&lt;/a&gt;&lt;/li&gt;              &lt;li&gt;Part 3: &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/11/isn-t-tile-just-another-word-for-icon-infography-vs-iconography-explained.aspx"&gt;Isn’t “tile” just another word for “icon”? Infography vs iconography explained.&lt;/a&gt;&lt;/li&gt;              &lt;li&gt;Part 4: &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/13/going-with-the-flow-using-metro-to-control-the-experience.aspx"&gt;Going with the flow… Using Metro to control the experience&lt;/a&gt;&lt;/li&gt;              &lt;li&gt;Part 5: &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/13/making-users-awesome-in-the-moment.aspx"&gt;Making users awesome in the moment&lt;/a&gt;&lt;/li&gt;           &lt;/ul&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="460"&gt;A five-part series on Metro design for Windows Phone.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="398"&gt;&lt;a href="http://ux.artu.tv/?page_id=190" target="_blank"&gt;31 Weeks of Metro Design for Windows Phone&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="460"&gt;An in-depth discussion on the topic of Metro for Windows Phone by &lt;a href="http://twitter.com/arturot" target="_blank"&gt;Arturo Toledo&lt;/a&gt; (Senior User Experience Designer for Windows Phone).&amp;#160; A weekly post series currently in motion.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="398"&gt;         &lt;p&gt;Five-Part Series on Succeeding on the Windows Phone Marketplace&lt;/p&gt;          &lt;ul&gt;           &lt;li&gt;Part 1:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/23/winning-on-the-marketplace-where-in-the-world-are-you-publishing.aspx" target="_blank"&gt;Publishing in the right geographies&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;Part 2:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/25/winning-on-the-marketplace-trial-mode-the-art-of-the-upsell.aspx" target="_blank"&gt;Trial mode and the art of the upsell&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;Part 3:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/26/winning-on-the-marketplace-finding-the-pricing-sweet-spot.aspx" target="_blank"&gt;Finding the pricing sweet spot&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;Part 4:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/30/winning-on-the-marketplace-the-differentiation-game.aspx" target="_blank"&gt;The differentiation game&lt;/a&gt;&lt;/li&gt;            &lt;li&gt;Part 5 (Yet to be posted):&amp;#160; Getting promoted by the Marketplace&lt;/li&gt;         &lt;/ul&gt;       &lt;/td&gt;        &lt;td valign="top" width="460"&gt;         &lt;p&gt;A five-part series on strategies you can use to increase the adoption and downloads of your app/game on the Windows Phone Marketplace.&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="398"&gt;Webcast:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/24/a-lap-around-windows-phone-7-5-webcast-now-available-on-demand.aspx" target="_blank"&gt;A lap around Windows Phone 7.5&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="460"&gt;Link to a 3 hour webcast I presented on implementing features of Windows Phone 7.5 in your apps today.&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="398"&gt;&lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/p/wpdevres.aspx" target="_blank"&gt;Microsoft Canada Windows Phone Developer Resources Page&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="460"&gt;A page outlining a number of great resources to get you started on Windows Phone development and resources that can help you after you’ve become familiar with Windows Phone development.&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10262000" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=actVZHcMPCU:DYEEHLck_h4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=actVZHcMPCU:DYEEHLck_h4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=actVZHcMPCU:DYEEHLck_h4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=actVZHcMPCU:DYEEHLck_h4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=actVZHcMPCU:DYEEHLck_h4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=actVZHcMPCU:DYEEHLck_h4:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=actVZHcMPCU:DYEEHLck_h4:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/actVZHcMPCU" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Phone/">Windows Phone</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/design/">design</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Metro/">Metro</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Marketplace/">Marketplace</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/30/windows-phone-links-for-the-week.aspx</feedburner:origLink></item><item><title>D³ Special Edition: Current IT Market Conditions and Hiring Trends in 2012</title><link>http://feedproxy.google.com/~r/CanDevs/~3/ofryzb5Fl8g/d-179-special-edition-current-it-market-conditions-and-hiring-trends-in-2012.aspx</link><pubDate>Sun, 29 Jan 2012 14:29:33 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10261558</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10261558</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/29/d-179-special-edition-current-it-market-conditions-and-hiring-trends-in-2012.aspx#comments</comments><description>&lt;p&gt;&lt;img src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/6116.ms_5F00_0314_5F00_d3_5F00_logo.png" /&gt;&lt;/p&gt;  &lt;p&gt;On this &lt;a href="http://blogs.msdn.com/b/cdndevs/p/d3.aspx?WT.mc_id=otc-n-ca-loc-devs3direct-40725"&gt;D³: LIVE &amp;amp; INTERACTiVE&lt;/a&gt; special, the D³ crew goes on location, visiting the &lt;a href="http://easttorontoug.com"&gt;East of Toronto .NET User Group&lt;/a&gt; where Paula Rainford, Account Manager at TEKSystems in Mississauga, ON speaks about &lt;strong&gt;industry trends as they relate to the .NET development community. Paula shares specific networking and job hunting techniques to assist in landing that next opportunity&lt;/strong&gt;. Plus: Paula zeros in on what employers are looking for in candidates and what should be expected out of recruitment firms.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;iframe style="width: 512px; height: 288px;" src="http://channel9.msdn.com/posts/D3SP2/player?w=512&amp;amp;h=288" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Highlights&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;[02:24] Current IT market conditions in Canada&lt;/li&gt;    &lt;li&gt;[04:50] The debate of going into contracting or full time permanent positions&lt;/li&gt;    &lt;li&gt;[05:00] Outlook for 2012&lt;/li&gt;    &lt;li&gt;[06:36] Top skills sets desired in 2012&lt;/li&gt;    &lt;li&gt;[06:57] Huge demand for mobile development&lt;/li&gt;    &lt;li&gt;[07:20] Developers with Microsoft skills are high in demand&lt;/li&gt;    &lt;li&gt;[08:00] Increase in the use of Microsoft development to convert legacy systems over Java&lt;/li&gt;    &lt;li&gt;[08:38] The need for user experience designers&lt;/li&gt;    &lt;li&gt;[09:23] #2 top skill: Security &lt;/li&gt;    &lt;li&gt;[09:41] #3 top skill: Data warehouse/business intelligence&lt;/li&gt;    &lt;li&gt;[10:19] #4 top skill: Networking&lt;/li&gt;    &lt;li&gt;[10:46] #5 top skill: Business analysis/project management&lt;/li&gt;    &lt;li&gt;[11:20] #6 top skill: IT Pro&lt;/li&gt;    &lt;li&gt;[11:53] What employers are looking for&lt;/li&gt;    &lt;li&gt;[13:26] Q: Can you elaborate on “soft skills”?&lt;/li&gt;    &lt;li&gt;[14:30] Bad hires are due to attitudinal reasons&lt;/li&gt;    &lt;li&gt;[15:26] Q: You said that one of the biggest challenges is attracting new people. Is that because the bar is set too high?&lt;/li&gt;    &lt;li&gt;[17:10] Q: What are employers defining “emotional intelligence” as?&lt;/li&gt;    &lt;li&gt;[17:49] Job hunting skills: networking&lt;/li&gt;    &lt;li&gt;[18:44] Importance of referrals&lt;/li&gt;    &lt;li&gt;[19:26] Working with recruitment firms to land an opportunity&lt;/li&gt;    &lt;li&gt;[20:42] Using LinkedIn as your social network&lt;/li&gt;    &lt;li&gt;[23:00] Job hunting using Twitter&lt;/li&gt;    &lt;li&gt;[23:47] Other avenues you can use to locate opportunities&lt;/li&gt;    &lt;li&gt;[25:10] What to expect from recruiting firms&lt;/li&gt;    &lt;li&gt;[27:09] Q: How do recruiting firms work with people who have experience, just not Canadian experience?&lt;/li&gt;    &lt;li&gt;[28:20] Q: What are you seeing happening so far in 2012?&lt;/li&gt;    &lt;li&gt;[28:54] Q: What’s your take on certification?&lt;/li&gt;    &lt;li&gt;[29:21] Q: Do employers still require college or university degrees to get jobs?&lt;/li&gt;    &lt;li&gt;[30:23] Q: What are companies doing to attract talent?&lt;/li&gt;    &lt;li&gt;[31:50] Q: Are people who move around jobs a lot more marketable than those who stick around for longer periods of time?&lt;/li&gt;    &lt;li&gt;[33:03] Q: What are you looking for in resumes?&lt;/li&gt;    &lt;li&gt;[33:35] Common employer resume frustrations &lt;/li&gt;    &lt;li&gt;[34:18] Q: Is it true that resumes should only be two pages?&lt;/li&gt;    &lt;li&gt;[34:51] Q: How many resumes do employers look at for positions?&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Paula Rainford     &lt;br /&gt;&lt;/strong&gt;Paula is a tenured Account Manager with TEKsystems with a background in recruiting. She manages the relationship between corporations and TEKsystems and is dedicated to spending time to develop an understanding of a company's culture, hiring practices, upcoming business priorities and IT project and resources needs. She is actively involved in networking and recruiting the top IT talent and assisting technical professionals in their career search.     &lt;br /&gt;&lt;a href="mailto:prainfor@teksystems.ca" target="_blank"&gt;Contact &amp;gt;&amp;gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;TEKSystems     &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://teksystems.ca" target="_blank"&gt;&lt;img style="margin: 5px 0px 10px 10px; border: 0px currentcolor; float: right; display: inline; background-image: none;" title="teksystems" border="0" alt="teksystems" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/5102.teksystems_5F00_79B1387D.gif" width="114" height="65" /&gt;&lt;/a&gt;TEKsystems is North America's leading technology staffing and services company. Combining a proven track record of superior performance, a quality focused approach to service delivery and the highest calibre technical professionals in the market, TEKsystems helps our clients successfully plan, build, and run their critical technology initiatives. With more than 25 years of experience, we annually deploy 70,000 technical professionals from 90 locations through North America, Europe and Asia.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;East of Toronto .NET User Group&lt;/strong&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-60-29-metablogapi/6675.easttorontoug_5F00_0F271182.png"&gt;&lt;img style="margin: 0px 0px 10px 10px; border: 0px currentcolor; float: right; display: inline; background-image: none;" title="easttorontoug" border="0" alt="easttorontoug" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/2068.easttorontoug_5F00_thumb_5F00_67146262.png" width="240" height="52" /&gt;&lt;/a&gt;The mission of the East of Toronto .NET Users Group is to provide advanced, interesting information about the Microsoft .NET Framework. It serves the need of developers to receive the best .NET programming information, and fill their desire to be informed about developments of revolutionary importance as early as possible. The group serves the needs of programmers who are currently working with or interested in the .NET platform.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;D³: LIVE &amp;amp; INTERACTiVE     &lt;br /&gt;&lt;/strong&gt;Just in case you haven’t heard about the show, &lt;a href="http://devs3.ms/devscubed"&gt;Developers, Developers, Developers: LIVE &amp;amp; INTERACTIVE&lt;/a&gt; (D³) is a monthly show hosted by &lt;a href="http://jrozenblit.ca/about"&gt;yours truely&lt;/a&gt;. The show airs live &lt;strong&gt;every first Wednesday of the month at 12:00 PM ET&lt;/strong&gt; and features the latest updates on what's new and exciting in the world of development; featured presentations; and guests. LIVE and INTERACTIVE means that you'll be part of the show – You're invited to interact with us; ask questions and get them answered; and share your thoughts and opinions. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://linkd.in/CanadianDeveloperConnection"&gt;&lt;strong&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/1234.LinkedIn.png" width="15" height="16" /&gt;&lt;/strong&gt;&lt;/a&gt; Join the &lt;a href="http://linkd.in/CanadianDeveloperConnection"&gt;Canadian Developer Connection&lt;/a&gt; LinkedIn group    &lt;br /&gt; &lt;a href="http://twitter.com/devsdevsdevs"&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/3806.Twitter.png" width="15" height="15" /&gt;&lt;/a&gt; follow &lt;a href="http://twitter.com/devsdevsdevs"&gt;@devsdevdevs&lt;/a&gt;, or     &lt;br /&gt;&lt;a href="https://www.facebook.com/#!/pages/Developers-Developers-Developers-LIVE-and-Interactive/273573892687218"&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/3487.Facebook.png" width="15" height="15" /&gt;&lt;/a&gt; like D³ on &lt;a href="http://on.fb.me/DevsDevsDevs"&gt;Facebook&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://devs3.ms/devscubed"&gt;More &amp;gt;&amp;gt;&lt;/a&gt;&lt;/p&gt;  &lt;p class="note"&gt;&lt;em&gt;Special thanks to Paula and the East of Toronto .NET User Group for inviting D³ and allowing us to share this special with developers nationwide.&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10261558" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ofryzb5Fl8g:PgaKEa9rBjs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ofryzb5Fl8g:PgaKEa9rBjs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=ofryzb5Fl8g:PgaKEa9rBjs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ofryzb5Fl8g:PgaKEa9rBjs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ofryzb5Fl8g:PgaKEa9rBjs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ofryzb5Fl8g:PgaKEa9rBjs:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=ofryzb5Fl8g:PgaKEa9rBjs:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/ofryzb5Fl8g" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/LinkedIn/">LinkedIn</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/career/">career</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Developers+Developers+Developers/">Developers Developers Developers</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/29/d-179-special-edition-current-it-market-conditions-and-hiring-trends-in-2012.aspx</feedburner:origLink></item><item><title>Do you hate SharePoint? Part 3 of 4</title><link>http://feedproxy.google.com/~r/CanDevs/~3/bx_omIJ7-w0/do-you-hate-sharepoint-part-3-of-4.aspx</link><pubDate>Thu, 26 Jan 2012 17:51:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10260938</guid><dc:creator>Susan Ibach</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10260938</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/26/do-you-hate-sharepoint-part-3-of-4.aspx#comments</comments><description>&lt;p align="justify"&gt;&lt;em&gt;&lt;strong&gt;If the answer is yes, could your hatred be caused by your local implementation? In this blog series we look at four common problems with SharePoint implementations and how you can address them.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;We continue our series by &lt;a href="http://www.neilmcisaac.com/"&gt;Neil McIsaac&lt;/a&gt;, SharePoint MCT, for putting this together. Happy reading! If you missed it you can still read &lt;a href="http://blogs.msdn.com/b/cdnsoldevs/archive/2012/01/12/do-you-hate-sharepoint-part-1-of-4.aspx"&gt;Part 1&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/b/cdndevs/archive/2012/01/19/do-you-hate-sharepoint-part-2-of-4.aspx"&gt;Part 2&lt;/a&gt; of the series&lt;/p&gt;  &lt;p align="justify"&gt;SharePoint is an interesting platform and as it grows as a product and with its already incredible adoption, it is an important cornerstone for many organizations. But ask the people that work with it, and you will find a divided love it or hate it passion for the product.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;em&gt;Why hate it?      &lt;br /&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;It’s my experience (which dates back to the site server/dashboard days), that many customers have difficulty handling the product and I mean this a number of ways. Here’s the issue: &lt;/p&gt;  &lt;blockquote&gt;   &lt;p align="justify"&gt;&lt;strong&gt;&lt;em&gt;SharePoint will amplify your problems&lt;/em&gt;&lt;/strong&gt;. &lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="justify"&gt;So why do we hate it? I would hate anything that made my problems larger. But did SharePoint create the problem? That would be like blaming the carpenters hammer for building a crooked house. The problems are our own doing in the majority of cases. In my experience, the most common problem SharePoint seems to amplify are the following;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;     &lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;a href="http://blogs.msdn.com/b/cdnsoldevs/archive/2012/01/12/do-you-hate-sharepoint-part-1-of-4.aspx"&gt;Information Management&lt;/a&gt; &lt;/span&gt;&lt;/em&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/b/cdndevs/archive/2012/01/19/do-you-hate-sharepoint-part-2-of-4.aspx"&gt;Project Management&lt;/a&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;/span&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;em&gt;Information Security&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;em&gt;Business Intelligence&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p align="justify"&gt;This week we look at Information Security.&lt;/p&gt;  &lt;h2 align="justify"&gt;3. Information Security    &lt;br /&gt;&lt;/h2&gt;  &lt;p align="justify"&gt;SharePoint has a confusing security architecture. A friend of mine continually jokes that you can do anything in SharePoint, as long as you know the 6 strategically placed security settings you need to set to allow users to interact with your content. I like to keep things simple. I always start addressing security by asking these 3 basic questions;&lt;/p&gt;  &lt;h4 align="justify"&gt;What are the requirements?    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;This question is pretty straight forward and we do it relatively well. Who gets access, and who doesn't.&lt;/p&gt;  &lt;h4 align="justify"&gt;How do we know we meet the security requirements?    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;This is one area where SharePoint poses some difficulty, since it lacks any worthwhile reporting tools and has enough security layers that are hidden in the UI that it feels like finding an answer to this question is akin to finding the meaning of life itself. Paired with the products inability to properly handle security inheritance and the lack of a proper method to deny permissions and you are on a never ending hunt for individualized permissions. Yuck. Unfortunately the best security reporting tools are third party. Your team needs to sit down and address how your organization will address security reporting and auditing.&lt;/p&gt;  &lt;h4 align="justify"&gt;When is the last time we checked?    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;Security audits are often checked at implementation, but rarely checked afterwards. Permission elevation happens for various reasons such as troubleshooting, making it necessary to schedule our audits. If running an audit is painful because we haven't properly addressed the above question, then scheduling it will hurt that much more. Again, get a good security tool.&lt;/p&gt;  &lt;h3 align="justify"&gt;Information Security Tips    &lt;br /&gt;&lt;/h3&gt;  &lt;p align="justify"&gt;Here are a few tips on implementing security in SharePoint to help make things a little more manageable.&lt;/p&gt;  &lt;h4 align="justify"&gt;Libraries/Lists are for security    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;I am not a fan of the Shared Documents Library which comes as a default. If you have ever heard me talk on the subject, you know I get a bit worked up about it. I am a fan of lists/libraries in SharePoint and I completely understand Microsoft's position in adding it. It was a necessary evil. The problem that I have with it is what most people put in it. It goes against pretty much every information management principal that we have. Many organizations use this library and why not? It says &amp;quot;Shared&amp;quot; and I want to share my stuff, so why not? The reasons are many, but at a simple level, you will end up with a folder structure that mimics your old file shares, and make it work by placing individual permissions on folders and files to compensate for your lack of proper architecture. If you think of lists and libraries as containers, which if you were paying attention in the previous blog post when I ranted about the importance of structure, you can shape these containers to better store its information. You can change the shape (&lt;em&gt;think 'content types'&lt;/em&gt;), and you can change the behaviour (&lt;em&gt;think 'workflows' and 'views'&lt;/em&gt;) to better aid the end user in the task they have at hand (&lt;em&gt;think 'Use Cases'&lt;/em&gt;). Coming back to permissions, if we have a container with similar information in it, we can control permissions to all of its content by controlling permissions to the container. In other words, permissions in SharePoint are best handled at the list and library level and not at the folder or file/item level. Which brings me to a solid point: If you are not sure how many libraries you should have, look at the common permissions to your content. If a group of people need read access to one &lt;em&gt;type&lt;/em&gt; of content but not to another type of content, then the content should be in the same list/library and we can control permissions to the content by setting the permissions once on the list or library. So how many lists or libraries should you have? The answer is in how many groups of content with the same permissions you have. This is not always the answer, but it is a good starting point.&lt;/p&gt;  &lt;h4 align="justify"&gt;Use SharePoint groups as functional roles    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;SharePoint groups are best used to reflect functionality rather than entity. Since we typically use Active Directory groups, adding the AD groups to our SharePoint groups to reflect the same group would be redundant. For example, having a Sales group in AD, which we mimic and create a Sales group in SharePoint usually offers little benefit. Having a group in SharePoint that reflects their ability is preferred. For example, I can create a group in SharePoint called &lt;em&gt;Sales Lead Generators&lt;/em&gt; that can better reflect what anyone in that group can 'do' rather than who they are. Not only does it simplify security administration, it makes audit reporting a lot easier to read and verify.&lt;/p&gt;  &lt;h4 align="justify"&gt;Use Information Rights Management    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;Information Rights Management has been around for some time now. Surprisingly, most organizations that want to secure documents rely on securing the folder or physical media where the file is stored. The problem is that this security simply doesn't follow the document where ever it goes. IRM on the other hand, &lt;em&gt;does&lt;/em&gt;! You just have to ask someone if their documents are just as secure after an employee that has proper permissions to the file copies it to a thumb drive, or inadvertently emails it to the wrong person. SharePoint and IRM integrate very well. You can check out more about IRM &lt;a href="http://msdn.microsoft.com/en-us/library/ms439625.aspx"&gt;here. &lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Next week, part 4 business intelligence…&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10260938" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bx_omIJ7-w0:6707Rh9pJpA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bx_omIJ7-w0:6707Rh9pJpA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=bx_omIJ7-w0:6707Rh9pJpA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bx_omIJ7-w0:6707Rh9pJpA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bx_omIJ7-w0:6707Rh9pJpA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bx_omIJ7-w0:6707Rh9pJpA:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=bx_omIJ7-w0:6707Rh9pJpA:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/bx_omIJ7-w0" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/_2300_CDNWIN7/">#CDNWIN7</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/SharePoint+2010/">SharePoint 2010</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/SharePoint/">SharePoint</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Tips_2C00_+Tricks_2C00_+and+Tools/">Tips, Tricks, and Tools</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/tips/">tips</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/26/do-you-hate-sharepoint-part-3-of-4.aspx</feedburner:origLink></item><item><title>On the Next D³: LIVE &amp; INTERACTiVE – Securing .NET Applications</title><link>http://feedproxy.google.com/~r/CanDevs/~3/Y_xYOposWwQ/on-the-next-d-179-live-amp-interactive-securing-net-applications.aspx</link><pubDate>Wed, 25 Jan 2012 16:28:41 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10260584</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10260584</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/25/on-the-next-d-179-live-amp-interactive-securing-net-applications.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/1057.On_2D00_The_2D00_Next_2D00_D3_5F00_08E093D8.png"&gt;&lt;img style="border: 0px currentcolor; display: inline; background-image: none;" title="On The Next D3" border="0" alt="On The Next D3" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/0804.On_2D00_The_2D00_Next_2D00_D3_5F00_thumb_5F00_43C7C6A1.png" width="360" height="128" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;February 1, 2012 | 12:00 PM ET | &lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/2388.D3.2012.02.ics" target="_blank"&gt;Add to Outlook &amp;gt;&amp;gt;&lt;/a&gt;&lt;/strong&gt; &lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="629"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="406"&gt;         &lt;p&gt;Next week on &lt;a href="http://blogs.msdn.com/b/cdndevs/p/d3.aspx"&gt;Developers, Developers, Developers: LIVE &amp;amp; INTERACTiVE&lt;/a&gt;: Developer security experts and &lt;a href="http://techdays.ca" target="_blank"&gt;TechDays&lt;/a&gt; speakers &lt;a href="http://opulentasp.com/"&gt;Joël Herbert&lt;/a&gt; and &lt;a href="http://www.syfuhs.net/"&gt;Steve Syfuhs&lt;/a&gt; will be will be on the show to chat about securing .NET applications easily and effectively. &lt;/p&gt;          &lt;p&gt;Plus: &lt;a href="http://twitter.com/gladstonegrant"&gt;Gladstone Grant&lt;/a&gt;, VP of Microsoft Canada’s Developer &amp;amp; Platform group, will be talking about the directions of IT and the opportunities developers have working with Microsoft platform. Watch Gladstone’s &lt;a href="http://blogs.msdn.com/b/cdndevs/p/d3-sp01.aspx?WT.mc_id=otc-n-ca-loc-devs3direct-40725" target="_blank"&gt;&lt;strong&gt;Directions of IT: The Developer Opportunity&lt;/strong&gt;&lt;/a&gt;, then tune in, and ask him your questions.&lt;/p&gt;          &lt;p&gt;All LIVE and INTERACTiVE.&lt;/p&gt;       &lt;/td&gt;        &lt;td valign="top" width="17"&gt;&amp;nbsp;&lt;/td&gt;        &lt;td valign="top" width="204"&gt;&lt;a href="http://opulentasp.com/" target="_blank"&gt;&lt;img style="margin: 15px 0px 0px; border: 0px currentcolor; display: inline; background-image: none;" title="joel_hebert_138x117" border="0" alt="joel_hebert_138x117" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4617.joel_5F00_hebert_5F00_138x117_5F00_22D453FA.jpg" width="80" height="80" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://www.syfuhs.net/" target="_blank"&gt;&lt;img style="border: 0px currentcolor; display: inline; background-image: none;" title="SteveSyfuhs" border="0" alt="SteveSyfuhs" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4101.SteveSyfuhs_5F00_1429A815.jpg" width="80" height="80" /&gt;&lt;/a&gt;          &lt;br /&gt;&lt;a href="http://twitter.com/gladstonegrant" target="_blank"&gt;&lt;img style="border: 0px currentcolor; display: inline; background-image: none;" title="Gladstone" border="0" alt="Gladstone" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/1070.Gladstone_5F00_13BD7520.png" width="80" height="80" /&gt;&lt;/a&gt;&amp;#160;&lt;img src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/1207.Tile.png" /&gt;          &lt;br /&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;strong&gt;Connect with D³&lt;/strong&gt;&lt;/p&gt;  &lt;table border="0" cellspacing="0" cellpadding="2" width="610"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="18"&gt;&lt;a href="http://twitter.com/devsdevsdevs"&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/3806.Twitter.png" width="18" height="18" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="166"&gt;Follow &lt;a href="http://twitter.com/devsdevsdevs"&gt;@devsdevdevs&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="18"&gt;&amp;#160;&lt;/td&gt;        &lt;td valign="top" width="18"&gt;&lt;a href="https://www.facebook.com/#!/pages/Developers-Developers-Developers-LIVE-and-Interactive/273573892687218"&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/3487.Facebook.png" width="18" height="18" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="166"&gt;Like D³ on &lt;a href="http://on.fb.me/DevsDevsDevs"&gt;Facebook&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="18"&gt;&amp;#160;&lt;/td&gt;        &lt;td valign="top" width="18"&gt;&lt;a href="http://linkd.in/CanadianDeveloperConnection"&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/1234.LinkedIn.png" width="18" height="19" /&gt;&lt;/a&gt;&lt;/td&gt;        &lt;td valign="top" width="166"&gt;Join the &lt;a href="http://linkd.in/CanadianDeveloperConnection"&gt;Canadian Developer Connection&lt;/a&gt; LinkedIn group&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/b/cdndevs/p/d3.aspx"&gt;Developers, Developers, Developers Home &amp;gt;&amp;gt;&lt;/a&gt;&lt;/p&gt;  &lt;p class="note"&gt;Only a week to go before the next D³, so make sure to save the date and time (you can use the &lt;em&gt;Add to Outlook&lt;/em&gt; link above)! &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10260584" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=Y_xYOposWwQ:6X-kaOna9RI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=Y_xYOposWwQ:6X-kaOna9RI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=Y_xYOposWwQ:6X-kaOna9RI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=Y_xYOposWwQ:6X-kaOna9RI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=Y_xYOposWwQ:6X-kaOna9RI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=Y_xYOposWwQ:6X-kaOna9RI:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=Y_xYOposWwQ:6X-kaOna9RI:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/Y_xYOposWwQ" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Security/">Security</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Developers+Developers+Developers/">Developers Developers Developers</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/25/on-the-next-d-179-live-amp-interactive-securing-net-applications.aspx</feedburner:origLink></item><item><title>Winning on the Marketplace: Where in the world are you publishing?</title><link>http://feedproxy.google.com/~r/CanDevs/~3/8buQ3pWbvjk/winning-on-the-marketplace-where-in-the-world-are-you-publishing.aspx</link><pubDate>Mon, 23 Jan 2012 21:00:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10259769</guid><dc:creator>Paul Laberge</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10259769</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/23/winning-on-the-marketplace-where-in-the-world-are-you-publishing.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;If you’ve built modern mobile apps, you probably already know that &lt;font color="#ff0000"&gt;coming up with the idea for the app/game and&lt;/font&gt; &lt;font color="#ff0000"&gt;coding it is really only&lt;/font&gt; &lt;font color="#ff0000"&gt;half the battle&lt;/font&gt;.&amp;#160; Success is largely determined in the &lt;font color="#ff0000"&gt;marketing strategy&lt;/font&gt; you adopt for your app.&amp;#160; There are quite a few strategies that you can take and you can likely mix and match them, but there is no one “silver bullet” that will make your app an instant success.&amp;#160; This post is the first in a series of five that will give you an idea of some of the ways you can help your app become a success in the Windows Phone Marketplace.&lt;/strong&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-60-29-metablogapi/6747.tough_5F00_1B761138.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px 5px 5px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top: 0px; border-right: 0px; padding-top: 0px" title="tough" border="0" alt="tough" align="left" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/8802.tough_5F00_thumb_5F00_01A1DB09.png" width="90" height="85" /&gt;&lt;/a&gt;There’s a statistic that was &lt;a href="http://www.localytics.com/blog/2011/first-impressions-matter-26-percent-of-apps-downloaded-used-just-once/" target="_blank"&gt;published&lt;/a&gt; by analytics vendor &lt;a href="http://www.localytics.com/" target="_blank"&gt;Localytics&lt;/a&gt; that states that &lt;strong&gt;&lt;font color="#ff0000"&gt;only 26% of all mobile apps downloaded are ever opened more than once&lt;/font&gt;&lt;/strong&gt;.&amp;#160; That’s actually a little higher than the numbers I’ve heard around mobile app circles, but still that number is quite astounding.&amp;#160; What it means is that for a myriad of reasons, most users are interested enough to open your app but quickly lose interest and either delete right away or never open it again.&amp;#160; Those odds are not good, so if you intend for your app to be popular, you need to adopt a strategy that will give you an edge and &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/09/unlocking-the-motivation-of-your-mobile-app-user.aspx" target="_blank"&gt;compel&lt;/a&gt; your user base to make use of your app more than once.&lt;/p&gt;  &lt;p&gt;There are multiple things you need to do before your app is ready for consumption.&amp;#160; One is to have a great idea (this is pretty much non-negotiable in my opinion).&amp;#160; Second, you need to build it the right way (i.e.:&amp;#160; great functionality, application flow, pleasant interface and intuitive app design). Third, you need to figure out a way for your app to &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/13/making-users-awesome-in-the-moment.aspx" target="_blank"&gt;make your users awesome in the moment&lt;/a&gt;.&amp;#160; All this before your very first user even thinks of downloading your app.&amp;#160; &lt;/p&gt;  &lt;p&gt;At the same time as building your app, you should be thinking about how you’ll market it once it’s ready.&amp;#160; Over the next 5 days, I’ll be posting an entry per day discussing some of the strategies you can employ to help make your app or game more successful on the Windows Phone Marketplace.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Making your apps available on as many markets that make sense to support, not ALL markets possible&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The context of this first post is about understanding which geographies you can make your app available in.&amp;#160; Your first answer to “which countries should your app be available in?” might be “All of them, of course!”, but keep in mind a few things.&amp;#160; The correct answer to this question is that you should assess which countries your app will have value to users and how you will be able to support those users with your app.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.windowsphone.com/en-ca/apps/14989419-c0e4-df11-a844-00237de2db9e" target="_blank"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top: 0px; border-right: 0px; padding-top: 0px" border="0" align="right" src="http://catalog.zune.net/v3.2/en-US/apps/14989419-c0e4-df11-a844-00237de2db9e/primaryImage?width=95&amp;amp;height=95&amp;amp;resize=true" /&gt;&lt;/a&gt;For example, there is a fantastic app called “&lt;a href="http://www.windowsphone.com/en-ca/apps/14989419-c0e4-df11-a844-00237de2db9e" target="_blank"&gt;Where’s Timmy&lt;/a&gt;?” that &lt;a href="http://www.redbitdev.com/" target="_blank"&gt;RedBit Development&lt;/a&gt; created and published that is a consistently popular one in Canada.&amp;#160; While there is nothing that limited Redbit from making the app available in every single market, the purpose of the app is to locate the closest Tim Horton’s coffee shop from your location.&amp;#160; Tim Horton’s is very popular in Canada and growing in popularity in the US, but has no presence in Europe.&amp;#160; As a result, Redbit did not publish the app in European countries but did publish it in Canada and the US.&lt;/p&gt;  &lt;p&gt;Another consideration to take into account is localization.&amp;#160; Making your app available in many markets may require you to support many different languages for your apps.&amp;#160; You must make a judgment call as to which languages you wish to support.&amp;#160; While this adds to the complexity of your app from a maintainability perspective, it enhances the local user’s experience while using the app.&amp;#160; By localizing the content of your app to the appropriate language and culture considerations, you will likely have better adoption and better ratings for your app in the Marketplace.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Markets Supported by Windows Phone&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;So with that said, what markets are currently supported by Windows Phone?&amp;#160; The graphic below shows which markets are supported (countries highlighted in yellow are markets that have been supported since launch in November, 2010 while markets highlighted in green were added just recently).&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-60-29-metablogapi/8814.SupportedMarkets_5F00_2150B4D1.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="SupportedMarkets" border="0" alt="SupportedMarkets" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/3531.SupportedMarkets_5F00_thumb_5F00_005D422A.png" width="682" height="350" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Marketplace distribution and targeting the right locales is one of the strategies for being successful in the Windows Phone Marketplace.&amp;#160; Stay tuned for further Marketplace strategies over the next few posts on the &lt;a href="http://blogs.msdn.com/cdnmobiledevs/" target="_blank"&gt;Canadian Mobile Developer Connection&lt;/a&gt;, where I’ll talk about the trial API, pricing strategies, differentiation using Windows Phone-specific features like Live Tiles and Push Notifications and finally, how you can get promoted in the Windows Phone Marketplace.     &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10259769" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=8buQ3pWbvjk:4z_GeRUQ3KQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=8buQ3pWbvjk:4z_GeRUQ3KQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=8buQ3pWbvjk:4z_GeRUQ3KQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=8buQ3pWbvjk:4z_GeRUQ3KQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=8buQ3pWbvjk:4z_GeRUQ3KQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=8buQ3pWbvjk:4z_GeRUQ3KQ:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=8buQ3pWbvjk:4z_GeRUQ3KQ:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/8buQ3pWbvjk" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Phone/">Windows Phone</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Marketplace/">Marketplace</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Apps/">Apps</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/23/winning-on-the-marketplace-where-in-the-world-are-you-publishing.aspx</feedburner:origLink></item><item><title>Javascript and CSS Minifying/Bundling with the Microsoft.Web.Optimization Nuget package</title><link>http://feedproxy.google.com/~r/CanDevs/~3/sN3wX3LIqSA/javascript-and-css-minifying-bundling-with-the-microsoft-web-optimization-nuget-package.aspx</link><pubDate>Mon, 23 Jan 2012 19:05:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10259726</guid><dc:creator>Frédéric Harper</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10259726</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/23/javascript-and-css-minifying-bundling-with-the-microsoft-web-optimization-nuget-package.aspx#comments</comments><description>&lt;p align="justify"&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4048.photo_5F00_1ACD5F12.jpg"&gt;&lt;img style="background-image: none; margin: 0px 0px 5px 10px; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border-width: 0px;" title="photo" border="0" alt="photo" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4520.photo_5F00_thumb_5F00_3E1A53B7.jpg" width="184" height="239" /&gt;&lt;/a&gt;This blog post is a guest post from Maxime Rouiller. If you want to make blog post about Web technology, please contact me at &lt;a href="mailto:fredh@microsoft.com"&gt;fredh@microsoft.com&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;em&gt;&lt;strong&gt;&lt;a href="http://blog.decayingcode.com/"&gt;Maxime Rouiller&lt;/a&gt; is a passionate .NET technology specialist and &lt;/strong&gt;&lt;/em&gt;&lt;a href="http://ASP.NET"&gt;&lt;em&gt;&lt;strong&gt;ASP.NET&lt;/strong&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt;&lt;strong&gt; MVP, working for 8 years in large software development, advocating Agile and TDD. Aware of the latest technological trends, he intervenes as a specialist in the .NET Montreal usergroup and acts regularly as a speaker for Web Form programmers on the MVC platform.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p align="justify"&gt;So I&amp;rsquo;ve been wanting to write about this since the build and only gotten around to do it now.&lt;/p&gt;
&lt;p align="justify"&gt;When you write C# code, you rather have multiple small files with clear separation of concerns. This allows you to have small and clear classes, and the compiler will never complain about it. However, in Javascript, you want to have smaller files. Most of the time in the .NET environment, there wasn&amp;rsquo;t any integrated way of doing so. Either it required an EXE call or outputing .min.js files.&lt;/p&gt;
&lt;p align="justify"&gt;This caused problems as we had to alter our Development version of our HTML to fit our Production environment. Microsoft released this tid bit early because it&amp;rsquo;s probably going to be integrated in the .NET 4.5 framework but is making it available to us now.&lt;/p&gt;
&lt;p align="justify"&gt;Please be aware that &amp;ldquo;Microsoft.*&amp;rdquo; DLLs are not part of the official framework and when they do, they will probably be changed namespace to &amp;ldquo;System.*&amp;rdquo;.&lt;/p&gt;
&lt;p align="justify"&gt;&lt;/p&gt;
&lt;h4 align="justify"&gt;Pre-requisites&lt;/h4&gt;
&lt;p align="justify"&gt;First, you will need NuGet to install the following packages:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div align="justify"&gt;Microsoft.Web.Optimization&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div align="justify"&gt;WebActivator&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 align="justify"&gt;How it works&lt;/h4&gt;
&lt;p align="justify"&gt;Now, the way the JS/CSS minifying works is that it will dynamically inspect all your files, read them, minify them and then cache the result to be served later. This allows us to modify our files and have all the files re-minified. When one of our JS/CSS files get modified again, this process will restart until either the cache expires or a file change.&lt;/p&gt;
&lt;h4 align="justify"&gt;Setting up the base work&lt;/h4&gt;
&lt;p align="justify"&gt;For the minify-er to work, it will require the registration of a HttpModule. It&amp;rsquo;s not already included in the Microsoft.Web.Optimization package, but it will be necessary for us to add it if we want it to work.&lt;/p&gt;
&lt;p align="justify"&gt;&lt;/p&gt;
&lt;div id="codeSnippetWrapper" align="justify"&gt;
&lt;div style="text-align: left; line-height: 12pt; background-color: #f4f4f4; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;" id="codeSnippet"&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; Microsoft.Web.Infrastructure.DynamicModuleHelper;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; Microsoft.Web.Optimization;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&lt;span style="color: #0000ff;"&gt;using&lt;/span&gt; MvcBackbonePrototype.Bundle;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;nbsp;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;[assembly: WebActivator.PreApplicationStartMethod(&lt;span style="color: #0000ff;"&gt;typeof&lt;/span&gt;(MvcBackbonePrototype.AppStart.BundleAppStart), &lt;span style="color: #006080;"&gt;"Start"&lt;/span&gt;)]&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;nbsp;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&lt;span style="color: #0000ff;"&gt;namespace&lt;/span&gt; MvcBackbonePrototype.AppStart&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;{&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;class&lt;/span&gt; BundleAppStart&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; Start()&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;            DynamicModuleUtility.RegisterModule(&lt;span style="color: #0000ff;"&gt;typeof&lt;/span&gt;(BundleModule));&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;            RegisterFolders();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        }&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;nbsp;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        &lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; RegisterFolders()&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;            &lt;span style="color: #008000;"&gt;// configure Microsoft.Web.Optimization&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        }&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    }&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;}&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div align="justify"&gt;&amp;nbsp;&lt;/div&gt;
&lt;p align="justify"&gt;The previous code will do the following, when your application start, it will register a dynamic HttpModule.&lt;/p&gt;
&lt;p align="justify"&gt;Now that the base work is done, we&amp;rsquo;ll jump right ahead to the configuration of the folders.&lt;/p&gt;
&lt;h4 align="justify"&gt;Configuring the package&lt;/h4&gt;
&lt;p align="justify"&gt;Now that the HttpModule is properly registered, we need to tell the Module when to activate itself. In my specific scenario, I wanted to have jQuery, underscore.js and Backbone.js in that specific order.&lt;/p&gt;
&lt;p align="justify"&gt;By default, the Module will load most core frameworks first (jQuery, MooTools, prototype, scriptaculous) and then load the rest of the files that doesn&amp;rsquo;t match the wildcards after. The filters are done so that jQuery plugins will load after the jQuery core library, and jQuery UI will load after jQuery.&lt;/p&gt;
&lt;p align="justify"&gt;However, there is nothing done for underscore.js and Backbone.js.&lt;/p&gt;
&lt;p align="justify"&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;/p&gt;
&lt;div align="justify"&gt;
&lt;div style="text-align: left; line-height: 12pt; background-color: #f4f4f4; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;" id="codeSnippet"&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; RegisterFolders()&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;{&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    var js = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; DynamicFolderBundle(&lt;span style="color: #006080;"&gt;"js"&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;typeof&lt;/span&gt;(JsMinify), &lt;span style="color: #006080;"&gt;"*.js"&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    BundleTable.Bundles.Add(js);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;}&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p align="justify"&gt;The previous code correctly configures the module to minify all files in a folder by just adding the suffix &amp;ldquo;js&amp;rdquo; to the folder (eg.: /Scripts/js).&lt;/p&gt;
&lt;p align="justify"&gt;However, it will register the other modules in alphabetical order rather than the proper order.&lt;/p&gt;
&lt;p align="justify"&gt;Let&amp;rsquo;s fix that.&lt;/p&gt;
&lt;p align="justify"&gt;&lt;/p&gt;
&lt;h4 align="justify"&gt;Custom Orderer&lt;/h4&gt;
&lt;p align="justify"&gt;&lt;/p&gt;
&lt;div align="justify"&gt;
&lt;div style="text-align: left; line-height: 12pt; background-color: #f4f4f4; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;" id="codeSnippet"&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;class&lt;/span&gt; BackboneOrderer : DefaultBundleOrderer&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;{&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    &lt;span style="color: #0000ff;"&gt;public&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;override&lt;/span&gt; IEnumerable&amp;lt;FileInfo&amp;gt; OrderFiles(BundleContext context, IEnumerable&amp;lt;FileInfo&amp;gt; files)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        context.BundleCollection.AddDefaultFileOrderings();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;nbsp;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        var backboneOrdering = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; BundleFileSetOrdering(&lt;span style="color: #006080;"&gt;"backbone"&lt;/span&gt;);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        backboneOrdering.Files.Add(&lt;span style="color: #006080;"&gt;"underscore.*"&lt;/span&gt;);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        backboneOrdering.Files.Add(&lt;span style="color: #006080;"&gt;"backbone.*"&lt;/span&gt;);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        context.BundleCollection.FileSetOrderList.Add(backboneOrdering);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;nbsp;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;        &lt;span style="color: #0000ff;"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;base&lt;/span&gt;.OrderFiles(context, files);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    }&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;}&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p align="justify"&gt;We first inherit from the default order. Then, we add the default file ordering, which will take care of the jQuery ordering for us. Then, we add the other files that we require to the list. The only thing left is to alter our RegisterFolders method to fix that.&lt;/p&gt;
&lt;p align="justify"&gt;&lt;/p&gt;
&lt;div align="justify"&gt;
&lt;div style="text-align: left; line-height: 12pt; background-color: #f4f4f4; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;" id="codeSnippet"&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&lt;span style="color: #0000ff;"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;static&lt;/span&gt; &lt;span style="color: #0000ff;"&gt;void&lt;/span&gt; RegisterFolders()&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;{&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    var js = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; DynamicFolderBundle(&lt;span style="color: #006080;"&gt;"js"&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;typeof&lt;/span&gt;(JsMinify), &lt;span style="color: #006080;"&gt;"*.js"&lt;/span&gt;, &lt;span style="color: #0000ff;"&gt;false&lt;/span&gt;);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    js.Orderer = &lt;span style="color: #0000ff;"&gt;new&lt;/span&gt; BackboneOrderer();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;    BundleTable.Bundles.Add(js);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;}&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p align="justify"&gt;That&amp;rsquo;s it. We are nearly done!&lt;/p&gt;
&lt;p align="justify"&gt;Modifying your _Layout.cshtml / masterpage&lt;/p&gt;
&lt;p align="justify"&gt;My masterpage head section first looked a lot like this:&lt;/p&gt;
&lt;p align="justify"&gt;&lt;/p&gt;
&lt;div align="justify"&gt;
&lt;div style="text-align: left; line-height: 12pt; background-color: #f4f4f4; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;" id="codeSnippet"&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;lt;script src=&lt;span style="color: #006080;"&gt;"@Url.Content("&lt;/span&gt;~/Scripts/Framework/jquery-1.7.1.min.js&lt;span style="color: #006080;"&gt;")"&lt;/span&gt; type=&lt;span style="color: #006080;"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: #f4f4f4; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;lt;script src=&lt;span style="color: #006080;"&gt;"@Url.Content("&lt;/span&gt;~/Scripts/Framework/underscore.min.js&lt;span style="color: #006080;"&gt;")"&lt;/span&gt; type=&lt;span style="color: #006080;"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;lt;script src=&lt;span style="color: #006080;"&gt;"@Url.Content("&lt;/span&gt;~/Scripts/Framework/backbone.min.js&lt;span style="color: #006080;"&gt;")"&lt;/span&gt; type=&lt;span style="color: #006080;"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p align="justify"&gt;This was of course replaced by the following:&lt;/p&gt;
&lt;div align="justify"&gt;
&lt;div style="text-align: left; line-height: 12pt; background-color: #f4f4f4; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;" id="codeSnippet"&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;lt;script src=&lt;span style="color: #006080;"&gt;"@Url.Content("&lt;/span&gt;~/Scripts/Framework/js&lt;span style="color: #006080;"&gt;")"&lt;/span&gt; type=&lt;span style="color: #006080;"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p align="justify"&gt;And that&amp;rsquo;s all! All your files will be minimized, bundled and properly cached.&lt;/p&gt;
&lt;h4 align="justify"&gt;Bonus&lt;/h4&gt;
&lt;p align="justify"&gt;If you want to have your URLs with a &amp;ldquo;version number&amp;rdquo; on it, I suggest that you use the following methods to resolve your URLs instead of the MVC way:&lt;/p&gt;
&lt;div align="justify"&gt;
&lt;div style="text-align: left; line-height: 12pt; background-color: #f4f4f4; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;" id="codeSnippet"&gt;
&lt;pre style="text-align: left; line-height: 12pt; background-color: white; margin: 0em; width: 100%; font-family: 'Courier New', courier, monospace; direction: ltr; color: black; font-size: 8pt; overflow: visible; border-style: none; padding: 0px;"&gt;&amp;lt;script src=&lt;span style="color: #006080;"&gt;"@Microsoft.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("&lt;/span&gt;~/Scripts/Framework/js&lt;span style="color: #006080;"&gt;", true)"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&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=10259726" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=sN3wX3LIqSA:pzsmyAq2AIY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=sN3wX3LIqSA:pzsmyAq2AIY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=sN3wX3LIqSA:pzsmyAq2AIY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=sN3wX3LIqSA:pzsmyAq2AIY:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=sN3wX3LIqSA:pzsmyAq2AIY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=sN3wX3LIqSA:pzsmyAq2AIY:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=sN3wX3LIqSA:pzsmyAq2AIY:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/sN3wX3LIqSA" height="1" width="1"/&gt;</description><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/23/javascript-and-css-minifying-bundling-with-the-microsoft-web-optimization-nuget-package.aspx</feedburner:origLink></item><item><title>Canada Does Windows Azure: Druida</title><link>http://feedproxy.google.com/~r/CanDevs/~3/ewykuIQpqUw/canada-does-windows-azure-druida.aspx</link><pubDate>Mon, 23 Jan 2012 13:22:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10259611</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10259611</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/23/canada-does-windows-azure-druida.aspx#comments</comments><description>&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/5001.Canada_2D00_Does_2D00_Azure_2D00_Background_5F00_42D05165.png"&gt;&lt;img style="border: 0px currentcolor; display: inline; background-image: none;" title="Canada Does Azure Background" border="0" alt="Canada Does Azure Background" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/1768.Canada_2D00_Does_2D00_Azure_2D00_Background_5F00_thumb_5F00_7AC21F7B.png" width="515" height="239" /&gt;&lt;/a&gt;  &lt;p&gt;I believe that the best way to learn is to learn from each other, so I’m always on the search for stories of Canadian developers who have either built new applications using Windows Azure services or have migrated existing applications to Windows Azure. This is the story of &lt;a href="http://druida.biz" target="_blank"&gt;Druida&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;iframe style="width: 512px; height: 288px;" src="http://channel9.msdn.com/posts/cdnazure-druida/player?w=512&amp;amp;h=288" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Key Points&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;[04:33] (Mapping on-premises components to Windows Azure):&lt;/strong&gt;      &lt;br /&gt;“For the application server, the Web Role is typically our application server. The file server, also, is Blob storage. On-premise they [customers] have the storage [server] to put the files. Now you have blobs to put the files. It is exactly the same, the only thing is that the application server, the Web Role, processing the information it checks – ‘I’m in Azure, ok, let’s go to Blob Storage. I’m not in Azure, I go to the storage server.’”       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[05:41] (Learning curve of a .NET developer to the Cloud):&lt;/strong&gt;      &lt;br /&gt;“From the developer perspective, the learning curve is kind of easy. The challenge was to make it work in a seamless way for the emulator to put all of the different pieces of Azure together. … It wasn’t the language experience of the developer, it was more the meta stuff, the stuff that goes on top to make Azure work that is more of a steeper curve. … From the point of view of a developer, there was nothing, there’s was not much to learn.”       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[07:45] (Architectural challenges):&lt;/strong&gt;      &lt;br /&gt;“… the config files. Because in Azure, when you put stuff there, the web.config is kind of locked, and it gets deployed to the roles. To make changes, I have to redeploy everything. So what we did (that was one of the biggest changes), we took out the information from the web.config and put it into a blob… that will trigger an event called &lt;em&gt;RoleEnvironment_Changed &lt;/em&gt;on the VMs so they know that something changed in the config file and they go and get the new one [Continues]”       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[09:42] (Rationale of going to Windows Azure):&lt;/strong&gt;      &lt;br /&gt;“We had business reasons and technical reasons. On the business side, one is that we are not kind of a company that will be proud of having a lot of servers and a lot of infrastructure to take care of, a lot of databases, so when we had to provide offsite services to our customers, it was not a good idea to grow the company on things that we are not experts. … to have someone, like Microsoft, to take care of all of the infrastructure so the customers don’t need to take care of that, we don’t have to take care of that, so we have this middle area that do the best thing on that area – that was great. … On the technical side, the application was already multi-tenant, multi-lingual, had all of these pieces that matched perfectly onto Azure Web Roles, the blob, so it was not so hard – you don’t have to create a new team to do the Azure stuff, it was just ‘ok, you have the application, you did it in this way, it’s very easy, technically, to move it to Azure. [Continues]”       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[13:15] (Obstacles and things that were not as obvious):&lt;/strong&gt;      &lt;br /&gt;“The configuration stuff was complicated and that was one of the challenges that we had to cope with. The other thing was logging. Logging was hard. Now it is much more mature. So when I speak about what were the challenges, sometimes you speak about something that is already solved. … It is very important to test it [your application] when you put it in Azure and not trust just what you have in the Compute emulator. It does a great job but sometimes there are some things that will not work exactly as they supposed to.”       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[14:45] (Training resources):        &lt;br /&gt;&lt;/strong&gt;“MSDN. We tried to buy books, but actually you find that, at this era, sometimes books are too late. So you get the book and the information you’re reading then is misleading because you have the new SDK that has some changed parameters. … the good thing about the book is the introduction and the first chapter that talks about the architecture, the ideas, but when you get into the details, then the books are not useful. Finding stuff on the web and reading MSDN articles were the main sources of training.”       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;[15:45] (Understanding information from the web):&lt;/strong&gt;      &lt;br /&gt;“Looking at fragmented information from the web doesn’t give you the whole picture about the architecture of Azure. I think that it is good to have some kind of key books to read about – these introductory chapters … these first chapters speak a lot about how it is working, and that is very important. And sometimes if you go straight to developing, then you lose time, then you don’t know exactly why this is working this way. … Sometimes the why and the what is there at the beginning and then the how you find more on the Internet. … Sometimes time pressures make suboptimal solutions. So sometimes spending a little bit more time on learning the background allows you to make more informed decisions after.”&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://microsoft.ca/canadadoesazure"&gt;More Windows Azure developer stories &amp;gt;&amp;gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;DANIEL FIRKA      &lt;br /&gt;&lt;/strong&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/0385.Daniel_5F00_162D0C9B.jpg"&gt;&lt;img style="margin: 5px 20px 10px 0px; border: 0px currentcolor; float: left; display: inline; background-image: none;" title="Daniel" border="0" alt="Daniel" align="left" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4276.Daniel_5F00_thumb_5F00_4E6B83B3.jpg" width="179" height="157" /&gt;&lt;/a&gt;Daniel Firka is the founder and CEO of DRUIDA Software &amp;amp; Consulting, chief architect, designer, and developer of the Druida SPAC software. He is an Industrial Engineer and a Sociologist, has obtained a MSc in Biomedical Engineering, and is currently finishing his MSc in Statistics at the University of Toronto. He is also a certified Quality and Reliability Engineer by the American Society for Quality (ASQ). He is a Director at the Argentinean Institute for Quality, and in his spare time, develops software for advanced biomedical applications.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt; &lt;strong&gt;DRUIDA&amp;#160;&amp;#160;&amp;#160; &lt;br /&gt;&lt;/strong&gt;&lt;strong&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/1856.Druida_5F00_46E01446.png"&gt;&lt;img style="margin: 5px 20px 20px 0px; border: 0px currentcolor; float: left; display: inline; background-image: none;" title="Druida" border="0" alt="Druida" align="left" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4572.Druida_5F00_thumb_5F00_41CDB0CA.png" width="179" height="45" /&gt;&lt;/a&gt;&lt;/strong&gt;&lt;a href="http://druida.biz"&gt;DRUIDA&lt;/a&gt; is a company specialized in consulting and software development for Quality Assurance and Statistical Analysis. For almost 20 years it has developed a set of solutions covering several business needs related to Continuous Improvement, all under the flagship product named SPAC. The product discussed in this interview, SPAC IPP, as an auditing tool to evaluate suppliers and internal departments.   &lt;p&gt;Since its creation DRUIDA has leveraged Microsoft technologies to achieve high quality software. The latest innovation is the deployment of SPAC IPP on Windows Azure.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://microsoft.ca/canadadoesazure"&gt;More Windows Azure developer stories &amp;gt;&amp;gt;&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=10259611" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ewykuIQpqUw:5Z0qhMsceXE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ewykuIQpqUw:5Z0qhMsceXE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=ewykuIQpqUw:5Z0qhMsceXE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ewykuIQpqUw:5Z0qhMsceXE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ewykuIQpqUw:5Z0qhMsceXE:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=ewykuIQpqUw:5Z0qhMsceXE:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=ewykuIQpqUw:5Z0qhMsceXE:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/ewykuIQpqUw" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Azure/">Windows Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Azure/">Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Canada+Does+Windows+Azure/">Canada Does Windows Azure</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/23/canada-does-windows-azure-druida.aspx</feedburner:origLink></item><item><title>D³ Special Edition: Directions of IT - The Developer Opportunity</title><link>http://feedproxy.google.com/~r/CanDevs/~3/n1PBguIu4Uk/d-179-special-edition-directions-of-it-the-developer-opportunity.aspx</link><pubDate>Sat, 21 Jan 2012 15:26:34 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10259235</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10259235</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/21/d-179-special-edition-directions-of-it-the-developer-opportunity.aspx#comments</comments><description>&lt;p&gt;&lt;img src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/6116.ms_5F00_0314_5F00_d3_5F00_logo.png" /&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-60-29-metablogapi/4341.BlogPicture_5F00_1E9FE239.png"&gt;&lt;img style="margin: 0px 0px 20px 20px; border: 0px currentcolor; float: right; display: inline; background-image: none;" title="BlogPicture" border="0" alt="BlogPicture" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/2678.BlogPicture_5F00_thumb_5F00_11095DCC.png" width="200" height="286" /&gt;&lt;/a&gt;On this &lt;a href="http://blogs.msdn.com/b/cdndevs/p/d3.aspx?WT.mc_id=otc-n-ca-loc-devs3direct-40725"&gt;D³: LIVE &amp;amp; INTERACTiVE&lt;/a&gt; special, the crew travels to the &lt;a href="http://easttorontoug.com/" target="_blank"&gt;East of Toronto .NET User Group&lt;/a&gt; in Pickering, ON for a special presentation by Gladstone Grant, VP Developer &amp;amp; Platform Group at Microsoft Canada (my boss’ boss) (&lt;a href="http://linkd.in/gladstonegrant" target="_blank"&gt;LinkedIn&lt;/a&gt;, &lt;a href="http://twitter.com/gladstonegrant" target="_blank"&gt;Twitter&lt;/a&gt;). &lt;strong&gt;Gladstone talks about Microsoft’s overall technology direction and the opportunity it provides developers to be successful and to help their customers be successful.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Those present had the opportunity to ask Gladstone questions that were top of mind for them. As you’re watching the special, make note of questions that you would want to ask Gladstone. &lt;strong&gt;Post your questions on &lt;/strong&gt;&lt;a href="http://linkd.in/CdnDevs" target="_blank"&gt;&lt;strong&gt;LinkedIn&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; and then tune in on February 1st at 12:00 PM ET to &lt;/strong&gt;&lt;a href="http://blogs.msdn.com/b/cdndevs/p/d3.aspx?WT.mc_id=otc-n-ca-loc-devs3direct-40725"&gt;&lt;strong&gt;D³: LIVE &amp;amp; INTERACTiVE&lt;/strong&gt;&lt;/a&gt;. Gladstone will be on the show to answer your questions.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Watch “Directions of IT: The Developer Opportunity”&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;iframe style="width: 512px; height: 288px;" src="http://channel9.msdn.com/posts/D3SP01/player?w=512&amp;amp;h=288" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;The Developer Opportunity&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Gladstone takes you through the full tour of opportunities you have as a developer on the Microsoft platform, but here’s a a summary:   &lt;br /&gt;    &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7853.The_2D00_Developer_2D00_Opportunity_5F00_3475DC64.jpg"&gt;&lt;img style="display: inline; background-image: none;" title="The Developer Opportunity" border="0" alt="The Developer Opportunity" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7028.The_2D00_Developer_2D00_Opportunity_5F00_thumb_5F00_2F6378E8.jpg" width="600" height="338" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Gladstone Grant&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Software is an “innovate or die” business. It’s the kind of business that attracts restless, positive people like Gladstone Grant. As VP of Microsoft’s Developer and Platform Group, Gladstone has the enviable job of being focused on the future, on what’s next, on the things most of us haven’t even dreamt of yet. After nearly 20 years in the technology industry and more than 12 years with Microsoft Canada, Gladstone’s passion for technology, for learning, for new challenges and for competition are stronger than ever. When Gladstone turns his attention to the present, rather than the future, he indulges his passions for sport and home renovation.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;East of Toronto .NET User Group&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The mission of the East of Toronto .NET Users Group is to provide advanced, interesting information about the Microsoft .NET Framework. It serves the need of developers to receive the best .NET programming information, and fill their desire to be informed about developments of revolutionary importance as early as possible. The group serves the needs of programmers who are currently working with or interested in the .NET platform.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;D³: LIVE &amp;amp; INTERACTiVE      &lt;br /&gt;&lt;/strong&gt;Just in case you haven’t heard about the show, &lt;a href="http://devs3.ms/devscubed"&gt;Developers, Developers, Developers: LIVE &amp;amp; INTERACTIVE&lt;/a&gt; (D³) is a monthly show hosted by &lt;a href="http://jrozenblit.ca/about"&gt;yours truely&lt;/a&gt;. The show airs live &lt;strong&gt;every first Wednesday of the month at 12:00 PM ET&lt;/strong&gt; and features the latest updates on what's new and exciting in the world of development; featured presentations; and guests. LIVE and INTERACTIVE means that you'll be part of the show – You're invited to interact with us; ask questions and get them answered; and share your thoughts and opinions. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://linkd.in/CanadianDeveloperConnection"&gt;&lt;strong&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/1234.LinkedIn.png" width="15" height="16" /&gt;&lt;/strong&gt;&lt;/a&gt; Join the &lt;a href="http://linkd.in/CanadianDeveloperConnection"&gt;Canadian Developer Connection&lt;/a&gt; LinkedIn group, &lt;a href="http://twitter.com/devsdevsdevs"&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/3806.Twitter.png" width="15" height="15" /&gt;&lt;/a&gt; follow &lt;a href="http://twitter.com/devsdevsdevs"&gt;@devsdevdevs&lt;/a&gt;, or &lt;a href="https://www.facebook.com/#!/pages/Developers-Developers-Developers-LIVE-and-Interactive/273573892687218"&gt;&lt;img border="0" alt=" " src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-devsdevsdevs/3487.Facebook.png" width="15" height="15" /&gt;&lt;/a&gt; like D³ on &lt;a href="http://on.fb.me/DevsDevsDevs"&gt;Facebook&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://devs3.ms/devscubed" target="_blank"&gt;More &amp;gt;&amp;gt;&lt;/a&gt;&lt;/p&gt;  &lt;p class="note"&gt;&lt;em&gt;Special thanks to Gladstone and the East of Toronto .NET User Group for inviting D³ and allowing us to share this special with developers nationwide.&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10259235" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=n1PBguIu4Uk:x0yhy6ZHEHk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=n1PBguIu4Uk:x0yhy6ZHEHk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=n1PBguIu4Uk:x0yhy6ZHEHk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=n1PBguIu4Uk:x0yhy6ZHEHk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=n1PBguIu4Uk:x0yhy6ZHEHk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=n1PBguIu4Uk:x0yhy6ZHEHk:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=n1PBguIu4Uk:x0yhy6ZHEHk:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/n1PBguIu4Uk" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/BING/">BING</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Azure/">Windows Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Phone/">Windows Phone</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/developers/">developers</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/development/">development</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Xbox+LIVE+Arcade/">Xbox LIVE Arcade</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Xbox+360/">Xbox 360</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Xbox/">Xbox</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Xbox+LIVE/">Xbox LIVE</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/developer+tools/">developer tools</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/developer/">developer</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Developing+for+Windows/">Developing for Windows</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+8/">Windows 8</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Developers+Developers+Developers/">Developers Developers Developers</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/skype/">skype</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/21/d-179-special-edition-directions-of-it-the-developer-opportunity.aspx</feedburner:origLink></item><item><title>My love affair with Visual Studio: Error Correction</title><link>http://feedproxy.google.com/~r/CanDevs/~3/B9aTQpQRA0Q/my-love-affair-with-visual-studio-error-correction.aspx</link><pubDate>Thu, 19 Jan 2012 12:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10256310</guid><dc:creator>Susan Ibach</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10256310</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/19/my-love-affair-with-visual-studio-error-correction.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;I have been working with Visual Studio for years, and I’ve found a few tricks along the way that make my coding easier. In this blog post I’ll show one of my favourite time savers the Error Correction feature.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;When you are writing code for a form or a class as part of a team, or even if you are just starting work on a project which will be made up of multiple classes, you always end up having to reference classes, properties, or methods in your code that haven’t been written yet. So you either have to comment out those calls, add them later, or add stubs so your code will compile. In Visual Studio 2010 they added a neat little feature that will add the stubs for you!&lt;/p&gt;  &lt;p&gt;Say I am writing code for a click event handler that will create and populate an instance of a Student object who will be registering for a course. I haven’t created the Student class yet so I see a squiggly under the word student and this little rectangle at the end of the squiggly. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/6507.image_5F00_054B7C9F.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 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-60-29-metablogapi/3060.image_5F00_thumb_5F00_039AB0CB.png" width="580" height="104" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Now comes the cool part, I can carefully hover the mouse over the tiny rectangle and a little warning symbol will appear, if I hover just right it will appear with an arrow beside it that I can click on.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/6661.ErrorCorrectionOptionSmall_5F00_7D73642F.png"&gt;&lt;img 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" title="ErrorCorrectionOptionSmall" border="0" alt="ErrorCorrectionOptionSmall" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/2870.ErrorCorrectionOptionSmall_5F00_thumb_5F00_4E417898.png" width="580" height="138" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Clicking on that little arrow will bring up a menu of options that will fix the error for me! By the way, if like me, you find using the mouse to bring up the list fiddly, you can use the keyboard to bring up the correction menu by putting the cursor on the word student and hitting CTRL + . that’s CONTROL KEY and a PERIOD. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/5100.ErrorCorrectionListSmall_5F00_7A11CC87.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 0px; padding-top: 0px" title="ErrorCorrectionListSmall" border="0" alt="ErrorCorrectionListSmall" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/0218.ErrorCorrectionListSmall_5F00_thumb_5F00_43547183.png" width="580" height="201" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Visual Studio is offering to create a Student class for me, or to define a new type (variable essentially). If I click on Generate ‘Class Student’ I can see a new class appear in Solution Explorer called Student.vb&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4405.image_5F00_680588FA.png"&gt;&lt;img 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" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7658.image_5F00_thumb_5F00_58EEAA20.png" width="300" height="140" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If I open up the Student class I see it has not only created a class, but because my code called a constructor and passed in two variables, it created a constructor method in the class as well that accepts two variables! &lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/0702.image_5F00_72E26A42.png"&gt;&lt;img 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" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/2330.image_5F00_thumb_5F00_719DD163.png" width="580" height="285" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The code isn’t complete by any means, but it’s enough to get rid of the squiggly on Student in my event handler!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/0602.image_5F00_738B206C.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 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-60-29-metablogapi/3007.image_5F00_thumb_5F00_1261944B.png" width="580" height="92" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Of course now I have squiggly lines under vFirstName and vLastName because I haven’t declared those yet, but if I bring up the Error Correction list for those variables I select Generate field for vFirstName and then Generate field for vLastName and it adds the declarations for me!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/3021.image_5F00_305FA23F.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top: 0px; border-right: 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-60-29-metablogapi/6153.image_5F00_thumb_5F00_1CD2429E.png" width="580" height="162" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Sure, it didn't’ know what data type to make the variables, it’s not perfect, but when I am trying to test something quickly these little Error Correction tools that will generate code stubs for me can be a real time-saver. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10256310" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=B9aTQpQRA0Q:gopwxqmyHUQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=B9aTQpQRA0Q:gopwxqmyHUQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=B9aTQpQRA0Q:gopwxqmyHUQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=B9aTQpQRA0Q:gopwxqmyHUQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=B9aTQpQRA0Q:gopwxqmyHUQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=B9aTQpQRA0Q:gopwxqmyHUQ:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=B9aTQpQRA0Q:gopwxqmyHUQ:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/B9aTQpQRA0Q" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Visual+Studio/">Visual Studio</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Visual+Studio+2010/">Visual Studio 2010</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Tips_2C00_+Tricks_2C00_+and+Tools/">Tips, Tricks, and Tools</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/tips/">tips</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/19/my-love-affair-with-visual-studio-error-correction.aspx</feedburner:origLink></item><item><title>Do you hate SharePoint? Part 2 of 4</title><link>http://feedproxy.google.com/~r/CanDevs/~3/TfQGuiELntg/do-you-hate-sharepoint-part-2-of-4.aspx</link><pubDate>Thu, 19 Jan 2012 08:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10257281</guid><dc:creator>Susan Ibach</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10257281</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/19/do-you-hate-sharepoint-part-2-of-4.aspx#comments</comments><description>&lt;p align="justify"&gt;&lt;em&gt;&lt;strong&gt;If the answer is yes, could your hatred be caused by your local implementation? In this second part of our blog series we continue to explore four common problems with SharePoint implementations and how you can address them.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Once again, a huge thank you to &lt;a href="http://www.neilmcisaac.com/"&gt;Neil McIsaac&lt;/a&gt;, SharePoint MCT, for putting this together. Happy reading! If you missed Part 1 – Information Management, you can read it &lt;a href="http://blogs.msdn.com/b/cdnsoldevs/archive/2012/01/12/do-you-hate-sharepoint-part-1-of-4.aspx"&gt;here&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;SharePoint is an interesting platform and as it grows as a product and with its already incredible adoption, it is an important cornerstone for many organizations. But ask the people that work with it, and you will find a divided love it or hate it passion for the product.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;em&gt;Why hate it?      &lt;br /&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;It’s my experience (which dates back to the site server/dashboard days), that many customers have difficulty handling the product and I mean this a number of ways. Here’s the issue: &lt;/p&gt;  &lt;blockquote&gt;   &lt;p align="justify"&gt;&lt;strong&gt;&lt;em&gt;SharePoint will amplify your problems&lt;/em&gt;&lt;/strong&gt;. &lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="justify"&gt;So why do we hate it? I would hate anything that made my problems larger. But did SharePoint create the problem? That would be like blaming the carpenters hammer for building a crooked house. The problems are our own doing in the majority of cases. In my experience, the most common problem SharePoint seems to amplify are the following;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;     &lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;a href="http://blogs.msdn.com/b/cdnsoldevs/archive/2012/01/12/do-you-hate-sharepoint-part-1-of-4.aspx"&gt;Information Management&lt;/a&gt; &lt;/span&gt;&lt;/em&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;em&gt;Project Management&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;/span&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;em&gt;Information Security&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;em&gt;Business Intelligence&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p align="justify"&gt;Last week we looked at Information Management, this week let’s look at Project Management.&lt;/p&gt;  &lt;h2 align="justify"&gt;2. Project Management    &lt;br /&gt;&lt;/h2&gt;  &lt;p align="justify"&gt;There are some interesting numbers on the frequency in which SharePoint projects fail. I won't bore you with numbers mainly because individually they succumb to a lot of subjectivity, but ask anyone that's been around the block a few times and they will tell you that the majority of SharePoint projects fail. &lt;em&gt;Why? &lt;/em&gt;Blaming SharePoint for a bad project is kind of like blaming a poor house design on the hammer in the carpenter's hand. SharePoint is a tool, albeit a very complex one, but the result is always the result of its usage and rarely the tool itself. SharePoint has its quirks, the vast majority of products do, and part of a proper SharePoint implementation is to address those quirks as best we can. But that's not where projects tend to fail. The common culprits are the following;&lt;/p&gt;  &lt;h4 align="justify"&gt;Scope management    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;This is a really tough one to control in a SharePoint project. When the decision has been made to use SharePoint and people soon realize that it has the potential to solve the majority of your organizations problems, many organizations attempt to solve everything at once or completely the opposite, choose to only solve a single problem with SharePoint.&lt;/p&gt;  &lt;p align="justify"&gt;SharePoint projects are commonly either scoped too large, or too small. Too large a scope, and you are overwhelmed trying to coordinate a very complex solution. You get bogged down with the intricate under wirings of your organization to the point that your project will be stuck in the requirement gathering stages for years. I've seen it. I've seen organizations that have planned for a year and not really yielded any results. On the other hand, organizations that start too small usually create an inadequate solution for growth. So where is the happy medium?&lt;/p&gt;  &lt;p align="justify"&gt;To properly manage scope within a SharePoint project you need to understand a bit of the big picture of your environment and then focus on one problem at a time. The best place I have found to start is by establishing proper Use Cases for your organization, and not just the ones you think should go into SharePoint. Properly created Use Cases are one of the most powerful architecture tools that we have in IT and is something that every IT department should have on hand already. They truly help focus our solutions to be task oriented and not data oriented. By understanding what our people do or need to be able to do, we can create a better solution for them. After collecting Use Cases, we need to establish an overall vision for the SharePoint solution. This can be a little bit daunting to staff that are new to SharePoint structures. If we look to our Use Cases, we can group the cases that are shared by common roles with the idea being that those roles should be able to complete those tasks as easily as possible. By grouping them, we can establish areas in SharePoint where an employee in that role can go to and complete those tasks. We now have an idea as to the scope of our project - make an area in SharePoint do cases x, y and z. Many areas can be identified with their Use Cases bound to them, and realistic timelines could be better established for each area.&lt;/p&gt;  &lt;h4 align="justify"&gt;Requirements Gathering    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;Most organizations feel they are pretty good at requirements gathering because they've been doing it for so long. In my experience, they've just established that they don't understand process improvement. It is the question &amp;quot;How can we do this better?&amp;quot; where we establish our daily pursuit of perfection and question our assumed excellence. There is a lot of information elsewhere on different approaches, so I will cut this down as simply as I can. If you are not using an iterative process in your IT projects, you are doing it wrong, plain and simple.&lt;/p&gt;  &lt;h4 align="justify"&gt;Have an Architect    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;I should expand on this a bit. You should have a qualified SharePoint architect or architecture committee. &amp;quot;We don't have one, so where can we find one?&amp;quot; Good luck. There are a lot of lousy consultants out there for various reasons, but you really need to have a good architect in an IT project who understands the impact of various choices they make. When it comes to SharePoint, I offer this advice. Give your solution architect a business problem you wish them to solve in SharePoint, and ask for 3 different solutions and the pros and cons of each. If they can't do it, RUN! They are obviously under-qualified to be supporting you. A really good architect should be able to rough out more than 3 different solutions.&lt;/p&gt;  &lt;h4 align="justify"&gt;Testing    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;Wow. This is one of my absolute worst pet peeves of the IT industry. If the only testing you are doing is User Acceptance Testing (UAT), and maybe some regression testing, you have really missed the boat. I have a whole spiel on this topic which I will save for another blog someday. When it comes to SharePoint, test your solutions including your code and go beyond the question of &amp;quot;Does it work&amp;quot;, and ask &amp;quot;Does it work well?&amp;quot;&lt;/p&gt;  &lt;h4 align="justify"&gt;Use SharePoint to run SharePoint    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;This is one of my favourites mainly because it is one of the most overlooked. I often ask my clients how someone in their organization would go about creating a new site, say, to manage a project. The answer is typically that the person making the request would send an email to their manager, where it would eventually be forwarded to IT after a couple of emails going back and forth for approvals and information gathering, an IT staff member would then go and manually create a site for the requestor. My reply usually goes something along the lines of &amp;quot;So, you gather some required information, invoke a workflow with steps for approvals and further data collection, and create a site based on the data. Why isn't that automated in SharePoint?&amp;quot; By using SharePoint to manage SharePoint, you can establish a more consistent structure and daily routine. In the above example, the data can be collected via a list. Workflows can be initiated for the approvals and further data collection and in the end a site could be created automatically as the final successful step in the workflow process. The result would allow IT staff to be involved less, the results more consistent since we reduce the amount of manual steps, and the process to flow much faster. Managing IT requests are also business procedures so don't ignore them when developing your Use Cases for SharePoint.&lt;/p&gt;  &lt;p align="justify"&gt;Next week part 3 Information Security…&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10257281" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=TfQGuiELntg:8LhJgDcfb3k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=TfQGuiELntg:8LhJgDcfb3k:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=TfQGuiELntg:8LhJgDcfb3k:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=TfQGuiELntg:8LhJgDcfb3k:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=TfQGuiELntg:8LhJgDcfb3k:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=TfQGuiELntg:8LhJgDcfb3k:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=TfQGuiELntg:8LhJgDcfb3k:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/TfQGuiELntg" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/SharePoint+2010/">SharePoint 2010</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/SharePoint/">SharePoint</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/tips/">tips</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/best+practice/">best practice</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/19/do-you-hate-sharepoint-part-2-of-4.aspx</feedburner:origLink></item><item><title>The Which, the When, and the How of Windows Azure Services: Devices</title><link>http://feedproxy.google.com/~r/CanDevs/~3/H1FFH3t7NK8/the-which-the-when-and-the-how-of-windows-azure-services-devices.aspx</link><pubDate>Wed, 18 Jan 2012 14:29:53 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10258054</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10258054</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/18/the-which-the-when-and-the-how-of-windows-azure-services-devices.aspx#comments</comments><description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;Windows Azure is a platform with many different services that you, the developer can piece together to create your solutions. But when do you use which service and how? In this blog series, you’ll discover the answer to that by using different scenarios used by developers working with Windows Azure today.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;img style="margin: 0px 0px 20px 20px; float: right; display: inline; background-image: none;" title="WhichWay" border="0" alt="WhichWay" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4540.WhichWay_5F00_thumb_5F00_39041DB0.jpg" width="240" height="191" /&gt;I’ll never forget this one time (at band camp? LOL) I was doing a presentation and after a full 2 hours of going through the Windows Azure platform, a developer at the back of the room stood up and said to me “Jonathan, now that I understand what Windows Azure is, what do I use when?” I took a minute to reflect on the question – to understand exactly what he was asking me. I thought he was joking at first, but after thinking about it for a bit, the question made sense. It’s very easy to understand what each individual service does, but it is a bit harder to piece together how all the different services work together.&lt;/p&gt;  &lt;p&gt;In the next few posts, I’ll go through some scenarios that I see often being used today and will endeavour to highlight how different services can be used to meet certain requirements.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Previous Post&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/cdndevs/archive/2012/01/11/the-which-the-when-and-the-how-of-windows-azure-services-websites.aspx" target="_blank"&gt;Websites&lt;/a&gt; &lt;/li&gt;  &lt;/ul&gt;  &lt;p class="note"&gt;&lt;a href="http://azurecamp.ca/OnlineHome" target="_blank"&gt;&lt;img style="float: right; display: inline; background-image: none;" title="AzureCamp" border="0" alt="AzureCamp" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/2502.AzureCamp_5F00_32BE32F8.png" width="70" height="57" /&gt;&lt;/a&gt;If you need a crash course or a refresher on the Windows Azure platform, check out my &lt;a href="http://azurecamp.ca/OnlineHome" target="_blank"&gt;Azure Camp Online&lt;/a&gt; series or visit an &lt;a href="http://azurecamp.ca/CampsHome" target="_blank"&gt;Azure Camp&lt;/a&gt; in a city near you.&amp;#160; &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;This week, we’ll talk about &lt;em&gt;devices&lt;/em&gt;. I would have said we’ll talk about mobile applications, but why stop there? Granted, common devices would be phones like Windows Phone, Android, and the iPhone; and tablets like the Android tablets and the iPads; but there are so many device applications that can leverage the power of the Cloud. Basically, anything that can send and receive data via the Internet can use Windows Azure, like Blu-ray players, gaming consoles, etc.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Attributes of Devices&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Before going to into the which, the when, and the how of Windows Azure services for devices, let’s take a moment to understand some of the key attributes of a devices:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;em&gt;Limited computing capabilities        &lt;br /&gt;&lt;/em&gt;As powerful as devices are these days, at the end of the day, they are still limited in what they can do and how much computing load they can handle. More importantly, you have to respect the fact that your application is not the only application running on the device. The devices’ computing capabilities are shared amongst all of the running apps. You definitely don’t want your application to be the one that is found to hog all of the system resources. That just translates into bad experiences and further, lack of future business.       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;em&gt;Limited storage capacity        &lt;br /&gt;&lt;/em&gt;Devices usually come with a fixed amount of storage capacity. For example, you buy a Samsung Focus, your device is limited to 20GB. You buy an iPad, you’re limited to the GBs of the version that you buy. Granted there can be expansion slots that give you the ability to add more storage capacity, still, you remain limited to the sum of the storage capacity of the device’s HD and the memory card in the slot. Similar to computing resources, you are also sharing the storage capacity with other applications. You definitely don’t want your application to be the one that is found hogging all of the storage – especially on devices like the phone and tablets where chances are the user has their music and video collection loaded as well. You’re not going to really ask your user to remove some of their music and videos just so that your app can work, will you? I didn’t think so.       &lt;br /&gt;&lt;/li&gt;    &lt;li&gt;&lt;em&gt;Can connect from anywhere&lt;/em&gt;      &lt;br /&gt;Connecting from anywhere is arguably one of the most important attributes of device applications. Think about it this way – today you’re home and working with your device from somewhere in North America. Tomorrow you travel to Europe. Chances are you’re going to take your device with you. You get to your destination and turn on your device. You’re naturally going to expect that your applications work just as well as they did back home, regardless of the fact that you are geographically in a different region of the world. &lt;/li&gt;  &lt;/ul&gt;  &lt;p&gt;There are definitely more, but we’ll focus on these for this discussion.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Mapping Attributes to Services&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Now that we know the above, we can map these attributes to Windows Azure services:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7433.image_5F00_thumb1_5F00_46161CE9.png"&gt;&lt;img style="margin: 0px 0px 0px 20px; float: right; display: inline; background-image: none;" title="image_thumb1" border="0" alt="image_thumb1" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/5857.image_5F00_thumb1_5F00_thumb_5F00_6DE8F67B.png" width="96" height="89" /&gt;&lt;/a&gt;To address the &lt;em&gt;limited computing capabilities &lt;/em&gt;(by increasing), you would outsource the required horse power to web services hosted on &lt;em&gt;Windows Azure Compute &lt;/em&gt;instances. Think about it this way – your device is the UX, allowing it to be sexy and responsive and your Compute instances become the remaining tiers of your application. The user interacts with the UX and makes requests of the application. The device application then sends the request to your web services. Depending on how complicated processing of the request is, the request may be processed right on the web role that hosts the web service or perhaps the request would be delegated off to a worker role to process the request (this is usually done by using the &lt;a href="http://msdn.microsoft.com/en-ca/library/windowsazure/dd179353.aspx" target="_blank"&gt;Queue (Storage) Service&lt;/a&gt;&lt;em&gt;&lt;/em&gt;). Once processing of the request is complete, the result is sent back to the device app. &lt;/li&gt;  &lt;/ul&gt;  &lt;p class="note"&gt;The above uses a web service as a proxy into your Windows Azure environment, but technically, you could remove the web service from the equation all together and communicate with roles in Windows Azure by reading and writing to a queue via the &lt;em&gt;Queue (Storage) Service&lt;/em&gt;. Since the &lt;em&gt;Queue&lt;/em&gt; service is a REST based web service in and of itself, you can have the device app read and write to it quite easily.     &lt;br /&gt;    &lt;br /&gt;Whether to use a web proxy or work with the &lt;em&gt;Queue &lt;/em&gt;service directly is an architectural decision that you’ll need to make based on the requirements of your application, specifically around security as the &lt;em&gt;Queue &lt;/em&gt;service requires a security key which would have to be saved on the device.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;When outsourcing computing resources to &lt;a href="http://windowsazure.com" target="_blank"&gt;Windows Azure&lt;/a&gt;, there’s an additional attribute to add to the attribute list above – &lt;em&gt;varying demand needs&lt;/em&gt;. Varying demand needs relate to &lt;em&gt;scale&lt;/em&gt;. With device applications, scale refers to the backend services that support the application – i.e. the services that the application connects to and works with. Scale is achieved by using one or more Windows Azure Compute instances. The more compute instances you add, the more “horse power” the backend services will have and therefore the more they will be able to take on. This will increase the speed at which they respond to requests from the device application. Then when the demand is not there, you remove compute instances. &lt;/p&gt;  &lt;/blockquote&gt;  &lt;ul&gt;   &lt;li&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4774.image_5F00_thumb34_5F00_144AD9C7.png"&gt;&lt;img style="margin: 0px 0px 0px 20px; float: right; display: inline; background-image: none;" title="image_thumb3[4]" border="0" alt="image_thumb3[4]" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/8004.image_5F00_thumb34_5F00_thumb_5F00_7EED245E.png" width="92" height="91" /&gt;&lt;/a&gt;&lt;/em&gt;Similarly, to increase the &lt;em&gt;limited storage capacity&lt;/em&gt; on the device, you would outsource the hard drive space to &lt;em&gt;&lt;a href="http://msdn.microsoft.com/en-ca/library/windowsazure/dd179376.aspx" target="_blank"&gt;Windows Azure Blob (Storage) Service&lt;/a&gt;. Blob Storage&lt;/em&gt;, delivered to you as a service (so you’re not worrying about its scalability, availability, or most importantly, its capacity), can take on all of your storage needs. Rather than storing the data that is required (or produced) by your application on the device itself, you’ll store the data in blobs on Windows Azure. Through the UX, you can make it look like the image, document, video, etc is located on the device. When the user requests it, the application will retrieve the data from blob storage and hand it to the user. When you need to save data, you save it to the blob. You’ve now enabled infinite data storage for your application on the device. At the same time, you’ve also enabled other devices to access the same data. Because the data is not physically stored on the one device, this becomes possible. You can now add additional user interfaces, such as a website or desktop client, and work with the same data. You’ve also now secured the data in multiple ways. Your data is now encrypted and stored in a secured facility. More importantly, with the data being off the device, in the event that the device is lost or stolen, your data will not be. &lt;/li&gt;  &lt;/ul&gt;  &lt;p class="note"&gt;&lt;strong&gt;Note: &lt;/strong&gt;You’ll need to decide whether your application will communicate with the &lt;em&gt;Blob Service&lt;/em&gt; directly, via its REST-based web services or whether it will communicate with a web proxy that will communicate with the &lt;em&gt;Blob Service&lt;/em&gt;. Using the &lt;em&gt;Blob Service&lt;/em&gt; directly will require some additional security considerations.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;em&gt;Can connect from anywhere, &lt;/em&gt;specifically referring to applications connecting to backend services from anywhere. There are two different services that fulfil the requirement of being able to connect from anywhere. The one thing that is common between both, however, is that the emphasis is put on not just being available from anywhere, but more importantly, available, responsive, and providing the best experience from anywhere. &lt;em&gt;Traffic Manager&lt;/em&gt; takes care of intelligently routing requests from the device application to a data center that is closest to where the user is located based on rules that you can define. For example, if you have your backend services deployed to one of the Windows Azure North American data centers and to one of the European data centers and a user is using their device application in Asia, Traffic Manager can route the user to the European data center. The European data center is physically closer, thereby reducing the length of the trip, and getting the data back to the user as fast as possible. If you’re outsourcing your storage to Windows Azure as well, you’ll want to use the &lt;em&gt;Content Delivery Network (CDN)&lt;/em&gt; to geographically distribute those storage objects (images, videos, documents, etc), placing copies in “edge nodes”, or cache nodes around the world, thereby making them physically closer to application requests. This reduces the distance the storage objects have to travel and therefore increases the responsiveness of your application (i.e. the application’s ability to return the data to the user). &lt;/li&gt;  &lt;/ul&gt;  &lt;p&gt;Using the attributes of device applications as a guide, we’ve now been able to map Windows Azure services to meet the requirements of each.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Next Steps&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If you’ve read the &lt;a href="http://blogs.msdn.com/b/cdndevs/archive/2012/01/11/the-which-the-when-and-the-how-of-windows-azure-services-websites.aspx" target="_blank"&gt;previous post&lt;/a&gt; in this series, you know what I’m going to say - as with everything in technology, there is always more than one way of achieving the same result, but one way will work better than another for the requirements of your particular application. The best way to figure out which one is best, is to try it out yourself. &lt;/p&gt;  &lt;p&gt;If you’re thinking of developing applications for Windows Phone, iOS (iPhone/iPad), and/or Android (phone/table), you can download great toolkits that were specifically designed to make it easier for you to integrate Windows Azure into your device applications. The toolkits contain the native libraries for each of the platforms, samples that you can peruse and learn from, project templates, and of course, documentation.&lt;/p&gt;  &lt;p&gt;Download:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://bit.ly/watwp7" target="_blank"&gt;Windows Azure toolkit for Windows Phone&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://bit.ly/watios" target="_blank"&gt;Windows Azure toolkit for iOS&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://bit.ly/watandroid" target="_blank"&gt;Windows Azure toolkit for Android&lt;/a&gt; &lt;/li&gt;  &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Keep In Mind&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Testing with the &lt;a href="http://msdn.microsoft.com/en-ca/library/windowsazure/gg432968.aspx" target="_blank"&gt;emulators&lt;/a&gt; that are included with the &lt;a href="http://www.windowsazure.com/en-us/develop/overview/" target="_blank"&gt;Windows Azure SDK&lt;/a&gt; (while it is definitely something you should do before deploying)will not give you as accurate of an idea as testing with the live production environment. In order to truly determine what will work best, you’ll definitely want to test with Windows Azure itself. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;If you’re device application is going to be communicating with services deployed to Windows Azure, you’ll want to test out the services running in instances in the &lt;a href="http://msdn.microsoft.com/en-ca/library/windowsazure/hh403990.aspx" target="_blank"&gt;Compute emulator&lt;/a&gt;. You can have the application on the device point to the service address provided by the emulator. Once that’s done, deploy to Windows Azure and have the device connect to the Staging URL to test out connectivity and operability. &lt;/li&gt;    &lt;li&gt;If you’re device application is working with the storage services (Blobs, Tables, Queues), you can test working with those using the &lt;a href="http://msdn.microsoft.com/en-ca/library/windowsazure/hh403989.aspx" target="_blank"&gt;Storage emulator&lt;/a&gt;. Once you have the storage emulator running, you can point the device application to the storage emulator URLs (make sure you pay attention to the port numbers), and test it out. Once that’s done, switch over to working with the live storage services, create your blobs, tables, and queues, and test out the application with the live environment. &lt;/li&gt;  &lt;/ul&gt;  &lt;p&gt;If you’re an &lt;a href="http://www.windowsazure.com/en-us/pricing/member-offers/" target="_blank"&gt;MSDN, MPN, or BizSpark member&lt;/a&gt;, you have Windows Azure benefits included with your subscription that give you ample resources with which to test Windows Azure. If you’re not a member, you can use the &lt;a href="http://www.windowsazure.com/en-us/pricing/free-trial/" target="_blank"&gt;90 day free trial&lt;/a&gt; which also gives you ample resources with which to test. The only difference is that you’ll have 90 days to do it in. For most scenarios, 90 days is sufficient to do the necessary testing.&lt;/p&gt;  &lt;p class="note"&gt;&lt;em&gt;TIP:&lt;/em&gt;&lt;strong&gt; &lt;/strong&gt;You can now set usage limits on your Windows Azure deployments. This will help you ensure that you don’t go over the resources that are included with the trial or MSDN, MPN, and BizSpark memberships. This will then prevent any unwanted charges going on your credit card.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Get a Conversation Going&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Do you have any questions about Windows Azure as it relates to devices? Have you already tried different services and architectures for your solution and learned a few things along the way? Start a &lt;a href="http://linkd.in/CdnDevs" target="_blank"&gt;conversation on LinkedIn&lt;/a&gt; and ask or share with others.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Disclosure&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;As I mentioned above, there is more than one way to do anything mentioned above and different scenarios will call for different architectures. What’s mentioned in this post is just A way of architecting the solution. Don’t take this post to mean that it is the only way or the best way.&lt;/em&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10258054" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=H1FFH3t7NK8:yF4XHYPShbg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=H1FFH3t7NK8:yF4XHYPShbg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=H1FFH3t7NK8:yF4XHYPShbg:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=H1FFH3t7NK8:yF4XHYPShbg:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=H1FFH3t7NK8:yF4XHYPShbg:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=H1FFH3t7NK8:yF4XHYPShbg:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=H1FFH3t7NK8:yF4XHYPShbg:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/H1FFH3t7NK8" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Azure/">Windows Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Azure/">Azure</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/The+Which_2C00_+the+When_2C00_+and+the+How+of+Windows+Azure+Services/">The Which, the When, and the How of Windows Azure Services</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/18/the-which-the-when-and-the-how-of-windows-azure-services-devices.aspx</feedburner:origLink></item><item><title>Web Design Predictions in 2012</title><link>http://feedproxy.google.com/~r/CanDevs/~3/HhiSReGAJJw/web-design-theme-predictions-in-2012.aspx</link><pubDate>Tue, 17 Jan 2012 22:35:04 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10257803</guid><dc:creator>Tommy Lee</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10257803</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/17/web-design-theme-predictions-in-2012.aspx#comments</comments><description>&lt;p&gt;With the end of the year it is always an industry staple to pontificate on what is going to be important in the coming year. &lt;/p&gt;  &lt;p&gt;Although I am not a psychic, I have spent time this week getting a read on what will be important around HTML5. Here is my list:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;Responsive Web Design grows and matures.&lt;/b&gt; The concept of Responsive Web Design is no longer a toddler, but it still is not perfect and that is ok. We are just beginning to figure it all out. Jeffrey Zeldman thinks about it &lt;a href="http://www.zeldman.com/2011/12/29/state-of-the-web-of-apps-devices-and-breakpoints/"&gt;in this article&lt;/a&gt; in context with the proliferation of devices. Speaking of devices, you will be hearing more about… &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Mobile First. &lt;/b&gt;This concept defines that we should think about mobile over the desktop when designing web apps. By dealing with mobile opportunities, constraints, capabilities and defining what is truly important, we can create much better apps. Check out Luke Wroblewski’s &lt;a href="http://www.netmagazine.com/features/mobile-first"&gt;article about Mobile First design&lt;/a&gt;.&lt;b&gt;&lt;/b&gt; &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Typography on the web. &lt;/b&gt;Time to blow up our thinking around “web safe fonts” since with CSS @font-face and services, we can now create rich typographical sites like &lt;a href="http://lostworldsfairs.com/"&gt;Lost World’s Fairs&lt;/a&gt;.&lt;b&gt;&lt;/b&gt; &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Preprocessors, Libraries, &amp;amp; Polyfills, Oh My! &lt;/b&gt;We will continue to get a new library of some sort announced every day on Twitter. What will be interesting to see is which ones become popular. I’m betting on &lt;a href="http://sass-lang.com/"&gt;SASS&lt;/a&gt;, &lt;a href="http://lesscss.org/"&gt;LESS&lt;/a&gt; and of course the safe bet, jQuery.&lt;b&gt;&lt;/b&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Interested in other industry predictions? Check out &lt;a href="http://www.webdesignerdepot.com/2011/12/web-design-predictions-for-2012/"&gt;Web Design Predictions for 2012&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-60-29-metablogapi/4848.kitteh_5F00_55BBC9E5.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="kitteh" border="0" alt="kitteh" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/3365.kitteh_5F00_thumb_5F00_35FCCA50.png" width="392" height="293" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What are your web predictions for 2012?&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10257803" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=HhiSReGAJJw:wfI8NAcT6uo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=HhiSReGAJJw:wfI8NAcT6uo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=HhiSReGAJJw:wfI8NAcT6uo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=HhiSReGAJJw:wfI8NAcT6uo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=HhiSReGAJJw:wfI8NAcT6uo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=HhiSReGAJJw:wfI8NAcT6uo:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=HhiSReGAJJw:wfI8NAcT6uo:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/HhiSReGAJJw" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/design/">design</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Web+Standards/">Web Standards</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/17/web-design-theme-predictions-in-2012.aspx</feedburner:origLink></item><item><title>Hang out with others who geek out on technology, find your local user group!</title><link>http://feedproxy.google.com/~r/CanDevs/~3/lhNxXdhUInc/hang-out-with-others-who-geek-out-on-technology-find-your-local-user-group.aspx</link><pubDate>Tue, 17 Jan 2012 13:01:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10256358</guid><dc:creator>Susan Ibach</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10256358</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/17/hang-out-with-others-who-geek-out-on-technology-find-your-local-user-group.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4503.canadamap_5F00_68E7B7FC.gif"&gt;&lt;img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; float: right; padding-top: 0px; border-width: 0px;" title="canadamap" border="0" alt="canadamap" align="right" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/3326.canadamap_5F00_thumb_5F00_45D7468C.gif" width="300" height="225" /&gt;&lt;/a&gt;There are user groups all over the country where fellow geeks meet, share knowledge, network, and talk technology. Find your nearest user group and check it out!&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I was speaking recently about HTML5 and pinned sites in Internet Explorer 9 to 58 developers in Fredericton, New Brunswick. It was a meeting of the &lt;a href="http://frederictonug.net/"&gt;Fredericton Developer&amp;nbsp; User Group&lt;/a&gt;. They meet once a month. A typical evening involves pizza and pop, time to network with the others at the meeting and then a presentation on a topic of interest by either a group member or a guest speaker.&lt;/p&gt;
&lt;p&gt;Sometimes we get so caught up in our own department or our own projects that we forget to take time to learn, grow and just have a little fun from time to time with other people who will get our jokes about constructors and garbage collectors. If you are fortunate, you may get to attend conferences like &lt;a href="http://blogs.msdn.com/controlpanel/blogs/posteditor.aspx/www.techdays.ca" target="_blank"&gt;&lt;strong&gt;TechDays&lt;/strong&gt;&lt;/a&gt;, &lt;a href="http://www.devteach.com/"&gt;&lt;strong&gt;DevTeach&lt;/strong&gt;&lt;/a&gt;, or &lt;a href="http://www.prairiedevcon.com/"&gt;&lt;strong&gt;Prairie DevCon&lt;/strong&gt;&lt;/a&gt; but not all of us can get away for a conference and even if you do those are usually just once a year.&lt;/p&gt;
&lt;p&gt;Joining a user group gives you a chance to be part of a like minded community who deal with the same sorts of challenges you do, day in and day out. It can keep you motivated, interested, and can help you stay on top of technology. We often co-ordinate with user groups when we have new content we want to share across the country. We&amp;rsquo;ve organized a Windows Phone Mango Tour, Cloud camps, and an ITpro tour tour through local user groups, so you can trust them to know about any significant events and promotions going on in Canada that could help you.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;There are two places you can look up your local user group: &lt;/strong&gt;&lt;a href="http://msdn.microsoft.com/en-ca/aa497440.aspx"&gt;&lt;strong&gt;MSDN Canadian Community&lt;/strong&gt;&lt;/a&gt; and &lt;a href="http://technet.microsoft.com/en-ca/bb428818.aspx"&gt;&lt;strong&gt;TechNet Canada User Groups&lt;/strong&gt;&lt;/a&gt;. Check both lists because some user groups are listed on one and not the other. There are even a few virtual user groups if you don&amp;rsquo;t find one physically located near you.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Find your nearest user group and go geek out!&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10256358" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=lhNxXdhUInc:TLDywwJPeXs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=lhNxXdhUInc:TLDywwJPeXs:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=lhNxXdhUInc:TLDywwJPeXs:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=lhNxXdhUInc:TLDywwJPeXs:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=lhNxXdhUInc:TLDywwJPeXs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=lhNxXdhUInc:TLDywwJPeXs:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=lhNxXdhUInc:TLDywwJPeXs:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/lhNxXdhUInc" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/user+group/">user group</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/user+groups/">user groups</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/17/hang-out-with-others-who-geek-out-on-technology-find-your-local-user-group.aspx</feedburner:origLink></item><item><title>2 in 1! A Metro primer and a webcast.</title><link>http://feedproxy.google.com/~r/CanDevs/~3/bgviqnLpKDA/2-in-1-a-metro-primer-and-a-webcast.aspx</link><pubDate>Mon, 16 Jan 2012 20:11:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10257258</guid><dc:creator>Paul Laberge</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10257258</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/16/2-in-1-a-metro-primer-and-a-webcast.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;If you waited on reading my 5-part Metro and Mobile app design series until the final post, there’s great news in that you can now read each of them online.&amp;#160; Also, if you want an overview of the developer perspective of Windows Phone, from a development standpoint as well as a Marketplace and marketing strategy standpoint, I will be conducting an in-depth webcast on this on Thursday, January 19th, 2012.&lt;/strong&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-60-29-metablogapi/6646.metro_5F00_38BACF39.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px 5px 5px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top: 0px; border-right: 0px; padding-top: 0px" title="metro" border="0" alt="metro" align="left" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/3005.metro_5F00_thumb_5F00_6FB4AD72.png" width="71" height="72" /&gt;&lt;/a&gt;Last week I published a five-part series on Metro and mobile app design in general.&amp;#160; It has received a great deal of interest and I wanted to make sure that everyone that was interested in reading the full series knew where to find it.&amp;#160; As a result, you can find the 5-part series here:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Part 1:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/09/unlocking-the-motivation-of-your-mobile-app-user.aspx"&gt;Unlocking the motivation of your mobile app user&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Part 2:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/11/my-app-has-principles-understanding-the-metro-design-principles.aspx"&gt;My app has principles – understanding the Metro design principles&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Part 3:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/11/isn-t-tile-just-another-word-for-icon-infography-vs-iconography-explained.aspx"&gt;Isn’t “tile” just another word for “icon”? Infography vs iconography explained.&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Part 4:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/13/going-with-the-flow-using-metro-to-control-the-experience.aspx"&gt;Going with the flow… Using Metro to control the experience&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Part 5:&amp;#160; &lt;a href="http://blogs.msdn.com/b/cdnmobiledevs/archive/2012/01/13/making-users-awesome-in-the-moment.aspx"&gt;Making users awesome in the moment&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Finally, as a heads-up, I will be conducting a webcast on &lt;a href="http://mctreadiness.com/MicrosoftCareerConferenceRegistration.aspx?pid=287" target="_blank"&gt;developing for Windows Phone 7.5&lt;/a&gt; on Thursday, January 19th at starting at 1PM ET (10AM PT).&amp;#160; In this webcast, I will be talking about how to develop apps for Windows Phone 7.5, discussing the Marketplace and strategies for making your app more marketable on the Marketplace and I’ll probably smatter in some of the concepts I talked about in my blog series above as well for good measure.&amp;#160; If you’re interested in joining me, you can &lt;a href="http://mctreadiness.com/MicrosoftCareerConferenceRegistration.aspx?pid=288" target="_blank"&gt;register&lt;/a&gt; for free – I’ll “see” you there!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10257258" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bgviqnLpKDA:IwO0GxPNtBc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bgviqnLpKDA:IwO0GxPNtBc:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=bgviqnLpKDA:IwO0GxPNtBc:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bgviqnLpKDA:IwO0GxPNtBc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bgviqnLpKDA:IwO0GxPNtBc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=bgviqnLpKDA:IwO0GxPNtBc:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=bgviqnLpKDA:IwO0GxPNtBc:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/bgviqnLpKDA" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Webcasts/">Webcasts</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Windows+Phone/">Windows Phone</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/design/">design</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Metro/">Metro</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Webinars/">Webinars</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Event/">Event</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/16/2-in-1-a-metro-primer-and-a-webcast.aspx</feedburner:origLink></item><item><title>The Challenge is On - Start with 30 minutes a day for a Week</title><link>http://feedproxy.google.com/~r/CanDevs/~3/fDRYBFuF_us/the-30x7.aspx</link><pubDate>Mon, 16 Jan 2012 13:01:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10256941</guid><dc:creator>Jonathan Rozenblit</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10256941</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/16/the-30x7.aspx#comments</comments><description>&lt;p class="note"&gt;The shorter version of this interview originally aired on &lt;em&gt;Episode 2&lt;/em&gt; of &lt;a href="http://devs3.ms/devscubed"&gt;D³: LIVE &amp;amp; INTERACTiVE&lt;/a&gt;, streamed live on January 4, 2012. Watch &lt;a href="http://devs3.ms/devscubed"&gt;D³: LIVE &amp;amp; INTERACTiVE&lt;/a&gt; every 1st Wednesday of the month and on-demand. &lt;a href="http://devs3.ms/devscubed"&gt;More &amp;gt;&amp;gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Continuing with the theme from the last &lt;a href="http://devs3.ms/devscubed"&gt;D³: LIVE &amp;amp; INTERACTiVE,&lt;/a&gt;&amp;#160;&lt;em&gt;starting something, &lt;/em&gt;well known community expert, Microsoft MVP, and career coach &lt;a href="http://miguelcarrasco.com" target="_blank"&gt;Miguel Carrasco&lt;/a&gt; was on the show to talk about &lt;a href="http://linkedin.com" target="_blank"&gt;LinkedIn&lt;/a&gt;; the opportunities it provides for you to learn, network, and grow; and most importantly, the positive impact it can have on your career. Miguel talks about how to use network connections, recommendations, and groups. He then provides valuable insights from the other side of the desk – the employer. He shares how he (at &lt;a href="http://imaginet.com" target="_blank"&gt;Imaginet&lt;/a&gt;) gets to know job candidates better by checking out their profiles and activity on LinkedIn.&lt;/p&gt;  &lt;p&gt;As a final thought, he introduces a challenge – a challenge that will get you to see the value of LinkedIn.&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="width: 512px; height: 288px;" src="http://channel9.msdn.com/posts/D3EP202/player?w=512&amp;amp;h=288" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Download: WMV (&lt;a href="http://video.ch9.ms/ch9/5383/409186df-de53-41ef-897e-9fd700575383/D3StartSomethingLinkedIn_2MB_ch9.wmv" target="_blank"&gt;HQ&lt;/a&gt;, &lt;a href="http://video.ch9.ms/ch9/5383/409186df-de53-41ef-897e-9fd700575383/D3StartSomethingLinkedIn_ch9.wmv" target="_blank"&gt;MQ&lt;/a&gt;) | MP4 (&lt;a href="http://video.ch9.ms/ch9/5383/409186df-de53-41ef-897e-9fd700575383/D3StartSomethingLinkedIn_high_ch9.mp4" target="_blank"&gt;HQ&lt;/a&gt;, &lt;a href="http://video.ch9.ms/ch9/5383/409186df-de53-41ef-897e-9fd700575383/D3StartSomethingLinkedIn_med_ch9.mp4" target="_blank"&gt;MQ&lt;/a&gt;, &lt;a href="http://video.ch9.ms/ch9/5383/409186df-de53-41ef-897e-9fd700575383/D3StartSomethingLinkedIn_low_ch9.mp4" target="_blank"&gt;LQ&lt;/a&gt;) | &lt;a href="http://video.ch9.ms/ch9/5383/409186df-de53-41ef-897e-9fd700575383/D3StartSomethingLinkedIn_ch9.mp3" target="_blank"&gt;MP3&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Some interesting points&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;On LinkedIn in general&lt;/em&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;“LinkedIn is a platform for people to link up and get to know people, especially around the fields that they work in.”&lt;/li&gt;    &lt;li&gt;“LinkedIn allows you to spread the message of what you’re up to, career-wise, what conferences you’re going to, etc, very effectively, online. It really takes that whole world of user group meetings and conferences and things like that and brings it to the digital realm and makes it [your presence] that much more effective.”&lt;/li&gt;    &lt;li&gt;“Updating your profile and keeping it up to date (conferences you’re going to, career changes or advancements, new learnings, promotions, and things like that, or switching companies) is incredibly important because it keeps everyone up to date of what you’re doing.”&lt;/li&gt;    &lt;li&gt;“If you don’t tell people what you’re doing, they’re not going to know [you], they won’t know what you’re interested in…”&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;em&gt;On network connections&lt;/em&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;“By taking connections made via business cards and connecting on LinkedIn, you’ve turned that into an &lt;em&gt;active &lt;/em&gt;online business card – you’re able to get [ongoing] information from them.”&lt;/li&gt;    &lt;li&gt;“If you’re looking for a specific resource or someone (as an example someone who does web development), I can easily use the searching and filtering to find someone and if someone is outside of my network [but they are someone that is interesting], I can very easily add them [to get their ongoing updates].”&lt;/li&gt;    &lt;li&gt;“You can become that hub/connection point for other people, if you now become that person who connects person A to person B then you can be incredibly successful just by doing that and helping other people get connected.”&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;em&gt;On groups&lt;/em&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;“… you can post survey questions, respond to a survey, ask a question, and 3500 developers [referring to the &lt;a href="http://linkd.in/CdnDevs" target="_blank"&gt;Canadian Developer Connection group&lt;/a&gt;] across Canada are going to get that message. That’s incredibly powerful.”&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;em&gt;LinkedIn from an employer’s perspective&lt;/em&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;“[As an employer] It is incredibly hard to filter resumes because if you think about it, resumes are funny – you are expected to write a resume and talk about yourself and people will always talk about themselves in the best light possible, so while a resume is good to get the points of what people have done, to actually find out how those things went is incredibly difficult (to find out people’s personalities, etc).”&lt;/li&gt;    &lt;li&gt;“The big things we look for are: we see what they’re up to, are they active in the [online] community, what groups do they belong to, and recommendations…to see what people have said about you, above you [your managers], laterally [peers], below you [your staff], and understand what kind of work the person has done.”&lt;/li&gt;    &lt;li&gt;“I take a LinkedIn profile much more seriously, in fact, than I would a resume. That’s just the level we’re [the industry] is at today.”&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Miguel’s 30x7 Challenge&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;As a last thought, I asked Miguel what advice he has for someone who is not actively using their LinkedIn or has not created a LinkedIn profile in order to understand its value. Miguel’s advice – take the 30x7 challenge. Spend 30 minutes a day for at least 7 days to connect with people, join groups, read questions and answers, post questions of your own, and answer questions if you can. You’ll very quickly be able to see how, through connecting with people, you can learn new things, network, and meet people, ultimately helping you grow your online professional presence and career.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;For more&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Check out Miguel’s &lt;a href="http://www.miguelcarrasco.com/10-linkedin-tips-to-take-your-career-to-the-next-level/" target="_blank"&gt;10 LinkedIn Tips and Tricks to Take Your Career to the Next Level&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Join the Conversation&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Do you consider LinkedIn as important tool to grow your career? What has worked for you on LinkedIn? What hasn’t? Join the conversation and share your thoughts in the &lt;a href="http://linkd.in/CdnDevs" target="_blank"&gt;Canadian Developer Connection group&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;More on Miguel&lt;/strong&gt;    &lt;br /&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/6683.Picture_2D002D002D00_Miguel_2D00_Carrasco_5F00_5397F53C.jpg"&gt;&lt;img style="margin: 10px 20px 20px 0px; border: 0px currentcolor; float: left; display: inline; background-image: none;" title="Picture - Miguel Carrasco" border="0" alt="Picture - Miguel Carrasco" align="left" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/7266.Picture_2D002D002D00_Miguel_2D00_Carrasco_5F00_thumb_5F00_1C8DF136.jpg" width="100" height="133" /&gt;&lt;/a&gt;Miguel Carrasco is a digital marketing thought leader, software developer, architect, team leader, blogger and software development evangelist. Currently, Carrasco is the Director of &lt;a href="http://www.imaginet.com"&gt;Imaginet Interactive&lt;/a&gt;, and has been a Microsoft MVP for over 4 years. Before that, he was software development manager at E.H. Price, Ltd. for 6 years and chief software architect and head of software development at Anvil Digital. He started his career as solutions developer and Microsoft trainer at Imaginet. He contributes and runs many high profile blogs including &lt;a href="http://www.miguelcarrasco.com/"&gt;MiguelCarrasco.com&lt;/a&gt; and &lt;a href="http://www.realsoftwaredevelopment.com/"&gt;Software Development in the Real World&lt;/a&gt;.&lt;/p&gt;  &lt;p class="note"&gt;Special thanks to Miguel Carrasco for joining me on &lt;a href="http://devs3.ms/devscubed"&gt;D³: LIVE &amp;amp; INTERACTiVE&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=10256941" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=fDRYBFuF_us:jElz3baas2I:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=fDRYBFuF_us:jElz3baas2I:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=fDRYBFuF_us:jElz3baas2I:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=fDRYBFuF_us:jElz3baas2I:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=fDRYBFuF_us:jElz3baas2I:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=fDRYBFuF_us:jElz3baas2I:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=fDRYBFuF_us:jElz3baas2I:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/fDRYBFuF_us" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/LinkedIn/">LinkedIn</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/career/">career</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/networking/">networking</category><media:content url="http://feedproxy.google.com/~r/CanDevs/~5/CxlzIHLkZ30/D3StartSomethingLinkedIn_2MB_ch9.wmv" fileSize="105994556" type="video/x-ms-wmv" /><itunes:subtitle>The shorter version of this interview originally aired on Episode 2 of D³: LIVE &amp;amp; INTERACTiVE, streamed live on January 4, 2012. Watch D³: LIVE &amp;amp; INTERACTiVE every 1st Wednesday of the month and on-demand. More &amp;gt;&amp;gt; Continuing with the theme f</itunes:subtitle><itunes:summary>The shorter version of this interview originally aired on Episode 2 of D³: LIVE &amp;amp; INTERACTiVE, streamed live on January 4, 2012. Watch D³: LIVE &amp;amp; INTERACTiVE every 1st Wednesday of the month and on-demand. More &amp;gt;&amp;gt; Continuing with the theme from the last D³: LIVE &amp;amp; INTERACTiVE,&amp;#160;starting something, well known community expert, Microsoft MVP, and career coach Miguel Carrasco was on the show to talk about LinkedIn; the opportunities it provides for you to learn, network, and grow; and most importantly, the positive impact it can have on your career. Miguel talks about how to use network connections, recommendations, and groups. He then provides valuable insights from the other side of the desk – the employer. He shares how he (at Imaginet) gets to know job candidates better by checking out their profiles and activity on LinkedIn. As a final thought, he introduces a challenge – a challenge that will get you to see the value of LinkedIn. Download: WMV (HQ, MQ) | MP4 (HQ, MQ, LQ) | MP3 Some interesting points On LinkedIn in general “LinkedIn is a platform for people to link up and get to know people, especially around the fields that they work in.” “LinkedIn allows you to spread the message of what you’re up to, career-wise, what conferences you’re going to, etc, very effectively, online. It really takes that whole world of user group meetings and conferences and things like that and brings it to the digital realm and makes it [your presence] that much more effective.” “Updating your profile and keeping it up to date (conferences you’re going to, career changes or advancements, new learnings, promotions, and things like that, or switching companies) is incredibly important because it keeps everyone up to date of what you’re doing.” “If you don’t tell people what you’re doing, they’re not going to know [you], they won’t know what you’re interested in…” On network connections “By taking connections made via business cards and connecting on LinkedIn, you’ve turned that into an active online business card – you’re able to get [ongoing] information from them.” “If you’re looking for a specific resource or someone (as an example someone who does web development), I can easily use the searching and filtering to find someone and if someone is outside of my network [but they are someone that is interesting], I can very easily add them [to get their ongoing updates].” “You can become that hub/connection point for other people, if you now become that person who connects person A to person B then you can be incredibly successful just by doing that and helping other people get connected.” On groups “… you can post survey questions, respond to a survey, ask a question, and 3500 developers [referring to the Canadian Developer Connection group] across Canada are going to get that message. That’s incredibly powerful.” LinkedIn from an employer’s perspective “[As an employer] It is incredibly hard to filter resumes because if you think about it, resumes are funny – you are expected to write a resume and talk about yourself and people will always talk about themselves in the best light possible, so while a resume is good to get the points of what people have done, to actually find out how those things went is incredibly difficult (to find out people’s personalities, etc).” “The big things we look for are: we see what they’re up to, are they active in the [online] community, what groups do they belong to, and recommendations…to see what people have said about you, above you [your managers], laterally [peers], below you [your staff], and understand what kind of work the person has done.” “I take a LinkedIn profile much more seriously, in fact, than I would a resume. That’s just the level we’re [the industry] is at today.” Miguel’s 30x7 Challenge As a last thought, I asked Miguel what advice he has for someone who is not actively using their LinkedIn or has not created a LinkedIn profile in order to understand its value. Miguel’s ad</itunes:summary><itunes:keywords>LinkedIn, career, networking</itunes:keywords><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/16/the-30x7.aspx</feedburner:origLink><enclosure url="http://feedproxy.google.com/~r/CanDevs/~5/CxlzIHLkZ30/D3StartSomethingLinkedIn_2MB_ch9.wmv" length="105994556" type="video/x-ms-wmv" /><feedburner:origEnclosureLink>http://video.ch9.ms/ch9/5383/409186df-de53-41ef-897e-9fd700575383/D3StartSomethingLinkedIn_2MB_ch9.wmv</feedburner:origEnclosureLink></item><item><title>Want some tips on Release Management?</title><link>http://feedproxy.google.com/~r/CanDevs/~3/DWGxbTIIWY0/want-some-tips-on-release-management.aspx</link><pubDate>Fri, 13 Jan 2012 14:11:28 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10256322</guid><dc:creator>Susan Ibach</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10256322</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/13/want-some-tips-on-release-management.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;a href="http://www.microsoft.com/canada/visualstudio/almwebcast/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px auto; padding-left: 0px; padding-right: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="EventBanner" border="0" alt="EventBanner" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/6036.EventBanner_5F00_7C40C343.jpg" width="600" height="92" /&gt;&lt;/a&gt;Thursday January 19th, 1PM Eastern time is a &lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032500685&amp;amp;culture=en-ca"&gt;free webcast&lt;/a&gt; discussing the challenges of Release Management and how you can use Visual Studio features to help. &lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Release Management is a tricky business to get right and it’s crucial to the success of a project. There are so many things that need to come together to ensure a release goes smoothly. Applying a few good best practices and leveraging tools that you may already have can certainly help!&lt;/p&gt;  &lt;p&gt;Join Adam Gallant, a Senior Technology Solutions Professional from Microsoft and Claude Remillard the President of InCycle Software as they present &lt;strong&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032500685&amp;amp;culture=en-ca"&gt;The Release Management Challenge and Visual Studio ALM&lt;/a&gt;&lt;/strong&gt; part two of the &lt;strong&gt;&lt;a href="http://www.microsoft.com/canada/visualstudio/almwebcast/"&gt;ALM Webcast series&lt;/a&gt;. &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Learn how Release Management practices and tools can help reduce the risks and costs of the go-to-market. Application Release is often complex, brittle and error-prone resulting in delays and many frustrations along the way. Thanks to new tools and approaches, the release process can now be successfully automated and managed. Learn how to integrate Visual Studio 2010-based tools and InRelease to implement fully automated Release Paths for your .Net based applications. We will take you through all the step and tools required from developer check-in to production.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Overview of a full Release Cycle &lt;/li&gt;    &lt;li&gt;Best practices in Release Management &lt;/li&gt;    &lt;li&gt;Source control and branching strategies with TFS Source Control &lt;/li&gt;    &lt;li&gt;Build and packaging with Team Build &lt;/li&gt;    &lt;li&gt;Automated deployments with InRelease &lt;/li&gt;    &lt;li&gt;Manage test creation and execution with Test Manager &lt;/li&gt;    &lt;li&gt;Automated functional and performance testing with Visual Studio &lt;/li&gt;    &lt;li&gt;Automated provisioning of virtual test environments with Lab Manager &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032500685&amp;amp;culture=en-ca"&gt;Register today!&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=10256322" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=DWGxbTIIWY0:9BMvczv4WI8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=DWGxbTIIWY0:9BMvczv4WI8:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=DWGxbTIIWY0:9BMvczv4WI8:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=DWGxbTIIWY0:9BMvczv4WI8:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=DWGxbTIIWY0:9BMvczv4WI8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=DWGxbTIIWY0:9BMvczv4WI8:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=DWGxbTIIWY0:9BMvczv4WI8:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/DWGxbTIIWY0" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Webcasts/">Webcasts</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Visual+Studio/">Visual Studio</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Visual+Studio+2010/">Visual Studio 2010</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Team+Foundation+Server/">Team Foundation Server</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Canada/">Canada</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/Webinars/">Webinars</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/13/want-some-tips-on-release-management.aspx</feedburner:origLink></item><item><title>Do you hate SharePoint? Part 1 of 4</title><link>http://feedproxy.google.com/~r/CanDevs/~3/3oz7-pwzK4I/do-you-hate-sharepoint-part-1-of-4.aspx</link><pubDate>Thu, 12 Jan 2012 08:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10254575</guid><dc:creator>Susan Ibach</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/cdndevs/rsscomments.aspx?WeblogPostID=10254575</wfw:commentRss><comments>http://blogs.msdn.com/b/cdndevs/archive/2012/01/12/do-you-hate-sharepoint-part-1-of-4.aspx#comments</comments><description>&lt;p align="justify"&gt;&lt;em&gt;&lt;strong&gt;If the answer is yes, could your hatred be caused by your local implementation? In this blog series we look at four common problems with SharePoint implementations and how you can address them.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;SharePoint is one of those tools where the line blurs between the developer and the administrator, much like SQL Server and much like SQL Server, SharePoint is everywhere! So even though this post is not about coding for SharePoint, I thought it had some great information that many of us could use when dealing with SharePoint implementations, either as a developer supporting an implementation, or even as an end user (did I mention I use SharePoint at work? Hey boss, you reading this?).&amp;#160; A huge thank you to Neil McIsaac, SharePoint trainer extraordinaire, (bio at the end of the blog) for putting this together. Happy reading!&lt;/p&gt;  &lt;p align="justify"&gt;SharePoint is an interesting platform and as it grows as a product and with its already incredible adoption, it is an important cornerstone for many organizations. But ask the people that work with it, and you will find a divided love it or hate it passion for the product.&lt;/p&gt;  &lt;p align="justify"&gt;&lt;em&gt;Why hate it?      &lt;br /&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;It’s my experience (which dates back to the site server/dashboard days), that many customers have difficulty handling the product and I mean this a number of ways. Here’s the issue: &lt;/p&gt;  &lt;blockquote&gt;   &lt;p align="justify"&gt;&lt;strong&gt;&lt;em&gt;SharePoint will amplify your problems&lt;/em&gt;&lt;/strong&gt;. &lt;/p&gt; &lt;/blockquote&gt;  &lt;p align="justify"&gt;So why do we hate it? I would hate anything that made my problems larger. But did SharePoint create the problem? That would be like blaming the carpenters hammer for building a crooked house. The problems are our own doing in the majority of cases. In my experience, the most common problem SharePoint seems to amplify are the following;&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;     &lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;Information Management &lt;/span&gt;&lt;/em&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;&lt;em&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;/span&gt;&lt;/em&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;em&gt;Project Management&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;/span&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;em&gt;Information Security&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="justify"&gt;&lt;span style="font-family: times new roman; font-size: 12pt"&gt;&lt;em&gt;Business Intelligence&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p align="justify"&gt;Without a doubt, this is not a definitive list of problem areas, but from my experience, these are the key ones that help make or break your experience with SharePoint. So let's take a look at them.&lt;/p&gt;  &lt;h2 align="justify"&gt;1. Information Management&lt;/h2&gt;  &lt;p align="justify"&gt;In my mind, this is the biggest problem area and by a considerable margin. Why? Well, if you think about information management, it really encompasses all of the other areas. It is a really broad topic. What is surprising is as an industry whose core revolves around titles such as Information Management and Information Technology; you would think that we'd be better at it. Let's look at an example: The shared documents library within the default team site is fairly widely used by organizations. At face value it seems like a perfect solution for the sharing of documents. After all, it is called the 'shared documents' library. &lt;/p&gt;  &lt;p align="justify"&gt;When I was a kid, I remember going to the library. I am talking about the real one that had shelves and shelves of books that you couldn't carry around in your pocket. I won't refer to those times as 'the good old days' because they simply weren't. What fascinated me was the organization. I had the power as a kid, to walk in to the library and find various books on a topic that interested me, and to browse some additional information about each book before ever finding the book on the shelf. You might be thinking that I am referring to the ability to sit down in front of a computer and search, but I'm older than that. I'm referring to the cataloguing system called the Dewey Decimal system. &lt;/p&gt;  &lt;p align="justify"&gt;That's right, no computers. Yet I could search amongst a huge amount of material systematically and rapidly (for the times). &lt;strong&gt;&lt;em&gt;135 years later&lt;/em&gt;&lt;/strong&gt;, and I'm watching organizations fumble with taxonomy and metadata like new borns driving a car. &lt;/p&gt;  &lt;p align="justify"&gt;&lt;em&gt;So what's the problem?&lt;/em&gt; &lt;/p&gt;  &lt;p align="justify"&gt;If we look at the shared documents library like a real library and a document like a book, if you let your employees simply start saving their document in the library it becomes almost the equivalent of having a library where you open up the front door, and chuck your book into the building. Imagine trying to find that book a week later. For the first hundred books or so, you might be ok, but what about the first thousand? Every time you see the default shared documents library being used, you should picture a real library, with nothing more than a mound of books in the middle of the room and people frantically trying to find things in the pile. The first thing that might come to many peoples mind is that &amp;quot;Well that is what we have Search for!&amp;quot; No we don't. Well, not exactly. Search doesn't organize our data for us; it makes the retrieval faster in larger systems. If you don't believe me, do an internet search for a topic such as &lt;em&gt;Shakespeare&lt;/em&gt; and tell me what the most current and correct material is on the subject. So how do we go from a pile of books on the floor, to nicely organized books on the proper shelves? The answer is &lt;em&gt;2/3rds metadata, and 1/3rd taxonomy&lt;/em&gt;. &lt;/p&gt;  &lt;p align="justify"&gt;Metadata is data that describes data. In the case of the Dewey Decimal system, that data helped to organize books into categories such as fiction or non-fiction, and provide additional tags such as animals, psychology, religion etc. so that you could much more easily identify basic keywords that described the material. In the library system, that information is collected, identified, and then recorded when the book is first brought into the library so that the material can be properly placed as well as be identified within a cataloguing system to be more easily retrieved. &lt;em&gt;Do your SharePoint libraries behave like that? &lt;/em&gt;&lt;/p&gt;  &lt;p align="justify"&gt;Taxonomy is the organization of metadata. In the example of the library, who determined that fiction and non-fiction should be one of the primary organizational metadata to categorize books? Why not hard cover and soft cover? Within your own organization, the determination of metadata and the taxonomy surrounding it is purely yours. It needs to reflect your organizational goals, which is why companies like Microsoft can't exactly make that an out of the box feature. YOU have to address it, and unless you like sorting through a million books, you need to address it yesterday. &lt;/p&gt;  &lt;p align="justify"&gt;If you haven't already addressed it, let me help you with a few tips.&lt;/p&gt;  &lt;h4 align="justify"&gt;Focus on process    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;&lt;em&gt;Data is a byproduct of process&lt;/em&gt;. Data simply wouldn't exist if it didn't have somewhere to go or something to be done to it. Knowing and understanding the key processes in your organization is a must. What can be more difficult is the identification of key areas where your processes will likely change, or where you would like to change in the future. The reason we need to identify this as best as we can is so that we can better lay the ground work now. In other words, after we know what the current process is, we need to ask &amp;quot;What is likely to change? What additional information might be needed to identify problems or opportunities that we could leverage to further improve the process?&amp;quot; As an example, if we examine a simple project management site where we record change requests and have their statuses updated, could you easily identify the total amount of time it took to go from request to resolution? Could I easily identify the chain of events that happened after receiving a change request? And is either of those 2 details important to me or will be important to me in the future? Questions such as those will help take you beyond simply recording a change request and marking it as 'resolved'. Better metadata = better taxonomy = better processes.&lt;/p&gt;  &lt;h4 align="justify"&gt;Have Multiple Taxonomies    &lt;br /&gt;&lt;/h4&gt;  &lt;p align="justify"&gt;Taxonomy is fairly simple in concept in that it is leveraged metadata. I think I've already established the importance of having some type of taxonomy. Although what I am about to say is really two versions of the same thing, for the sake of the SharePoint argument I am going to separate the taxonomies into 2 types; Navigational taxonomies and categorical taxonomies. The reason for the separation is so they can be planned according to their primary usage in that users are either finding the data they need, or working with the data to make decisions. By focusing on their usage, we can hopefully make a better taxonomy.&lt;/p&gt;  &lt;p align="justify"&gt;With navigational taxonomies our focus should be on the Use Cases that you have established for the project. By focusing on what people do with the site, we can streamline their access to their data. You won't be able to establish that unless you understand what people do with your site, and Use Cases are the best way to establish that.&lt;/p&gt;  &lt;p align="justify"&gt;You should also support more than one navigational taxonomy since there isn't only one way to complete a task. The goal of the menu navigation should be task focused, so how do we add a second navigational taxonomy? By adding more menus? No. In SharePoint, we can add these extra navigational taxonomies through the introduction of a Site Directory focused site, and/or through the use of custom search pages and results. Both of these options are relatively easy to implement and will allow your users a second and or third way to find a location in your growing architecture.&lt;/p&gt;  &lt;p align="justify"&gt;Categorical taxonomy can be a bit harder to implement since it deals directly with content. We need to collect metadata on content to better describe it, but what should that metadata be? How should it be best structured? Great questions and the first answer lies within understanding the various processes surrounding your data. How it will be used, what decisions need to be made on it, etc. The metadata from this is typically well understood and most organizations have little trouble in establishing what the metadata is rather they have trouble in establishing how to best implement it within SharePoint.&lt;/p&gt;  &lt;p align="justify"&gt;Let me give you some tips in establishing categorical taxonomies;&lt;/p&gt;  &lt;blockquote&gt;   &lt;h5 align="left"&gt;&lt;span style="color: black"&gt;Use Content Types&lt;/span&gt;&lt;/h5&gt;    &lt;p align="justify"&gt;&lt;span style="color: black"&gt;Content types are a way of establishing a common structure that can be shared amongst lists and libraries. Use them if you want to establish some consistency. &lt;/span&gt;&lt;/p&gt;    &lt;h5 align="left"&gt;&lt;span style="color: black"&gt;Use the Managed Metadata Service (MMS) &lt;/span&gt;&lt;/h5&gt;    &lt;p align="left"&gt;&lt;span style="color: black"&gt;You can think of the MMS as a place to store the common vocabulary for your organization which can be used and shared in a number of ways. Another advantage is that you can disseminate the administration of the terms to the people that use them and not IT. Be aware that the MMS interface within the Document Information Panel is only supported within Office 2010. &lt;/span&gt;&lt;/p&gt;    &lt;h5 align="left"&gt;&lt;span style="color: black"&gt;Support Views &lt;/span&gt;&lt;/h5&gt;    &lt;p align="left"&gt;&lt;span style="color: black"&gt;Views are a great way to change to look and organization of a list or library. They work by changing the display of the data, such as sort order, which columns are shown etc. Good views require good metadata. &lt;/span&gt;&lt;/p&gt;    &lt;h5 align="left"&gt;&lt;span style="color: black"&gt;Support Soft Metadata &lt;/span&gt;&lt;/h5&gt;   &lt;span style="color: black"&gt;     &lt;p align="left"&gt;Hard metadata is metadata that directly fulfills a business requirement. In other words, it really needs to be there and usually in a very structured way where we control the terms and their usage. Soft metadata on the other hand is metadata that doesn't have a direct business relationship but can offer some insight to the content. A good example would be in the way that we tag photos. Quite often we will need some hard metadata such as the date that the photo was taken and the location, but we want to support soft metadata so that users are able to tag the photo with open terms, such as 'wildlife' or 'Christmas Party'. But why do we want to support this? To which my answer is 'Do we really want to turn away free information?' Granted there is a minimal support cost to this. In the end, we have content that is simply more usable, and with any luck, could be leveraged one day, so I often tout that the support costs are minimal with a potential for much gain, so why not. SharePoint 2010 can implement this many ways including using keywords, and/or open MMS term stores. &lt;/p&gt;   &lt;/span&gt;&lt;/blockquote&gt;  &lt;h4 align="justify"&gt;Archive&lt;/h4&gt;  &lt;p align="justify"&gt;This has been a thorn in my side almost wherever I go. We work in the information age and are so-called masters of information technologies, so why are we so bad at archiving strategies? A common dialog I often have with my clients goes something like this: &amp;quot;Our data retrieval is slow because we have a lot of it, over a million rows.&amp;quot;, &amp;quot;Why do you have over a million rows in your table?&amp;quot;, &amp;quot;We need to keep our data for X years.&amp;quot;, &amp;quot;Did anyone say you need to keep it in the same storage medium as the daily production data?&amp;quot;, &amp;quot;Ummm, no.&amp;quot;. Archiving data does not have to be offline, it can be online and accessible, it simply has a different purpose than your live, day to day, data, most importantly it should be separated. Every time you create a new location where users can add content, whether it be a list, or a library, or a database, or a file share, you should ask yourself &amp;quot;How does this content retire?&amp;quot; and &amp;quot;When does it change its purpose?&amp;quot; After that, automate the process. Without an archival strategy you are setup for failure, you just don’t know when. By accumulating data over time, you cause the live, day to day, data to slowly become harder to use when it is left in the same storage medium. Retrieving data will be slow, and it will often get in the way of users trying to find the correct content while they are trying to accomplish their day to day tasks.&lt;/p&gt;  &lt;p align="justify"&gt;Next week Part 2. Project management…&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.neilmcisaac.com/"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 10px 10px 0px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="NeilMcIssac" border="0" alt="NeilMcIssac" align="left" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-60-29-metablogapi/4747.NeilMcIssac_5F00_78AEC691.png" width="134" height="200" /&gt;Neil McIsaac&lt;/a&gt; (MCPD, MCITP, MCTS, MCSD, MCDBA, MCSE, MCSA, MCT) is an accomplished educator, consultant, and developer who specializes in enterprise application development and integration, application architecture, and business intelligence. As an instructor, Neil shares his knowledge and years of experience with students on a wide range of topics including SharePoint, BizTalk, SQL, .NET development, and PowerShell. He recently did an interview about &lt;a href="http://www.dotnetrocks.com/default.aspx?showNum=713"&gt;SharePoint in the Cloud&lt;/a&gt; with .NET Rocks&lt;/p&gt;  &lt;p&gt;Neil is an owner of BlueGreen Information Technologies Inc., and has over 18 years experience working in the IT industry in both the private and public sectors. His focus on large scale application development and integration keeps Neil involved almost exclusively with enterprise level companies. However, he also works in every level of government.&lt;/p&gt;  &lt;p&gt;Neil lives in Moncton, New Brunswick Canada. In his spare time, Neil enjoys downhill skiing, golf and a new motorcycle.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10254575" width="1" height="1"&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=3oz7-pwzK4I:AzAmNq91S8g:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=3oz7-pwzK4I:AzAmNq91S8g:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=3oz7-pwzK4I:AzAmNq91S8g:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=3oz7-pwzK4I:AzAmNq91S8g:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=3oz7-pwzK4I:AzAmNq91S8g:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/CanDevs?a=3oz7-pwzK4I:AzAmNq91S8g:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/CanDevs?i=3oz7-pwzK4I:AzAmNq91S8g:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/CanDevs/~4/3oz7-pwzK4I" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/SharePoint+2010/">SharePoint 2010</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/SharePoint/">SharePoint</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/tips/">tips</category><category domain="http://blogs.msdn.com/b/cdndevs/archive/tags/best+practice/">best practice</category><feedburner:origLink>http://blogs.msdn.com/b/cdndevs/archive/2012/01/12/do-you-hate-sharepoint-part-1-of-4.aspx</feedburner:origLink></item><media:rating>nonadult</media:rating></channel></rss>

