<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Coding Out Loud</title>
	<atom:link href="http://blog.codingoutloud.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.codingoutloud.com</link>
	<description>Yes, another noisy coder...</description>
	<lastBuildDate>Wed, 01 Sep 2010 03:02:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.codingoutloud.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://0.gravatar.com/blavatar/2ea73c22ec01f16063d01a441d968815?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>Coding Out Loud</title>
		<link>http://blog.codingoutloud.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.codingoutloud.com/osd.xml" title="Coding Out Loud" />
	<atom:link rel='hub' href='http://blog.codingoutloud.com/?pushpress=hub'/>
		<item>
		<title>Chris Bowen Speaks at August 2010 Boston Azure Meeting</title>
		<link>http://blog.codingoutloud.com/2010/08/31/chris-bowen-speaks-at-august-2010-boston-azure-meeting/</link>
		<comments>http://blog.codingoutloud.com/2010/08/31/chris-bowen-speaks-at-august-2010-boston-azure-meeting/#comments</comments>
		<pubDate>Wed, 01 Sep 2010 02:57:45 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">https://codingoutloud.wordpress.com/2010/08/31/chris-bowen-speaks-at-august-2010-boston-azure-meeting/</guid>
		<description><![CDATA[Many thanks to Chris Bowen who was the guest speaker at the August 2010 Boston Azure user group meeting. The topic was ASP.NET MVC, with an Azure perspective. Check out Chris’ blog at:  http://blogs.msdn.com/cbowen/ Here are my rough notes: There was no slide deck – Chris jumped right into the code. Here are a few [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1219&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Many thanks to Chris Bowen who was the guest speaker at the August 2010 <a href="http://bostonazure.org/">Boston Azure</a> user group meeting. The topic was ASP.NET MVC, with an Azure perspective.</p>
<ul>
<li>Check out Chris’ blog at:  <a title="http://blogs.msdn.com/b/cbowen/" href="http://blogs.msdn.com/cbowen/">http://blogs.msdn.com/cbowen/</a></li>
</ul>
<p><a href="http://codingoutloud.files.wordpress.com/2010/08/chrisbowenmvcaug2010-1.jpg"><img style="display:inline;border-width:0;" title="chris-bowen-mvc-aug-2010.1" src="http://codingoutloud.files.wordpress.com/2010/08/chrisbowenmvcaug2010-1_thumb.jpg?w=244&#038;h=183" border="0" alt="chris-bowen-mvc-aug-2010.1" width="244" height="183" /></a></p>
<p>Here are my rough notes:</p>
<p>There was no slide deck – Chris jumped right into the code. Here are a few of my rough notes.</p>
<p>Consider Web Platform Installer 2.0 to install Azure tooling.</p>
<ul>
<li>Windows Azure Platform Tools</li>
<li>Visual Web Developer 2010 Express</li>
</ul>
<p>ASP.NET MVC concepts / benefits:</p>
<ul>
<li>“A lot of convention” – great in the long run, hard to grasp at first…</li>
<li>Separation of Concerns – controller then view</li>
<li>ASP.NET MVC is closer to the metal than traditional ASP.NET – if you want to implement, say, XHTML, then nothing stands in your way.</li>
<li>Strongly-typed Controllers and Views can be generated once your model is in place.</li>
<li>Controller may choose to pass along only a ViewModel – subset of full Model, or perhaps enhanced</li>
<li>Model Binding is also by convention</li>
<li>Hackable URLs</li>
</ul>
<p>Tips and Tricks:</p>
<ul>
<li>Ctrl-Shift-Click on Visual Studio in Win 7 will launch in Admin mode which Azure requires.</li>
<li>Can modify the T4 template for MVC to alter its UI options in wizards.</li>
<li>Ctrl-M-G – bring me to the appropriate View for this Action</li>
</ul>
<p>New in MVC 2 / ASP.NET 4:</p>
<ul>
<li>Html.DisplayForModel</li>
<li>RenderActions – new in MVC 2</li>
<li>New in ASP.NET 4 (not just ASP.NET MVC 2) is &lt;%: “foo” %&gt; where the “:” is a new feature as shortcut for HTML.Encode for the content.</li>
<li>MVC 2 has powerful client-side validation based on characteristics of your model. Does not require a server-side round trip. You specify e.g., [Required] attribute on Model data – and you don’t need to write any imperative code.</li>
</ul>
<p> <a href="http://codingoutloud.files.wordpress.com/2010/08/chrisbowenmvcaug2010-2.jpg"><img style="display:inline;border-width:0;" title="chris-bowen-mvc-aug-2010.2" src="http://codingoutloud.files.wordpress.com/2010/08/chrisbowenmvcaug2010-2_thumb.jpg?w=244&#038;h=183" border="0" alt="chris-bowen-mvc-aug-2010.2" width="244" height="183" /></a> </p>
<p><a href="http://asp.net/mvc">http://asp.net/mvc</a> – many great resources.</p>
<p>Windows Azure developer fabric – also known as “the fog” – is the Azure cloud simulator running locally.</p>
<p>Also check out by <a href="http://blog.cloudconstruct.com/author/aderderian.aspx">Arra Derderian&#8217;s</a> <a href="http://blog.cloudconstruct.com/post/First-impressions-of-Azure-and-MVC.aspx">write-up</a> of the same Boston Azure meeting.</p>
<p>There were around 30 people in attendance at the meeting.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/1219/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/1219/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/1219/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/1219/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/1219/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/1219/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/1219/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/1219/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/1219/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/1219/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/1219/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/1219/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/1219/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/1219/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1219&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/08/31/chris-bowen-speaks-at-august-2010-boston-azure-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/08/chrisbowenmvcaug2010-1_thumb.jpg" medium="image">
			<media:title type="html">chris-bowen-mvc-aug-2010.1</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/08/chrisbowenmvcaug2010-2_thumb.jpg" medium="image">
			<media:title type="html">chris-bowen-mvc-aug-2010.2</media:title>
		</media:content>
	</item>
		<item>
		<title>Three Types of Scaling in the Cloud: Scale Up, Scale Out, and now Scale Side-by-Side (with Juxtaposition Scaling)</title>
		<link>http://blog.codingoutloud.com/2010/07/27/three-types-of-scaling-in-the-cloud-scale-up-scale-out-and-now-scale-side-by-side-with-juxtaposition-scaling/</link>
		<comments>http://blog.codingoutloud.com/2010/07/27/three-types-of-scaling-in-the-cloud-scale-up-scale-out-and-now-scale-side-by-side-with-juxtaposition-scaling/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 11:44:20 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[scalability]]></category>
		<category><![CDATA[architecture]]></category>
		<category><![CDATA[juxtaposition scaling]]></category>
		<category><![CDATA[scaling side-by-side]]></category>

		<guid isPermaLink="false">https://codingoutloud.wordpress.com/?p=1186</guid>
		<description><![CDATA[Computer systems or individual applications have capacity limits. A web site might be working just fine with one or two or fifty users, but when use goes way up, it may no longer work correctly &#8211; or a tall. A desktop application may work fine for a long time – then one day, we try [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1186&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Computer systems or individual applications have capacity limits. A web site might be working just fine with one or two or fifty users, but when use goes way up, it may no longer work correctly &#8211; or a tall. A desktop application may work fine for a long time – then one day, we try loading a really large file or data set, and it can’t handle it. These are scalability challenges.</p>
<p>After our system or application reaches its capacity limits, what are our options to make it work even with the new demands? In other words, how do we make it scale?</p>
<p>The  following scalability approaches  allow us to handle more computations (with <em>vertical</em> and <em>horizontal scaling</em>) or more system instances (with <em>juxtaposition scaling</em>).</p>
<p>There are other very important scaling patterns that we might address in a future post &#8211; such as the scalability using algorithms that embrace parallelism (such as Map/Reduce), <a href="http://en.wikipedia.org/wiki/NoSQL">NoSQL</a>-like schema-less storage, and data sharding. These are not covered in this article.</p>
<h2>Scale Up with More Powerful Hardware</h2>
<p>The obvious option in many cases is to address a scalability problem with better, faster, more capable hardware. If we can’t load that giant spreadsheet model on a computer with 512MB of RAM, we install 2GB and give it another try. If it is still too slow, we can use a machine with a faster processor or faster hard disk.</p>
<p>This approach can also be applied to web servers, database servers, and other parts of your system. Got an architecture problem? Get some better hardware.</p>
<p>This approach is variously called “scaling up” or “vertical scaling” – since we are addressing the problem by substituting a more capable system (usually a single server), but one that is still logically equivalent.</p>
<p>The essential point here is that, generally speaking, <strong><em>the limits of scalability are due to the limits of a single computer </em></strong>(or perhaps the limits of an <em>affordable</em> single computer).</p>
<blockquote><p>In Scaling Up (also known as Vertical Scaling) the limitation is hardware related in a very specific way: how much memory, disk, and processor a single server can support…</p></blockquote>
<p>The key challenge with Scaling Up is that you might run out of hardware options. What happens if you are running on the fastest available machine, or it can’t take any more memory? You may be out of luck.</p>
<h2>Scale Out with More Hardware Instances</h2>
<p>Another option is some cases is to leave the existing machines in place, and add additional machines to the mix to share the burden. This is variously called “scaling out” or “horizontal scaling” – a metaphor suggestive of spreading out the system as we add more machines beside the existing ones.</p>
<p>The key point here are that systems need to be architected to support Scaling Out – though the benefit is that they can generally scale a lot more than a Scale Up system – and <strong><em>scalability is enabled by the software architecture</em></strong>.</p>
<blockquote><p>In Scaling Out (also known as Horizontal Scaling) scalability must be architected into the system… it is not automatic and is generally more challenging than Scaling Up. You scale by running on more instances of the hardware &#8211; and having these hardware instances share the workload.</p></blockquote>
<p>As mentioned, scaling out is an attribute of the architecture of the system. This is a great fit for the elastic nature of cloud computing platforms.</p>
<h2>Scale Side-by-Side with More Systems</h2>
<p>In the real world, not all of our scaling concerns are with “the” system – we tend to have many copies of systems. I recently heard that for every production instance of SAP, there are seven non-production instances. And in my own experience, organizations *always* need many instances of systems: for development, test, training and … then we have different versions of all these systems … and the list goes on.</p>
<p>It turns out that another great use of the cloud generally (including the Azure Cloud) is for spinning up these other instances of our system for many purposes – sometimes we don’t want 1 N-node app, we want N 1-node apps.</p>
<p>I dub this use of cloud to be “scaling side-by-side” or “juxtaposition scaling” – a metaphor suggestive of putting similar systems beside each other, since they are a related collection of sorts, even though the instances of systems scaled side-by-side to are not connected to, or operationally related to, any of the other instances.</p>
<blockquote><p><strong>Scaling Side-by-Side (also known as Juxtaposition Scaling) </strong>happens when you use the cloud’s elastic nature to create additional (often  temporary) instances of a system – such as for test or development.</p></blockquote>
<p>Also, scaling side-by-side (juxtaposition scaling) is orthogonal to scaling up (vertical scaling) or scaling out (horizontal scaling). It is more about scaling to support more uses of more variants (versions, test regions, one for training, penetration testing, stress testing, …) for overall environmental efficiency.</p>
<p>And, finally, like other ways to leverage cloud infrastructure, to efficiently scale side-by-side you will benefit from some automation to easily provision an instance of your application. Azure has management APIs you can call to make the whole process automagic. Consider PowerShell for building your automation&#8230;</p>
<p>[It was in a conversation at the <a href="http://www.meetup.com/Hub-Cloud-Club/calendar/13472255/?from=list&amp;offset=0">Hub Cloud Club</a> with several folks, including <a href="http://twitter.com/utollwi">William Toll</a> and <a href="http://www.cloudbzz.com/">John Treadway</a>. John mentioned the SAP statistic and also suggested that adding more instances is just another type of scaling in the cloud. I agreed and still agree. So I am giving that type of scalability a name… <strong>Scaling Side-by-Side</strong> or <strong>Juxtaposition Scaling</strong>. Neither seems to have any real hits in Google, but let's see if this catches on.]</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/'>Cloud Computing</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a> Tagged: <a href='http://blog.codingoutloud.com/tag/architecture/'>architecture</a>, <a href='http://blog.codingoutloud.com/tag/juxtaposition-scaling/'>juxtaposition scaling</a>, <a href='http://blog.codingoutloud.com/tag/scalability/'>scalability</a>, <a href='http://blog.codingoutloud.com/tag/scaling-side-by-side/'>scaling side-by-side</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/1186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/1186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/1186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/1186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/1186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/1186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/1186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/1186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/1186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/1186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/1186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/1186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/1186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/1186/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1186&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/07/27/three-types-of-scaling-in-the-cloud-scale-up-scale-out-and-now-scale-side-by-side-with-juxtaposition-scaling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>4 Reasons to embrace the &#8220;www&#8221; subdomain prefix in your Web Addresses, and how to do it right</title>
		<link>http://blog.codingoutloud.com/2010/07/26/4-reasons-to-embrace-the-www-subdomain-prefix-in-your-web-addresses-and-how-to-do-it-right/</link>
		<comments>http://blog.codingoutloud.com/2010/07/26/4-reasons-to-embrace-the-www-subdomain-prefix-in-your-web-addresses-and-how-to-do-it-right/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 03:45:55 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[subdomains]]></category>
		<category><![CDATA[www]]></category>

		<guid isPermaLink="false">https://codingoutloud.wordpress.com/?p=1184</guid>
		<description><![CDATA[In support of the www subdomain prefix For web addresses, I used to consider the “www” prefix an anachronism and argued that its use be deprecated in favor of the plain-old domain. In other words, I used to consider forms such as bostonazure.org superior to the more verbose www.bostonazure.org. I have seen the light and now [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1184&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>In support of the www subdomain prefix</h2>
<p>For web addresses, I used to consider the “www” prefix an anachronism and argued that its use be deprecated in favor of the plain-old domain. In other words, I used to consider forms such as <a href="http://www.bostonazure.org">bostonazure.org</a> superior to the more verbose <a href="http://www.bostonazure.org">www.bostonazure.org</a>.</p>
<p>I have seen the light and now advocate the use of the “www” prefix – which is technically a  <a title="http://blog.smarx.com/posts/custom-domain-names-in-windows-azure" href="http://en.wikipedia.org/wiki/Subdomain">subdomain</a> – for clarity and flexibility. <strong>I now consider </strong><a href="http://www.bostonazure.org"><strong>www.bostonazure.org</strong></a><strong> superior to the overly terse </strong><a href="http://www.bostonazure.org"><strong>bostonazure.org</strong></a><strong>.</strong></p>
<p>I am not alone in my support of the www subdomain. Not only is there a “yes www” group – found at <a href="http://www.yes-www.org/">www.yes-www.org</a> – advocating we keep using the www prefix, there is also an “extra www” group – found at <a href="http://www.www.extra-www.org/">www.www.extra-www.org</a> <em>[<a href="http://en.wikipedia.org/wiki/Sic">sic</a>]</em> – advocating we go all in and start using two sets of www prefixes. While I’m not ready to side with the extra www folks (which would give us <a href="http://www.bostonazure.org">www.www.bostonazure.org</a>), for those who do, you might want to know they offer the following nifty badge for your displaying pleasure.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/07/image.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/07/image_thumb.png?w=144&#038;h=18" border="0" alt="image" width="144" height="18" /></a></p>
<p>While use of two &#8220;www&#8221; prefixes may one too many, here are 4 reasons to embrace a single “www’ prefix, followed by 2 tips on how to implement it correctly.</p>
<h2>Four reasons to embrace the www prefix</h2>
<p><a href="http://codingoutloud.files.wordpress.com/2010/07/image1.png"><img style="display:inline;border-width:0;" title="traffic light" src="http://codingoutloud.files.wordpress.com/2010/07/image_thumb1.png?w=121&#038;h=244" border="0" alt="traffic light" width="121" height="244" /></a></p>
<h4>Reason #1: It’s a user-friendly signal, even if occasionally redundant</h4>
<p>The main, and possibly best, reason is that it is user-friendly. Users have simply come to expect a www prefix on web pages.</p>
<p>The “www” prefix provides a good signal. You might argue that it is redundant: Perhaps the http:// protocol is sufficient? Or the “.com” at the end?</p>
<p>First, consider that the http:// protocol is not always specified; it is common to see sites advertised in the form <a href="http://www.example.com">www.example.com</a>.</p>
<p>Second, consider that the <a href="http://en.wikipedia.org/wiki/Top-level_domain">TLD</a> (top-level-domain) can vary – not every web site it a “dot com” – it might be a .org, .mil, or a TLD from another country – many of which may not be obvious as web addresses for the common user without a www prefix, even with the http:// protocol.</p>
<p>Third, consider that even if there are cases where the www is redundant, that is still okay. An additional, familiar signal to humans letting them know with greater confidence that, yes, this is a web address, is a benefit, not a detriment.</p>
<p>Today, most users probably think that the Web and the Internet are synonymous anyway. To most users, there is <strong><em>nothing but the www – we need to realize that </em></strong>today’s Internet is inhabited by regular civilians (not just programmers and <a href="http://en.wikipedia.org/wiki/Hacker_(programmer_subculture)">hackers</a>).  Let’s acknowledge this larger population by utilizing the www prefix and reducing <em>net</em> confusion (<em>pun intended</em>).</p>
<h4>Reason #2: Go with the flow</h4>
<p>The application and browser vendors are promoting the www prefix.</p>
<p>Microsoft Word and Microsoft Outlook – two of the most popular applications in the world – both automatically recognize <a href="http://www.bostonazure.org">www.bostonazure.org</a> as a web address, while neither automatically recognizes bostonazure.org. (Both also auto recognize <a href="http://bostonazure.org"><strong>http://</strong>bostonazure.org</a>.) Other text processing applications have similar detection capabilities and limitations.</p>
<p>Browsers also assume we want the www prefix; in any browser, type in just “twitter” followed by Ctrl-Enter – the browser will automatically put “<a href="http://www">http://www</a>.” and append “.com” forming “http://www.twitter.com” (though then we are immediately redirected to <a href="http://twitter.com">http://twitter.com</a>). [Note that browsers typically are actually configured to append something other than “.com” if that is not the most common TLD there; country specific settings are in force.] For the less common cases where you are typing in a .org or other non-default setting, the browser can only be so smart; you need to type some in fully on your own.</p>
<h4>Reason #3: Advantages on high volume sites</h4>
<p>While I have been aware of most of the raw material used in this blog post for years, this one was new to me.</p>
<p>High traffic web sites can get performance benefits by using www, as described in the <a href="http://developer.yahoo.com/performance/rules.html#cookie_free">Yahoo! Best Practices for Speeding Up Your Web Site</a>, though there is a workaround (involving an additional images domain) that still would allow a non-www variant, apparently without penalty.</p>
<h4>Reason #4: Azure made me do it!</h4>
<p>It turns out that Windows Azure likes you to use the www prefix, as described by <a href="http://blog.smarx.com/posts/custom-domain-names-in-windows-azure">Steve Marx in his blog post on custom domain names in Azure</a>. This appears to be due to the combined effects of how Azure does virtualization for highly dynamic cloud environments – plus limitations of <a href="http://en.wikipedia.org/wiki/Domain_Name_System">DNS</a>.</p>
<p>In fact, it was this discovery that caused me to rethink my long-held beliefs around the use of www. Though I didn’t find any posts that specifically viewed this exactly like I did, my conclusion is the following:</p>
<blockquote><p>I concluded the Internet community has changed over the years and is now dominated by non-experts. The “www” affordance inserted into the URLs makes enough of a difference in the user experience for non-expert users that we ought to just use the prefix, even if expert users see it as redundant and repetitive – as I used to.</p></blockquote>
<p>In other words, nobody is harmed by use of the www prefix, while most users benefit.</p>
<h2>Two tips to properly configure the www prefix</h2>
<p>One of the organizations promoting dropping the www – <a title="http://no-www.org/" href="http://no-www.org/">http://no-www.org/</a> – describes three classes of “no www” compliance:</p>
<ul>
<li><strong>Class A:</strong> Do what most sensible sites do and allow both example.com and <a href="http://www.example.com">www.example.com</a> to work. This is probably the most easily supported in GoDaddy, and probably the most user-friendly, since anything reasonable done by the user just works.</li>
<li><strong>Class B:</strong> Redirect traffic from example.com to <a href="http://www.example.com">www.example.com</a>, presumably with a 301 (Permanent) http redirect; this approach is most SEO/Search Engine-friendly, while maintaining similar user-friendliness to Class A.</li>
<li><strong>Class C:</strong> Have the www variant fail to resolve (so browser would give an error to the user attempting to access it). This is not at all user friendly, but is SEO-friendly.</li>
</ul>
<p>So what are the two rules for properly configuring the www prefix?</p>
<h4>Tip #1: Be user- and SEO-friendly with 301 redirect</h4>
<p>Being user-friendly argues for Class A or Class B approach as mentioned above.</p>
<p>You don’t want search engines to be confused about whether the www-prefixed or the non-www variant is the official site. This is not Search Engine Optimization (<a href="http://en.wikipedia.org/wiki/Search_engine_optimization">SEO</a>)-friendly; it will hurt your search engine rankings. This argues for Class B or Class C approach as mentioned above.</p>
<p>For the best of both worlds, the Class B approach is the clear winner. Set up a 301 permanent http redirect from your non-www domain to your www-prefixed variant.</p>
<p>You can set this up in GoDaddy with the Forward Subdomain feature in Domain Manager, for example.</p>
<p>You can also set it up with IIS :</p>
<ul>
<li><a title="http://www.xoc.net/works/tips/domain.asp" href="http://www.xoc.net/works/tips/domain.asp">http://www.xoc.net/works/tips/domain.asp</a></li>
</ul>
<p>Or with Apache:</p>
<ul>
<li><a title="http://www.thesitewizard.com/apache/redirect-domain-www-subdomain.shtml" href="http://www.thesitewizard.com/apache/redirect-domain-www-subdomain.shtml">http://www.thesitewizard.com/apache/redirect-domain-www-subdomain.shtml</a></li>
</ul>
<h4>Tip #2: Specify your canonical source for content</h4>
<p>While the <a href="http://en.wikipedia.org/wiki/Search_engine_optimization">SEO</a> comment above covers part of this, you also want to be sure that if you are on a host or environment where you are not able to set up a 301 redirect, you can at least let the search engines know which variant ought to get the SEO-juice.</p>
<p>In your HTML page header, be sure to set the canonical source for your content:</p>
<pre>&lt;head&gt;
    &lt;link rel="canonical" href="<a href="http://www.bostonazure.org/">http://www.bostonazure.org/</a>" /&gt;
    ...
&lt;/head&gt;</pre>
<p>Google honors this currently:</p>
<ul>
<li><a title="http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html" href="http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html">http://googlewebmastercentral.blogspot.com/2009/02/specify-your-canonical.html</a></li>
</ul>
<p>Google is even looking at cross-domain support for canonical tag (though other search engines have not announced plans for cross-domain support):</p>
<ul>
<li><a title="http://searchengineland.com/canonical-tag-2-0-google-to-add-cross-domain-support-27222" href="http://searchengineland.com/canonical-tag-2-0-google-to-add-cross-domain-support-27222">http://searchengineland.com/canonical-tag-2-0-google-to-add-cross-domain-support-27222</a></li>
</ul>
<p>From an official Bing Webmaster blog post from Feb 2009, Bing will support it:</p>
<ul>
<li><a title="http://www.bing.com/toolbox/blogs/webmaster/archive/2009/02/12/partnering-to-help-solve-duplicate-content-issues.aspx" href="http://www.bing.com/toolbox/blogs/webmaster/archive/2009/02/12/partnering-to-help-solve-duplicate-content-issues.aspx">http://www.bing.com/toolbox/blogs/webmaster/archive/2009/02/12/partnering-to-help-solve-duplicate-content-issues.aspx</a></li>
</ul>
<p>Reportedly, Bing and Yahoo! are not yet supporting this very well:</p>
<ul>
<li><a title="http://www.matthewsdiehl.com/seo/rel-canonical-link-tag-element-update/" href="http://www.matthewsdiehl.com/seo/rel-canonical-link-tag-element-update/">http://www.matthewsdiehl.com/seo/rel-canonical-link-tag-element-update/</a></li>
<li><a title="http://www.seoconsult.co.uk/SEOBlog/seo-techniques/rel-canonical-google-keeps-its-word-whilst-bing-and-yahoo-fail-to-provide.html" href="http://www.seoconsult.co.uk/SEOBlog/seo-techniques/rel-canonical-google-keeps-its-word-whilst-bing-and-yahoo-fail-to-provide.html">http://www.seoconsult.co.uk/SEOBlog/seo-techniques/rel-canonical-google-keeps-its-word-whilst-bing-and-yahoo-fail-to-provide.html</a></li>
</ul>
<p>But it appears Bing and Yahoo! have either just implemented it, or perhaps they are about to:</p>
<ul>
<li><a title="http://searchengineland.com/bing-yahoo-soon-to-support-canonical-tag-37405" href="http://searchengineland.com/bing-yahoo-soon-to-support-canonical-tag-37405">http://searchengineland.com/bing-yahoo-soon-to-support-canonical-tag-37405</a></li>
</ul>
<p>You can also configure Google Webmaster Tools (and probably the equivalents in Bing and Yahoo!) to say which variant you prefer as the canonical source.</p>
<h2>Unusual subdomain uses</h2>
<p>There are some odd uses of subdomain prefixes. Some are designed to be extremely compact – such as URL shortening service bit.ly. Others are plain old clever – such as social bookmarking site del.i.cio.us. Still others defy understanding – in the old days (but not *that* old!), I recall adobe.com did not resolve – there was no alias or redirect, just an error – if you did not type in the www prefix, you were out of luck.</p>
<p>Another really interesting case of subdomain shenanigans is still in place over at MIT where you will find that <a href="http://www.mit.edu">www.mit.edu</a> and <a href="http://mit.edu">mit.edu</a> both resolve – but to totally different sites! This is totally legal, though totally unusual. There is also a <a href="http://web.mit.edu">web.mit.edu</a> which happens to match mit.edu, but <a href="http://www.mit.edu">www.mit.edu</a> is in different hands.</p>
<p>In the early days of the web, the Wall Street Journal was an early adopter and they used to advertise as <a href="http://wsj.com">http://wsj.com</a>. These days both <a href="http://wsj.com">wsj.com</a> and <a href="http://www.wsj.com">www.wsj.com</a> resolve, but they both redirect to a third place, <a href="http://online.wsj.com">online.wsj.com</a>. Also totally legal, and a bit unusual.</p>
<p>&#8212;</p>
<p>Credit for Traffic Light image used above:</p>
<ol>
<li>capl@washjeff.edu</li>
<li><a href="http://capl.washjeff.edu/browseresults.php?langID=2&amp;photoID=3803&amp;size=l">http://capl.washjeff.edu/browseresults.php?langID=2&amp;photoID=3803&amp;size=l</a></li>
<li><a href="http://creativecommons.org/licenses/by-nc-sa/3.0/us/">http://creativecommons.org/licenses/by-nc-sa/3.0/us/</a></li>
<li><a title="http://capl.washjeff.edu/2/l/3803.jpg" href="http://capl.washjeff.edu/2/l/3803.jpg">http://capl.washjeff.edu/2/l/3803.jpg</a></li>
</ol>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/cloud-computing/'>Cloud Computing</a>, <a href='http://blog.codingoutloud.com/category/step-by-step/how-to/'>How To</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a> Tagged: <a href='http://blog.codingoutloud.com/tag/dns/'>dns</a>, <a href='http://blog.codingoutloud.com/tag/subdomains/'>subdomains</a>, <a href='http://blog.codingoutloud.com/tag/www/'>www</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/1184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/1184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/1184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/1184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/1184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/1184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/1184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/1184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/1184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/1184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/1184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/1184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/1184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/1184/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1184&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/07/26/4-reasons-to-embrace-the-www-subdomain-prefix-in-your-web-addresses-and-how-to-do-it-right/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/07/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/07/image_thumb1.png" medium="image">
			<media:title type="html">traffic light</media:title>
		</media:content>
	</item>
		<item>
		<title>A Key Architectural Design Pattern for Cloud-Native Windows Azure Applications</title>
		<link>http://blog.codingoutloud.com/2010/07/14/key-architectural-design-pattern-for-cloud-native-azure-apps/</link>
		<comments>http://blog.codingoutloud.com/2010/07/14/key-architectural-design-pattern-for-cloud-native-azure-apps/#comments</comments>
		<pubDate>Wed, 14 Jul 2010 19:47:43 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Bill gave a talk]]></category>
		<category><![CDATA[Cloud Computing]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=1157</guid>
		<description><![CDATA[I gave a talk for the Windows Azure User Group in which I discussed a key Architectural Design Pattern for Cloud-Native Windows Azure applications. The main pattern involves roles and queues, and I&#8217;ve been calling either &#8220;Two Roles and a Queue&#8221; or &#8220;TRAAQ&#8221; or &#8220;RQR&#8221; (the &#8216;rocker!&#8217; pattern!) &#8211; though is the same one that Steve [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1157&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I gave a talk for the <a href="http://azureug.net/">Windows Azure User Group</a> in which I discussed a key Architectural Design Pattern for Cloud-Native Windows Azure applications. The main pattern involves roles and queues, and I&#8217;ve been calling either &#8220;Two Roles and a Queue&#8221; or &#8220;TRAAQ&#8221; or &#8220;RQR&#8221; (the &#8216;rocker!&#8217; pattern!) &#8211; though is the same one that Steve Nagy has been calling the <a href="http://azure.snagy.name/blog/?p=219">Asynchronous Work Queue Pattern</a> (thanks Steve).</p>
<p>The deck from this presentation is here: <a href="http://codingoutloud.files.wordpress.com/2010/07/bill-wilder-two-roles-and-a-queue-azureug-net-windows-azure-virtual-user-group-14-july-2010.pptx">bill-wilder-two-roles-and-a-queue-AzureUG.net-windows-azure-virtual-user-group-14-july-2010</a></p>
<p>Follow me on twitter <a href="http://twitter.com/codingoutloud">@codingoutloud</a>.</p>
<p>Follow the <a href="http://bostonazure.org">Boston Azure User Group</a> on twitter <a href="http://twitter.com/bostonazure">@bostonazure</a>.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/events/bill-gave-a-talk/'>Bill gave a talk</a>, <a href='http://blog.codingoutloud.com/category/cloud-computing/'>Cloud Computing</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/1157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/1157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/1157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/1157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/1157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/1157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/1157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/1157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/1157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/1157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/1157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/1157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/1157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/1157/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1157&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/07/14/key-architectural-design-pattern-for-cloud-native-azure-apps/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Presented on Windows Azure at Hartford Code Camp</title>
		<link>http://blog.codingoutloud.com/2010/06/19/presented-on-windows-azure-at-hartford-code-camp/</link>
		<comments>http://blog.codingoutloud.com/2010/06/19/presented-on-windows-azure-at-hartford-code-camp/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 16:40:17 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Bill gave a talk]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=1136</guid>
		<description><![CDATA[Today at Hartford Code Camp #3 in Connecticut, I presented two talks on Windows Azure. The first talk was an introduction to Cloud Computing, with a Microsoft slant towards Windows Azure. The second drilled into the Two Roles and a Queue (TRAAQ) design pattern &#8211; a key pattern for architecting systems for the cloud. The PowerPoint [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1136&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Today at <a href="http://ctdotnet.org/CodeCamp3.aspx">Hartford Code Camp #3</a> in Connecticut, I presented two talks on Windows Azure.</p>
<p>The first talk was an introduction to Cloud Computing, with a Microsoft slant towards Windows Azure. The second drilled into the <strong>Two Roles and a Queue (TRAAQ) </strong>design pattern &#8211; a key pattern for architecting systems for the cloud.</p>
<p>The PowerPoint slides are available here:</p>
<ul>
<li>Intro talk – <a href="http://codingoutloud.files.wordpress.com/2010/06/bill-wilder-demystifying-cloud-computing-introducing-windows-azure-hartford-code-camp-19-june-20102.pptx">bill-wilder-demystifying-cloud-computing-introducing-windows-azure-hartford-code-camp-19-june-2010</a></li>
<li>More in-depth talk on the Window Azure Programming Model – <a href="http://codingoutloud.files.wordpress.com/2010/06/bill-wilder-two-roles-and-a-queue-hartford-code-camp-19-june-2010.pptx">bill-wilder-two-roles-and-a-queue-hartford-code-camp-19-june-2010</a></li>
</ul>
<p>Also plugged the <a href="http://bostonazure.org/">Boston Azure User Group</a> to those attending my talks! Hope to see some of you at NERD in Cambridge, MA for talks and hands-on-coding sessions. Details always at <strong><a href="http://bostonazure.org/">bostonazure.org</a></strong>.</p>
<p><a href="http://bostonazure.org"><img title="bostonazure-logo" src="http://codingoutloud.files.wordpress.com/2010/06/bostonazure-logo.png?w=160&amp;h=30&#038;h=30" alt="" width="160" height="30" /></a></p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/events/bill-gave-a-talk/'>Bill gave a talk</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/1136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/1136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/1136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/1136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/1136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/1136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/1136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/1136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/1136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/1136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/1136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/1136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/1136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/1136/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1136&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/06/19/presented-on-windows-azure-at-hartford-code-camp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/06/bostonazure-logo.png?w=160&#38;h=30" medium="image">
			<media:title type="html">bostonazure-logo</media:title>
		</media:content>
	</item>
		<item>
		<title>May 2010 Boston Azure Meeting</title>
		<link>http://blog.codingoutloud.com/2010/06/18/may-2010-boston-azure-meeting/</link>
		<comments>http://blog.codingoutloud.com/2010/06/18/may-2010-boston-azure-meeting/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 01:18:26 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=1067</guid>
		<description><![CDATA[May 27, 2010 Boston Azure Meeting 1. Michael Stiefel on use of relational databases in the cloud At the May 27, 2010 Boston Azure meeting, Michael Stiefel was the main speaker. Michael gave a talk (slides here) on when you might want to use SQL Azure vs. &#8220;NoSQL&#8221; Azure in the cloud. Some key phrases, highlights (very [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1067&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>May 27, 2010 Boston Azure Meeting</h1>
<h2>1. Michael Stiefel on use of relational databases in the cloud</h2>
<p>At the May 27, 2010 Boston Azure meeting, <a href="http://www.reliablesoftware.com/bio.html">Michael Stiefel</a> was the main speaker. Michael gave a talk (<a href="http://www.reliablesoftware.com/presentations/Relational%20Databases%20In%20the%20Cloud.pdf">slides here</a>) on when you might want to use SQL Azure vs. &#8220;NoSQL&#8221; Azure in the cloud.</p>
<p>Some key phrases, highlights (very rough!):</p>
<ul>
<li>&#8220;Latency exists&#8221; &#8211; you need to care about it &#8211; and the speed of light matters - analogy to digging a hole: how fast you move the shovel</li>
<li>&#8220;Bandwidth is limited&#8221; &#8211; you need to care about it &#8211; with hole-digging analogy, this is the size of shovel</li>
<li>Computational Power gets cheaper faster than Network Bandwidth</li>
<li>Connectivity is Not Always Available &#8211; welcome to the world of occasionally-connected devices like laptops on airplanes and the boom in mobile devices</li>
<li>Waiting for Data slows computation</li>
<li>Human Interaction &#8211; thinking time &#8211; can add latency to any operation</li>
<li>Economics dictates scale out, not up</li>
<li>Availability or Consistency? What is the Cost of an Apology?</li>
<li>How consistent do you need to be? Weigh cost of consistency vs. cost oc of lost business&#8230; Business Decision!</li>
<li>Design for <em>Eventual </em>Consistency</li>
</ul>
<p>The meeting had around 25 people in attendance.</p>
<h2>2. Discussion of Boston Azure Project</h2>
<p>As part of the May meeting we discussed a proposal for the <a href="http://blog.codingoutloud.com/2010/06/02/introducing-the-boston-azure-project/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed:+codingoutloud+(Coding+Out+Loud+blog)">Boston Azure Project</a> &#8211; an open source, collaborative, Azure-hosted coding project to &#8220;gently overengineer the bostonazure.org web site&#8221; &#8211; by Azurizing it. The proposal met with enough enthusiasm that it was adopted and we are moving forward with it.</p>
<h2>3. Next: June 24 Meeting is All About The Code</h2>
<p>In the June 24 meeting (<a href="http://bostonazure.org/">RSVP here</a>) we will get started on the <a href="http://blog.codingoutloud.com/2010/06/02/introducing-the-boston-azure-project/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed:+codingoutloud+(Coding+Out+Loud+blog)">Boston Azure Project</a>. We will spend from 6:00 &#8211; 8:30 talking about it, organizing, and getting started. Bring your Azure-powered laptop!</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/boston-azure-user-group/'>Boston Azure User Group</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/1067/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/1067/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/1067/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/1067/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/1067/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/1067/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/1067/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/1067/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/1067/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/1067/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/1067/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/1067/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/1067/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/1067/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1067&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/06/18/may-2010-boston-azure-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Two Azure Talks at New Hampshire Code Camp</title>
		<link>http://blog.codingoutloud.com/2010/06/05/two-azure-talks-at-new-hampshire-code-camp/</link>
		<comments>http://blog.codingoutloud.com/2010/06/05/two-azure-talks-at-new-hampshire-code-camp/#comments</comments>
		<pubDate>Sat, 05 Jun 2010 16:22:36 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Bill gave a talk]]></category>
		<category><![CDATA[Cloud Computing]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=1107</guid>
		<description><![CDATA[Today gave two talks at the New Hampshire Code Camp 2 in Concord, NH. My talks were&#160;Azure Demystified &#8211; What is Cloud Computing? What is Windows Azure? and Why should we care? followed by Two Roles and a Queue &#8211; The most important design pattern for Windows Azure Cloud apps. The PowerPoint slides are available [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1107&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Today gave two talks at the <a href="http://thedevcommunity.org/Events/PresentationList.aspx?id=16">New Hampshire Code Camp 2</a> in Concord, NH.</p>
<p>My talks were&nbsp;<a title="Demystifying the Windows Azure Cloud - defining the cloud, describing Microsoft's Windows Azure offering for the cloud, and discuss why developers should pay attention." href="http://thedevcommunity.org/Events/PresentationSummary.aspx?id=511&amp;pid=621" target="_blank">Azure Demystified &#8211; What is Cloud Computing? What is Windows Azure? and Why should we care?</a> followed by <a title="To fully leverage cloud computing we need to understand both the strengths and weaknesses of the cloud. In this talk, we will demonstrate how the strengths and weaknesses of the cloud map naturally into specific programming practices in Windows Azure. We will focus on Azure Roles and Queues as enabling technologies, show how to combine them using cloud-friendly design patterns, and how it becomes possible for mere mortals to build reliable applications that also scale. The concepts discussed in this talk are relevant for developers and architects building systems for the cloud today, or who want to be prepared to move to the cloud in the future." href="http://thedevcommunity.org/Events/PresentationSummary.aspx?id=510&amp;pid=620" target="_blank">Two Roles and a Queue &#8211; The most important design pattern for Windows Azure Cloud apps</a>.</p>
<p>The PowerPoint slides are available right here:</p>
<ul>
<li>Intro talk &#8211; <a href="http://codingoutloud.files.wordpress.com/2010/06/bill-wilder-intro-to-cloud-computing-with-windows-azure-nh-code-camp-05-june-2010.pptx">bill-wilder-intro-to-cloud-computing-with-windows-azure-nh-code-camp-05-june-2010</a></li>
<li>More in-depth talk on the Programming Model &#8211; <a href="http://codingoutloud.files.wordpress.com/2010/06/bill-wilder-roles-and-queues-nh-code-camp-05-june-2010.pptx">bill-wilder-roles-and-queues-nh-code-camp-05-June-2010</a></li>
</ul>
<p>Also plugged the <a href="http://bostonazure.org">Boston Azure User Group</a> to those attending my talks! Hope to see some of you at NERD in Cambridge, MA for talks and hands-on-coding sessions. Details always at <strong><a href="http://bostonazure.org">bostonazure.org</a></strong>.</p>
<p><a href="http://bostonazure.org/"><img class="alignnone size-full wp-image-1111" title="bostonazure-logo" alt="" src="http://codingoutloud.files.wordpress.com/2010/06/bostonazure-logo.png?w=160&#038;h=30" width="160" height="30"/></a></p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/events/bill-gave-a-talk/'>Bill gave a talk</a>, <a href='http://blog.codingoutloud.com/category/cloud-computing/'>Cloud Computing</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/1107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/1107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/1107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/1107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/1107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/1107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/1107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/1107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/1107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/1107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/1107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/1107/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/1107/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/1107/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=1107&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/06/05/two-azure-talks-at-new-hampshire-code-camp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/06/bostonazure-logo.png" medium="image">
			<media:title type="html">bostonazure-logo</media:title>
		</media:content>
	</item>
		<item>
		<title>Introducing the Boston Azure Project</title>
		<link>http://blog.codingoutloud.com/2010/06/02/introducing-the-boston-azure-project/</link>
		<comments>http://blog.codingoutloud.com/2010/06/02/introducing-the-boston-azure-project/#comments</comments>
		<pubDate>Thu, 03 Jun 2010 03:28:58 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Boston Azure User Group]]></category>
		<category><![CDATA[BostonAzure.org web site dev]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[Web development on bostonazure.org]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[oss]]></category>
		<category><![CDATA[foss]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=983</guid>
		<description><![CDATA[Cloud Computing on Microsoft&#8217;s Windows Azure platform is still new, but will be big. I believe that. That believe fueled my interest in starting the Boston Azure cloud computing user group (henceforth in this blog post, simply &#8220;Boston Azure&#8221;) back in the fall, even before Azure was released. Boston Azure is a cloud computing community [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=983&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Cloud Computing on Microsoft&#8217;s Windows Azure platform is still new, but will be big. I believe that. That believe fueled my interest in starting the <a href="http://bostonazure.org/home/about">Boston Azure cloud computing user group</a> (henceforth in this blog post, simply &#8220;Boston Azure&#8221;) back in the fall, even before Azure was released. Boston Azure is a cloud computing <em>community group</em> focused on <em>learning about Azure</em>.</p>
<p>Currently Boston Azure meets monthly on the 4th Thursday of the month in Cambridge, MA in the USA. This is an in-person meeting. I have received a loud and clear vibe from the Boston Azure membership that there is a thirst for more hands-on stuff. That was fueled further first by the hands-on Azure SDK meeting we held April 29, then again by the all-day Firestarter held May 8. But we need more. So, I had this idea for an <strong>ongoing community coding project that we can hack on together at Boston Azure meetings and other times</strong>&#8230; I bounced the idea off the community at the May meeting&#8230; since I received a really positive response, I now officially declare I plan to go ahead with it&#8230;</p>
<h1>Introducing the Boston Azure Project</h1>
<h2>Why are we doing this Project?</h2>
<p>The community wants to code. There is a desire to learn a lot about programming in Windows Azure &#8211; and what better way to get really good at programming Windows Azure <em>than by programming Windows Azure</em>.</p>
<blockquote><p>The <strong><em>primary goal</em></strong> of the project is to learn &#8211; to get good &#8211; <em>really good </em>- at Windows Azure.</p></blockquote>
<h2>How will the Project work?</h2>
<p>To be hands-on, we need a project&#8230; so here&#8217;s a project to provide us with focus:</p>
<blockquote><p><strong>We shall build a &#8220;gently over-engineered&#8221; version of bostonazure.org.</strong></p></blockquote>
<p>This &#8220;gently over-engineered&#8221; version of bostonazure.org:</p>
<p>(a) will provide a productive environment where participants (<em>developers and otherwise</em>) can learn about Azure through building a real-world application by contributing directly to the project (<em>through code, design, ideas, testing, etc., &#8230;</em>), and</p>
<p>(b) will do so by taking maximum advantage of the technology in the Windows Azure platform in the advancement of the bostonazure.org web site (<em>though thinking of it as &#8220;just a web site&#8221; is limiting &#8211; there is nothing stopping us from, say: adding an API; exporting OData or RSS feeds; being mobile-friendly for our visitors with iPhone, Android, and Windows Phone 7 devices; etc.</em>), and</p>
<p>(c) will serve the collaboration and communication needs of the Boston Azure community, and</p>
<p>(d) will provide an opportunity for a little fun, meet other interesting people, and enhance our skills through sharing knowledge and learning from each other.</p>
<h3>When will we code?</h3>
<p>We will reserve time at Boston Azure meetings so we can collaborate in-person on a monthly basis. Participants are also free to hack at other times as well, of course.</p>
<h3>Wait a second&#8230; Does it make sense to port a little web site like bostonazure.org to Azure?</h3>
<p>It does not make sense &#8211; not in isolation. Go ahead and crunch the numbers on <a href="http://www.microsoft.com/windowsazure/pricing/">Windows Azure pricing</a> and compare with an <a href="http://discountasp.net/">ISP-hosted solution</a>. However, this is the &#8220;gently over-engineered&#8221; part: we are doing it this way to show off the capabilities of Windows Azure and learn a bunch in the process.</p>
<h2>What is the output of the Project?</h2>
<blockquote><p>This project will be feature rich, easy to use, accessible, flexible&#8230; and <strong>open source</strong>.</p></blockquote>
<p>Keep in mind: Since bostonazure.org is the web presence for Boston Azure community&#8230;</p>
<blockquote><p><strong>It Has To Work!</strong></p></blockquote>
<p>This project is for <em><strong>and by</strong></em> the community.</p>
<blockquote><p><strong>Anyone can contribute</strong> &#8211; at any seniority level, with any skill set, with many possible roles (not just developers).</p></blockquote>
<p>Then how do we reconcile <em><strong>anyone can contribute</strong></em> with <em><strong>it has to work</strong></em>? The community process needs to be able to make the code work before we put it into production. We <em>have to</em> make this work. And we will.</p>
<p>So, now you&#8217;ve heard it all &#8211; the whole idea &#8211; at least the Big Picture. I will post more details later, but for now that&#8217;s it.</p>
<h2>Next Steps</h2>
<p><strong>Please contact me </strong>(on <a href="http://twitter.com/codingoutloud">twitter</a> or by comment to this blog post or by email) if you want to be one of the very first participants &#8211; I would like a couple of folks to be in a &#8220;private beta&#8221; to get some details squared away before I make the CodePlex site public.</p>
<p>Update 23-June-2010: The project is now live on CodePlex at <a href="http://bostonazure.codeplex.com">bostonazure.codeplex.com</a>.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/boston-azure-user-group/'>Boston Azure User Group</a>, <a href='http://blog.codingoutloud.com/category/programming/bostonazure-org-web-site-dev/'>BostonAzure.org web site dev</a>, <a href='http://blog.codingoutloud.com/category/open-source-2/'>Open Source</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>, <a href='http://blog.codingoutloud.com/category/software-engineering/'>Software Engineering</a>, <a href='http://blog.codingoutloud.com/category/programming/web-development-on-bostonazure-org/'>Web development on bostonazure.org</a> Tagged: <a href='http://blog.codingoutloud.com/tag/foss/'>foss</a>, <a href='http://blog.codingoutloud.com/tag/open-source/'>open source</a>, <a href='http://blog.codingoutloud.com/tag/oss/'>oss</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/983/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/983/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/983/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/983/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/983/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/983/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/983/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/983/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/983/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/983/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/983/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/983/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/983/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/983/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=983&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/06/02/introducing-the-boston-azure-project/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Fermat&#8217;s Last Theorem is safe</title>
		<link>http://blog.codingoutloud.com/2010/06/02/fermats-last-theorem-is-safe/</link>
		<comments>http://blog.codingoutloud.com/2010/06/02/fermats-last-theorem-is-safe/#comments</comments>
		<pubDate>Thu, 03 Jun 2010 01:33:07 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Silliness]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=45</guid>
		<description><![CDATA[I saw on twitter this morning a long time ago [it was a long time ago when I wrote this post but didn't publish it] (from Jeff Atwood, of Coding Horror blog and Stack Overflow fame) the following elegantly and concisely stated counter-example that would &#8211; if true &#8211; disprove perhaps the most famous of mathematical [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=45&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I saw on twitter <span style="text-decoration:line-through;">this morning</span> a long time ago <em>[it was a long time ago when I wrote this post but didn't publish it]</em> (from Jeff Atwood, of <a title="Coding Horror blog" href="http://www.codinghorror.com/blog/">Coding Horror</a> blog and <a title="Stack Overflow site" href="http://stackoverflow.com/faq">Stack Overflow</a> fame) the following elegantly and concisely stated counter-example that would &#8211; if true &#8211; disprove perhaps the most <a title="A comment in the margin" href="http://en.wikipedia.org/wiki/Fermat%27s_last_theorem#Fermat.27s_Last_Theorem_from_a_comment_in_a_margin">famous</a> of mathematical theorems, <a title="Fermat's Last Theorem" href="http://en.wikipedia.org/wiki/Fermat%27s_last_theorem">Fermat&#8217;s Last Theorem</a> (FLT):</p>
<p><span class="entry-content">1782^12 + 1841^12 = 1922^12</span></p>
<p><span class="entry-content">Wow! A counter-example for FLT. A theorem I&#8217;ve known about since I was a kid. One counter-example is all it takes to disprove the whole deal. </span></p>
<p><span class="entry-content">Fermat&#8217;s theorem states that </span><span class="entry-content">the equation <em>a</em><sup><em>n</em></sup> + <em>b</em><sup><em>n</em></sup> = <em>c</em><sup><em>n</em></sup> has no solutions for integer <em>n</em> &gt; 2, and integers <em>a</em>, <em>b</em>, and <em>c</em> not equal to zero. For <em>n</em> = 2 we have many solutions (Pythagorean triples), but none for <em>n</em> &gt; 2. Nor should we, according to English mathematician </span><span class="entry-content"><a href="http://en.wikipedia.org/wiki/Andrew_Wiles">Andrew Wiles</a>, who proved FLT in 1995.</span></p>
<p><span class="entry-content">Until now. Or do we? The equation Jeff posted is a little awkward to validate since most calculators cannot handle numbers this size at full precision. </span>They appear equal with a normal calculator &#8211; due to precision limits (round-off errors). Same problem with Excel.</p>
<p><span class="entry-content">So, since I&#8217;ve recently started playing with F#, I put together a trivial F# program (included below) to show the math at full precision, with the following results:</span></p>
<p><span class="entry-content">1782^12 + 1841^12 = </span><span class="entry-content"><strong>254121025</strong>8614589176288669958142428526657<br />
and<br />
1922^12 = <strong>254121025</strong>9314801410819278649643651567616<br />
which differ by<br />
</span><span class="entry-content">700212234530608691501223040959</span></p>
<p><span class="entry-content">So Fermat is safe. Saved by F#. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  But don&#8217;t feel bad if you fell for it &#8211; just be glad you knew what it meant. Bonus if  you noticed it on <a href="http://www.simpsonschannel.com/2006/06/178212-184112-springfield-theory/">The Simpsons</a> or <a href="http://www.wired.com/entertainment/hollywood/magazine/15-12/ff_futurama_geekiestshow">Futurama</a>.</span></p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>, <a href='http://blog.codingoutloud.com/category/essay/silliness/'>Silliness</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/45/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/45/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/45/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=45&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/06/02/fermats-last-theorem-is-safe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Boston Azure Firestarter Wrap Up</title>
		<link>http://blog.codingoutloud.com/2010/05/22/boston-azure-firestarter-wrap-up/</link>
		<comments>http://blog.codingoutloud.com/2010/05/22/boston-azure-firestarter-wrap-up/#comments</comments>
		<pubDate>Sat, 22 May 2010 21:01:43 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Trip Report]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=981</guid>
		<description><![CDATA[Boston Azure Firestarter a Success! We had 60-something folks attend the Boston Azure Firestarter (more photos) on May 8, 2010 in Cambridge, MA. This event provided both talks about important Azure concepts and hands-on-roll-up-your-sleeves-and-write-some-code Labs. Yes, attendees brought laptops! Feedback was positive. Many thanks to all the folks who helped make this event possible. This [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=981&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1><a href="http://codingoutloud.files.wordpress.com/2010/05/pict0195.jpg"></a>Boston Azure Firestarter a Success!</h1>
<p>We had 60-something folks attend the <a href="http://bostonazure.org/firestarter">Boston Azure Firestarter</a> (<a href="http://bostonazure.org/firestarter">more photos</a>) on May 8, 2010 in Cambridge, MA. This event provided both talks about important Azure concepts and hands-on-roll-up-your-sleeves-and-write-some-code Labs. Yes, attendees brought laptops! Feedback was positive. Many thanks to all the folks who helped make this event possible. This was a <a href="http://bostonazure.org">Boston Azure cloud computing user group</a> event, supported by and hosted at Microsoft.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/pict0150.jpg"><img class="alignnone size-thumbnail wp-image-1025" title="Checking in at Registration" src="http://codingoutloud.files.wordpress.com/2010/05/pict0150.jpg?w=112&#038;h=150" alt="" width="112" height="150" /></a></p>
<h2>Many Thanks!</h2>
<p>Those who helped prepare for the event, work the sign-in desk, help with technical problems, and handle the pair-programmer matching service included <a href="http://twitter.com/nazik_huq">Nazik Huq</a>, <a href="http://www.purposefulclouds.com/about-us">Chander Khanna</a>, <a href="http://twitter.com/zizzp">Joan Linskey</a>, and <a href="http://twitter.com/squdgy">Maura Wilder</a>. <a href="http://blogs.msdn.com/jimoneil/">Jim O&#8217;Neil</a> and <a href="http://blogs.msdn.com/cbowen/">Chris Bowen</a> (our East Coast Microsoft Developer Evangelists) were also on hand for trouble-shooting and general support and help.</p>
<p>  <a href="http://codingoutloud.files.wordpress.com/2010/05/pict0182.jpg"><img class="alignnone size-medium wp-image-1034" title="Attendees ready for action" src="http://codingoutloud.files.wordpress.com/2010/05/pict0182.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a></p>
<p>Here was our speaker lineup:</p>
<ol>
<li><a href="http://www.davidaiken.com/">David</a> <a href="http://twitter.com/thedavidaiken">Aiken</a> from Microsoft&#8217;s Windows Azure team came from the left-coast in Redmond to the right-coast in Boston to keynote the event. David gave many demos, a couple of which were <a href="http://myAzureStorage.com">My Azure Storage</a> and his new <a href="http://hmbl.me">URL shortening service hmbl.me</a>. <a href="http://codingoutloud.files.wordpress.com/2010/05/pict0168.jpg"><img class="alignnone size-medium wp-image-1030" title="David Aiken demoing and explaining Azure" src="http://codingoutloud.files.wordpress.com/2010/05/pict0168.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a><br />
David&#8217;s keynote was followed by:</li>
<li><a href="http://blog.codingoutloud.com/about/">Bill Wilder</a>: Roles and Queues talk + lab (<a href="http://hmbl.me/1OHBMZ">http://hmbl.me/1OHBMZ</a>) <a href="http://codingoutloud.files.wordpress.com/2010/05/pict0179.jpg"><img class="alignnone size-thumbnail wp-image-1033" title="Bill Wilder explaining Azure Roles and Queues" src="http://codingoutloud.files.wordpress.com/2010/05/pict0179.jpg?w=150&#038;h=112" alt="" width="150" height="112" /></a><a href="http://codingoutloud.files.wordpress.com/2010/05/pict0179.jpg"></a></li>
<li><a href="http://benday.com">Ben Day</a>: Azure Storage + lab<br />
<a href="http://codingoutloud.files.wordpress.com/2010/05/benday-azure-storage1.jpg"><img class="alignnone size-medium wp-image-1056" title="Ben Day makes a point about Azure Storage" src="http://codingoutloud.files.wordpress.com/2010/05/benday-azure-storage1.jpg?w=300&#038;h=199" alt="" width="300" height="199" /></a></li>
<li><a href="http://www.novicksoftware.com/">Andy Novick</a>: SQL Azure + lab (<a href="http://hmbl.me/1H46PK">http://hmbl.me/1H46PK</a>) <a href="http://codingoutloud.files.wordpress.com/2010/05/pict0185.jpg"><img class="alignnone size-thumbnail wp-image-1035" title="Andy Novick making a point on SQL Azure" src="http://codingoutloud.files.wordpress.com/2010/05/pict0185.jpg?w=150&#038;h=112" alt="" width="150" height="112" /></a><a href="http://codingoutloud.files.wordpress.com/2010/05/pict0187.jpg"></a><a href="http://codingoutloud.files.wordpress.com/2010/05/pict0185.jpg"></a></li>
<li><a href="http://blogs.msdn.com/jimoneil/">Jim O&#8217;Neil</a>: <a href="http://www.microsoft.com/windowsazure/dallas/">Dallas</a> and <a href="http://www.odata.org/">OData</a> (<a href="http://hmbl.me/1OHC5W">http://hmbl.me/1OHC5W</a>) <a href="http://codingoutloud.files.wordpress.com/2010/05/pict0192.jpg"><img class="alignnone size-thumbnail wp-image-1037" title="Jim O'Neil on Dallas" src="http://codingoutloud.files.wordpress.com/2010/05/pict0192.jpg?w=150&#038;h=112" alt="" width="150" height="112" /></a><a href="http://codingoutloud.files.wordpress.com/2010/05/pict0192.jpg"></a></li>
<li>Panel Q&amp;A (in the order shown in photo below): Mark Eisenberg (Microsoft), <a href="http://blog.codingoutloud.com/about/">Bill Wilder</a>, <a href="http://benday.com">Ben Day</a>, <a href="http://jasonhaley.com/blog/">Jason Haley</a>, and <a href="http://blogs.msdn.com/jimoneil/">Jim O&#8217;Neil</a><br />
<a href="http://codingoutloud.files.wordpress.com/2010/05/pict0195.jpg"><img class="alignnone size-medium wp-image-1038" title="Q&amp;A Panel at the end of the day" src="http://codingoutloud.files.wordpress.com/2010/05/pict0195.jpg?w=300&#038;h=225" alt="" width="300" height="225" /></a><a href="http://codingoutloud.files.wordpress.com/2010/05/pict0195.jpg"></a></li>
</ol>
<p>After hours, a smaller group unwound at the sports bar over at the Marriott. This included Jim O&#8217;Neil, Maura Wilder, Joan Linskey, Bill Wilder, Sri from New Jersey, (okay, other names are vague!) &#8230;</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/boston-azure-user-group/'>Boston Azure User Group</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>, <a href='http://blog.codingoutloud.com/category/events/trip-report/'>Trip Report</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/981/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/981/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/981/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/981/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/981/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/981/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/981/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/981/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/981/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/981/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/981/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/981/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/981/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/981/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=981&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/05/22/boston-azure-firestarter-wrap-up/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/pict0150.jpg?w=112" medium="image">
			<media:title type="html">Checking in at Registration</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/pict0182.jpg?w=300" medium="image">
			<media:title type="html">Attendees ready for action</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/pict0168.jpg?w=300" medium="image">
			<media:title type="html">David Aiken demoing and explaining Azure</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/pict0179.jpg?w=150" medium="image">
			<media:title type="html">Bill Wilder explaining Azure Roles and Queues</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/benday-azure-storage1.jpg?w=300" medium="image">
			<media:title type="html">Ben Day makes a point about Azure Storage</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/pict0185.jpg?w=150" medium="image">
			<media:title type="html">Andy Novick making a point on SQL Azure</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/pict0192.jpg?w=150" medium="image">
			<media:title type="html">Jim O'Neil on Dallas</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/pict0195.jpg?w=300" medium="image">
			<media:title type="html">Q&#38;A Panel at the end of the day</media:title>
		</media:content>
	</item>
		<item>
		<title>Two Roles and a Queue &#8211; Creating an Azure Service with Web and Worker Roles Communicating through a Queue</title>
		<link>http://blog.codingoutloud.com/2010/05/08/two-roles-and-a-queue-creating-an-azure-service-with-web-and-worker-roles-communicating-through-a-queue/</link>
		<comments>http://blog.codingoutloud.com/2010/05/08/two-roles-and-a-queue-creating-an-azure-service-with-web-and-worker-roles-communicating-through-a-queue/#comments</comments>
		<pubDate>Sat, 08 May 2010 07:00:20 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Bill gave a talk]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Step-by-Step]]></category>
		<category><![CDATA[Windows Azure How To]]></category>

		<guid isPermaLink="false">https://codingoutloud.wordpress.com/?p=976</guid>
		<description><![CDATA[Two Roles and a Queue Lab from Boston Azure Firestarter At the Firestarter event on May 8, 2010, I spoke about Roles and Queues and worked through a coding lab on same. The final code is available in a zip file. The Boston Azure Firestarter &#8211; Bill Wilder &#8211; Roles and Queues deck can be [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=976&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Two Roles and a Queue Lab from <a href="http://bostonazure.org/firestarter">Boston Azure Firestarter</a></h2>
<p>At the Firestarter event on May 8, 2010, I spoke about Roles and Queues and worked through a coding lab on same. The final code is available in a <a href="http://bostonazure.org/files/RolesAndQueuesSampleProject.zip">zip file</a>. The <a href="http://codingoutloud.files.wordpress.com/2010/05/boston-azure-firestarter-bill-wilder-roles-and-queues1.pptx">Boston Azure Firestarter &#8211; Bill Wilder &#8211; Roles and Queues</a> deck can be downloaded &#8211; though since there were so many questions we didn&#8217;t get to covering a number many of the slides! &#8211; this was a hot topic!</p>
<p><strong><span style="color:#0000ff;">The remainder of this post contains the narrative for the LAB we did as a group at the Firestarter.</span></strong> It probably will not stand alone super well, but may be of interest to some folks, so I&#8217;ve posted it.</p>
<ul>
<li>The TEMPORARILY Running Visualizer: <a href="http://baugfirestarter.cloudapp.net/">http://baugfirestarter.cloudapp.net</a><a href="http://baugfirestarter.cloudapp.net/">/</a></li>
<li>The TEMPORARILY Running Roles and Queues Sample: <a href="http://bostonazuresample.cloudapp.net/">http://bostonazuresample.cloudapp.net</a><a href="http://bostonazuresample.cloudapp.net/">/</a></li>
<li>These are &#8220;temporary&#8221; since the tokens for the accounts they are running expire soon (mid/late May or early June); the live instances will automatically stop working at that time.</li>
</ul>
<p>The following procedure assumes Microsoft Visual Web Developer 2010 Express on Windows 7. The same general steps apply to Visual Studio 2008, Visual Studio 2010, and Web Developer 2008 Express versions, though details will vary.</p>
<h3>0. Open Microsoft Visual Web Developer 2010 Express and select File | New Project</h3>
<h3>1. Select Windows Azure Service and click Okay:</h3>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image61.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image6_thumb.png?w=644&#038;h=394" border="0" alt="image" width="644" height="394" /></a></p>
<p>If you have trouble finding the Windows Azure Service template, you can type “Azure” into the search box in the top-right to narrow the options. Also, if you don’t have the Windows Azure SDK installed, you will need to install that before proceeding – but there will be a link provided by Visual Web Developer 2010 Express that will direct you to the right page. Install it if you need to and try again up to this point.</p>
<h3>2. You will see a special dialog box for <strong>New Cloud Service Project </strong>from which you will add both a <strong>Web Role</strong>…</h3>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image91.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image9_thumb.png?w=644&#038;h=405" border="0" alt="image" width="644" height="405" /></a></p>
<p>and a <strong>Worker Role</strong>…</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image151.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image15_thumb.png?w=644&#038;h=405" border="0" alt="image" width="644" height="405" /></a></p>
<p>Verify that both <strong>WebRole1 </strong>and <strong>WorkerRole1 </strong>are in the list on the right side, then click <strong>OK</strong>.</p>
<h3>3. Before you begin making code changes, you can run your new application. You can run it in the debugger by pressing the <strong>F5 key</strong>.</h3>
<p>You will probably get the following <strong>error message</strong>:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image211.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image21_thumb.png?w=644&#038;h=272" border="0" alt="image" width="644" height="272" /></a></p>
<p>The error message is telling you that you need to close Visual Web Developer 2010 Express and restart it with elevated privileges.</p>
<h3>4. To start any Windows program with elevated privileges , right-click on the application then choose <strong>Run as administrator</strong> from the pop-up menu:</h3>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image241.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image24_thumb.png?w=281&#038;h=484" border="0" alt="image" width="281" height="484" /></a></p>
<p>Before it obeys your request to run as administrator, Windows 7 will double-check by popping up a security dialog.</p>
<p>Now you can reload your project and try running it again. The app should run and you should see a blank web browser page.</p>
<h3>5. Once you’ve proven your application runs, it is time to make some changes.</h3>
<p>Make the code changes indicated for the <strong><em>Two Roles and A Queue</em></strong> Lab in <strong>CODING STEP 1</strong>.</p>
<p>Note: the &#8220;coding step 1&#8243; and future coding steps were handouts (paper!) at the Boston Azure Firestarter on Sat May 8, 2010. In lieue of reproducing them here, I will post the final solution.</p>
<p>This lab will establish some WebRole basics.</p>
<h3>6. When done applying CODING STEP 1, run the application again.</h3>
<h3>7. After demonstrating your application runs, Deploy it to Azure.</h3>
<p>This is a simple application so it helps us get through the initial deployment with minimal challenges.</p>
<h3>8. Apply CODING STEP 2 – Add Queue (in local dev fabric storage)</h3>
<h3>9. CODING STEP 3 – Add “DumpQueue” method and “FirestarterWebRoleHelpers.cs”</h3>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image301.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image30_thumb.png?w=644&#038;h=412" border="0" alt="image" width="644" height="412" /></a></p>
<p>You will get the following dialog box – type “code file” into the search area on the top-right, select Visual C# Code File, and type in the filename “FirestarterWebRoleHelpers.cs” as shown and click <strong>Add</strong>:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image361.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image36_thumb.png?w=644&#038;h=394" border="0" alt="image" width="644" height="394" /></a></p>
<p>The new file “FirestarterWebRoleHelpers.cs” will open in the editor. It should be empty to begin with. Cut and Paste in the contents from <a href="http://bostonazure.org/files/FirestarterWebRoleHelpers.cs.txt"><strong>http://bostonazure.org/files/FirestarterWebRoleHelpers.cs.txt</strong></a>.</p>
<p>Why? <em>The contents of this file has little to do with Windows Azure, so we don’t want to focus on it. But we want to use some utility routines from it so that we can focus on Azure concepts.</em></p>
<h3>10. CODING STEP 4 – Adding Cloud-based Queue</h3>
<p>First we need to configure the cloud.</p>
<p>Go to <a href="http://windows.azure.com">http://windows.azure.com</a> and log in. You may wish to consult instructions on redeeming a token at <a title="http://blog.codingoutloud.com/2010/05/06/redeeming-an-azure-token/" href="http://blog.codingoutloud.com/2010/05/06/redeeming-an-azure-token/">http://blog.codingoutloud.com/2010/05/06/redeeming-an-azure-token/</a> or <a title="http://bit.ly/dgCuMn " href="http://bit.ly/dgCuMn">http://bit.ly/dgCuMn </a></p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image421.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image42_thumb.png?w=644&#038;h=330" border="0" alt="image" width="644" height="330" /></a></p>
<p>Your storage account has a subdomain, as circled above. This – and the Access Key – need to be added to your Web Role and Worker Role so that they can access (and share the same queue within) cloud-hosted storage.</p>
<p>Right-click in Visual Studio on the WebRole1, select Properties, and select the Settings tab on the left. It will appear something like this:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image451.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image45_thumb.png?w=644&#038;h=362" border="0" alt="image" width="644" height="362" /></a></p>
<p>Now click on <strong>Add Setting</strong> and give the new item the name “<strong>DataConnectionString</strong>”, the Type “Connection String”, and click on the “…”</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image481.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image48_thumb.png?w=644&#038;h=337" border="0" alt="image" width="644" height="337" /></a></p>
<p>This will bring up the Storage Connection String editor – fill in the fields – where your “<strong>Account name</strong>” is the same as the subdomain shown on the Storage Service (see above – in that screen shot it is “bostonazurequeue”) and the Key can be either Primary or Secondary Access Key (from same area in the Azure Portal):</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image511.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image51_thumb.png?w=644&#038;h=404" border="0" alt="image" width="644" height="404" /></a></p>
<p>You are <strong>NOT DONE </strong>in the screen yet. Also add a Setting named “StatusUpdateQueueName”– of Type “String” – with Value “updatemessagequeue1” as follows:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image57.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image57_thumb.png?w=644&#038;h=337" border="0" alt="image" width="644" height="337" /></a></p>
<p>Click <strong>OK.</strong></p>
<h3>11. Now REPEAT BOTH STEPS for WorkerRole1.</h3>
<p>Yes, add both Settings also to WorkerRole1 – they both will end up with the same settings. <em>You can “cheat” with cut and paste in the .cscfg and .csdef files.</em></p>
<h3>12. Enable Cloud-hosted Queue from Web Role</h3>
<p>Now you are ready go on to make the code changes to use this new configuration item.</p>
<p>Apply CODING STEP 4: Enabling the Cloud-hosted Queue from the Web Role</p>
<p>Now run your application using cloud storage for the queue:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image60.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image60_thumb.png?w=644&#038;h=247" border="0" alt="image" width="644" height="247" /></a></p>
<p>Note that you can also examine the contents of the queue online by visiting <a href="http://myAzureStorage.com">http://myAzureStorage.com</a> and providing the same credentials you used when setting up the DataConnectionString above for both the Web and Worker roles.</p>
<h3>13. Enable Cloud-hosted Queue from Worker Role</h3>
<p>Now you are ALMOST ready go on to make the code changes to use this new configuration item.</p>
<p>Before applying the coding, we need to add a project reference (otherwise you won’t be able to Resolve use of networking classes used in the FirestarterWorkerRoleHelpers.). In Visual Studio on the right side, under the Solution Explorer, <strong>right-click </strong>on the <strong>References element underneath WorkerRole1</strong> and select Add Reference, then from the .NET tab, select System.Web and click okay:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image63.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image63_thumb.png?w=571&#038;h=484" border="0" alt="image" width="571" height="484" /></a></p>
<p>Also, similar to step 9 above, add a new Code File called “FirestarterWorkerRoleHelpers.cs” to hold some additional needed (but not core to Azure) code.</p>
<p>The new file “FirestarterWorkerRoleHelpers.cs” will open in the editor. It should be empty to begin with. Cut and Paste in the contents from <a href="http://bostonazure.org/files/FirestarterWorkerRoleHelper.cs.txt"><strong>http://bostonazure.org/files/FirestarterWorkerRoleHelper.cs.txt</strong></a>.</p>
<p>Now you can apply Apply CODING STEP 5: Enabling the Cloud-hosted Queue from the Worker Role.</p>
<h3>14. Deploying to Staging Area in Cloud to Staging</h3>
<h3>15. Cutover from Staging to Production</h3>
<h3>16. Add in secret Twitter posting code from your Worker Role…</h3>
<p>Yes, this can be done by including a hash character (#) as part of the message you type into your web application.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/events/bill-gave-a-talk/'>Bill gave a talk</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>, <a href='http://blog.codingoutloud.com/category/step-by-step/'>Step-by-Step</a>, <a href='http://blog.codingoutloud.com/category/step-by-step/how-to/windows-azure-how-to/'>Windows Azure How To</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/976/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/976/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/976/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/976/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/976/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/976/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/976/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/976/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/976/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/976/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/976/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/976/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/976/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/976/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=976&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/05/08/two-roles-and-a-queue-creating-an-azure-service-with-web-and-worker-roles-communicating-through-a-queue/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image6_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image9_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image15_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image21_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image24_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image30_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image36_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image42_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image45_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image48_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image51_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image57_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image60_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image63_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>One Cause of Azure Error &#8211; One of the request inputs is out of range</title>
		<link>http://blog.codingoutloud.com/2010/05/06/azure-error-one-of-the-request-inputs-is-out-of-range/</link>
		<comments>http://blog.codingoutloud.com/2010/05/06/azure-error-one-of-the-request-inputs-is-out-of-range/#comments</comments>
		<pubDate>Fri, 07 May 2010 00:36:39 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=879</guid>
		<description><![CDATA[In making some innocuous seeming changes to working code in Windows Azure, I ran into an Exception when creating a Queue &#8211; and the cause was not at first obvious. The exception message was &#8220;One of the request inputs is out of range&#8221; and the inner exception message was &#8220;The remote server returned an error: [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=879&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In making some innocuous seeming changes to working code in Windows Azure, I ran into an Exception when creating a Queue &#8211; and the cause was not at first obvious. The exception message was &#8220;One of the request inputs is out of range&#8221; and the inner exception message was &#8220;The remote server returned an error: (400) Bad Request.&#8221;</p>
<h2>Illegal name causes &#8220;One of the request inputs is out of range&#8221;</h2>
<p>Here is the code &#8211; why might this Windows Azure code snippet throw an Exception on the call to <strong>queue.<a href="http://msdn.microsoft.com/en-us/library/microsoft.windowsazure.storageclient.cloudqueue.createifnotexist.aspx">CreateIfNotExist</a>()</strong>?</p>
<p><span style="font-family:Consolas;color:#2b91af;font-size:x-small;"><span style="font-family:Consolas;color:#2b91af;font-size:x-small;"><span style="font-family:Consolas;color:#2b91af;font-size:x-small;">CloudQueueClient</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;"> queueStorage = storageAccount.CreateCloudQueueClient();<br />
</span></span><span style="font-family:Consolas;color:#2b91af;font-size:x-small;"><span style="font-family:Consolas;color:#2b91af;font-size:x-small;"><span style="font-family:Consolas;color:#2b91af;font-size:x-small;">CloudQueue</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;"> queue = queueStorage.GetQueueReference(&#8220;My Queue&#8221;);<br />
</span></span><span style="font-family:Consolas;color:#0000ff;font-size:x-small;"><span style="font-family:Consolas;color:#0000ff;font-size:x-small;"><span style="font-family:Consolas;color:#0000ff;font-size:x-small;">bool</span></span></span><span style="font-family:Consolas;font-size:x-small;"><span style="font-family:Consolas;font-size:x-small;"> queueJustCreated = queue.CreateIfNotExist();</span></span></p>
<p>The answer lies in the name we are using for the queue. Since the name is just a string, I assumed it can be any string. It cannot be any string.</p>
<p>Experimentation suggests the rules for naming a queue include: (a) use only lower case letters, (b) digits are allowed anywhere, and (c) internal single hyphens are okay too, but (d) name should not contain any spaces (e) nor any punctuation (other than hyphen).</p>
<p>So there would be no problem with valid names like:</p>
<ul>
<li>myqueue</li>
<li>my-queue</li>
<li>myqueue-3</li>
</ul>
<p>But there would be problems with illegal names like:</p>
<ul>
<li>MyQueue</li>
<li>my queue</li>
<li>bill&#8217;squeue</li>
<li>-nogood</li>
<li>x-</li>
<li>not&#8212;quite</li>
<li>bad(name)</li>
</ul>
<p>There may be additional nuances to the rules I didn&#8217;t discover, of course. One way to test out possible names quickly is with the <a href="http://myAzureStorage.com">myAzureStorage</a> utility; just try to create a queue using the name and see if you get an error. Note that you can feed upper case chars to myAzureStorage but the created object will return with lower-case letter and will not cause an error.</p>
<p>Also, I only experimented with Queue names, but I <a href="http://uncyclopedia.wikia.com/wiki/Assume">assume</a> the same rules apply to Blobs and Tables. <em>Further research indicates this indeed is the case..</em><em>.</em></p>
<p>My challenge originally was to figure out why I got the Exception that was raised &#8211; that was the non-obvious part &#8211; the exception message did not tell me it was a problem with the name. <em>After I figured it out and experimented a bit, of course then I found the </em><a href="http://msdn.microsoft.com/en-us/library/dd135715.aspx"><em>documentation on allowed names</em></a><em> which supports my conclusions&#8230; and adds details like length of name and the fact that the name is required to be a legal DNS name.</em></p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/879/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/879/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/879/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=879&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/05/06/azure-error-one-of-the-request-inputs-is-out-of-range/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Redeeming an Azure Token</title>
		<link>http://blog.codingoutloud.com/2010/05/06/redeeming-an-azure-token/</link>
		<comments>http://blog.codingoutloud.com/2010/05/06/redeeming-an-azure-token/#comments</comments>
		<pubDate>Thu, 06 May 2010 19:40:32 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Windows Azure How To]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[Windows Azure]]></category>

		<guid isPermaLink="false">https://codingoutloud.wordpress.com/2010/05/06/redeeming-an-azure-token/</guid>
		<description><![CDATA[At some select events (like Boston Azure Firestarter, Boston Azure User Group hands-on meeting, or even Protein Folding with Azure @home), Microsoft sometimes provides tokens for participants who wish to try out Windows Azure for real &#8211; by deploying real bits into the cloud &#8211; deploying multiple instances of Web Roles and Worker Roles, using [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=929&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>At some select events (like <a href="http://bostonazure.org/firestarter">Boston Azure Firestarter</a>, <a href="http://bostonazure.org/Events/Upcoming">Boston Azure User Group</a> hands-on meeting, or even <a href="http://blogs.msdn.com/jimoneil/archive/2010/04/24/feeling-home-with-windows-azure-at-home.aspx">Protein Folding with Azure @home</a>), Microsoft sometimes provides tokens for participants who wish to try out Windows Azure for real &#8211; by deploying real bits into the cloud &#8211; deploying multiple instances of Web Roles and Worker Roles, using Queue for scaling, storing data and blobs in Azure Storage and exercising SQL Azure&#8230; Some of the tokens are good for up to 4 weeks – which is awesomely convenient for really kicking the tires on Azure if you are a developer. Which I am… Here is a little guidance on getting your account set up once you have a token in hand.</p>
<p>Note that you will be interacting with the <strong>Windows Azure Developer Portal</strong> (or Dev Portal for short) to redeem your token and establish your temporary account. The Dev Portal is useful to learn about and get to know.</p>
<p>1. First visit <a href="http://windows.azure.com">http://windows.azure.com</a> and log in with the provided credentials. Use the provided email address for your Windows Live ID.</p>
<p>(NOTE: If any of the images in this post are too small to read, click on them to see a larger version.)</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image43.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb43.png?w=244&#038;h=150" border="0" alt="image" width="244" height="150" /></a></p>
<p>2. You will see a screen like the following. Note the row with the light blue background; this background color only appears when your mouse is hovering there. Click on the Project Name that matches your token account name.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image44.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb44.png?w=244&#038;h=132" border="0" alt="image" width="244" height="132" /></a></p>
<p>(Notice that the account owner is <a href="mailto:“waaccts@microsoft.com">“waaccts@microsoft.com</a>” – this is because you are using a Token. Azure supports having an overall account that pays the bills, then sub-accounts for developers. This is an example.)</p>
<p>3.  Now you are in! You can proceed to review some of the help resources lists, or click around on any of the tabs to the left. But to create a new application that you can host on the Azure cloud, you can click on the “<strong>New Service</strong>” link next to the green “+” sign.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image45.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb45.png?w=244&#038;h=132" border="0" alt="image" width="244" height="132" /></a></p>
<p>4. After you choose “<strong>New Service</strong>” you will see the following. Note the two main options in the middle for <strong>Storage Account</strong> and <strong>Hosted Services</strong>.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image46.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb46.png?w=244&#038;h=132" border="0" alt="image" width="244" height="132" /></a> </p>
<p>Select <strong>Hosted Services</strong> to begin. Be sure to click on the words “Hosted Services” as opposed to the “Learn More” link, as they are different.</p>
<p>5. The next page will ask you for a name – this name will only be used to help you identify this service from a list in the developer portal, so don’t spend too much time coming up with the perfect name. You don’t need to provide anything for the Description.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image47.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb47.png?w=244&#038;h=132" border="0" alt="image" width="244" height="132" /></a></p>
<p>After providing a name, click <strong>Next</strong>.</p>
<p>6.  Now you are faced with a form where the choices you make actually do matter.  Here’s what&#8217; you’ll need to do:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image48.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb48.png?w=244&#038;h=164" border="0" alt="image" width="244" height="164" /></a></p>
<p>Type in a “<strong>Public Service Name</strong>” – this will be the Internet-visible sub-domain from which your deployed application will be visible. For example, if you choose “foo” then your Azure Service will live at <a href="http://foo.cloudapp.net">http://foo.cloudapp.net</a> after you publish it.</p>
<p>After you settle on a <strong>Public Service Name</strong> (using <strong>Check Availability</strong> button as need), you also need to select a Region. Pick the “anywhere” region in your continent (or closest to your continent) such as Anywhere US and click <strong>Create</strong>.</p>
<p>Here’s what mine looked like before I clicked <strong>Create</strong>:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image49.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb49.png?w=244&#038;h=164" border="0" alt="image" width="244" height="164" /></a></p>
<p>Now your Azure Service has been created.</p>
<p>7. You will see a screen inviting you to Deploy a Hosted Service Package. We won’t do that now (though you could if you had an application ready). Instead, we will create an Azure <strong>Storage Account</strong>. From here:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image50.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb50.png?w=244&#038;h=164" border="0" alt="image" width="244" height="164" /></a></p>
<p>Click on the “<strong>New Service</strong>” link which is near the top-left – below the large Windows Azure logo – and you will see the same screen you saw in step 4:</p>
<p> <a href="http://codingoutloud.files.wordpress.com/2010/05/image51.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb51.png?w=244&#038;h=164" border="0" alt="image" width="244" height="164" /></a></p>
<p>This time select <strong>Storage Account</strong> and you will see the following:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image52.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb52.png?w=244&#038;h=164" border="0" alt="image" width="244" height="164" /></a></p>
<p>Give it a name, as I did in screenshot, and click <strong>Next</strong>.</p>
<p>8. As in step 5, this is also an important choice, though not visible to humans visiting your site. You will need to know this address to program against it. Of course you can look it up in the Dev Portal at any time, but why not choose a logical name. Fill in the fields similar to step 5 – be sure to choose the same Region you chose with step 5 – and click <strong>Create</strong>.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image53.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb53.png?w=244&#038;h=164" border="0" alt="image" width="244" height="164" /></a></p>
<p>9. You are now ready to build and deploy Azure applications that use Web Roles, Worker Roles, and various kinds of storage.</p>
<p>You will need the keys shows to programmatically access your storage.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image54.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb54.png?w=244&#038;h=164" border="0" alt="image" width="244" height="164" /></a></p>
<p>You can always come back and look up the values of these keys, of course. Also, if a key is compromised, you can regenerate it easily, invalidating the prior one. There are two separate keys that can be used/invalidated independently. These keys are specific to this Storage Service you created; you can create more Storage Services with different keys and even use multiple of them together.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>, <a href='http://blog.codingoutloud.com/category/step-by-step/how-to/windows-azure-how-to/'>Windows Azure How To</a> Tagged: <a href='http://blog.codingoutloud.com/tag/azure/'>azure</a>, <a href='http://blog.codingoutloud.com/tag/windows-azure/'>Windows Azure</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/929/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/929/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/929/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/929/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/929/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/929/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/929/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/929/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/929/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/929/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/929/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/929/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/929/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/929/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=929&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/05/06/redeeming-an-azure-token/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb43.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb44.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb45.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb46.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb47.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb48.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb49.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb50.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb51.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb52.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb53.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb54.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Enabling IIS on Windows 7</title>
		<link>http://blog.codingoutloud.com/2010/05/04/enabling-iis-on-windows-7/</link>
		<comments>http://blog.codingoutloud.com/2010/05/04/enabling-iis-on-windows-7/#comments</comments>
		<pubDate>Wed, 05 May 2010 03:27:33 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=898</guid>
		<description><![CDATA[Azure developers running Windows 7 (and Vista should be similar) will want to enable IIS 7.5 on the desktop. This will make it possible to run the local development environment known as the Azure Dev Fabric. Five easy steps to Enable IIS 7.5 for Windows 7 Developers 1. Open Control Panel. From the Search Control [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=898&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Azure developers running Windows 7 (and Vista should be similar) will want to enable IIS 7.5 on the desktop. This will make it possible to run the local development environment known as the <a href="http://msdn.microsoft.com/en-us/library/dd179455.aspx">Azure Dev Fabric</a>.</p>
<h2>Five easy steps to Enable IIS 7.5 for Windows 7 Developers</h2>
<p>1. Open Control Panel. From the <em>Search Control Panel </em>search box in the top right, type in &#8220;turn windows features on or off&#8221; to show just this option. Click on the &#8220;Turn Windows features on or off&#8221; link underneath the &#8220;Programs and Features&#8221; heading.</p>
<p>This launches the Control Panel applet you will need.</p>
<p>Here are the Control Panel screens you will now see:</p>
<p><em>(If the graphics are too small for you, click on them to bring up a larger version.)</em></p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image23.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb23.png?w=244&#038;h=214" border="0" alt="image" width="244" height="214" /></a></p>
<p>Eventually it loads.</p>
<p>2. Once loaded, scroll down to Internet Information Services as shown below, and check the desired boxes (the one I chose are shown in the next two screen shots):</p>
<p><em>(If the graphics are too small for you, click on them to bring up a larger version.)</em></p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image24.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb24.png?w=145&#038;h=244" border="0" alt="image" width="145" height="244" /></a></p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image25.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb25.png?w=145&#038;h=244" border="0" alt="image" width="145" height="244" /></a></p>
<p>3. The hit okay and wait …</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image26.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb26.png?w=244&#038;h=126" border="0" alt="image" width="244" height="126" /></a></p>
<p>4. Once complete, you will see this browser window &#8211; note the yellow bar:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image27.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb27.png?w=244&#038;h=132" border="0" alt="image" width="244" height="132" /></a></p>
<p>5. You may want to select &#8220;Enable Intranet Settings&#8221; as shown below:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/05/image28.png"><img style="display:inline;border:0;" title="image" src="http://codingoutloud.files.wordpress.com/2010/05/image_thumb28.png?w=244&#038;h=139" border="0" alt="image" width="244" height="139" /></a></p>
<p><strong>Done!</strong></p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/898/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/898/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/898/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/898/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/898/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/898/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/898/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/898/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/898/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/898/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/898/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/898/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/898/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/898/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=898&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/05/04/enabling-iis-on-windows-7/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb23.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb24.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb25.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb26.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb27.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/05/image_thumb28.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Registration open for Boston Azure Firestarter May 8, 2010</title>
		<link>http://blog.codingoutloud.com/2010/04/08/registration-open-for-boston-azure-firestarter-may-8-2010/</link>
		<comments>http://blog.codingoutloud.com/2010/04/08/registration-open-for-boston-azure-firestarter-may-8-2010/#comments</comments>
		<pubDate>Fri, 09 Apr 2010 01:18:12 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[azure]]></category>
		<category><![CDATA[firestarter]]></category>
		<category><![CDATA[hands-on]]></category>
		<category><![CDATA[Windows Azure]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=744</guid>
		<description><![CDATA[On May 8, 2010 there will be a Firestarter event focused on learning about Microsoft&#8217;s Windows Azure Cloud Platform. This FREE, ALL-DAY, HANDS-ON, IN-PERSON event will be held at the Microsoft NERD building in Cambridge, Massachusetts. Here&#8217;s the idea&#8230; You show up in the morning curious about Cloud Computing and the Windows Azure platform&#8230; and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=744&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://codingoutloud.files.wordpress.com/2010/04/firestarter-logo.png"><img class="size-full wp-image-767" title="firestarter-logo" alt="Flaming Firestarter Logo" src="http://codingoutloud.files.wordpress.com/2010/04/firestarter-logo.png?w=327&#038;h=206" width="327" height="206"/></a></p>
<p>On May 8, 2010 there will be a Firestarter event focused on learning about Microsoft&#8217;s Windows Azure Cloud Platform. This <strong>FREE</strong>, <strong>ALL-DAY</strong>, <strong>HANDS-ON</strong>, <strong>IN-PERSON</strong> event will be held at the Microsoft NERD building in Cambridge, Massachusetts.</p>
<h2>Here&#8217;s the idea&#8230;</h2>
<blockquote><p>You show up in the morning curious about Cloud Computing and the Windows Azure platform&#8230; and you leave at the end of the day loaded up from a crash-course/deep-dive into Azure, including a series of Azure-specific technical talks, Azure-specific programming experience (and working code), and access to resources to continue into the future&#8230;</p></blockquote>
<h2>Registration is now open!</h2>
<p><a title="Boston Azure Firestarter" href="http://bostonazurefirestarter.eventbrite.com/" target="_self"><strong>Register at Eventbrite now</strong></a><strong>.</strong></p>
<h2>What will be covered?</h2>
<p>While we are still tweaking the schedule and exact contents, we didn&#8217;t want to delay opening registration. Rest assured the focus of the event is <strong>covering the most important Azure topics</strong> through a combination of <strong>informative talks</strong> and&nbsp;<strong>hands-on coding sessions</strong>.</p>
<p>We have some outstanding speakers lined up (including a keynote speaker we will announce soon).</p>
<p>More information on this community event &#8211; including a more complete/detailed schedule &#8211; will be updated progressively over the next few weeks on the&nbsp;<a href="http://bostonazure.org/firestarter/">web site of the <strong>Boston Azure</strong> cloud computing using group</a>.</p>
<h2>See you there!</h2>
<p><em>[image credit: Firestarter logo built based on </em><a href="http://shaedsofgrey.deviantart.com/art/fire-45734782?moodonly=1"><em>http://shaedsofgrey.deviantart.com/art/fire-45734782?moodonly=1</em></a><em>&nbsp;under </em><a href="http://creativecommons.org/licenses/by-nc/3.0/" rel="license" target="_blank"><em>Creative Commons Attribution-Noncommercial 3.0 License</em></a><em>.]</em></p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/boston-azure-user-group/'>Boston Azure User Group</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a> Tagged: <a href='http://blog.codingoutloud.com/tag/net/'>.net</a>, <a href='http://blog.codingoutloud.com/tag/azure/'>azure</a>, <a href='http://blog.codingoutloud.com/tag/firestarter/'>firestarter</a>, <a href='http://blog.codingoutloud.com/tag/hands-on/'>hands-on</a>, <a href='http://blog.codingoutloud.com/tag/windows-azure/'>Windows Azure</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/744/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=744&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/04/08/registration-open-for-boston-azure-firestarter-may-8-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/04/firestarter-logo.png" medium="image">
			<media:title type="html">firestarter-logo</media:title>
		</media:content>
	</item>
		<item>
		<title>At New England Code Camp #13, Gave Talks on Azure and Prism</title>
		<link>http://blog.codingoutloud.com/2010/03/27/at-new-england-code-camp-13-gave-talks-on-azure-and-prism/</link>
		<comments>http://blog.codingoutloud.com/2010/03/27/at-new-england-code-camp-13-gave-talks-on-azure-and-prism/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 22:05:34 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Bill gave a talk]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=712</guid>
		<description><![CDATA[At today&#8217;s New England Code Camp #13, I gave talks on Azure and Prism. 1. Azure Talk Title: Cloud Computing, Microsoft Style: What is Windows Azure and Why You Should Care: Slides: Intro to Cloud Computing with Windows Azure &#8211; NE Code Camp &#8211; 27-March-2010 Abstract / description 2. Prism Talk Title: Demystifying Prism for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=712&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>At today&#8217;s <a href="http://thedevcommunity.org/Events/PresentationList.aspx?id=15">New England Code Camp #13</a>, I gave talks on Azure and Prism.</p>
<h2>1. Azure Talk</h2>
<ul>
<li>
<h3>Title: Cloud Computing, Microsoft Style: What is Windows Azure and Why You Should Care:</h3>
</li>
<li>Slides: <a href="http://codingoutloud.files.wordpress.com/2010/03/intro-to-cloud-computing-with-windows-azure-ne-code-camp-27-march-20101.pptx">Intro to Cloud Computing with Windows Azure &#8211; NE Code Camp &#8211; 27-March-2010</a></li>
<li><a href="http://thedevcommunity.org/Events/PresentationSummary.aspx?id=475&amp;pid=576">Abstract / description</a></li>
</ul>
<h2>2. Prism Talk</h2>
<ul>
<li>
<h3>Title: Demystifying Prism for Silverlight &amp; WPF:</h3>
</li>
<li>Slides: <a href="http://codingoutloud.files.wordpress.com/2010/03/demystifying-prism-ne-code-camp-27-march-2010.ppt">Demystifying Prism &#8211; NE Code Camp &#8211; 27-March-2010</a></li>
<li><a href="http://thedevcommunity.org/Events/PresentationSummary.aspx?id=465&amp;pid=566">Abstract / description</a></li>
</ul>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/events/bill-gave-a-talk/'>Bill gave a talk</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/712/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=712&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/03/27/at-new-england-code-camp-13-gave-talks-on-azure-and-prism/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Intuit and Azure &#8211; Better Together</title>
		<link>http://blog.codingoutloud.com/2010/03/23/intuit-and-azure-better-together/</link>
		<comments>http://blog.codingoutloud.com/2010/03/23/intuit-and-azure-better-together/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 01:54:01 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=690</guid>
		<description><![CDATA[The March 25th Boston Azure cloud user group meeting line-up includes the following: 6:00 &#8211; 6:45 PM &#8211; LAPTOP TIME! &#8211; if your laptop is capable of running IIS 7.x, bring it and we&#8217;ll help you configure it so you can program against Windows Azure. If you are already configured, come for LAPTOP TIME anyway [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=690&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>The March 25th <a href="http://bostonazure.org/">Boston Azure</a> cloud user group meeting line-up includes the following:</h2>
<p>6:00 &#8211; 6:45 PM &#8211; <strong>LAPTOP TIME!</strong> &#8211; if your <a href="http://blog.codingoutloud.com/2010/03/22/getting-started-with-windows-azure-development/">laptop is capable of running IIS 7.x</a>, bring it and we&#8217;ll help you configure it so you can program against Windows Azure. If you are already configured, come for LAPTOP TIME anyway and help out the others &#8211; or submit an entry to the Azure Code Project contest.</p>
<p>(pizza + salad will arrive during LAPTOP TIME)</p>
<p>6:45 &#8211; 7:00 &#8211; <strong>MAIN MEETING BEGINS with the Azure Update from Mark Eisenberg of Microsoft</strong>. Any questions about what&#8217;s happening with Azure? Want to hear some of the recent announcements? What&#8217;s moving and shaking in the Azure world? Join us at 6:45 to stay plugged in.</p>
<p>7:00 &#8211; 8:15 &#8211; <strong>INTUIT PARTNER PLATFORM</strong> &#8211; <a href="http://intuit.com/">Intuit</a>&#8216;s <a href="http://alexbarnett.net/blog/">Alex Barnett</a> (Group Manager for Developer Relations) and his colleague <a href="http://twitter.com/JarredKeneally">Jarred Keneally</a> (Developer Relations Engineer) will talk about the <a href="http://alexbarnett.net/blog/archive/2010/01/20/connecting-clouds-intuit-partner-platform-and-windows-azure.aspx">Intuit Partner Platform</a>, the fantastic synergy with Windows Azure, the recently announced agreement between Microsoft and Intuit, and the opportunity for developers.</p>
<p>8:15 &#8211; 8:30 &#8211; WRAP UP &#8211; Boston Azure announcements, SWAG/Give-Aways, and Update on the Azure Firestarter we will be hosting on Saturday May 8th at NERD (all day learning event).</p>
<p><a href="http://bostonazure.org/#RSVP">Please RSVP</a> to help us with the list for front-desk security and to make sure we order enough pizza and salad. Hope to see you there!</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/boston-azure-user-group/'>Boston Azure User Group</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/690/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=690&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/03/23/intuit-and-azure-better-together/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Getting Started with Windows Azure Development</title>
		<link>http://blog.codingoutloud.com/2010/03/22/getting-started-with-windows-azure-development/</link>
		<comments>http://blog.codingoutloud.com/2010/03/22/getting-started-with-windows-azure-development/#comments</comments>
		<pubDate>Mon, 22 Mar 2010 16:55:39 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Boston Azure User Group]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Step-by-Step]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=681</guid>
		<description><![CDATA[This is an update from an old post on Azure Development Requirements, this time focused on a reasonable stack of tools for Azure development. (The structure is based on list from Jason Haley which he prepared for a talk to the April 29, 2010 meeting of the Boston Azure cloud computing user group.) How-To Configure an [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=681&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is an update from an old post on <a title="Permanent Link: Azure Development Requirements" rel="bookmark" href="http://blog.codingoutloud.com/2009/09/22/azure-development-requirements/">Azure Development Requirements</a>, this time focused on a reasonable stack of tools for Azure development. (The structure is based on list from <a href="http://jasonhaley.com/blog/">Jason Haley</a> which he prepared for a talk to the April 29, 2010 meeting of the <a href="http://bostonazure.org/">Boston Azure cloud computing user group</a>.)</p>
<h1>How-To Configure an Azure Development Environment</h1>
<h2>0. Operating System Running IIS 7.x</h2>
<p>No way of getting around the need for a Windows operating system that runs IIS 7.0 or IIS 7.5 &#8212; either directly or indirectly (see note below on using virtualization).</p>
<p>The operating system versions that support IIS 7.0 include:</p>
<ul>
<li><strong>Vista Business Edition</strong> and <strong>Ultimate</strong></li>
</ul>
<p>The operating system versions that support IIS 7.5 include:</p>
<ul>
<li><strong>Windows 7 Home Starter</strong>, <strong>Home Basic</strong>, and <strong>Home Premium</strong> (<a href="http://technet.microsoft.com/en-us/library/cc731911.aspx">instructions for installing IIS 7.5 on Windows Home editions</a>)</li>
<li><strong>Windows 7 Professional</strong> and <strong>Ultimate</strong> (<a href="http://technet.microsoft.com/en-us/library/cc725762.aspx">instructions for installing IIS 7.5 on Windows 7 Pro or Ultimate</a>)</li>
<li><strong>Windows Server 2008 R2</strong> (<a href="http://technet.microsoft.com/en-us/library/cc771209.aspx">instructions for installing IIS 7.5 on Windows Server 2008 R2</a>)</li>
</ul>
<h3>What happens if I don&#8217;t have Vista, Win 7, or Server 2008?</h3>
<p>There is one other hope. Use Virtual PC (or your favorite virtualization solution) and run an instance of a supported operating system in a virtual mode. (This blog post on <a title="Step-by-Step - Creating a Virtual Machine image using Microsoft Virtual PC 2007" href="http://blog.codingoutloud.com/2009/09/20/creating-a-windows-7-virtual-machine-image-using-microsoft-virtual-pc-2007/">creating a virtual machine image for Windows 7 using Virtual PC 2007</a> may help.)</p>
<p>Once you have an operating environment &#8211; real or virtual &#8211; the rest is the same.</p>
<h3>How do I enable IIS 7.x to run?</h3>
<p>If you are running a desktop version of Windows (Vista or Windows 7), it is likely you need to <a href="http://technet.microsoft.com/en-us/library/cc731911.aspx">enable IIS through the control panel</a>. <strong>Here are </strong><a href="http://blog.codingoutloud.com/2010/05/04/enabling-iis-on-windows-7/"><strong>step-by-step instructions for enabling IIS 7.5 on Windows 7</strong></a><strong>.</strong></p>
<p><em>If you are doing this to prepare for the April 29 Boston Azure or the May 8th Firestarter meeting, please make sure you have enabled IIS7 with ASP.NET and have WCF HTTP Activation enabled.</em></p>
<h2>1. Visual Studio</h2>
<p>You need a copy of Visual Studio that supports Azure development. Currently your options are <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=FBEE1648-7106-44A7-9649-6D9F6D58056E&amp;displaylang=en">Visual Studio 2008 SP1</a>,  <a href="http://0.r.msn.com/?ld=2vEjohg2O1uIR9y8JmZNpGpDq1IY7x9+adtGFThoIAWAkrD8QpGaW28oJKrF3dW3dqZkDAl48LwmQvfP/mAuahnv15hcHMr3uVuLen45jBVOIxs5VxOuXODCK7DhjrIrUINy47xNUhvCNmJvAccI0QES7g/HMQKE+Z16tTxDgQwd7Xsq/casqtJgriJ3fUUUEKB3V6QpNKOWDLZXR63vyr5KD2ClacMI/0nTrRpiVKtuhFH1EsnyqFDZBAZOplE8I0WFT+9z8HasEeVc80GbWb6mACyRXWu5hD8EhPR+UZZ2ArzPxc2IcuCw==">Visual Studio 2010 (many editions)</a>, and <a href="http://www.microsoft.com/express/Web/">Visual Web Developer 2010 Express Edition</a>.</p>
<blockquote><p><span style="color:#ff00ff;"><strong><span style="color:#008000;">If you don&#8217;t know which version of Visual Studio to install, go with </span></strong></span><a href="http://www.microsoft.com/express/Web/"><strong>Visual Web Developer 2010 Express Edition</strong></a><span style="color:#ff00ff;"><strong><span style="color:#008000;"> (which is also free).</span></strong></span></p></blockquote>
<h2>2. Windows Azure Tools and SDK</h2>
<p>Download and install <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=5664019e-6860-4c33-9843-4eb40b297ab6&amp;DisplayLang=en">Windows Azure Tools for Microsoft Visual Studio 1.1 (Feb 2010)</a> – this includes the Windows Azure SDK (and its samples)</p>
<p>Pay special attention to the first note at the top of that post:</p>
<p style="padding-left:30px;"><strong>Visual Studio must be run as an Administrator</strong></p>
<blockquote><p><strong><em>You must run Visual Studio with elevated permissions when building Cloud Services for Windows Azure.</em> </strong></p></blockquote>
<p style="padding-left:30px;"><em>It is possible to create a shortcut that will launch Visual Studio with administrative permissions by setting the “Run as Administrator” checkbox in the Advanced Properties page of the Shortcut tab; this is available from the Properties menu option off of the context menu.</em></p>
<h2>3. Microsoft SQL Server</h2>
<p>A local installation of SQL Server is needed for local development work involving SQL Azure, Azure Table Storage, or Azure queues.</p>
<p><em>You only need to do this step if you didn&#8217;t install a version of SQL Server during Step 1 (above) while installing Visual Studio. </em></p>
<p>If you do not have a paid license for SQL Server, your best bet is to download a free copy of either <a href="http://bit.ly/95WAqY">Microsoft SQL Server 2005 Express</a> or <a href="http://www.microsoft.com/express/Database/">Microsoft SQL Server 2008 Express</a>.</p>
<blockquote><p><strong><span style="color:#008000;">If you don&#8217;t know which version of SQL Server to install, go with </span></strong><a href="http://www.microsoft.com/express/Database/"><strong>Microsoft SQL Server 2008 Express</strong></a><strong><span style="color:#008000;"> (which is also free).</span></strong></p></blockquote>
<h2>4. Windows Azure Platform Training Kit</h2>
<p>At least for the <a href="http://bostonazure.org/">April Boston Azure meeting</a>, you will  also need the <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=413E88F8-5966-4A83-B309-53B7B77EDF78&amp;displaylang=en">Windows Azure Platform Training Kit (Dec 2009 update)</a> since <a href="http://jasonhaley.com/blog/">Jason Haley</a> (the main speaker) will assume we have this installed so he can reference it during the meeting.</p>
<h2>5. Future Optional Extra Credit Tools</h2>
<p>Once you have deployed to the cloud, you may also be interested in:</p>
<ul>
<li><a href="http://www.fiddler2.com/">Fiddler</a> (for IE) and <a href="http://getfirebug.com/downloads">Firebug</a> (for Firefox) to spy on http traffic going back and forth to a deployed Azure app</li>
<li>What else?</li>
</ul>
<h2>6. Do You Have a Token?</h2>
<p>If you are lucky enough to have a token for free (though time-limited) access to Azure services in the cloud, here&#8217;s <a href="http://blog.codingoutloud.com/2010/05/06/redeeming-an-azure-token/">How to Redeem an Azure Token</a>.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/boston-azure-user-group/'>Boston Azure User Group</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>, <a href='http://blog.codingoutloud.com/category/step-by-step/'>Step-by-Step</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/681/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=681&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/03/22/getting-started-with-windows-azure-development/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Software Development Lessons from the Movie Industry</title>
		<link>http://blog.codingoutloud.com/2010/03/21/software-development-lessons-from-the-movie-industry/</link>
		<comments>http://blog.codingoutloud.com/2010/03/21/software-development-lessons-from-the-movie-industry/#comments</comments>
		<pubDate>Sun, 21 Mar 2010 16:20:18 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=672</guid>
		<description><![CDATA[Which is more important: Good People or Good Ideas? The following video of a talk by Edwin Catmull, Ph.D., President of Pixar, is loaded with insights from the Movie Industry (specifically Pixar Animation Studios) that are applicable to those of us in Software Development &#8211; in fact, applicable to those of us in any team-oriented [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=672&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Which is more important: Good People or Good Ideas?</h2>
<p>The following video of a talk by <a href="http://en.wikipedia.org/wiki/Edwin_Catmull">Edwin Catmull, Ph.D.</a>, President of Pixar, is loaded with insights from the Movie Industry (specifically <a title="Pixar Animation Studios" href="http://en.wikipedia.org/wiki/Pixar Animation Studios">Pixar Animation Studios</a>) that are applicable to those of us in Software Development &#8211; in fact, applicable to those of us in any team-oriented endeavor of any complexity. Every technologist who works on a team should listen to the talk. Then listen again. Any place where he talks about movies, substitute Software Development (or your team-oriented, complex vocation of choice) and think about how it applies to you.</p>
<p>Dr. Catmull ultimately answers the question of which is more critical: good people or good ideas? In doing so, he concludes unequivocally that People are more important, but doesn&#8217;t stop there - it is really those <em>People on Effective Teams</em> that makes the difference.  He also peppers the talk with interesting insights, such as competitors (in all industries) are always copying ideas &#8211; but often they copy the wrong ones &#8211; they tend to copy only ideas that were previously <em>well executed</em> (and, thus, usually successful), but should perhaps pay more attention to the far more numerous <em>good ideas </em>that were <em>poorly executed</em>.</p>
<blockquote><p>Successful products have got thousands of ideas. There&#8217;s all sorts of things necessary for it to be successful. And you have to get most of them right to do it. That&#8217;s why you need a team that works well together.<br />
-Ed Catmull, Ph.D., President, Pixar Animation Studios</p></blockquote>
<p><span style="text-align:center; display: block;"><a href="http://blog.codingoutloud.com/2010/03/21/software-development-lessons-from-the-movie-industry/"><img src="http://img.youtube.com/vi/k2h2lvhzMDc/2.jpg" alt="" /></a></span></p>
<p>I stumbled across the video when reading a post by <a href="http://www.codinghorror.com/">Jeff Atwood</a> admonishing us to <a href="http://www.codinghorror.com/blog/2010/01/cultivate-teams-not-ideas.html">Cultivate Teams, Not Ideas</a>; Jeff&#8217;s post is also worth a close read.</p>
<h2>Notes and Quotes</h2>
<p>Notes I took of Ed Catmull&#8217;s illuminating talk follow &#8211; mostly direct quotes (prefaced with where in the video it occurs):</p>
<ul>
<li>@ 10:45 &#8220;<em><strong>We had confused the orgizational structure with the communication structure</strong></em> &#8211; a very common thing that happens to a lot of companies. They are different.&#8221;</li>
<li>@ 13:30 &#8220;<em><strong>success hides problems</strong></em>&#8220;</li>
<li>@ 15:25 (on doing &#8220;A&#8221; bug&#8217;s life and &#8220;B&#8221; toy story/direct-to-video) &#8220;<em><strong>We shouldn&#8217;t be thinking that it&#8217;s okay to be doing something that isn&#8217;t great</strong></em>.&#8221; (so they stopped the non-great ones)</li>
<li>@ 21:55 &#8220;What&#8217;s the central problem, finding good ideas or finding good people?&#8221; &#8211; answer is very clear:</li>
<li>@ 22:07 <strong><em>Teams are more important than ideas</em></strong>: &#8220;If you have a good idea and you give it to a mediocre group, they&#8217;ll screw it up. If you give a mediocre idea to a good group, they&#8217;ll fix it, or they&#8217;ll throw it away and come up with something else.&#8221;</li>
<li>@ 22:27 &#8220;We think about &#8216;an idea&#8217;. When we think of ideas for movies, we think about ideas for products. And it&#8217;s usually thought of as some singular thing. <em><strong>But the reality is, these successful movies &#8211; as well as successful products &#8211; have got thousands of ideas. There&#8217;s all sorts of things necessary for it to be successful. And you have to get most of them right to do it. That&#8217;s why you need a team that works well together.</strong></em>&#8220;</li>
<li>@ 23:49 On teams that function well together as a key competitive driver.&#8221;On the way we measure progress, is on how well that team gets together.&#8221;</li>
<li>@ 23:57 &#8220;The first time you do it, it&#8217;s a mess.&#8221;</li>
<li>@ 24:07 &#8220;The only failure is if you don&#8217;t learn from it &#8211; if you don&#8217;t progress. So the way you measure it, is this team functioning well together? And it&#8217;s a thing that&#8217;s never let us down. <strong><em>When that team functions well together they will succeed. When things are going wrong, they will fail.</em></strong>&#8220;</li>
<li>@ 25:00 &#8220;<em><strong>People like to copy the wrong things</strong></em>.&#8221;</li>
<li>@ 25:25 &#8220;They always remake good movies. And rarely do they beat the good movie. But the fact is,<em><strong> there are thousands of movies out there that are actually great ideas, but are poorly executed. They should be remaking bad movies</strong></em>.&#8221;</li>
<li>@ 25:38 &#8220;How does it happen with products &#8211; <em><strong>the ones that do better are the ones just copy somebody else&#8217;s good product, they actually take the thing that&#8217;s going wrong and fix that. That&#8217;s the better idea</strong></em>.&#8221;</li>
<li>@ 25:52 &#8220;<strong><em>They could copy the technology, but they couldn&#8217;t copy the process</em></strong> we were using to come up with the story.&#8221;</li>
<li>@ 28:07 (on post-mortems) &#8220;Get a lot of facts about the process. When you put the facts up, and you are <em><strong>fact driven</strong></em>, it actually stimulates discussion. And it&#8217;s those discussions that are very valuable.&#8221;</li>
<li>@ 28:39 &#8220;Summarize a few of the things we&#8217;ve learned:<br />
1. <strong>Constant review<br />
</strong>2. <em><strong>It must be safe for people to tell the truth<br />
</strong></em>3. <em><strong>Communication should not mirror the organizational hierarchy<br />
</strong></em>4. <em><strong>People and how they function is more important than ideas<br />
</strong></em>5. <strong><em>Do not let success mask problems</em>; do a deep assessment</strong>.&#8221;</li>
<li>@ 29:55 &#8220;Everybody says that the story is the most important thing, even if the story was drivel. It might be true &#8211; in fact, it is true &#8211; but <em><strong>it doesn&#8217;t effect behavior</strong></em>.&#8221;</li>
</ul>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/software-engineering/'>Software Engineering</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/672/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=672&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/03/21/software-development-lessons-from-the-movie-industry/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://img.youtube.com/vi/k2h2lvhzMDc/2.jpg" medium="image" />
	</item>
		<item>
		<title>Three ways to tell if a .NET Assembly (DLL) has Strong Name</title>
		<link>http://blog.codingoutloud.com/2010/03/13/three-ways-to-tell-whether-an-assembly-dl-is-strong-named/</link>
		<comments>http://blog.codingoutloud.com/2010/03/13/three-ways-to-tell-whether-an-assembly-dl-is-strong-named/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 20:37:49 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=659</guid>
		<description><![CDATA[Three ways to tell if a .NET Assembly is Strongly Named (or has Strong Name) Here are several convenient ways to tell whether a .NET assembly is strongly named.  (English language note: I assume the form &#8220;strongly named&#8221; is preferred over &#8220;strong named&#8221; since that&#8217;s the form used in the output of the sn.exe tool [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=659&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>Three ways to tell if a .NET Assembly is Strongly Named (or has Strong Name)</h1>
<p>Here are several convenient ways to tell whether a .NET assembly is <a href="http://msdn.microsoft.com/en-us/library/wd40t7ad.aspx">strongly named</a>.  <em>(English language note: I assume the form &#8220;strongly named&#8221; is preferred over &#8220;strong named&#8221; since that&#8217;s the form used in the output of the sn.exe tool shown immediately below.)</em></p>
<p>Towards the end, this post discusses use of <em><strong>Strong Names with Silverlight</strong></em>.</p>
<p>Then in the final section of this post <strong><em>the often confusing &#8211; though very important &#8211; differences between Strongly Named assemblies and Digitally Signed assemblies are clarified.</em></strong></p>
<p>But first, here are three approaches for telling whether a .NET Assembly is Strongly Named.<strong><em>..<br />
</em></strong></p>
<h2>Approach #1: Testing for Strong Name on Command Line or in a Script</h2>
<p>You tell whether an Assembly/DLL has been successfully strong-named using the <a href="http://msdn.microsoft.com/en-us/library/k5b5tt23.aspx">Strong Name Tool (<strong>sn.exe</strong>)</a> (which can be found somewhere like here: C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\sn.exe) by running the following at the command line:</p>
<pre style="padding-left:30px;">sn -vf System.Data.dll</pre>
<p>Here are the results when running against a strongly named assembly, then one that is not strongly named.</p>
<pre style="padding-left:30px;"><strong>C:\&gt; sn -v C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll</strong></pre>
<pre style="padding-left:30px;">Microsoft (R) .NET Framework Strong Name Utility  Version 4.0.30128.1
Copyright (c) Microsoft Corporation.  All rights reserved.
Assembly 'C:\...\System.Data.dll' <span style="color:#3366ff;"><strong>is valid</strong></span></pre>
<pre style="padding-left:30px;"><strong>C:\&gt; sn -v C:\WINDOWS\ismif32.dll</strong></pre>
<pre style="padding-left:30px;">Microsoft (R) .NET Framework Strong Name Utility  Version 4.0.30128.1
Copyright (c) Microsoft Corporation.  All rights reserved.
C:\WINDOWS\ismif32.dll <span style="color:#3366ff;"><strong>does not represent a strongly named assembly</strong></span></pre>
<p>Since the return value from sn.exe is 0 (zero) when the strong name is in place, and 1 (one) if not correctly strong named, you can test for this in a script by examining <a href="http://blogs.msdn.com/oldnewthing/archive/2008/09/26/8965755.aspx">ERRORLEVEL</a>, as in the following (put it into a text file called &#8220;sn-test.bat&#8221; for example and run as &#8220;sn-test foo.dll&#8221;):</p>
<pre style="padding-left:30px;">@ echo off</pre>
<pre style="padding-left:30px;">if "%1"=="" goto END sn -q -vf %1 &gt; NUL if ERRORLEVEL 1 goto NOT_STRONG</pre>
<pre style="padding-left:30px;">:STRONG
echo Has strong name: %1
goto END</pre>
<pre style="padding-left:30px;">:NOT_STRONG
echo Not strong named: %1
goto END</pre>
<pre style="padding-left:30px;">:END</pre>
<p>Note that this will tell you whether it has SOME strong name, but does not tell you which one. So this technique is not appropriate for all uses, but might help in, say, an automated script that checks your about-to-be-released assemblies to make sure you remembered to add the strong names to them. (See note below &#8211; &#8220;Strong Names not for Security&#8221;.)</p>
<p>If you need finer-grain control and wish to write low-level code to ascertain the strong-naming status of an assembly, <a href="http://blogs.msdn.com/shawnfa/archive/2004/06/07/150378.aspx">you can do that too</a>.</p>
<h2>Approach #2: Viewing Strong Name Details with IL DASM</h2>
<p>Visual Studio ships with a handy utility &#8211; the Microsoft Intermediate Language Disassembler (<a href="http://msdn.microsoft.com/en-us/library/f7dy01k1(VS.80).aspx">ILDASM.EXE</a> (<a href="http://msdn.microsoft.com/en-us/library/aa309387(VS.71).aspx">tutorial</a>)) &#8211; which can be used for disassembling .NET binaries to peruse the contents, perhaps for viewing the method signatures or viewing the .NET Assembly <a href="http://msdn.microsoft.com/en-us/library/1w45z383(vs.71).aspx">Manifest</a>. It is helpful to load an assembly using IL DASM and examine the manifest to see whether there is a strong name key available. Your first step is to load the desired Assembly using the ildasm.exe utility. On my Windows 7 machine, IL DASM is found at</p>
<pre style="padding-left:30px;">C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\ildasm.exe</pre>
<p>and you can load up the <strong>System.Drawing.dll</strong> .NET Assembly as in the following example:</p>
<pre style="padding-left:30px;"><strong>C:\&gt; </strong>ildasm C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll</pre>
<p>Once loaded, you will see a screen like the one below.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/ildasm1.png"><img class="alignnone size-full wp-image-732" title="ildasm" src="http://codingoutloud.files.wordpress.com/2010/03/ildasm1.png?w=510&#038;h=198" alt="" width="510" height="198" /></a></p>
<p>Note the MANIFEST section highlighted. Double-click on MANIFEST which load the following screen of manifest-specific data:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/ildasm-manifest.png"><img class="alignnone size-full wp-image-733" title="ildasm-manifest" src="http://codingoutloud.files.wordpress.com/2010/03/ildasm-manifest.png?w=510&#038;h=396" alt="" width="510" height="396" /></a></p>
<p>Find the section for the Assembly you&#8217;ve loaded &#8211; in this case, <strong>System.Drawing</strong> and following the section (which is marked with the &#8220;.assembly System.Drawing&#8221; directive highlighted above, and the content begins with the opening brace (&#8220;{&#8220;) shown above, and ends with its <em>matching</em> brace later in the manifest, and shown below.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/ildasm-manifest-publickey.png"><img class="alignnone size-full wp-image-734" title="ildasm-manifest-publickey" src="http://codingoutloud.files.wordpress.com/2010/03/ildasm-manifest-publickey.png?w=510&#038;h=395" alt="" width="510" height="395" /></a></p>
<p>The highlighted part of the manifest is the public key for this assembly. This public key can also be seen using the sn.exe tool, as follows:</p>
<pre style="padding-left:30px;">C:\&gt; sn -Tp C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll echo Not strong named: %1</pre>
<pre style="padding-left:30px;">Microsoft (R) .NET Framework Strong Name Utility  Version 3.5.30729.1
Copyright (c) Microsoft Corporation.  All rights reserved.</pre>
<pre style="padding-left:30px;">Public key is 002400000480000094000000060200000024000052534131000400000100010007d1fa57c4aed9 f0a32e84aa0faefd0de9e8fd6aec8f87fb03766c834c99921eb23be79ad9d5dcc1dd9ad2361321 02900b723cf980957fc4e177108fc607774f29e8320e92ea05ece4e821c0a5efe8f1645c4c0c93 c1ab99285d622caa652c1dfad63d745d6f2de5f17e5eaf0fc4963d261c8a12436518206dc09334 4d5ad293</pre>
<pre style="padding-left:30px;">Public key token is b03f5f7f11d50a3a</pre>
<p>Note that the Public key in the output from sn.exe matches the highlighted public key in the image immediately above it (of course you should ignore the spaces between pairs of digits in the screen shot).</p>
<p>If an assembly is not strongly named, the Public key will be missing from the manifest and will not be displayed by sn -Tp command.</p>
<p>Since IL DASM comes with both Visual Studio and with the .NET SDK, it is already on the desktop for most .NET Developers, and is therefore sometimes the handiest tool. The third option, .NET Reflector, is a third-party tool, though one adopted by many .NET Developers due to its awesomeness. Reflector conveniently shows more details about the strong name.</p>
<h2>Approach #3: Viewing Strong Name Details with Reflector</h2>
<p>You can load an assembly in the free version <a href="http://www.red-gate.com/products/reflector/">RedGate&#8217;s .NET Reflector</a> and quickly see the strong name details &#8211; or lack thereof for non-strong named assemblies. In the image below, see at the bottom where the strong name string is highlighted. Note that the strong name has five parts (though the Culture is optional):</p>
<ol>
<li>Simple Name or Assembly name without the &#8220;.dll&#8221; extension (&#8220;System.Data&#8221; in case of assembly &#8220;System.Data.dll&#8221;)</li>
<li>Assembly version (&#8220;2.0.0.0&#8243; in case of &#8220;System.Data.dll&#8221;)</li>
<li>Culture (&#8220;neutral&#8221; in case of &#8220;System.Data.dll&#8221;, but might be &#8220;en-us&#8221; for US English, or one of many others)</li>
<li>Public Key or PublicKeyToken (public part of the cryptographic public/private key pair used to sign the assembly, &#8220;b77a5c561934e089&#8243; in case of &#8220;System.Data.dll&#8221;)</li>
<li>Processor Architecture – Defines the assembly&#8217;s format, such as MSIL (intermediate language) or x86 (binary for Intel x86 processors)</li>
</ol>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/reflector-showing-strong-name.png"><img class="alignnone size-full wp-image-650" title="reflector-showing-strong-name" src="http://codingoutloud.files.wordpress.com/2010/03/reflector-showing-strong-name.png?w=510&#038;h=316" alt="Using Reflector to show strong name" width="510" height="316" /></a></p>
<p>In the next image, see at the bottom where the LACK OF complete name string is highlighted; this assembly does not have a strong name to display, so &#8220;Name&#8221; field includes a <strong><span style="color:#3366ff;">null</span></strong> value for PublicKeyToken. <em>(Note that in the real world, Spring.Core.dll is in fact released as strongly named by the good folks on the Spring.NET project; the screen shot below was done on a non-production version of that DLL.)</em></p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/reflector-missing-strong-name.png"><img class="alignnone size-full wp-image-651" title="reflector-missing-strong-name" src="http://codingoutloud.files.wordpress.com/2010/03/reflector-missing-strong-name.png?w=510&#038;h=316" alt="Reflector shows missing strong name" width="510" height="316" /></a></p>
<p>While you are at it&#8230; <a href="http://blog.codingoutloud.com/2010/03/12/make-reflector-the-default-action-for-opening-net-assemblies-in-windows-explorer/">make Reflector the default program for &#8220;launching&#8221; assemblies</a> (actually would need to be for all files ending in the .DLL extension, but Reflector is smart enough to not choke on non-.NET assemblies).</p>
<h2>Approach #4: (Bonus!) Viewing Strong Name with Windows Explorer</h2>
<p>This post promised three ways to tell if a .NET Assembly has a strong name - but here is a bonus 4th way. Windows Explorer will not show you the strong name characteristics of an assembly, with one exception &#8211; for assemblies in the <a href="http://en.wikipedia.org/wiki/Global_Assembly_Cache">Global Assembly Cache</a> (GAC), strong name data is included in the Properties dialog. If  you are examining the GAC, this can be handy.</p>
<p><em>Of course, if an assembly is in the GAC at all, it is strongly named by definition; assemblies are required by .NET to be strongly named to be allowed in the GAC.</em></p>
<h2>Strong Naming for Silverlight</h2>
<p>Silverlight also has support for strongly named assemblies, which is needed for the <a href="http://timheuer.com/blog/archive/2009/07/13/silverlight-3-cached-assembly-feature.aspx">Cached Assembly Feature introduced in Silverlight 3.0</a>.</p>
<p>(<a href="http://www.microsoft.com/silverlight/silverlight-4-launch/">Silverlight 4</a> also introduces supports for <em>digital signatures</em> on XAP files, created by <a href="http://msdn.microsoft.com/en-us/library/aa388171(VS.85).aspx">signtool.exe</a>, which are validated by the Silverlight runtime for <a href="http://timheuer.com/blog/archive/2009/11/18/whats-new-in-silverlight-4-complete-guide-new-features.aspx#elevated">out-of-browser (OOB) applications running with elevated trust</a>.)</p>
<h2>Strongly Name Assembly != Digitally Signed Assembly</h2>
<h3>Strong Names and Digital Signatures are Orthogonal Concerns - Almost</h3>
<p>Strongly Naming and Digitally Signing are largely orthogonal concerns. They have different purposes, different tools, and the digital certificates may come from different sources (for publicly distributed binaries, the <a href="http://en.wikipedia.org/wiki/Public_key_certificate">certs</a> for Digital Signing usually will come from a <a href="http://en.wikipedia.org/wiki/Public_key_infrastructure">PKI</a> source, though that is not essential for the Strong Naming certs).</p>
<p>The only dependency among them is that <em>if the Assembly is to be Strongly Named</em>, then the Strong Naming step has to happen before the Digital Signing step.3</p>
<p>How do I check whether an assembly is Digitally Signed? You can run the following command to determine whether assembly &#8220;foo.dll&#8221; is digitally signed:</p>
<pre style="padding-left:30px;">signtool verify /pa foo.dll</pre>
<p>If you want to see the hash &#8211; for example, to compare with another assembly&#8217;s hash &#8211; then you can view it using the following command sequence:</p>
<pre style="padding-left:30px;">signtool verify /v /pa /ph foo.dll | find "Hash"</pre>
<p>Of course, you can use <strong>sn.exe</strong> and <strong>signtool.exe</strong> together (one after another) to examine an assembly to ascertain both whether it is strongly named and whether it has been digitally signed.</p>
<h3>Strong Names are NOT for Security!</h3>
<p>Finally, a word of caution&#8230; Strong names are about versioning, not about security. Strong names are more about avoiding <a href="http://en.wikipedia.org/wiki/DLL_hell">DLL Hell</a> (which is largely an accidental concern) than about avoiding hackers (which is deliberate). While a <a href="http://www.nirsoft.net/dot_net_tools/strong_name_remove.html">strong name may help alert you to tampering</a>, realize that <a href="http://www.grimes.demon.co.uk/workshops/fusionWSCrackOne.htm">strong names can be hacked</a>, and Microsoft emphasizes that  <a href="http://msdn.microsoft.com/en-us/library/wd40t7ad.aspx">strong-named assemblies do not give the same level of trust as digitally signing</a>:</p>
<blockquote><p>Strong names provide a strong integrity check. Passing the .NET Framework security checks guarantees that the contents of the assembly have not been changed since it was built. Note, however, that strong names in and of themselves do not imply a level of trust like that provided, for example, by a digital signature and supporting certificate.</p></blockquote>
<p>Consider <a href="http://msdn.microsoft.com/en-us/library/aa388171(VS.85).aspx">digitally signing your .NET assemblies</a> if it is important to you or your customers that the origin of the assemblies be traceable and verifiable. One source of digital certificates that can be used for Digitally Signing assemblies is Verisign which has <a href="https://knowledge.verisign.com/support/code-signing-support/index?page=content&amp;id=AR190">Authenticode Certificates</a>.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/step-by-step/how-to/'>How To</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/659/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=659&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/03/13/three-ways-to-tell-whether-an-assembly-dl-is-strong-named/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/ildasm1.png" medium="image">
			<media:title type="html">ildasm</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/ildasm-manifest.png" medium="image">
			<media:title type="html">ildasm-manifest</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/ildasm-manifest-publickey.png" medium="image">
			<media:title type="html">ildasm-manifest-publickey</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/reflector-showing-strong-name.png" medium="image">
			<media:title type="html">reflector-showing-strong-name</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/reflector-missing-strong-name.png" medium="image">
			<media:title type="html">reflector-missing-strong-name</media:title>
		</media:content>
	</item>
		<item>
		<title>Make Reflector the default action for opening .NET Assemblies in Windows Explorer</title>
		<link>http://blog.codingoutloud.com/2010/03/12/make-reflector-the-default-action-for-opening-net-assemblies-in-windows-explorer/</link>
		<comments>http://blog.codingoutloud.com/2010/03/12/make-reflector-the-default-action-for-opening-net-assemblies-in-windows-explorer/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 00:48:20 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=655</guid>
		<description><![CDATA[Many .NET developers know and love the .NET Reflector tool. If you are one of them, consider making Reflector the default action for when you double-click on (i.e., open) a .DLL file. Just like assigning Microsoft Word to open .DOC files, you can assign a program to open your .DLL files. It is easy&#8230; Here [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=655&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Many .NET developers know and love the .NET Reflector tool. If you are one of them, consider making Reflector the default action for when you double-click on (i.e., open) a .DLL file. Just like assigning Microsoft Word to open .DOC files, you can assign a program to open your .DLL files. It is easy&#8230; Here are the instructions for Windows 7 &#8211; for other versions of Windows the process is similar.</p>
<p>1. <a href="http://reflector.red-gate.com/download.aspx">Download Reflector</a> and install it; remember where it is installed</p>
<p>2. Using Windows Explorer, navigate to any DLL file on your computer</p>
<p>3. Right-click on the DLL and select &#8220;Open with&#8230;&#8221; from the popup menu</p>
<p>4. From the Caution dialog that appears, select &#8220;Open with&#8230;&#8221; (yes, you have to select it twice, once in step 3, again in step 4):</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/caution-opening-dll.png"><img class="alignnone size-full wp-image-656" title="caution-opening-dll" src="http://codingoutloud.files.wordpress.com/2010/03/caution-opening-dll.png?w=429&#038;h=192" alt="" width="429" height="192" /></a></p>
<p>5. From the dialog that appears, choose the second option &#8211; &#8220;Select a program from a list of installed programs&#8221;:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/to-open-this-file-dialog.png"><img class="alignnone size-full wp-image-657" title="to-open-this-file-dialog" src="http://codingoutloud.files.wordpress.com/2010/03/to-open-this-file-dialog.png?w=435&#038;h=275" alt="" width="435" height="275" /></a></p>
<p>6. Now you will simply need to choose  the &#8220;Browse&#8230;&#8221; button and navigate to wherever it is you installed Reflector.exe, click the &#8220;Open&#8221; button and you are done.</p>
<p>Now whenever you want to examine a DLL in Reflector, you can double-click on it from Windows Explorer. If you tool around in the command line like I sometimes will do, you can also launch the DLL in Reflector by just &#8220;running&#8221; it from the command line like you might do for a .txt document to open it in Notepad.</p>
<p>Realize that Reflector can&#8217;t do much with a DLL that is not actually a .NET Assembly, but will handle that case gracefully.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/step-by-step/how-to/'>How To</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/655/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/655/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/655/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/655/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/655/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/655/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/655/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/655/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/655/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/655/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/655/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/655/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/655/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/655/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=655&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/03/12/make-reflector-the-default-action-for-opening-net-assemblies-in-windows-explorer/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/caution-opening-dll.png" medium="image">
			<media:title type="html">caution-opening-dll</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/to-open-this-file-dialog.png" medium="image">
			<media:title type="html">to-open-this-file-dialog</media:title>
		</media:content>
	</item>
		<item>
		<title>BostonAzure.org &#8220;Subscribe to Email List&#8221; Form gets UX make-over</title>
		<link>http://blog.codingoutloud.com/2010/03/11/bostonazure-org-subscribe-to-email-list-form-gets-ux-make-over/</link>
		<comments>http://blog.codingoutloud.com/2010/03/11/bostonazure-org-subscribe-to-email-list-form-gets-ux-make-over/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 03:21:00 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[UX]]></category>
		<category><![CDATA[Web development on bostonazure.org]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=644</guid>
		<description><![CDATA[There is a &#8220;subscribe&#8221; form on the Boston Azure web site from which people can ask to be added to  the group&#8217;s email list. I just made some updates to improve the user experience (UX). Here are the changes I made, and I list the handy web resources I used to help me decide (where [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=644&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>There is a <a href="http://bostonazure.org/Announcements/Subscribe">&#8220;subscribe&#8221; form on the Boston Azure web site</a> from which people can ask to be added to  the group&#8217;s email list.</p>
<p>I just made some updates to improve the user experience (UX). Here are the changes I made, and I list the handy web resources I used to help me decide (where applicable).</p>
<p>For field labels, I place the label directly above the field it describes. I use &lt;fieldset&gt; and &lt;label&gt; to describe my markup, presumably making it friendly to screen readers. (Credit to templates provided with <a href="http://asp.net/mvc">ASP.NET MVC</a> for making this part easy.) This is the layout that <a href="http://www.lukew.com/">Luke Wroblewski</a> (author of <a href="http://www.amazon.com/Web-Form-Design-Filling-Blanks/dp/1933820241">Web Form Design: Filling in the Blanks</a>) recommends in his <a href="http://www.lukew.com/resources/articles/WebForms_LukeW.pdf">Best Practices for Web Form Design</a> for scenarios where you want to maximize speed, and the user is likely familiar with the data being requested.</p>
<blockquote><p>Luke&#8217;s work is packed with clear, actionable, useful guidance that is easily applied and backed by user research. A gold mine&#8230;</p></blockquote>
<p>Other recommendations I adopted from LukeW include:</p>
<ul>
<li>Since I have two required fields and three optional ones, I removed the (Required) labels, and stuck with the (optional) ones only.</li>
<li>Added field length for optional Notes field.</li>
<li>Made the Primary Action of the form (the Subscribe button) green, just like Apple Store (got the idea from UIE mailing).</li>
</ul>
<p>Also from LukeW, but from a different source (<a href="http://www.lukew.com/ff/entry.asp?968">The Apple Store&#8217;s Checkout Form Redesign</a>, which I learned of from a <a href="http://www.uie.com/uietips/">UIE</a> mailing):</p>
<ul>
<li>After the form is submitted, the user does not get an immediate email. I made that clear in the resulting text.</li>
</ul>
<p>More improvements I can make in the future, also based on LukeW, include:</p>
<ul>
<li>Validate the data entered. In my case, this is currently only that a well-formed email address is provided.</li>
<li>Provide more context on why data is being requested.</li>
<li>Disable the Submit (Subscribe) button after it is clicked to avoid double clicks.</li>
</ul>
<p>Other changes, outside of LukeW&#8217;s guidance:</p>
<ul>
<li>Mentioned &#8220;low volume&#8221; and &#8220;will not spam you&#8221; &#8211; though also need a privacy policy. Will get to that eventually..</li>
<li>Programmatically set focus to the first field in the form when the page is loaded. I used the jQuery technique described <a href="http://stackoverflow.com/questions/277544/how-to-set-the-focus-to-the-first-input-element-in-an-html-form-independent-from/279153">here</a>.</li>
<li>Dropped &#8220;:&#8221; (colons) at end of labels while also changing labels text from leading caps style to mixed case (&#8220;Job title&#8221; instead of &#8220;Job Title:&#8221;). While not decisive for me, I found <a href="http://www.ixda.org/discuss.php?post=38531">an interesting discussion around whether to use a colon in form labels</a>.</li>
<li>Made sure users could press Enter at any time to submit &#8211; but this will only work if they are not in the single multi-line field on my form. Need to consider removing that field &#8230; Need to consult with <a href="http://ria.meetup.com/15/members/8337713/">Joan</a> on that one. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </li>
</ul>
<p>Used semantic mark-up to implement the green Submit (Subscribe) button mentioned above:</p>
<div id="attachment_546" class="wp-caption alignleft" style="width: 121px"><a href="http://codingoutloud.files.wordpress.com/2010/02/green-subscribe-button.png"><img class="size-full wp-image-546" title="Green Submit (Subscribe) Button for Form" src="http://codingoutloud.files.wordpress.com/2010/02/green-subscribe-button.png?w=111&#038;h=36" alt="Green button that is visually distinctive" width="111" height="36" /></a><p class="wp-caption-text">Submit (Subscribe) Button</p></div>
<p>HTML:</p>
<pre style="padding-left:30px;">&lt;input type="submit" id="primaryaction" value="Subscribe" /&gt;</pre>
<p>CSS:</p>
<pre style="padding-left:30px;">#primaryaction
{
 padding: 5px;
 color: #FFFFFF;
 background-color: #267C18;
 font-weight: bolder;
}</pre>
<p>Old form:</p>
<div id="attachment_635" class="wp-caption alignnone" style="width: 310px"><a href="http://codingoutloud.files.wordpress.com/2010/03/baug-subscribe-before-populated.png"><img class="size-medium wp-image-635" title="baug-subscribe-before-populated" src="http://codingoutloud.files.wordpress.com/2010/03/baug-subscribe-before-populated.png?w=300&#038;h=251" alt="" width="300" height="251" /></a><p class="wp-caption-text">sign-up form BEFORE the make-over</p></div>
<p>New form:</p>
<div id="attachment_643" class="wp-caption alignnone" style="width: 310px"><a href="http://codingoutloud.files.wordpress.com/2010/03/boston-azure-subscribe-improved.png"><img class="size-medium wp-image-643" title="boston-azure-subscribe-improved" src="http://codingoutloud.files.wordpress.com/2010/03/boston-azure-subscribe-improved.png?w=300&#038;h=213" alt="The subscribe form AFTER IMPROVEMENT" width="300" height="213" /></a><p class="wp-caption-text">The AFTER screen shot</p></div>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/software-engineering/ux/'>UX</a>, <a href='http://blog.codingoutloud.com/category/programming/web-development-on-bostonazure-org/'>Web development on bostonazure.org</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/644/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/644/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/644/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=644&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/03/11/bostonazure-org-subscribe-to-email-list-form-gets-ux-make-over/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/02/green-subscribe-button.png" medium="image">
			<media:title type="html">Green Submit (Subscribe) Button for Form</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/baug-subscribe-before-populated.png?w=300" medium="image">
			<media:title type="html">baug-subscribe-before-populated</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/boston-azure-subscribe-improved.png?w=300" medium="image">
			<media:title type="html">boston-azure-subscribe-improved</media:title>
		</media:content>
	</item>
		<item>
		<title>The Project Location is not Trusted &#8211; Dealing with the Dreaded Unblock</title>
		<link>http://blog.codingoutloud.com/2010/03/05/the-project-location-is-not-trusted-dealing-with-the-dreaded-unblock/</link>
		<comments>http://blog.codingoutloud.com/2010/03/05/the-project-location-is-not-trusted-dealing-with-the-dreaded-unblock/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 13:13:50 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Step-by-Step]]></category>
		<category><![CDATA[windows 7]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=593</guid>
		<description><![CDATA[The Project Location is not Trusted Dealing with the dreaded blocked files problem Quickly Unblocking files marked as Unsafe Ever download a Zip (or other files) and have to manually &#8220;Unblock&#8221; one or more files through Windows Explorer&#8217;s Properties dialog, like this? Perhaps you been mystified by a message like this one from Visual Studio? [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=593&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>The Project Location is not Trusted</h1>
<h2><em>Dealing with the dreaded blocked files problem</em></h2>
<h2>Quickly Unblocking files marked as Unsafe</h2>
<p>Ever download a Zip (or other files) and have to manually &#8220;Unblock&#8221; one or more files through Windows Explorer&#8217;s <em>Properties </em>dialog, like this?</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/02/dreaded-unblock.png"><img class="alignnone size-full wp-image-596" title="Unblock button appears at bottom of Properties dialog" src="http://codingoutloud.files.wordpress.com/2010/02/dreaded-unblock.png?w=377&#038;h=515" alt="" width="377" height="515" /></a></p>
<p>Perhaps you been mystified by a message like this one from Visual Studio?</p>
<div id="attachment_594" class="wp-caption alignnone" style="width: 502px"><a href="http://codingoutloud.files.wordpress.com/2010/02/visual-studio-mysterious-error-due-to-untrusted-file-needing-unblock1.png"><img class="alignnone size-full wp-image-595" title="visual-studio-mysterious-error-due-to-untrusted-file-needing-unblock" src="http://codingoutloud.files.wordpress.com/2010/02/visual-studio-mysterious-error-due-to-untrusted-file-needing-unblock1.png?w=492&#038;h=263" alt="" width="492" height="263" /></a><p class="wp-caption-text">Mysterious Visual Studio error message</p></div>
<p>Read on to understand what&#8217;s happening and to learn how to more easily deal with Unblocking such downloaded files on Windows 7, Vista, and XP.</p>
<h3>Why does this happen? Why do files become &#8220;Blocked&#8221;?</h3>
<p>It appears that Internet Explorer (versions 7 and  8, maybe late patches in IE 6) applies the &#8220;block&#8221; in a stream (see below for more on streams). Some programs handle these &#8220;blocked&#8221; files more gracefully than others (looks like the latest Adobe PDF reader can read files like this w/o error).</p>
<p>I&#8217;ve seen blocking happen when downloading Visual Studio solutions from the web or from an email. I&#8217;ve also seen it when downloading documents to disk for use later. You can view the file&#8217;s properties in Windows Explorer to see if the block is there (look for the &#8220;Unblock&#8221; option, as seen above). </p>
<p>Another option is to use Notepad as illustrated in <a href="http://blog.colinmackay.net/archive/2009/03/23/Tip-of-the-Day-9-The-Project-Location-Is-Not.aspx">Colin Mackay&#8217;s Tip of the Day</a> from nearly a year ago:</p>
<p><code style="padding-left:30px;">notepad MyDownloadedFile.zip:zone.identifier</code></p>
<p>Of course, substitute your filename in instead of <strong>BostonAzureSite.zip</strong>, but keep everything else identical. You will see the external zone stream:</p>
<p><code style="padding-left:30px;">[ZoneTransfer]</code><br />
<code style="padding-left:30px;">ZoneId=3</code></p>
<p>Windows is protecting us from ourselves. I guess if you don&#8217;t know what you are doing, you could hurt yourself; you&#8217;ve downloaded something &#8220;untrusted&#8221; from the interweb. This &#8220;protection&#8221; is in Windows 7 and Windows Vista, and apparently can even appear in Windows XP if certain Microsoft software updates are installed. I assume this has some benefits to someone!</p>
<p><em><strong>But if you are a programmer / hacker / techie, and are comfortable hacking and generally know what you are doing, read on&#8230;</strong></em></p>
<h3>Easily Unblock downloaded files marked by IE as Unsafe</h3>
<p>Normally, to Unblock files, you need to visit them one at a time with Windows Explorer, pop up the properties, and click on the Unblock button. This is tedious. If you want to be able to Unblock files more quickly, including whole directory trees at once, then consider doing the following.</p>
<p>Go get <strong><a href="http://technet.microsoft.com/en-us/sysinternals/bb897440.aspx">streams.exe</a></strong> from the big brains at Systinternals (which is part of Microsoft) and copy the executable to <strong>c:\bin\streams.exe</strong>. (If you put it somewhere else, make a compensating adjustment in the next step.)</p>
<p>Use Notepad to save the following into a text file named <strong>unblock-menu.reg</strong> and save it to disk:</p>
<p><code style="padding-left:30px;">Windows Registry Editor Version 5.00</code></p>
<p><code style="padding-left:30px;">[HKEY_CLASSES_ROOT\Directory\shell\UnBlock]</code></p>
<p><code style="padding-left:30px;">[HKEY_CLASSES_ROOT\Directory\shell\UnBlock\command]</code><br />
<code style="padding-left:30px;">@="c:\\bin\\streams.exe -d -s \"%1\""</code></p>
<p><code style="padding-left:30px;">[HKEY_CLASSES_ROOT\*\shell\UnBlock]</code></p>
<p><code style="padding-left:30px;">[HKEY_CLASSES_ROOT\*\shell\UnBlock\command]</code><br />
<code style="padding-left:30px;">@="c:\\bin\\streams.exe -d \"%1\""</code></p>
<h3>What do these Registry Settings do?</h3>
<p>This file lists some registry settings that will allow you to invoke <strong>streams.exe</strong> from the right-click context menu in Windows Explorer. Depending on whether you right-click on a folder or a file, the context menu will vary, as will the action. For a folder (directory), the registry setting says &#8220;call the program streams.exe with the parameters &#8216;-d -s&#8217; and name-of-whatever-folder-i-clicked-on&#8221; which will cause streams.exe to visit each file in that directory tree and remove its streams information. If you right-click on just one file, the command is similar, except does not use the &#8220;-s&#8221; flag (which says to recurse into subdirectories).</p>
<p>Now install these registry settings by executing this file, probably by double-clicking on <strong>unblock-menu.reg</strong> from Windows Explorer. You will probably get a warning from Windows saying you must be nuts to attempt to modify the registry. However, if you are a programmer you are probably cool with it (and may also be nuts).</p>
<p>Now you are ready for the next time Windows protects you from yourself by blocking content you didn&#8217;t want marked as unsafe in the first place. You can right-click on any file or directory on your computer and select &#8220;Unblock&#8221; and that will apply the Unblock process. If you apply it to a file, it will only impact that file. If you apply it to a directory (aka folder) then it will recursively apply to all files and directories below that folder.</p>
<p>Here&#8217;s what you will see when you right-click on a directory / folder from Windows Explorer &#8211; note the new option:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/unblock-this-directory-tree-popup.png"><img class="alignnone size-medium wp-image-620" title="unblock-this-directory-tree-popup" src="http://codingoutloud.files.wordpress.com/2010/03/unblock-this-directory-tree-popup.png?w=300&#038;h=176" alt="" width="300" height="176" /></a></p>
<p>And here&#8217;s what you will see when you right-click on a file:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/unblock-this-file-popup.png"><img class="alignnone size-medium wp-image-619" title="unblock-this-file-popup" src="http://codingoutloud.files.wordpress.com/2010/03/unblock-this-file-popup.png?w=300&#038;h=134" alt="" width="300" height="134" /></a></p>
<h3>Other Options</h3>
<p>I learned about the streams.exe utility from a handy post about <a href="http://www.petri.co.il/unblock-files-windows-vista.htm">unblocking files for Vista</a>. In that same post, they describe how to turn the feature off altogether using the Policy Editor.</p>
<h2>Caveat Emptor</h2>
<p><strong><em>With great power comes great responsiblility.</em></strong></p>
<p>I do not advise applying streams.exe to C:\ as I have no idea whether it is ever a good idea to remove all streams from all files. This may in fact be a very bad thing to do. I just don&#8217;t know.  I am personally comfortable doing it with Visual Studio projects and various documents I&#8217;ve downloaded, and have not run into any trouble, but be careful out there&#8230;</p>
<p>Note that the streams utility will nuke *all* the streams. So if your files contain <strong><em>useful</em></strong> additionals streams, this is probably not going to be a helpful strategy. I expect this is not likely to be a problem for the vast majority of people.</p>
<p>Interesting write-up on <a href="http://www.wikistc.org/wiki/Alternate_data_streams">Alternate Data Streams, which are a feature of NTFS file system</a>. Even some <a href="http://windowssecrets.com/2007/12/06/01-Hide-sensitive-files-with-Alternate-Data-Streams">interesting streams hacks</a> out there.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>, <a href='http://blog.codingoutloud.com/category/step-by-step/'>Step-by-Step</a> Tagged: <a href='http://blog.codingoutloud.com/tag/windows-7/'>windows 7</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/593/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/593/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/593/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=593&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/03/05/the-project-location-is-not-trusted-dealing-with-the-dreaded-unblock/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/02/dreaded-unblock.png" medium="image">
			<media:title type="html">Unblock button appears at bottom of Properties dialog</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/02/visual-studio-mysterious-error-due-to-untrusted-file-needing-unblock1.png" medium="image">
			<media:title type="html">visual-studio-mysterious-error-due-to-untrusted-file-needing-unblock</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/unblock-this-directory-tree-popup.png?w=300" medium="image">
			<media:title type="html">unblock-this-directory-tree-popup</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/unblock-this-file-popup.png?w=300" medium="image">
			<media:title type="html">unblock-this-file-popup</media:title>
		</media:content>
	</item>
		<item>
		<title>ASP.NET MVC 1.0 Visual Studio 2008 project will not open in Visual Studio 2010 RC or Beta</title>
		<link>http://blog.codingoutloud.com/2010/03/02/asp-net-mvc-1-0-visual-studio-2008-project-will-not-open-in-visual-studio-2010-rc-or-beta/</link>
		<comments>http://blog.codingoutloud.com/2010/03/02/asp-net-mvc-1-0-visual-studio-2008-project-will-not-open-in-visual-studio-2010-rc-or-beta/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 12:10:50 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=602</guid>
		<description><![CDATA[Errors Opening ASP.NET MVC 1.0 Sites in Visual Studio 2010 RC, Beta If you try to use Visual Studio 2010 RC to open an existing ASP.NET MVC web site that was built on ASP.NET MVC 1.0 under Visual Studio 2008, you might expect it to be converted and to open successfully. That&#8217;s what I expected, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=602&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Errors Opening ASP.NET MVC 1.0 Sites in Visual Studio 2010 RC, Beta</h2>
<p>If you try to use Visual Studio 2010 RC to open an existing ASP.NET MVC web site that was built on ASP.NET MVC 1.0 under Visual Studio 2008, you might expect it to be converted and to open successfully. That&#8217;s what I expected, but that did not happen. Visual Studio 2010 gave me conversion errors.</p>
<p>But.. there is a straight-forward way to migrate your ASP.NET MVC project from Visual Studio 2008 to Visual Studio 2010 RC.</p>
<p>Here&#8217;s what you need to do:</p>
<p>1. <a href="http://haacked.com/archive/2010/02/10/installing-asp-net-mvc-2-rc-2-on-visual-studio.aspx">Uninstall the MVC 2.0 RC</a> (or RC 1) bits that ship with the RC if you&#8217;ve already installed Visual Studio 2010 (and you probably have if you are reading this blob post &#8211; but refer to Phil Haack&#8217;s post for full details)</p>
<p>2. <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=7aba081a-19b9-44c4-a247-3882c8f749e3&amp;displaylang=en">Download the latest MVC 2.0 <strong>RC 2</strong> bits</a> and install them into Visual Studio 2010</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/asp-net-mvc-rc-installer.png"><img class="alignnone size-thumbnail wp-image-603" title="asp.net-mvc-rc-installer" src="http://codingoutloud.files.wordpress.com/2010/03/asp-net-mvc-rc-installer.png?w=150" alt="" /></a></p>
<p>3. <a href="http://weblogs.asp.net/leftslipper/archive/2009/11/23/migrating-asp-net-mvc-1-0-applications-to-asp-net-mvc-2-beta-updated.aspx">Download the work-in-progress MVC converter tool</a> and run it on your project</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/asp-net-mvc-solution-converter.png"><img class="alignnone size-thumbnail wp-image-604" title="asp.net mvc-solution-converter" src="http://codingoutloud.files.wordpress.com/2010/03/asp-net-mvc-solution-converter.png?w=150" alt="" /></a></p>
<p>4. Open your project in Visual Studio 2010 and it will now be able to complete the conversion</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/visual-studio-2010-rc-conversion-wizard.png"><img class="alignnone size-thumbnail wp-image-605" title="visual-studio-2010-rc-conversion-wizard" src="http://codingoutloud.files.wordpress.com/2010/03/visual-studio-2010-rc-conversion-wizard.png?w=150" alt="" /></a></p>
<p>One step in the conversion to Visual Studio 2010 will also ask you if you wish to convert to .NET 4.0:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/03/offer-to-upgrade-asp-net-mvc-to-net-framework-4-0.png"><img class="alignnone size-medium wp-image-607" title="offer-to-upgrade-asp.net-mvc-to-.net-framework-4.0" src="http://codingoutloud.files.wordpress.com/2010/03/offer-to-upgrade-asp-net-mvc-to-net-framework-4-0.png?w=300" alt="" /></a></p>
<p>Since I wish to deploy this site back to a host with .NET 3.5 SP1, I chose <strong>No</strong>. I am willing to live with deploying the ASP.NET MVC RC 2 bits, but not so with .NET 4.0 as I don&#8217;t have control over that (I deploy onto a shared server).</p>
<p>Presumably this will all be integrated and seamless in the final release of Visual Studio. But it worked for me&#8230;</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/602/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=602&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/03/02/asp-net-mvc-1-0-visual-studio-2008-project-will-not-open-in-visual-studio-2010-rc-or-beta/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/asp-net-mvc-rc-installer.png?w=150" medium="image">
			<media:title type="html">asp.net-mvc-rc-installer</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/asp-net-mvc-solution-converter.png?w=150" medium="image">
			<media:title type="html">asp.net mvc-solution-converter</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/visual-studio-2010-rc-conversion-wizard.png?w=150" medium="image">
			<media:title type="html">visual-studio-2010-rc-conversion-wizard</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/03/offer-to-upgrade-asp-net-mvc-to-net-framework-4-0.png?w=300" medium="image">
			<media:title type="html">offer-to-upgrade-asp.net-mvc-to-.net-framework-4.0</media:title>
		</media:content>
	</item>
		<item>
		<title>Notes from Curt Devlin on Identity, Claims, and Azure Geneva from 4th Boston Azure Meeting Feb 2010</title>
		<link>http://blog.codingoutloud.com/2010/02/25/notes-from-curt-devlin-on-identity-claims-and-azure-geneva-from-4th-boston-azure-meeting-feb-2010/</link>
		<comments>http://blog.codingoutloud.com/2010/02/25/notes-from-curt-devlin-on-identity-claims-and-azure-geneva-from-4th-boston-azure-meeting-feb-2010/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 04:11:39 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Boston Azure User Group]]></category>
		<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=582</guid>
		<description><![CDATA[Curt Devlin keynotes 4th Boston Azure User Group meeting Identity, Claims, Geneva, and Trust in the Cloud This was Boston Azure meeting #4, Feb 25, 2010 (Curt&#8217;s slide deck will be made is now available (PPT 2003 format)) Some notes from Curt&#8217;s talk: Azure devs need to care about claims-based-identity and federated identity Geneva is Microsoft&#8217;s [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=582&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>Curt Devlin keynotes 4th Boston Azure User Group meeting</h1>
<h2>Identity, Claims, Geneva, and Trust in the Cloud</h2>
<h2>This was Boston Azure meeting #4, Feb 25, 2010</h2>
<p>(Curt&#8217;s slide deck <del datetime="2010-03-08T23:58:53+00:00">will be made</del> <strong><a href="http://codingoutloud.files.wordpress.com/2010/03/azureandgeneva-curtdevlin-bostonazure-feb2010.ppt">is now available (PPT 2003 format)</a></strong>)</p>
<p>Some notes from Curt&#8217;s talk:</p>
<ul>
<li>Azure devs need to care about claims-based-identity and federated identity</li>
<li>Geneva is Microsoft&#8217;s solution in this space</li>
<li>Perfect storm of paradigm shifts</li>
<li>Caution: Geneva is not a panacea for &#8220;Identity in the Cloud&#8221;</li>
</ul>
<blockquote><p><em><strong>&#8220;The most important thing Microsoft has done in identity since they came out with ActiveDirectory&#8221; &#8211; and think about how much we rely on AD for enterprise-class apps &#8211; &#8220;it&#8217;s like air&#8221;</strong></em></p></blockquote>
<p>First two lines of every program (with nod to Kim Cameron):</p>
<ol>
<li>Who are you?</li>
<li>What are you allowed to do?</li>
</ol>
<ul>
<li>The answer to the second generally depends on the answer to the first. &#8220;Identity&#8221; is an input.</li>
</ul>
<p>Big architectural problem: the &#8216;net was built w/o any way of knowing who you are connecting to (http has no identity)</p>
<ul>
<li><a href="http://en.wikipedia.org/wiki/Role-Based_Access_Control">RBAC</a> (role-based access control) is not as flexible or powerful as claims</li>
<li>Any statement that can be validated can be a claim</li>
</ul>
<p>Microsoft&#8217;s Federated Identity Group very focused on standards. To be serious also about Azure, you need to pay deep attention to the key standards.</p>
<blockquote><p><strong><em>Azure is only cloud solution REALLY solving the SSO problem in the cloud &#8211; and into your data center. Identity must flow&#8230;</em></strong></p></blockquote>
<p>Geneva Technology stack:</p>
<ul>
<li>Microsoft Federation Gateway (&#8220;ADS 2.0 in the sky&#8221;)</li>
<li>Windows Identity Foundation (some .NET namespaces)</li>
<li>Active Directory Federation Services 2.0</li>
<li>Windows CardSpace 2.0</li>
</ul>
<p>Curt will focus for a while in his talk on Windows Identity Foundation&#8230;</p>
<p>Consider three parties &#8211; Security Token Service, Your App, End User</p>
<ol>
<li>Secure Token Service &lt;=&gt; Your App &#8211; Initial handshake uses WS-Federation (metadata, X-509 cert)</li>
<li>End User &lt;=&gt; Your App &#8211; claims via WS-Policy (which Security Token Service(s) I trust)</li>
<li>End User &lt;=&gt; Security Token Service &#8211; verify policy</li>
<li>End User &lt;=&gt; Security Token Service &#8211; WS-Trust</li>
<li>End User &lt;=&gt; Your App &#8211; lots of interactions &#8211; signed tokens, claims</li>
</ol>
<p>ADF 2.0 &#8211; same programming model across web and desktop</p>
<p>RP = relying party &#8211; someone that consumes tokens</p>
<p><a href="http://www.pingidentity.com/">PingIdentity.com</a></p>
<p><a href="http://openid.net/what/">OpenID</a> cannot help with Man-in-the-middle attacks</p>
<p>&#8220;Shred the token&#8221; is lingo meaning to decrypt a token.</p>
<p>Coded example showing implementation of Passive Federation.</p>
<ul>
<li>Showed the 8 (!) prerequisites</li>
<li>Create full-trust app (Since runtime not fully baked in Azure yet &#8211; and certainly not yet in GAC)</li>
<li>Add a reference to <strong>Microsoft.IdentityModel</strong> (which is a stronger programming model than older System.IdentityModel)</li>
<li>using Microsoft.IdentityModel.Claims;</li>
<li>using System.Threading;</li>
<li>Then write like 5 lines of code&#8230;</li>
<li>Subclasses from <a href="http://msdn.microsoft.com/en-us/library/system.security.principal.iidentity.aspx">IIdentity</a>, <a href="IClaimsIdentity">IClaimsIdentity</a>, <a href="http://msdn.microsoft.com/en-us/library/microsoft.identitymodel.claims.iclaimsprincipal.aspx">IClaimsPrincipal</a> (same ones used in other .NET apps)</li>
<li>WIF ASP.NET Processing Pipeline does a lot of behind-the-scenes work for us</li>
<li>IsInRole method is key</li>
<li>Then in the ASP.NET app, there is some 10 lines of key code for X-509 cert &#8211; which contains the URL (or domain, really) of the web site that the cert applies to &#8211; a problem with &#8220;localhost&#8221; and &#8220;stage.foo.com&#8221; etc. due to mismatch &#8211; this goes in Global.asax &#8211; plus several other blocks of code&#8230;</li>
</ul>
<p>Now for the STS (which you don&#8217;t need if you have ADFS 2.0)</p>
<ul>
<li>There is a Token Service for ASP.NET visual studio template with Geneva install</li>
<li>Many coding steps here (see slides)</li>
<li>Use <strong>FedUtil</strong> (which comes with Geneva and VS 2008, VS 2010) to create a trust between your application and your STS</li>
<li>There is a lab to create your own STS</li>
</ul>
<blockquote><p><strong><em>Claims-based systems externalized the work of AuthZ, AuthN to your STS &#8211; not stuck in your code.</em></strong></p></blockquote>
<p>Geneva supports delegation &#8211; embedding one token within another&#8230;</p>
<p>(21 people at the meeting)</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/'>Azure</a>, <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/boston-azure-user-group/'>Boston Azure User Group</a>, <a href='http://blog.codingoutloud.com/category/cloud-computing/'>Cloud Computing</a>, <a href='http://blog.codingoutloud.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/582/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/582/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/582/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/582/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/582/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/582/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/582/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/582/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/582/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/582/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/582/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/582/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/582/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/582/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=582&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/02/25/notes-from-curt-devlin-on-identity-claims-and-azure-geneva-from-4th-boston-azure-meeting-feb-2010/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Curt Devlin to Speak about Identity in the Cloud at Boston Azure Meeting</title>
		<link>http://blog.codingoutloud.com/2010/02/21/curt-devlin-to-speak-about-identity-in-the-cloud-at-boston-azure-meeting/</link>
		<comments>http://blog.codingoutloud.com/2010/02/21/curt-devlin-to-speak-about-identity-in-the-cloud-at-boston-azure-meeting/#comments</comments>
		<pubDate>Sun, 21 Feb 2010 13:31:40 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=550</guid>
		<description><![CDATA[Boston Azure meeting to feature Microsoft&#8217;s Curt Devlin on Identity in the Cloud Thursday February 25, 2010 at NERD in Cambridge, MA The following is an update to the agenda for the upcoming Boston Azure User Group meeting this coming Thursday. To RSVP for the meeting (helps you breeze through security and helps us have [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=550&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>Boston Azure meeting to feature Microsoft&#8217;s Curt Devlin on Identity in the Cloud</h1>
<h2>Thursday February 25, 2010 at NERD in Cambridge, MA</h2>
<p><strong><em>The following is an update to the agenda for the upcoming Boston Azure User Group meeting this coming Thursday.</em></strong></p>
<p style="text-align:left;padding-left:30px;"><em><a href="http://bostonazure.org/"><em><img title="Boston Azure user group" src="http://bostonazure.org/Content/bostonazure-logo.png" alt="logo for BostonAzure.org" /></em></a></em></p>
<p style="text-align:left;padding-left:30px;"><em>To <strong>RSVP</strong> for the meeting (helps you breeze through security and helps us have enough pizza on hand), for <strong>directions</strong>, and <strong>more details about the group</strong>, please check out <a href="http://BostonAzure.org/"><strong>http://BostonAzure.org</strong></a>.</em></p>
<p style="text-align:left;padding-left:30px;"><em>To get on the Boston Azure <strong>email list</strong>, please visit <a href="http://bostonazure.org/Announcements/Subscribe"><strong>http://bostonazure.org/Announcements/Subscribe</strong></a>.</em></p>
<h2>[6:00-6:30 PM] Boston Azure Theater</h2>
<p>The meeting activities begin at 6:00 PM with Boston Azure Theater, which is an informal viewing of some Azure-related video. This month will feature the first half of<br />
<a href="http://microsoftpdc.com/Speakers/Matthew-Kerner">Matthew Kerner</a>&#8216;s talk on <a title="Video of Matthew Kerner's talk on Azure Management APIs" href="http://microsoftpdc.com/Sessions/SVC15">Windows Azure Monitoring, Logging, and Management APIs</a> from the November 2009 <a href="http://microsoftpdc.com">Microsoft PDC conference</a>.</p>
<h2>[6:30-7:00 PM] Upcoming Boston Azure Events and Firestarter</h2>
<p>Around 6:30, Bill Wilder (that&#8217;s me) will first show off an interesting CodeProject contest, then will lead a discussion about the future of the Boston Azure user group and the upcoming All-Day-Saturday-May-8th event.</p>
<p>Curt Devlin will take the stage at 7:00 PM.</p>
<p>Before the meeting, if you want a little more context, you may wish to read Kim Cameron&#8217;s essay <a href="http://www.identityblog.com/?p=352">The Laws of Identity</a>, which is an insightful analysis of challenges around Identity.</p>
<h2>[7:00-8:15] Featured speaker: <a href="http://blogs.msdn.com/curtd/">Curt Devlin</a> of Microsoft</h2>
<p><img title="Curt Devlin" src="http://bostonazure.org/blobs/curt_devlin_microsoft_thumb.jpg" alt="Photo of Curt Devlin, Architect at Microsoft" /></p>
<h3>Abstract</h3>
<p>The Azure platform presents new challenges for identity management. As developers and architects, we will still have to answer the same two perennial questions: 1) Who are you? 2) And what are you allowed to do? But the traditional on-premise approaches to authentication, authorization and identity lifecycle control are not adequate to meet these new challenges. The Geneva suite of technologies for claims-based identity management can be help because cloud computing can be thought of as a &#8220;special case&#8221; of federation, with many similar requirements. Together these two paradigms appear to be converging to create the perfect storm of paradigm shifts. However, even WIF, ADFS 2.0 and CardSpace 2.0, will only take us part way to a complete solution in the near term. This session will provide a simple recipe for claims-based identity management in Azure using Geneva, discuss some of the most important reasons why this is necessary, and finally some of the shortcomings we will still have to contend with on the road ahead. The aim is to educate, motivate, and caution.</p>
<h3>About Curt Devlin</h3>
<p>Curt Devlin is currently an architect in Microsoft DPE (Developer &amp; Platform Evangelism) focusing on distributed solutions across many industries and customer segments. Curt is a Microsoft veteran of many technology wars, with more than 20 years of experience developing solutions on the Windows and .NET. platforms. He is also a dyed-in-the-wool New Englander with avid interests in sailing, skiing and nearly everything else.</p>
<p>Curt blogs as <a href="http://blogs.msdn.com/curtd/">the philosophical architect</a>, plus you can check out his MSDN articles <a href="http://msdn.microsoft.com/en-us/library/bb417064.aspx">Enterprise Authorization Strategy</a> and <a href="http://msdn.microsoft.com/en-us/library/cc261632.aspx">SaaS Capacity Planning: Transaction Cost Analysis Revisited</a>.</p>
<p>Curt&#8217;s blog post announcing his participation in this meeting: <a href="http://blogs.msdn.com/curtd/archive/2010/02/23/an-evening-with-identity-in-the-clouds-and-the-boston-azure-user-group.aspx">http://blogs.msdn.com/curtd/archive/2010/02/23/an-evening-with-identity-in-the-clouds-and-the-boston-azure-user-group.aspx</a></p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/boston-azure-user-group/'>Boston Azure User Group</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/550/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/550/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/550/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=550&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/02/21/curt-devlin-to-speak-about-identity-in-the-cloud-at-boston-azure-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://bostonazure.org/Content/bostonazure-logo.png" medium="image">
			<media:title type="html">Boston Azure user group</media:title>
		</media:content>

		<media:content url="http://bostonazure.org/blobs/curt_devlin_microsoft_thumb.jpg" medium="image">
			<media:title type="html">Curt Devlin</media:title>
		</media:content>
	</item>
		<item>
		<title>Steve Krug on Rocket Surgery Made Easy from Dec 2010 BostonCHI Meeting</title>
		<link>http://blog.codingoutloud.com/2010/02/07/steve-krug-rocket-surgery-made-easy-bostonchi/</link>
		<comments>http://blog.codingoutloud.com/2010/02/07/steve-krug-rocket-surgery-made-easy-bostonchi/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 03:17:20 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Trip Report]]></category>
		<category><![CDATA[UX]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=143</guid>
		<description><![CDATA[Rocket Surgery Made Easy Steve Krug speaks at BostonCHI Notes from 08-Dec-2009 meeting Steve&#8217;s new book - Rocket Surgery Made Easy - due in bookstores in a couple of weeks – material from this talk will be in his book… Passed a copy of his book around through the audience for quick peek 150 or so people [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=143&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>Rocket Surgery Made Easy</h1>
<h2><a href="http://www.sensible.com/about.html">Steve Krug</a> speaks at <a href="http://bostonchi.org">BostonCHI</a></h2>
<h3>Notes from 08-Dec-2009 meeting</h3>
<ul>
<li>Steve&#8217;s new book - <a href="http://www.amazon.com/Rocket-Surgery-Made-Easy-Yourself/dp/0321657292">Rocket Surgery Made Easy</a> - due in bookstores in a couple of weeks – material from this talk will be in his book…</li>
<li>Passed a copy of his book around through the audience for quick peek</li>
<li>150 or so people in attendance</li>
</ul>
<p>Writing process</p>
<ol>
<li>writing process: collect years of notes</li>
<li>need deadlines to force you to write (and finish)</li>
<li>collect relevant articles for each chapter and post them all on a wall</li>
<li>once you’ve begun to panic, start throwing things overboard</li>
<li>Outline, write, iterate</li>
<li>get help</li>
<li>throw things overboard (save for next book?)</li>
<li>FAQ at the end of every chapter – good idea</li>
<li>Doing usability (vs How to Think About Usability)</li>
</ol>
<p>Doing Usability</p>
<ol>
<li><strong>A morning a month – that’s all we ask</strong></li>
<li>Run tests – with whole team – at our site – scheduled monthly and well ahead of time – and debrief immediately after over lunch
<ol>
<li>maybe do right before iteration planning</li>
<li>company-sponsored lunch</li>
</ol>
</li>
<li><strong>Start earlier than you think makes sense</strong></li>
<li>The sooner you get information, the better use you can make of that information</li>
<li>Don’t wait until the site is “finished” – test it as soon as it is testable</li>
<li>Don’t worry that “you already know about the problems”</li>
<li>If you have nothing built, test other people’s sites</li>
<li><em>Are you working on the site? –&gt; Yes ==&gt; test now!</em></li>
<li><strong>Recruit loosely and grade on a curve</strong></li>
<li>Beware implied domain knowledge</li>
<li>Some testing can be done w/o your target audience</li>
<li>Usability testers say many things that are similar to what therapists say &#8211; “what did you expect to happen when you did that?”</li>
<li>Keep yourself out of it! It is about the user and what the user being tested is thinking.</li>
<li><strong>Make it a spectator sport</strong></li>
<li>Get everyone to come and watch the test – frequently the observers suddenly just “get it” that they are not their users</li>
<li>Have high quality snacks. Keep the sessions short and compact. Do them on site. <em>Make it easy for everyone to join in, hard to have a good reason to skip it.</em></li>
<li>Record sessions with Camtasia ($300). Get a good USB desktop microphone ($25). Don’t record user’s face (“useless and distracting”). Use a screen sharing service (like GotoMeeting, $40/month?) to control the UI. High quality audio is important, and should be channeled to the observation room via GotoMeeting or Skype.</li>
<li><strong>Focus ruthlessly on a small number of the most important problems</strong></li>
<li>Serious because <em>everyone</em> will come across them, or serious because for those who do encounter them will be <em>seriously impeded</em>.</li>
<li>Don’t feel you need to come up with the “perfect” fix</li>
<li>Ask everyone in the observation room to write down the <em>three most important issues </em>they observed. These are raised at the debriefing session over lunch.</li>
<li><strong>When fixing problems, always do the least you can do &#8482;</strong></li>
<li>Prioritize the list, then work your way down the list until you run out of time/resources</li>
<li>Sometimes a tweak is better than a redesign – don’t get <em>suckered</em> into a redesign – <em>the perfect is the enemy of the good!</em></li>
<li>Focus on <em>the smallest change we think we can make</em> to address <em>the problem we observed</em></li>
<li><strong>Q&amp;A</strong></li>
<li>Remote Testing?</li>
<li>Remote testing is handy – saves travel time, recruiting pool grows, … do over skype or GotoMeeting.</li>
<li><strong>How to get it off the ground?</strong> Try a group usability test of competitor’s site – everyone can get behind that. Do one and hope people get enthused about it. Make the cost of swinging by to watch the testing really small.</li>
<li>Be very cautious about asking users how to fix the problems they’ve encountered. “Users are not designers.” “Hopefully you know a lot more than they do about design.” Listen to them, but be careful that they’re ideas are not well thought out. The purpose of testing is to “inform your design intelligence”.</li>
</ol>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/events/trip-report/'>Trip Report</a>, <a href='http://blog.codingoutloud.com/category/software-engineering/ux/'>UX</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/143/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/143/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/143/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/143/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/143/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/143/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/143/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/143/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/143/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/143/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/143/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/143/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/143/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/143/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=143&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/02/07/steve-krug-rocket-surgery-made-easy-bostonchi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>January 2010 Boston Azure User Group Meeting Notes</title>
		<link>http://blog.codingoutloud.com/2010/01/29/january-2010-boston-azure-user-group-meeting-notes/</link>
		<comments>http://blog.codingoutloud.com/2010/01/29/january-2010-boston-azure-user-group-meeting-notes/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 22:50:27 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/2010/01/29/january-2010-boston-azure-user-group-meeting-notes/</guid>
		<description><![CDATA[This was the third meeting of the Boston Azure User Group! (You can get on the group mailing list here.) We watched a clip from the first day of PDC where Ray Ozzie and others talk Azure in the keynote … Discussed idea of an Azure Firestarter event – possibly for May 8, 2010 – [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=493&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This was the third meeting of the <a href="http://bostonazure.org/">Boston Azure</a> User Group! (You can get on the group mailing list <a href="http://bostonazure.org/Announcements/Subscribe">here</a>.)</p>
<p>We watched a clip from the first day of PDC where <a href="http://microsoftpdc.com/Sessions/KEY01">Ray Ozzie and others talk Azure in the keynote</a> …</p>
<p>Discussed idea of an Azure Firestarter event – possibly for May 8, 2010 – and this seems to flow nicely from our scheduled April meeting where Jason Haley is scheduled to talk about getting started programming in Azure, such as with the Azure SDK.</p>
<p><a href="http://www.benday.com">Ben Day</a> spoke on Windows Azure storage. Some quick notes / points from his talk:</p>
<ul>
<li>Relational databases have a schema – all rows in a table have same columns, structure is defined before pouring in any data, data is not repeated (third-normal form breaks out data to appear only once – no redundancy)</li>
<li>… database will manage transactions across tables</li>
<li>… though mixed with replication can provide performance challenges</li>
<li>This changes for Azure Table Storage!</li>
<li>… though Azure Table Storage can scale way better – horizontally (“out”) whereas traditional SQL RDBMs tend to scale best vertically (“up”) – to larger boxes &#8211; which is more limiting and tends to be more expensive.</li>
<li>Do we need to rethink what needs to be transactional? Can we use a simplified transactional model – such as just within one table – or one <strong>instance</strong> of one table…</li>
<li>… compensating transactions are another approach</li>
<li>Securely storing data
<ul>
<li>Encrypt (compute is cheap)</li>
<li>If you encrypt a key, it won’t work for indexing</li>
<li>Search is harder if you encrypt</li>
</ul>
</li>
<li>String columns have a 64KB size limit for Table Storage – so reference larger objects in a Blob</li>
<li>Unit testability
<ul>
<li>Abstract away you r persistent store, such as with Repository pattern – so you can unit test</li>
<li>Encapsulate business logic, such as with Service Layer and Domain Model patterns</li>
<li>Extract logic from UI using MVP (Model View Presenter)</li>
<li>Use Mock objects</li>
</ul>
</li>
<li>Ben will come back to finish the story!</li>
</ul>
<p>Around 23 attended.</p>
<br />Filed under: <a href='http://blog.codingoutloud.com/category/cloud-computing/azure-cloud-computing/boston-azure-user-group/'>Boston Azure User Group</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/493/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/493/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/493/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/493/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/493/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/493/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/493/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/493/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/493/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/493/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/493/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/493/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/493/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/493/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=493&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/01/29/january-2010-boston-azure-user-group-meeting-notes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Since Software is a Business, Architects need to be More than Technologists</title>
		<link>http://blog.codingoutloud.com/2010/01/27/since-software-is-a-business-architects-need-to-be-more-than-technologists/</link>
		<comments>http://blog.codingoutloud.com/2010/01/27/since-software-is-a-business-architects-need-to-be-more-than-technologists/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 23:07:35 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Bill gave a talk]]></category>
		<category><![CDATA[Soft Skills]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=483</guid>
		<description><![CDATA[Gave talk at Architect Factory, Part Deux today titled Since Software is a Business, Architects need to be More than Technologists. The slide deck can be downloaded here. The most prominent concept/slide follows: The overall event was excellent. It was organized primarily by Bryan Tuttle of CodeRight, a Consulting/Training company. Many thanks to Bryan for a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=483&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Gave talk at <a title="Architect Factory, Part Deux - 27-Jan-2010" href="http://blogs.msdn.com/cbowen/archive/2010/01/25/schedule-for-wednesday-s-1-27-10-architect-factory.aspx">Architect Factory, Part Deux</a> today titled <em><strong>Since Software is a Business, Architects need to be More than Technologists</strong></em>. The slide deck can be downloaded <a href="http://codingoutloud.files.wordpress.com/2010/01/architects-more-than-technologists-27-jan-2010.ppt">here</a>. The most prominent concept/slide follows:</p>
<div id="attachment_484" class="wp-caption alignleft" style="width: 310px"><a href="http://codingoutloud.files.wordpress.com/2010/01/tech-business-communication.png"><img class="size-medium wp-image-484" title="tech-business-communication" src="http://codingoutloud.files.wordpress.com/2010/01/tech-business-communication.png?w=300&#038;h=225" alt="Technology Skills" width="300" height="225" /></a><p class="wp-caption-text">Technology + Communications + Business-Awareness = Influential Architect </p></div>
<p>The overall event was excellent. It was organized primarily by Bryan Tuttle of <a href="http://coderight.com/">CodeRight</a>, a Consulting/Training company. Many thanks to Bryan for a job well done!</p>
<br />Posted in Bill gave a talk, Soft Skills  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/483/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=483&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/01/27/since-software-is-a-business-architects-need-to-be-more-than-technologists/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/01/tech-business-communication.png?w=300" medium="image">
			<media:title type="html">tech-business-communication</media:title>
		</media:content>
	</item>
		<item>
		<title>December 2010 Boston Azure User Group Meeting Notes</title>
		<link>http://blog.codingoutloud.com/2010/01/27/december-2010-boston-azure-user-group-meeting-notes/</link>
		<comments>http://blog.codingoutloud.com/2010/01/27/december-2010-boston-azure-user-group-meeting-notes/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 22:40:04 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=482</guid>
		<description><![CDATA[Second meeting of Boston Azure User Group Guest speakers were Michael Stiefel and Mark Eisenberg Meeting was held December 3, 2009 at the Microsoft NERD We opened with Boston Azure Theater, kicking off a few minutes after 6:00.  For around 45 minutes we watched a video of Microsoft Director Manuvir Das&#8217; PDC talk A Lap [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=482&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>Second meeting of Boston Azure User Group</h1>
<h2>Guest speakers were Michael Stiefel and Mark Eisenberg</h2>
<h3>Meeting was held December 3, 2009 at the Microsoft NERD</h3>
<p>We opened with Boston Azure Theater, kicking off a few minutes after 6:00.  For around 45 minutes we watched a video of Microsoft Director Manuvir Das&#8217; PDC talk <a href="http://microsoftpdc.com/Sessions/P09-03">A Lap Around the Windows Azure Platform</a>.</p>
<p>From there, Microsoft&#8217;s Mark Eisenberg walked us through a summary of key Windows Azure announcements made at (or right before) the <a href="http://microsoftpdc.com">Microsoft PDC</a> in November. The deck Mark used is available <a href="http://codingoutloud.files.wordpress.com/2010/01/baug_pdchighlights.pptx">BAUG_PDCHighlights</a>. There was a lot of interest in the announcement details and in the pricing model.</p>
<p>Our keynote speaker, <a href="http://reliablesoftware.com/bio.html">Michael Stiefel</a>, followed with a detailed look into the project &#8220;<a href="http://www.microsoft.com/windowsazure/dallas/">Dallas</a>&#8221; announcement, showcasing the Dallas &#8220;Data as a Service&#8221; platform, working through sample apps, a custom mashup &#8211; with code, demonstrating the straight-forward programming model (ATOM feeds), and showing use of the data directly within Excel. Michael wrapped up by reviewing the business model &#8211; and discussing the interesting possibilities (publishers can publish &#8211; and others can consume &#8211; data <em>so much more easily</em> than today since Microsoft will have eliminated the &#8220;contract friction&#8221; we&#8217;d have if every consumer had to strike a deal with every publisher).</p>
<br />Posted in Boston Azure User Group, Programming, XML  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/482/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=482&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/01/27/december-2010-boston-azure-user-group-meeting-notes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Silverlight exceeds 50% penetration</title>
		<link>http://blog.codingoutloud.com/2010/01/14/silverlight-exceeds-50-percent-penetration/</link>
		<comments>http://blog.codingoutloud.com/2010/01/14/silverlight-exceeds-50-percent-penetration/#comments</comments>
		<pubDate>Fri, 15 Jan 2010 01:55:57 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/?p=478</guid>
		<description><![CDATA[According to RIAStats, a version of Silverlight is now detected on more than half of the browsers sampled! This is a telling milestone as installations of Silverlight continue to grow &#8211; drawing inexorably closer to that of Adobe Flash which currently enjoys installations on around 97% of browsers. If you look at the graphic, and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=478&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>According to <a href="http://riastats.com">RIAStats</a>, a version of Silverlight is now detected on more than half of the browsers sampled! This is a telling milestone as installations of Silverlight continue to grow &#8211; drawing inexorably closer to that of Adobe Flash which currently enjoys installations on around 97% of browsers.</p>
<p>If you look at the graphic, and you consider the “not detected” section, it reads 49.99%, which means that the sum of those detected is better than half.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2010/01/silverlightexceeds50percent.jpg"><img style="display:inline;border:0;" title="silverlight-exceeds-50-percent" src="http://codingoutloud.files.wordpress.com/2010/01/silverlightexceeds50percent_thumb.jpg?w=244&#038;h=184" border="0" alt="silverlight-exceeds-50-percent" width="244" height="184" /></a></p>
<p>At PDC 2009 in November, Scott Guthrie announced that <a href="http://fragiledevelopment.wordpress.com/2009/12/03/silverlight-market-penetration/">Silverlight penetration was up to around 45%, up from around 30% in the summer</a>. These RIAStats numbers feel in line with that.</p>
<p>Of course, I know this doesn’t “prove” Silverlight is really on more than 50% of browsers, as RIAStats are not a perfect reflection of the web as a whole, but it seems an interesting milestone nonetheless.</p>
<p>Silverlight has been in the wild for 863 days: Silverlight was released for real (RTW, or “released to web”) on 05-Sep-2007, followed thirteen months later by Silverlight 2 RTW 14-Oct-2008, then less than nine months later we saw Silverlight 3 on 09-July-2009. Silverlight 4 is in beta – maybe Microsoft will announce its release at MIX10 in mid-March? If they do, that would be on a similar release rhythm as from Silverlight 2 to Silverlight 3.</p>
<p>Silverlight’s installed base will also get another boost from the <a href="http://www.nbcolympics.com/">2010 Winter Olympics</a> next month as well. (And Silverlight 2 shipped shortly after the 2008 Summer Olympics.)</p>
<p>It is interesting to note that another tracking site – <a title="statowl's Silverlight plug-in stats" href="http://www.statowl.com/silverlight.php">StatOwl.com</a> – not only shows the penetration lower – and doesn’t agree on <em>any</em> of the numbers – but also doesn’t even agree on relative installed base across versions [EDIT: after Comment from Travis Collins, added in Silverlight 4 = 0.04 for RIAStats]:</p>
<table border="1" cellspacing="0" cellpadding="2" width="400">
<tbody>
<tr>
<td width="141" valign="top"></td>
<td width="125" valign="top">RIAStats</td>
<td width="133" valign="top">StatOwl</td>
</tr>
<tr>
<td width="141" valign="top">Silverlight 1</td>
<td width="125" valign="top">0.62</td>
<td width="133" valign="top">1.39</td>
</tr>
<tr>
<td width="141" valign="top">Silverlight 2</td>
<td width="125" valign="top">1.91</td>
<td width="133" valign="top">9.73</td>
</tr>
<tr>
<td width="141" valign="top">Silverlight 3</td>
<td width="125" valign="top">47.44</td>
<td width="133" valign="top">23.85</td>
</tr>
<tr>
<td width="141" valign="top">Silverlight 4 (beta)</td>
<td width="125" valign="top">0.04 (&lt;1 pixel)</td>
<td width="133" valign="top"><em>not shown, or 0%</em></td>
</tr>
<tr>
<td width="141" valign="top">Undetected (reported)</td>
<td width="125" valign="top"><strong>49.99</strong></td>
<td width="133" valign="top">65.03%</td>
</tr>
</tbody>
</table>
<p>I’m not sure why they don’t agree – perhaps differences in sample sizes, sampling methodology, or due to different audiences being sampled.</p>
<p>Also, if you check the math yourself, you&#8217;ll see the values shown don’t tie down perfectly for RIAStats (though they do for StatOwl); if you add up the individual Silverlight versions along with the Undetected, you won&#8217;t get exactly 100%. Some sort of rounding errors I assume. [EDIT: See explanation in Comment from Travis Collins, RIAStats creator.] But I also assume that the <strong>Undetected = 49.99%</strong> is most likely right (at least not wrong due to a rounding error, since it is harder to round wrong there).</p>
<p>EDIT 01-Feb-2010: Found an interesting, relevant post on <a href="http://www.uxpassion.com/2009/06/cool-facts-about-silverlight-penetration-market-share/">Cool facts about Silverlight penetration / mindshare</a> from <a href="http://uxpassion.com/">UXPassion.com</a>.</p>
<p><iframe src='http://digg.com/api/diggthis.php?u=http%3A%2F%2Fdigg.com%2Fmicrosoft%2FSilverlight_exceeds_50_penetration' height='82' width='55' frameborder='0' scrolling='no' style='float: right; margin-left: 10px; margin-bottom: 5px; padding: 4px 0 2px 4px; background: #fff;'></iframe></p>
<br />Posted in Programming, Silverlight Tagged: Silverlight <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/478/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/478/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/478/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=478&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2010/01/14/silverlight-exceeds-50-percent-penetration/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2010/01/silverlightexceeds50percent_thumb.jpg" medium="image">
			<media:title type="html">silverlight-exceeds-50-percent</media:title>
		</media:content>
	</item>
		<item>
		<title>NEJUG ~ JSR-299 &#8211; 08-Oct-2009</title>
		<link>http://blog.codingoutloud.com/2009/12/01/java-jsr-299-at-nejug-meeting-08-oct-2009/</link>
		<comments>http://blog.codingoutloud.com/2009/12/01/java-jsr-299-at-nejug-meeting-08-oct-2009/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 19:26:13 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Trip Report]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/?p=468</guid>
		<description><![CDATA[Very rough notes on JSR-299 by Gavin King from NEJUG Meeting of 08-Oct-2009 Profiles Will enable deployment with subset of JEE feature set – so can leave out parts you don’t use – thinner footprint, less complexity? Theme = Loose Coupling decouple server and client via well-defined types and “qualifiers” (beyond Interfaces) decouple lifecycle of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=468&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Very rough notes on JSR-299 by Gavin King from <a href="http://www.nejug.org/events/show/104">NEJUG Meeting of 08-Oct-2009</a></p>
<p>Profiles</p>
<ol>
<li>Will enable deployment with subset of JEE feature set – so can leave out parts you don’t use – thinner footprint, less complexity?</li>
</ol>
<p>Theme = Loose Coupling</p>
<ol>
<li>decouple server and client via well-defined types and “qualifiers” (beyond Interfaces)</li>
<li>decouple lifecycle of collaborating components via
<ol>
<li>server-side lifecycle management by Container</li>
<li>allow stateful components to interact like services via message-passing</li>
</ol>
</li>
<li>decouple orthogonal concerns via Interceptors</li>
<li>decouple msg producer from consumer via Events</li>
</ol>
<p>Theme = Strong Typing</p>
<ol>
<li>eliminate lookup using string-based names
<ol>
<li>enables smarter auto-complete, more power in compiler type checking</li>
</ol>
</li>
</ol>
<p>What’s unique?</p>
<ol>
<li>implementations of a type may vary at deployment time – without need for central list of available implementations
<ol>
<li>no need to explicityl list beans (e.g., Spring) or use Java-based DSL (Guice)</li>
</ol>
</li>
</ol>
<p>What kinds of things can be injected and how?</p>
<ol>
<li>Most java classes</li>
<li>EJB session beans</li>
<li>Objects returned by producer methods</li>
<li>Java EE resources (e.g., JMS topics/queues)</li>
<li>Persistence contexts (JPE EntityManager)</li>
<li>Web service references</li>
<li>Remote EJB references</li>
<li>anything else can be supported through SPI (flexible extensibility via metamodel)</li>
<li>Can define business-sensible attributes to specify injection types (e.g., InformalGreeting extends Greeting class, then have an @Informal attribute)</li>
<li>Can use injected object in a JSF or JSP page – e.g., container will instantiate the right objects (construct as needed, etc.) and pass it is such as in: &lt;h:commandButton value=”Say Hello” action=”#{printer.greet}”/&gt;</li>
<li>Beans may need to be stateful – this is supported too – handled as lifecycle attributes such as @RequestScoped for per-request or</li>
</ol>
<p>Scopes and Contexts</p>
<ol>
<li>Extensible context model</li>
<li>Dependent scope, @Dependent</li>
<li>Built-in scopes
<ol>
<li>@ApplicationScoped, @RequestScoped, for servlet we have @SessionScoped [e.g., Login state object may store username in a member variable], for JSF requests @ConversationScoped</li>
</ol>
</li>
<li>Custom scopes – third party frameworks can support via SPI</li>
<li>KEY POINT: Client does NOT know anything about the lifecycle of the session-scoped object</li>
<li>Conversation context is scoped INSIDE OF (DOES IT NEED TO BE WITHIN, or is it just defined as more granular a SCOPE than) a session – can have more than one Concersation that don’t know about each other – supports multiple tabs, wizards, AJAX and other multi-step sub-tasks</li>
<li><strong>Better abstracts some concepts – a set of mappings can be defined such that a class can <em>loosely reference (my term)</em>, say, a value from another object (like the user’s first name, from the Login object), and the container will take care of all the heavy lifting and just insert that value – nicely separates lookup logic so your business logic code can stay cleaner and refer to (as in example above) their “first name”, not the Login object directly </strong></li>
</ol>
<p>Interceptors</p>
<ol>
<li>ANOTHER APPROACH FOR WHAT ASPECTS ARE USED FOR TODAY
<ol>
<li>Perceived to be more flexible, more generally useful (there are very few uses for Aspects now – nothing new in 5-10 years!)</li>
</ol>
</li>
<li>Should be decoupled from implementation via semantic annotations</li>
<li>Should be deployment-specific – e.g., can turn off my transaction support during testing</li>
<li>Ordering of interceptors matters – so do this centrally so you can manage/understand it – don’t bing interceptors directly to components</li>
</ol>
<p>Stereotypes</p>
<ol>
<li>Reuse patters – not just Interceptor bindings!</li>
<li>Capture roles of components using stereotypes</li>
<li>A Stereotype packages up:
<ol>
<li>a default scope</li>
<li>a set of interceptor bindings</li>
<li>the ability to specify that beans have names by defaults</li>
<li>(more)</li>
</ol>
</li>
<li>Uses @Stereotype annotation</li>
</ol>
<p>Events</p>
<ol>
<li>Can be injected – as in void Login(<strong>@Observes</strong> LoggedIn loggedin)…</li>
</ol>
<p>Proposed final draft of JSR-299: <a href="http://www.jcp.org/en/jsr/detail?id=299">http://www.jcp.org/en/jsr/detail?id=299</a></p>
<p>Seam Framework reference implementation: <a href="http://seamframework.org/WebBeans">http://seamframework.org/WebBeans</a></p>
<p>JBoss doc: <a href="http://docs.jboss.org/webbeans/reference/current/en-US/html/">http://docs.jboss.org/webbeans/reference/current/en-US/html/</a></p>
<p>Blog: <a href="http://in.relation.to/Bloggers/Everyone/Tag/Web+Beans">http://in.relation.to/Bloggers/Everyone/Tag/Web+Beans</a></p>
<p>&#8212;-</p>
<p>Value of more Type Safety in a world where Dynamic Languages are gaining traction</p>
<p>Debugging might be more challenging</p>
<p>Performance issues?</p>
<p>Complexity / tooling issues?</p>
<p>How is this different / better / worse than Spring?</p>
<br />Posted in Programming, Trip Report Tagged: Java <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/468/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/468/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/468/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/468/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/468/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/468/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/468/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/468/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/468/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/468/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/468/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/468/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/468/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/468/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=468&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/12/01/java-jsr-299-at-nejug-meeting-08-oct-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Cure for Phantom Mouse Clicks on Acer Netbook Laptop Tablet from Microsoft PDC</title>
		<link>http://blog.codingoutloud.com/2009/12/01/cure-for-phantom-mouse-clicks-on-pdc-acer-netbook-laptop-tablet/</link>
		<comments>http://blog.codingoutloud.com/2009/12/01/cure-for-phantom-mouse-clicks-on-pdc-acer-netbook-laptop-tablet/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 19:24:30 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Trip Report]]></category>
		<category><![CDATA[PDC]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/?p=462</guid>
		<description><![CDATA[If you attended the Microsoft PDC in 2009, you received what appeared to be an Acer Netbook, but in fact is technically an Acer Laptop (that&#8217;s what Acer support insists), though apparently is also a considered a Tablet - the Acer Aspire 1420P Convertible Tablet PC. But a Convertible Tablet at that&#8230;  Talk about an identity crisis. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=462&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you attended the <a href="http://microsoftpdc.com">Microsoft PDC</a> in 2009, you received what appeared to be an Acer <a href="http://en.wikipedia.org/wiki/Netbook">Netbook</a>, but in fact is technically an Acer Laptop (that&#8217;s what Acer support insists), though apparently is also a considered a <a href="http://microsoftpdc.com/tablet">Tablet</a> - the <em>Acer Aspire 1420P Convertible Tablet PC</em>. But a Convertible Tablet at that&#8230; </p>
<p>Talk about an identity crisis. Maybe we should just call it, more simply, the PDC Netabletible Convertilizer? </p>
<p>If yours has trouble with &#8220;phantom mouse clicks&#8221; &#8211; where you are typing away, and it seems that somehow the left mouse button was just clicked, but you <em>know</em> you didn&#8217;t click it &#8211; that can be fixed with the simple act of installing the <a href="http://www.synaptics.com/support/drivers">Synaptics driver</a> for this machine that, weirdly, will not ever show up in Windows Update.  But since this is a pretty useful update, consider doing it the old fashioned way. </p>
<p>Or at least it worked for me. Though belated, this blog post may save someone the challenge of finding the cure, which I thought more difficult than it oughta be. </p>
<p>The PDC Netabletible Convertilizer <a href="http://social.answers.microsoft.com/Forums/en-IE/w7hardware/thread/cfbf2ec1-0626-4690-8547-ed25fc9843d5">may not be the only one out there with this problem</a>.</p>
<p>As an aside, my PDC Netabletible Convertilizer also became more usable once I recalibrated the touch screen. (How does one do that? Type into the search field in the Start menu &#8220;calibrate touch&#8221; for a link to the right part of Control Panel to make this happen&#8230;)</p>
<br />Posted in Trip Report Tagged: PDC <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/462/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=462&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/12/01/cure-for-phantom-mouse-clicks-on-pdc-acer-netbook-laptop-tablet/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>October 2009 Boston Azure User Group Meeting Notes</title>
		<link>http://blog.codingoutloud.com/2009/12/01/boston-azure-user-group-has-successful-first-meeting/</link>
		<comments>http://blog.codingoutloud.com/2009/12/01/boston-azure-user-group-has-successful-first-meeting/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 18:41:13 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/?p=446</guid>
		<description><![CDATA[Meeting #1 of Boston Azure User Group! Keynote speaker: Brian Lambert of Microsoft Meeting was held Thursday October 22, 2009 at Microsoft NERD in Cambridge, MA Mike Werner (Microsoft evangelist for Azure in the Northeast) introduced the user group at this innaugural meeting, plugged the upcoming Microsoft PDC, then introduced Bill Wilder, the guy who started [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=446&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h1>Meeting #1 of Boston Azure User Group!</h1>
<h2>Keynote speaker: Brian Lambert of Microsoft</h2>
<h3>Meeting was held Thursday October 22, 2009 at Microsoft NERD in Cambridge, MA</h3>
<p>Mike Werner (Microsoft evangelist for Azure in the Northeast) introduced the user group at this innaugural meeting, plugged the upcoming <a href="http://microsoftpdc.com">Microsoft PDC</a>, then introduced <a href="http://bostonazure.org/Home/About">Bill Wilder, the guy who started the Boston Azure User Group</a>.</p>
<p>Bill Wilder provided an overview of the group (<a href="http://codingoutloud.files.wordpress.com/2009/12/bostonazure-meeting-on-22-oct-2009.ppt">powerpoint slides</a>):</p>
<ul>
<li>All meetings will have Windows Azure focus</li>
<li>Any technology or business concept &#8211; cloud models, Microsoft dev technologies, tools, and so forth - is fair game, but must be presented with appropriate Azure slant: they need to be related back to Azure or else they are not appropriate for Boston Azure User Group meetings</li>
</ul>
<p>Brian Lambert spoke on how to build applications for Windows Azure.</p>
<h3>Bill&#8217;s raw notes from Brian&#8217;s talk:</h3>
<ul>
<li>Can call unmanaged DLLs through Full Trust</li>
<li>“Fabric Controller worries about the “shape” of your app”</li>
</ul>
<p>Worker Roles</p>
<ul>
<li>Background processing – utility computing</li>
<li>May communicate with outside services</li>
<li>Not externally visible to client</li>
<li>Queues ~ how we communicate to a Worker Role ~ since both Worker Roles and Web Roles can talk to storage (like Queues), this is a good medium</li>
</ul>
<p>There are public and private containers in blog storage. Public is the only accessible to clients (w/o keys that is).</p>
<p>Partitioned for scale</p>
<p>Blobs = ? “cloud files”</p>
<ul>
<li>Up to 50 GB / blob + 8k of metadata</li>
</ul>
<p>Azure Dev Workflow:</p>
<ul>
<li>Add some Web Role(s)</li>
<li>Add 0+ Worker roles</li>
<li>Add Service  Configuration</li>
<li>Add Service Package</li>
<li>Upload to Windows Azure Management Portal</li>
<li>Deploy to Windows Azure Fabric Controller</li>
<li>Provision / Run the roles and storage needs; monitors the health</li>
</ul>
<p>Sticky Storage ?</p>
<p>….</p>
<p>Azure Tools + Azure SDK</p>
<p>….</p>
<p>For “dev” + “test” + “etc.” – may want to use REAL azure accounts – not just the “other account” you have in your main production account</p>
<p>….</p>
<p>Need to handle the “at least one worker role will work on it” contract – your application needs to be designed for this…</p>
<p>“poison message” – due to bug or oversight or bad data, a message from the queue will NEVER be successfully handled. App needs to handle this currently.</p>
<p>Queue timeouts can have different values – could be, say, different for different message types.</p>
<p>….</p>
<p>Worker Role =&gt; a class that inherits from WorkerRoleMain (what was this class name??)</p>
<p>Fabric occassionally calls GetHealthStatus() which returns a RoleStatus. If you tell the Fabric you are Unhealthy, the Fabric may slay you? Maybe your NIC card is flakey, so your performance to external web services is too slow?</p>
<p>….</p>
<p>Public container for blob – for actual image (full size) linked to from the thumb.</p>
<p>“Fiddler is your friend when you’re working … watch your requests.”</p>
<p>Dev Fabric + Cloud Storage is an excellent mode to run in for effective debugging – can watch the message traffic with Fiddler.</p>
<p>“There is no debugging in the cloud. There’s logging.”</p>
<p>RoleManager can also write to “local storage” [[more interesting access / features coming soon!]] – then can go to Portal and use “configuration” button to update your config file to “copy logs” (did they move it?)</p>
<p>===========</p>
<p>can even bring web site up with <a href="http://localhost:8020"><strong>http://localhost:</strong>8020</a> </p>
<p>WorkerRole is very simple to just run it in a process</p>
<p>Use Test Running to fire up a WorkerRole</p>
<ul>
<li>Tight dev cycle</li>
<li>Can also now run a performance profile</li>
</ul>
<p>Tricks: log in “real fabric”, write to console in “dev fabric”</p>
<br />Posted in Boston Azure User Group  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/446/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/446/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/446/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/446/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/446/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/446/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/446/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/446/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/446/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/446/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/446/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/446/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/446/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/446/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=446&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/12/01/boston-azure-user-group-has-successful-first-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Intuit as a Service</title>
		<link>http://blog.codingoutloud.com/2009/12/01/intuit-as-a-service/</link>
		<comments>http://blog.codingoutloud.com/2009/12/01/intuit-as-a-service/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 17:54:41 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Trip Report]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/?p=443</guid>
		<description><![CDATA[My notes from Intuit talk at Boston Cloud Meetup on Nov 3, 2009. Per Alex Barnett of Intuit – only 12% of 4m Small Businesses not willing to use hosted data with SaaS. Webware 100 finalists… best software solutions. How do cloud-based apps Integrate? Finance system know the project in Basecamp is done Calendar know [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=443&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>My notes from Intuit talk at <a href="http://www.meetup.com/Boston-cloud-services/calendar/11640857/">Boston Cloud Meetup on Nov 3, 2009</a>.</p>
<p>Per <a href="http://alexbarnett.net/blog/">Alex Barnett</a> of Intuit – only 12% of 4m Small Businesses not willing to use hosted data with SaaS.</p>
<p>Webware 100 finalists… best software solutions.</p>
<p>How do cloud-based apps Integrate?</p>
<ul>
<li>Finance system know the project in Basecamp is done</li>
<li>Calendar know about CRM</li>
</ul>
<p>Simplify by mapping services to a COMMON DATA MODEL (this is a REALLY big deal, IMHO).</p>
<p>QuickBooks have 4 m customers who have effectively agreed on a database schema… exposed an API to this data store. Nice…</p>
<p>The “Small Business Data Cloud” – available today from Intuit – as the Intuit Partner Platform.</p>
<p><strong>native apps</strong></p>
<ul>
<li>Flex applications hold the logic</li>
<li>Server-side Java coming in development</li>
</ul>
<p><strong>federated apps</strong></p>
<ul>
<li>identity</li>
<li>data</li>
<li>billing</li>
<li>most of the action is over here (rather than native apps)</li>
</ul>
<p>They expect to ship 1.7 m units of QB 10 over next 6-12 months – this will really launch the platform.</p>
<p>4 m users spending 4 b hours per year of screen time</p>
<p>25 million users within these Small Businesses</p>
<p>FAST TIME TO VALUE through SaaS solutions.</p>
<p>Intuit keeps 20% of the rate, rest goes to developers</p>
<p>Can have trial-periods, entitlements (monthly-charged extra features), more options coming next year.</p>
<p>Developers support the apps – Intuit supports everything else.</p>
<p><a href="http://code.intuit.com">http://code.intuit.com</a> – some Open Source in here</p>
<ul>
<li>some code uses SAML</li>
<li>support Java, Python, Ruby, PHP, and .NET versions of code, such as SAML gateway</li>
</ul>
<p><a href="http://developer.intuit.com">http://developer.intuit.com</a></p>
<p>Intuit – SMB, 4m customers</p>
<p>Salesforce – Enterprises, 25k customers</p>
<p>Is it a per-user, or per-customer license? Intuit end-users don’t need a license.</p>
<p>Don’t need to license QuickBooks to use the overall platform – but there may be some synergies.</p>
<p>Intuit certifies apps for use in their marketplace. Federated apps go through a third-party security assessment – on Intuit’s dime today, though that may change in the future.</p>
<br />Posted in Cloud Computing, Trip Report  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/443/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=443&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/12/01/intuit-as-a-service/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Top 10 Presentation Tips from Presentation Camp Boston</title>
		<link>http://blog.codingoutloud.com/2009/10/26/top-10-presentation-tips-from-presentation-camp-boston/</link>
		<comments>http://blog.codingoutloud.com/2009/10/26/top-10-presentation-tips-from-presentation-camp-boston/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 10:57:44 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Presenting]]></category>
		<category><![CDATA[Trip Report]]></category>
		<category><![CDATA[presentation camp]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=418</guid>
		<description><![CDATA[I attended Presentation Camp Boston, a bar-camp style conference, on 24-Oct-2009. There were many good ideas and presentation tips. Among them, these are my favorites. Top 10 Presentation Tips The top 10 presentation tips I took away from Presentation Camp Boston From Kenny Raskin&#8216;s keynote: 1. “Have a Passionate Purpose” When you are speaking, it [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=418&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I attended <a href="http://PresentationCampBoston.org">Presentation Camp Boston</a>, a bar-camp style conference, on 24-Oct-2009. There were many good ideas and presentation tips. Among them, these are my favorites.</p>
<h1>Top 10 Presentation Tips</h1>
<p><em><strong>The top 10 presentation tips I took away from Presentation Camp Boston</strong></em></p>
<h2>From <a title="Kenny Raskin's web site" href="http://kennyraskin.com/">Kenny Raskin</a>&#8216;s keynote:</h2>
<h4>1. “Have a Passionate Purpose”</h4>
<p>When you are speaking, it is not only about the content. If you mean what you say &#8211; you really believe in it &#8211; (which I believe Dale Carnegie refers to as <em>conviction</em>) - then you are more likely to be successful at conveying your message and persuading your audience.</p>
<p>Kenny shared a quote which was something like the following:</p>
<blockquote><p>Who you are being when you are saying what you are saying says more about what you are saying that what you are saying.</p></blockquote>
<p>Not just <em><strong>sell it</strong></em> &#8211; it was <em><strong>believe it + sell it</strong></em> both at once. This tip resonates with me and is consistent with a lesson from studying and performing <a href="http://improvboston.com">improv</a>; one of my instructors, <a href="http://improvforlife.net/">Erik Volkert</a>, really got across the difference between <em>acting it out </em>and <em>really committing</em> &#8211; and the impact that has on stage.</p>
<h3>2. “The presentation starts before you are even in the room”</h3>
<ul>
<li>Find out who the audience is and what you want to say to them. What do you want them to FEEL. (“Know your passionate purpose!”)</li>
<li>As you are preparing to enter as a speaker, take a breath. Focus. Clear your mind.</li>
<li>As you enter, look your audience in the eyes. Before you say a word. Greet the audience. Pause… and let them respond.</li>
</ul>
<h3>3. Genuine eye contact != scanning</h3>
<p>Eye contact is important. Don&#8217;t scan the audience and think that&#8217;s eye contact &#8211; you need to pause and connect with individuals one at a time &#8211; this may be for the duration of a thought or statement &#8211; or just until you feel you&#8217;ve connected. Some of your eye contact moments will be during pauses and are your opportunity to re-energize by breathing.</p>
<h2>From <a href="http://effectivenetworking.com/">Diane Darling</a>&#8216;s Talk about <em>Networking</em>:</h2>
<p>Not about presenting to large groups, but focused on presenting to very small groups of one or a few other folks in a social / networking situation.</p>
<h3>4. Business Cards from A-Z</h3>
<p>Some wisdom on business cards:</p>
<ul>
<li>You need business cards. And they don&#8217;t need to be plain and boring&#8230; Diane&#8217;s cards have a list of tips on one side &#8211; useful and &#8220;<a href="http://www.amazon.com/Made-Stick-Ideas-Survive-Others/dp/1400064287/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1256734198&amp;tag=devpartners-20&amp;sr=8-1">sticky</a>&#8220;.</li>
<li>She advises to keep <em>your</em> business cards in one pocket, and <em>the ones you collect</em> in another pocket &#8211; just have a simple system to avoid fumbling.</li>
<li>Write on the business cards &#8211; you may forget later otherwise that this card is from someone you offered to send a link to an interesting paper, or perhaps they might be a future business partner. Handy, easy hack.</li>
<li>If you do give a talk to a group, be sure to have a stack of cards handy to share at the end.</li>
</ul>
<h3>5. “Own the room”</h3>
<blockquote><p>I am a highly functional introvert<br />
~ Diane Darling, author of <a href="http://www.amazon.com/exec/obidos/ASIN/0071409998/effectivenetw-20"><em>The Networking Survival Guide: Get the Success You Want By Tapping Into the People You Know</em></a></p></blockquote>
<p>I love that quote! As a fellow introvert, that&#8217;s how I want to be. Diane builds a case for being highly functioning with a plethora of straight-forward tips on how to handle lots of business social situations. A couple of examples:</p>
<ul>
<li>Prepare several generic ice breaker questions you can use when you meet someone new. A good format for such questions is &#8220;Tell me about ______.&#8221; You fill in the blank with &#8220;your job&#8221; or &#8220;how you got into this line of work&#8221; or &#8220;how you ended up at this conference&#8221; etc.</li>
<li>Wear your name tag close to your RIGHT shoulder (since that&#8217;s where the eye most naturally is directed during a hand-shake.</li>
<li>Don&#8217;t start with your name! Introduce yourself by saying something about yourself, and <em>end with your name</em> – it is easier to remember there.</li>
<li>Saturday Night “Live” != Saturday Night “Unrehearsed” &#8212; you will be more successful if you practice some of what you will say &#8212; like what is your brief introduction of yourself (your elevator pitch), ending with your name, of course!</li>
</ul>
<h3>6. Connect with the Gatekeepers</h3>
<p>If you want to get access to key people who may be hard to get to, consider connecting with those people who control access &#8211; such as a personal assistant to the CEO.</p>
<h2>From <a href="http://edvangelist.spaces.live.com/">Edwin Guarin</a>&#8216;s talk, <em>The Killer Presentation</em>:</h2>
<p>Edwin is an <a title="Edwin Guarin's twitter address" href="http://twitter.com/edvangelist">Academic Evangelist for Microsoft</a>. His talk was called <em>The Killer Presentation &#8211; Gettting to Point B</em>.</p>
<h3>7. Distributing Your PowerPoint Deck</h3>
<p>Suppose you&#8217;ve given a talk, but now your audience wants a copy. Here&#8217;s how to do it, plus a couple of important benefits:</p>
<ul>
<li>File &gt; Save As&#8230; and choose either <strong>PDF</strong> or <strong>PowerPoint Show</strong>.</li>
<li>If you have Hidden slides &#8211; perhaps because you want &#8220;single source&#8221; for a slide deck that you use in multiple circumstances, but don&#8217;t want to maintain the bulk of the slides more than once &#8211; this will drop all those marked as hidden at the time you Save As.</li>
<li>If you have Notes, they are not included either. Sometimes your Notes are just speaking points, but perhaps they are not something you want everyone to see.</li>
</ul>
<h3>8. Spruce Up Your Talk with Images</h3>
<p>You are preparing a deck, and you want to be memorable. You want that &#8220;just right&#8221; image or text effect.</p>
<ul>
<li>Edwin recommends the use of royaty-free photos from <a href="http://sxc.hu/">http://sxc.hu</a>.  You need to create an account to access them, then are free to use them in your PowerPoint slides.</li>
<li>Note that you are not licensed to subsequently redistribute these images if they are embedded in your PowerPoint deck. I registered an account on sxc.hu web site asking for clarification &#8211; and there was a tad bit of ambiguity around the licensing (the license text seem to both suggest it was fine and also say it wasn&#8217;t) &#8211; so I sent in a specific question on this scenario. The response from sxc.hu support was that the PowerPoint cannot be posted for redistribution. I am not a lawyer. And I do not even play a lawyer on TV.</li>
<li>[In <a href="http://blog.codingoutloud.com/2009/10/25/better-tech-talks-session-from-presentation-camp-boston/">my talk</a>, I advocate searching through <a href="http://images.google.com/advanced_image_search">Google Images advanced search</a> and filtering by <strong>Usage Rights</strong> to only include images <strong>labeled for reuse</strong> (usually through <a href="http://creativecommons.org">Creative Commons</a>).]</li>
<li>To embed an image that is too bright, overlay it with a rectangle &#8211; and set the transparency to accordinly to fade it a bit so that text can be seen on top of it.</li>
<li>Use SmartArt to snazz up your text… transform a bullet list into a ring, or horizontal property or other eye-candy fanciness.</li>
</ul>
<h2>From <a href="http:/brainshark.com/">Brainshark</a> demo:</h2>
<h3>9. Sharing Your Presentation After the Fact</h3>
<p>Brainshark has a cool way for you to post your slide-deck to their free <a href="http://my.brainshare.com/">http://my.brainshare.com</a> hosted service: you can upload both the deck *and* an audio track.</p>
<p>This is way better than just distributing the PowerPoint deck, which may not be of any use for people who didn&#8217;t attend the talk. Of course, you do need to create (or record) an audio track.</p>
<p>I am not sure how the slides and the audio are sync&#8217;d &#8211; like when in the audio track should slide 7 pop in &#8211; but my guess is that you are expected to record your voice while delivering the talk &#8211; and some agent on your desktop keeps an eye on when you transition between slides. If so, I wonder if it can also capture screen shots of non-PowerPoint activities &#8211; like if I pop up a web browers, or use Visual Studio.</p>
<h2>From Bill Wilder&#8217;s talk on <a href="http://blog.codingoutloud.com/2009/10/25/better-tech-talks-session-from-presentation-camp-boston/">Better Tech Talks</a>:</h2>
<p>Yes, I am recommending a tip from my own talk. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<h3>10. “It is a Talk, not a Read”</h3>
<p>Don&#8217;t even thing of reading your slides to your audience.</p>
<ul>
<li>If you cram all the text for your talk into your deck , you will be guilty of promulgating support for <strong><em>Death By PowerPoint</em></strong>.</li>
<li>Your audience can read faster than you can talk anyway &#8211; they will be done before you. And they won&#8217;t be listening to you while they read; they can&#8217;t do both at once.</li>
<li>Your audience will resent being read to. As Jack Welch is reputed to have said to a presenter reading him the slides: if everything is on the slides, then we don&#8217;t need you.</li>
<li>There are better tools for a stand-alone document &#8211; like blog posts, or word-processors. PowerPoint is a poor substitute when writing a document that is being prepared for general reading.</li>
<li>If you do need to capture more info than belongs in the slides, consider putting it into the Notes section, and then using dual-monitor capabilities to have your laptop display different content than the projector, and configure PowerPoint to know about this via:  Slide Show &gt; Set Up Show &gt; Multiple Monitors.</li>
</ul>
<br />Posted in Presenting, Trip Report Tagged: presentation camp <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/418/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/418/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/418/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=418&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/10/26/top-10-presentation-tips-from-presentation-camp-boston/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Better Tech Talks session from Presentation Camp Boston</title>
		<link>http://blog.codingoutloud.com/2009/10/25/better-tech-talks-session-from-presentation-camp-boston/</link>
		<comments>http://blog.codingoutloud.com/2009/10/25/better-tech-talks-session-from-presentation-camp-boston/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 03:05:18 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Bill gave a talk]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Presenting]]></category>
		<category><![CDATA[presentation camp]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=403</guid>
		<description><![CDATA[I attended Presentation Camp Boston on Saturday 24-Oct-2009. I sat in on several excellent talks, plus led a session myself called Better Tech Talks. which was a presentation &#38; discussion on giving technical talks to technical people. I&#8217;ve been thinking a lot about how to give code-centric talks to software engineers, plus the general problem [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=403&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I attended Presentation Camp Boston on Saturday 24-Oct-2009. I sat in on several excellent talks, plus led a session myself called <em><strong>Better Tech Talks</strong></em>. which was a presentation &amp; discussion on giving technical talks to technical people.</p>
<p>I&#8217;ve been thinking a lot about how to give code-centric talks to software engineers, plus the general problem of clear communication through presentations. Those in my session will recognize that my slides (<a href="http://codingoutloud.files.wordpress.com/2009/10/better-tech-talks-24-oct-2009.ppt">Better Tech Talks &#8211; 24-Oct-2009</a>) do not stand alone well! &#8211; but should serve as a good reminder for those who participated in the session.</p>
<p>Feel free to follow-up with me to continue the discussion!</p>
<br />Posted in Bill gave a talk, Events, Presenting Tagged: presentation camp <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/403/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/403/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/403/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=403&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/10/25/better-tech-talks-session-from-presentation-camp-boston/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Boston Azure User Group Now on the Map!</title>
		<link>http://blog.codingoutloud.com/2009/10/20/boston-azure-user-group-now-on-the-map/</link>
		<comments>http://blog.codingoutloud.com/2009/10/20/boston-azure-user-group-now-on-the-map/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 15:44:03 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>
		<category><![CDATA[azure]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=387</guid>
		<description><![CDATA[The Boston Azure User Group is a Cloud Computing community group focusing on Windows Azure, Microsoft&#8217;s Cloud platform, and &#8230; The Boston Azure User Group is now on the map &#8211; literally! Check out Jim O&#8217;Neil&#8217;s user group map. Zoom in on Cambridge, MA and you will see us waving from the NERD center. Thanks [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=387&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The <a title="Boston Azure User Group" href="http://bostonazure.org">Boston Azure User Group</a> is a Cloud Computing community group focusing on Windows Azure, Microsoft&#8217;s Cloud platform, and &#8230;</p>
<h2>The Boston Azure User Group is now on the map &#8211; literally!</h2>
<p>Check out <a href="http://blogs.msdn.com/jimoneil/pages/area-user-groups.aspx">Jim O&#8217;Neil&#8217;s user group map</a>. Zoom in on Cambridge, MA and you will see us waving from the NERD center. Thanks Jim!</p>
<p>While not as awesomely interactive and visual as a Bing map, we do appreciate other people plugging the user group:</p>
<ul>
<li><a href="http://www.bostonusergroups.org/Lists/Events/DispForm.aspx?ID=136">Boston User Groups</a></li>
<li><a href="http://bugc.org">The Boston-area User Group Calendar</a></li>
<li>Our friends at <a href="//www.nhdn.com/DNN/">New Hampshire .NET</a></li>
<li><a href="http://www.communitymegaphone.com/ShowEvent.aspx?EventID=2149">Community Megaphone</a></li>
<li>Chris Bowen&#8217;s Blog : <a href="http://blogs.msdn.com/cbowen/archive/2009/09/27/announcing-the-boston-azure-user-group.aspx">Announcing the <em>Boston Azure User Group</em></a> (might be the earliest mention ~ thanks Chris!)</li>
<li>From ASP Scribe: <a href="http://www.aspscribe.com/?p=10937">User Group Happenings East and West and in Between</a></li>
<li>And a mention or two from <a href="http://oakleafblog.blogspot.com/2009/10/windows-azure-and-cloud-computing-posts_08.html">Roger Jenning&#8217;s blog</a></li>
</ul>
<p>Speaking of <a href="http://www.blogger.com/profile/01700526164060680385">Roger Jennings</a>&#8230; at the first <a href="http://bostonazure.org">Boston Azure meeting</a> this Thursday night (Thu 22-Oct-2009 @ 6:30), we&#8217;ll give away copy of his hot-off-the-presses book <a href="http://www.amazon.com/Cloud-Computing-Windows-Azure-Platform/dp/0470506385/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1256088991&amp;sr=8-1">Cloud Computing with the Windows Azure Platform</a>!</p>
<p>I found Roger Jennings&#8217; book chock full of useful information &#8211; from context to detail to practical code samples. I stopped at Barnes &amp; Noble after a user group meeting in Burlington and picked up my own personal copy &#8211; why no Kindle version!? &#8211; and quickly plowed through it. Now I want to go back and play around with the abundant code samples. And in case you are wondering &#8211; no, this isn&#8217;t the copy we&#8217;ll be giving away&#8230;we have a new one.</p>
<div id="_mcePaste" style="overflow:hidden;position:absolute;left:-10000px;top:0;width:1px;height:1px;">
<h1>The <span style="color:blue;font-size:xx-large;">B</span>oston-area <span style="color:blue;font-size:xx-large;">U</span>ser <span style="color:blue;font-size:xx-large;">G</span>roup <span style="color:blue;font-size:xx-large;">C</span>alendar</h1>
</div>
<br />Posted in Boston Azure User Group Tagged: azure <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/387/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/387/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/387/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/387/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/387/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/387/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/387/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/387/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/387/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/387/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/387/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/387/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/387/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/387/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=387&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/10/20/boston-azure-user-group-now-on-the-map/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Gary Chin Presents SketchFlow at Code Camp 12 in Boston</title>
		<link>http://blog.codingoutloud.com/2009/10/18/gary-chin-presents-sketchflow-at-code-camp/</link>
		<comments>http://blog.codingoutloud.com/2009/10/18/gary-chin-presents-sketchflow-at-code-camp/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 14:26:54 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=371</guid>
		<description><![CDATA[Gary Chin on SketchFlow for Silverlight Gary Chin spoke at Boston Code Camp 12 (on Oct 17, 2009) &#8211; his talk was all about using SketchFlow for Silverlight. I heard from various folks that the talk went really well. Unfortunately, I wasn&#8217;t able to make it since I was presenting at the same time (actually [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=371&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Gary Chin on SketchFlow for Silverlight</h2>
<p><a title="Gary Y. Chin" href="http://www.thedevcommunity.org/Speakers/ProfileSummary.aspx?id=110">Gary Chin</a> spoke at<a href="http://thedevcommunity.org/Events/PresentationList.aspx?id=13"> Boston Code Camp 12</a> (on Oct 17, 2009) &#8211; his talk was all about <a href="http://thedevcommunity.org/Events/PresentationSummary.aspx?id=426&amp;pid=516">using SketchFlow for Silverlight</a>.</p>
<p>I heard from various folks that the talk went really well. Unfortunately, I wasn&#8217;t able to make it since I was presenting at the same time (actually <a href="http://thedevcommunity.org/Events/PresentationSummary.aspx?id=422&amp;pid=512">presenting on presenting</a>.)</p>
<p>Gary was kind enough to send me his slides which I have attached to this post: <a href="http://codingoutloud.files.wordpress.com/2009/10/sketchflow-garychin-oct2009.pptx">SketchFlow-GaryChin-Oct2009</a></p>
<p>See you at the next Code Camp! (Though will probably also see many of you before then &#8211; this Thursday night at the first meeting of the <a href="http://bostonazure.org">Boston Azure User Group</a>!)</p>
<br />Posted in Programming  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/371/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/371/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/371/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=371&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/10/18/gary-chin-presents-sketchflow-at-code-camp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Boston West Toastmasters Scholarship and Open House</title>
		<link>http://blog.codingoutloud.com/2009/10/18/boston-west-toastmasters-scholarship-and-open-house/</link>
		<comments>http://blog.codingoutloud.com/2009/10/18/boston-west-toastmasters-scholarship-and-open-house/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 11:58:59 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Presenting]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=379</guid>
		<description><![CDATA[Boston West Toastmasters Reaching Out I&#8217;ve been a member of Toastmasters for the past couple of years. While Toastmasters has many clubs around the world, I belong to Boston West Toastmasters which meets in Needham, MA on the second and fourth Monday evenings. While at Boston West Toastmasters, I&#8217;ve made friends with some really cool [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=379&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Boston West Toastmasters Reaching Out</h2>
<p>I&#8217;ve been a member of <a title="Toastmasters International" href="http://toastmasters.org">Toastmasters</a> for the past couple of years. While <a href="http://reports.toastmasters.org/findaclub/">Toastmasters has many clubs around the world</a>, I belong to <a href="http://bwtoastmasters.com/">Boston West Toastmasters</a> which meets in <a href="http://www.google.com/maps?q=1153+Highland+Ave,+Needham+Heights,+MA+02494&amp;sa=X&amp;oi=map&amp;ct=title">Needham, MA</a> on the second and fourth Monday evenings.</p>
<p>While at Boston West Toastmasters, I&#8217;ve made friends with some really cool people (several of whom provided ideas for my <a title="So, You Want to Give Your First Code Camp Talk?" href="http://thedevcommunity.org/Events/PresentationSummary.aspx?id=422&amp;pid=512">Code Camp talk on giving technical presentations</a>) and have been working to improve my speaking skills <a href="http://freakonomics.blogs.nytimes.com/2008/03/11/how-did-a-rod-get-so-good/">through</a> <a href="http://money.cnn.com/magazines/fortune/fortune_archive/2006/10/30/8391794/index.htm">application</a> of <a title="From the lead author of the study" href="http://projects.ict.usc.edu/itw/gel/EricssonDeliberatePracticePR93.pdf">Deliberate Practice</a> (where the feedback, ideas, analysis, expert critique and encouragement all come from fellow Toastmaster members).</p>
<p>Now my club is reaching out to the community to help the unemployed, holding an open house encourage the general community to get a glimpse of what Toastmasters is all about&#8230; and not to mention taking part in a really fun social event.</p>
<div id="attachment_381" class="wp-caption alignright" style="width: 310px"><a href="http://codingoutloud.files.wordpress.com/2009/10/bwtoastmasters-002.jpg"><img class="size-medium wp-image-381" title="Photo of some Boston West Toastmaster members" src="http://codingoutloud.files.wordpress.com/2009/10/bwtoastmasters-002.jpg?w=300&#038;h=225" alt="Some Boston West Toastmaster members from 28-Sept-2009 meeting" width="300" height="225" /></a><p class="wp-caption-text">Some Boston West Toastmaster members from 28-Sept-2009 meeting</p></div>
<h3>Scholarship offer for Unemployed</h3>
<p>Full details are in the attached <a href="http://codingoutloud.files.wordpress.com/2009/10/toastmastersscholarshippressrelease10_5.doc">Boston West Toastmasters Scholarship Press Release from 5-Oct-2009</a>, but here&#8217;s the teaser:</p>
<blockquote><p><span style="font-family:Times New Roman;font-size:small;"><a href="http://bwtoastmasters.com">Boston West Toastmasters</a> is offering five scholarships to the unemployed who want to improve their speaking and leadership skills.  These scholarships, underwritten by <a href="http://www.partnerpromotionsinc.com/">Robin Samora, owner and president of Partner Promotions</a>, cover the annual membership dues for the winners.</span></p></blockquote>
<h3>Bring a Friend, Meet a Friend &#8211; Open House at Nov 9 Meeting</h3>
<p><span style="font-size:10pt;font-family:Symbol;color:black;"></span><span style="font-size:10pt;color:black;">Our meeting on 9-Nov-2009 will have a social hour before this meeting which is an Open House for Boston West Toastmaster. Anyone is welcome to attend this meeting &#8211; at no cost, no obligation. (The &#8220;no cost, no obligation&#8221; is actually true generally &#8211; feel free to check us out at any meeting &#8211; you won&#8217;t get a hard sell &#8211; just the information you might be interested in. For most people, Toastmasters sells itself.)</span></p>
<p><span style="font-size:10pt;color:black;">Here are the details: </span></p>
<blockquote><p><em><strong>Bring a friend, meet a friend at the Boston West Toastmasters Open House on Monday, November 9, 2009</strong></em>:</p>
<p>Mark your calendar for this important OPEN HOUSE.  It is a great opportunity to share your Toastmaster experience with friends, relatives and co-workers.  Invite them to attend the meeting.  We will have an informal start to greet guests and answer questions @ 6:30 p.m.  Robin Samora is our Toastmaster for this and we will have special snacks that evening during our Opening reception 6:30 &#8211; 7 for new members (and our team if possible).  Send an email to people inviting them to attend our OPEN HOUSE.  It will be a memorable event!!!</p></blockquote>
<p>You don&#8217;t need to let me know &#8211; thought would appreciate a heads-up so I can look for you &#8211; but just showing up is the key.</p>
<h3>Soiree in Back Bay &#8211; Social Night &#8211; Co-Sponsored by Boston West Toastmasters</h3>
<p>This looks like a really fun event: <a href="http://codingoutloud.files.wordpress.com/2009/10/soiree-in-back-bay-10_22-flyer.pdf">Soiree in Back Bay on 22-Oct-2009</a>, co-sponsored by Boston West Toastmasters.</p>
<p>[Unfortunately, you won't see me there - I will be at the kick-off meeting for my <a href="http://bostonazure.org/">Boston Azure User Group</a> that same night.]</p>
<br />Posted in Presenting  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/379/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/379/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/379/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/379/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/379/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/379/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/379/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/379/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/379/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/379/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/379/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/379/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/379/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/379/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=379&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/10/18/boston-west-toastmasters-scholarship-and-open-house/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/10/bwtoastmasters-002.jpg?w=300" medium="image">
			<media:title type="html">Photo of some Boston West Toastmaster members</media:title>
		</media:content>
	</item>
		<item>
		<title>So, You Want to Give Your First Code Camp Talk?</title>
		<link>http://blog.codingoutloud.com/2009/10/18/so-you-want-to-give-your-first-code-camp-talk/</link>
		<comments>http://blog.codingoutloud.com/2009/10/18/so-you-want-to-give-your-first-code-camp-talk/#comments</comments>
		<pubDate>Sun, 18 Oct 2009 11:33:49 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Bill gave a talk]]></category>
		<category><![CDATA[Presenting]]></category>
		<category><![CDATA[Code Camp]]></category>
		<category><![CDATA[Giving Tech Talks]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=370</guid>
		<description><![CDATA[Gave a talk 17-Sat-at Boston Code Camp 12 called So, You Want to Give a Code Camp Talk?. How to Give Your First Code Camp Talk &#8211; 17-Oct-2009 If you attended my talk, you learned than I don&#8217;t advocate ensuring the slide deck makes sense stand-alone (since it is a framework for a talk, with [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=370&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Gave a talk 17-Sat-at <a href="http://thedevcommunity.org/Events/PresentationList.aspx?id=13">Boston Code Camp 12</a> called <a title="Have you thought about giving a Code Camp talk but just can't get over the hump? Join this session for a discussion of how one guy went about it, for some tips on public speaking in a technical environment, and more resources for you to tune up your own speaking and presenting skills. If there is interest we can also chat about the technical talk YOU want to give in an upcoming Code Camp. NOTE: Does this topic appeal to you, either because you have something to add - or because you are the target audience member - I would really like to hear from you offline ahead of time. Please hop over to this blog post and leave a comment or email me (email info in the blog post): &lt;a href=&quot;http://blog.codingoutloud.com/2009/09/23/your-first-code-camp-talk/&quot;&gt;Your First Code Camp Talk&lt;/a&gt;" href="http://thedevcommunity.org/Events/PresentationSummary.aspx?id=422&amp;pid=512" target="_blank">So, You Want to Give a Code Camp Talk?</a>.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/10/how-to-give-your-first-code-camp-talk-17-oct-20091.ppt">How to Give Your First Code Camp Talk &#8211; 17-Oct-2009</a></p>
<p>If you attended my talk, you learned than I don&#8217;t advocate ensuring the slide deck makes sense stand-alone (since it is a framework for a talk, with purpose different than that of an article or blog post). You&#8217;ve been warned. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<br />Posted in Bill gave a talk, Presenting Tagged: Code Camp, Giving Tech Talks <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/370/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/370/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/370/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=370&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/10/18/so-you-want-to-give-your-first-code-camp-talk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>First Boston Azure User Group meeting next week</title>
		<link>http://blog.codingoutloud.com/2009/10/12/first-boston-azure-user-group-meeting-next-week/</link>
		<comments>http://blog.codingoutloud.com/2009/10/12/first-boston-azure-user-group-meeting-next-week/#comments</comments>
		<pubDate>Mon, 12 Oct 2009 11:24:08 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[User Group]]></category>
		<category><![CDATA[Windows Azure]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=359</guid>
		<description><![CDATA[We are getting close to the kick-off meeting of the Boston Azure User Group &#8211; next week, on Thursday October 22, 2009 starting with pizza at 6:30 at the NERD in Kendall Square. Microsoft&#8217;s Brian Lambert is the featured speaker. We have a couple of behind-the-scenes planning meetings this week then will finalize the information [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=359&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We are getting close to the kick-off meeting of the <a href="http://bostonazure.org">Boston Azure User Group</a> &#8211; next week, on Thursday October 22, 2009 starting with pizza at 6:30 at the NERD in Kendall Square. Microsoft&#8217;s Brian Lambert is the featured speaker.</p>
<p>We have a couple of behind-the-scenes planning meetings this week then will finalize the information on the bostonazure.org web site.</p>
<p>Have you joined the <a title="Boston Azure User Group - Join the Mailing list" href="http://bostonazure.org/JoinMailingList.aspx">Boston Azure User Group mailing list</a>?</p>
<br />Posted in Boston Azure User Group, Programming Tagged: Boston Azure User Group, User Group, Windows Azure <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/359/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=359&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/10/12/first-boston-azure-user-group-meeting-next-week/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Demystifying Prism &#8211; talk at New Hampshire .NET User Group 17-Jun-2009</title>
		<link>http://blog.codingoutloud.com/2009/10/09/demystifying-prism-talk-at-new-hampshire-net-user-group-17-jun-2009/</link>
		<comments>http://blog.codingoutloud.com/2009/10/09/demystifying-prism-talk-at-new-hampshire-net-user-group-17-jun-2009/#comments</comments>
		<pubDate>Sat, 10 Oct 2009 01:53:10 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Bill gave a talk]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[Code Camp]]></category>
		<category><![CDATA[Prism]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Talks]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=355</guid>
		<description><![CDATA[Spoke at New Hampshire .NET User Group back on June 17, 2009. Talked about Prism (focusing mostly on Silverlight, a little homage to WPF), showed some code, shared a slide deck. I will be giving an updated version of this talk at the upcoming Code Camp 12 in Waltham (Boston area) on Sat Oct 17, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=355&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Spoke at <a href="http://www.nhdn.com/">New Hampshire .NET User Group</a> back on June 17, 2009. Talked about Prism (focusing mostly on Silverlight, a little homage to WPF), showed some code, <a href="http://codingoutloud.files.wordpress.com/2009/09/demystifying-prism-new-hampshire-net-user-group-17-jun-2009.ppt">shared a slide deck</a>.</p>
<p>I will be giving an <a href="http://thedevcommunity.org/Events/PresentationSummary.aspx?id=380&amp;pid=466">updated version of this talk</a> at the upcoming <a title="Code Camp 12 - Boston" href="http://thedevcommunity.org/Events/PresentationList.aspx?id=13">Code Camp 12 in Waltham (Boston area) on Sat Oct 17, 2009</a>.</p>
<br />Posted in Bill gave a talk, Programming Tagged: .net, Code Camp, Prism, Silverlight, Talks <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/355/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/355/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/355/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/355/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/355/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/355/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/355/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/355/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/355/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/355/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/355/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/355/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/355/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/355/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=355&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/10/09/demystifying-prism-talk-at-new-hampshire-net-user-group-17-jun-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Supporting two domains in one ASP.NET MVC site &#8211; A Poor Man&#8217;s Approach</title>
		<link>http://blog.codingoutloud.com/2009/09/27/supporting-two-domains-in-one-asp-net-mvc-site-a-poor-mans-approach/</link>
		<comments>http://blog.codingoutloud.com/2009/09/27/supporting-two-domains-in-one-asp-net-mvc-site-a-poor-mans-approach/#comments</comments>
		<pubDate>Sun, 27 Sep 2009 16:20:04 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/2009/09/27/supporting-two-domains-in-one-asp-net-mvc-site-a-poor-mans-approach/</guid>
		<description><![CDATA[Hosting Two Different Domains in Same ASP.NET MVC Site Motivation – I am Cheap! I have a hosting account at DiscountASP.NET that I have used as a playground for anything I want to host on the web. My personal Coding Out Loud site is hosted there (with a few directories that are not linked, for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=343&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Hosting Two Different Domains in Same ASP.NET MVC Site</h2>
<h4>Motivation – I am Cheap!</h4>
<p>I have a hosting account at <a href="http://discountasp.net/">DiscountASP.NET</a> that I have used as a playground for anything I want to host on the web. My personal <a href="http://codingoutloud.com/">Coding Out Loud</a> site is hosted there (with a few directories that are not linked, for example). Since starting the Boston Azure User Group, I need a place to host a page. While I would eventually like to host the user group site on Azure itself, for now I have produced a simple ASP.NET MVC site. To avoid paying for two hosting accounts, I am reusing my existing account – sharing the hosting across bostonazureusergroup.org and codingoutloud.com – but still maintaining their distinct identities.</p>
<p>We can consider the <a href="http://bostonazureusergroup.org">Boston Azure User Group</a> the main site, and <a href="http://codingoutloud.com">Coding Out Loud</a> the secondary site.</p>
<h4>Requirements</h4>
<p>The approach I take makes sense to me since I want a solution that is:</p>
<ul>
<li>Very simple</li>
<li>Inexpensive</li>
<li>Easy to manage once implemented</li>
<li>Treats bostonazureusergroup.org as the main site, but “tolerates” codingoutloud.com being around (in other words, maintainability/risk of errors for codingoutloud.com is less important)</li>
</ul>
<h4>Solution</h4>
<p>In order to host two sites with a single hosting account, you have a few steps:</p>
<ol>
<li>Add a Domain Pointer with your ISP. If, like me, your site is hosted on a shared IP address, this step is necessary so that the site’s IIS web server knows which top-level directory your domain is associated with. In my case, this tells both codingoutloud.com and bostonazureusergroup.org to go to the same site.</li>
<li>Configure your DNS. This is easier than it sounds. Your ISP will tell which DNS servers your should point to. You could also deal with Godaddy’s Domain Forwarding and cloaking, but for a one-time cost of $15 with my ISP (DiscountASP.NET) I just added the pointer – a cleaner solution, and possible more search-engine-friendly.</li>
<li>Note that the following changes to the code are only necessary if you want different results dependent on which domain is used to access the site – in other words, I don’t want my bostonazureusergroup.org visitors to be stumbling across any codingoutloud.com artifacts, and vice versa. The following screen shot includes the <span style="text-decoration:line-through;">hack</span> simple code modifications – they are circled – a private method with a little dirty work, invoke the method in the right place, and display a specific View. Note that the view is specified in a different file – and under a folder that is specific to your secondary site – CodingOutLoud in my case.</li>
</ol>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/poormandomainpointermvc.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="Poor Man's Domain sharing in ASP.NET MVC" src="http://codingoutloud.files.wordpress.com/2009/09/poormandomainpointermvc_thumb.png?w=484&#038;h=202" border="0" alt="Poor Man's Domain sharing in ASP.NET MVC" width="484" height="202" /></a></p>
<p>To create the …/Views/CodingOutLoud/Index.aspx view shown in the right-hand pane in the screen shown above, you would do the following:</p>
<ol>
<li>Right-Click on <strong>Views </strong>folder and choose <strong>Add &gt; New Folder</strong> from the pop-up. I called mine “CodingOutLoud” and it is shown above.</li>
<li>Right-Click on the newly created <strong>Views/CodingOutLoud</strong> folder, this time choose <strong>Add &gt; View…</strong> from the pop-up, as shown below. I called my View “Index” (and since it lives under CodingOutLoud folder it does not clash with other Views with that name, given the default routing rules).</li>
</ol>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image30.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb31.png?w=186&#038;h=244" border="0" alt="image" width="186" height="244" /></a> </p>
<p>Name your view – and I also chose not to use the master page, so I unchecked it:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image31.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb32.png?w=227&#038;h=244" border="0" alt="image" width="227" height="244" /></a></p>
<p>Once created, …/Views/CodingOutLoud/Index.aspx can contain any code you like – even plain old HTML.</p>
<p>This is all it took to get this simple approach to work. Now when users visit via “codingoutloud.com” they are diverted to …/Views/CodingOutLoud/Index.aspx, and otherwise the usual machinery of ASP.NET MVC takes over.</p>
<h4>Other Potential Approaches</h4>
<p>I considered, but did not adopt, some other approaches – mostly since I wanted to do something very simple. Here are some of the other approaches:</p>
<ul>
<li><a href="http://blogs.securancy.com/post/ASPNET-MVC-Subdomain-Routing.aspx">ASP.NET MVC Subdomain Routing</a></li>
<li><a href="http://blog.maartenballiauw.be/post/2009/05/20/ASPNET-MVC-Domain-Routing.aspx">ASP.NET MVC Domain Routing</a></li>
<li><a href="http://blog.lukesampson.com/2009/07/subdomains-for-single-application-with.html">Subdomains for a single application with ASP.NET MVC</a></li>
<li><a href="http://www.wduffy.co.uk/blog/aspnet-mvc-root-urls-with-generic-routing/">ASP.NET MVC root url’s with generic routing</a></li>
</ul>
<br />Posted in Programming  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/343/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/343/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/343/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/343/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/343/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/343/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/343/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/343/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/343/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/343/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/343/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/343/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/343/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/343/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=343&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/09/27/supporting-two-domains-in-one-asp-net-mvc-site-a-poor-mans-approach/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/poormandomainpointermvc_thumb.png" medium="image">
			<media:title type="html">Poor Man's Domain sharing in ASP.NET MVC</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb31.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb32.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Cloud Security &#8211; A Business Tradeoff?</title>
		<link>http://blog.codingoutloud.com/2009/09/23/cloud-security-a-business-tradeoff/</link>
		<comments>http://blog.codingoutloud.com/2009/09/23/cloud-security-a-business-tradeoff/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 00:56:06 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Trip Report]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/2009/09/23/cloud-security-a-business-tradeoff/</guid>
		<description><![CDATA[I took notes during the Boston Cloud Computing Group Meetup 23-Sept-2009 &#8211; the raw notes are below, but a couple of more noteworthy highlights appear first with some of my views interspersed. Executive Summary &#8211; Key Take-Aways &#38; Highlights Notes from Javed Ikbal&#8217;s talk (http://10domains.blogspot.com) are in regular type. My editorial comments and thoughts are [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=330&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><em>I took notes during the <a href="http://www.meetup.com/Boston-cloud-services/calendar/11059697/">Boston Cloud Computing Group Meetup 23-Sept-2009</a> &#8211; the raw notes are below, but a couple of more noteworthy highlights appear first with some of my views interspersed.</em></p>
<h4>Executive Summary &#8211; Key Take-Aways &amp; Highlights</h4>
<p>Notes from Javed Ikbal&#8217;s talk (<a href="http://10domains.blogspot.com/">http://10domains.blogspot.com</a>) are in regular type. <em>My editorial comments and thoughts are in italics or <strong>bold italics</strong> &#8211; so don&#8217;t blame these on Javed. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </em></p>
<ul>
<li><em><strong>Key take-away &#8211; going to the Cloud is waaaay more about Business Tradeoffs than it is about Technology.</strong></em></li>
<li>“There are 2 kinds of companies – those which <em>have had </em>a [data security]breach, and those which <em>are going to have</em> a [data security] breach” -Javed</li>
<li>Centralization of data makes insider threat a bigger risk -Javed</li>
<li>“On premise does not mean people are doing the right thing” –Javed – <em>right on! I bet the majority of the fortune five-million (as 37 Signals refers to the medium and small business market) have insufficient IT – they just don’t know it. Any stats?</em></li>
<li>Someone from the audience stated there are more breaches in on-premise data centers than in cloud. Therefore cloud is safer. <em>I don’t buy the logic. There could so many more publicized breaches in on-premise systems simply because there are so many more on premise data centers today. So this is easy to misinterpret. We can&#8217;t tell either way from the data. <strong>My personal prediction: today if there is a data breach for data stored in the cloud, people will not be able to believe you were reckless enough to store it in the cloud; 5 years from now, if there is a data breach for data stored on premise, people will not be able to believe you were reckless enough to store it locally instead of in the cloud which everyone will then believe is the safest place. </strong></em></li>
<li>Someone from audience commented that business value of losing data will be balanced against business cost of it being exposed. <em>This comment did not account for the PROBABILITY of there being a breach – how do you calculate this risk? I bet it is easier to calculate this risk on the cloud than on premise (though *I* don’t know how to do this)</em></li>
<li>Comment from Stefan: We can’t expect all cloud services to be up all the time (we were chatting about Google and Amazon downtime, which has been well documented). <em>I completely agree – And many businesses don’t have the data to fairly/accurately compare their own uptimes with those of the cloud vendors – and, further, if the cloud vendors did have 100% up-time, <strong>that may destroy the economies we are seeing on the cloud today</strong> (<strong>who cares if it is 100% reliable if it is 0% affordable</strong> &#8211; that&#8217;s too expensive to be interesting)</em></li>
<li>Off-premise security != in cloud – different security issues for different data &#8211; Javed <em>In other words, treat SSN and Credit Card data differently than which books I bought last year. But I can think of LOTS of data that is seemingly innocuous, but that SOME PEOPLE will balk at having it classified  as &#8220;non-sensitive&#8221; &#8211; might be my bookmarks, movie rentals, books purchased, travel plans/history, many more&#8230; not just those that support identity theft and/or direct monetary loss (bank account hacks). I think it would be a fine idea for data hosts to publicly declare their data classification scheme &#8211; shouldn&#8217;t we all have a right to know?<br />
</em></li>
<li><strong><em>I think IT generally &#8211; and The Cloud specifically &#8211; could benefit from the kind of thinking that went into <a href="http://goodguide.com">GoodGuide.com</a>.</em></strong></li>
</ul>
<h2>Raw Notes Follow</h2>
<p>The rest of these notes are a bit rough – and may or may not make sense – but here they are anyway…</p>
<h2>Intros</h2>
<ul>
<li>Pizza &amp; drinks, some social (sat next to Stefan Schueller from <a href="http://techdroid.com">TechDroid Sytems</a> and enjoyed chatting with him)</li>
<li>Went around the room introducing ourselves</li>
<li>People who were hiring / looking for work spoke up</li>
<li>Around 30 people in attendance</li>
<li>Meeting host: Aprigo &#8211; 460 Totten Pond rd, suite 660 &#8211; Waltham, MA  02451 – USA</li>
<li>Feisty audience! Lots of participation. This added to the meeting impact.</li>
</ul>
<h2>Twisted Storage talk</h2>
<p>From Meetup description: Charles Wegrzyn &#8211; CTO at TwistedStorage Inc. (Check actually built an Open source cloud storage system back in &#8217;05)</p>
<p>TwistedStorage is open source software that converts multiple storage<br />
repositories, legacy or green-field, into a single petabyte-scale cloud<br />
for unstructured data, digital media storage, and archiving. The Twisted<br />
Storage Enterprise Storage Cloud provides federated search, electronic<br />
data discovery with lock-down, and policy-driven file management<br />
including indexing, retention, security, encryption, format conversion,<br />
information lifecycle management, and automatic business continuity.</p>
<h4>History of Building Storage Management software</h4>
<ul>
<li>Open Source</li>
<li>Been downloaded 75k times</li>
<li>Re-wrote – now version 4 – in Python</li>
</ul>
<h4>Common anti-pattern observed in real world:</h4>
<ul>
<li>Users storing “stuff” in Exchange since that was a convenient place to store it</li>
<li>Results in a LOT of email storage (and add’l capacity is easy to keep adding on)</li>
<li>Can’t find your data (too much to logically manage)</li>
<li>Backups inadequate</li>
<li>Complexity, complexity, complexity</li>
</ul>
<h4>The Twisted Storage Way</h4>
<ul>
<li>Federated storage silos w/ adaptors/agents</li>
<li>Provide enterprise capabilities spanning sites (access control, audits, search/indexing – including support for metadata, simplified administration and recovery)</li>
<li>Petabyte-scale</li>
<li>ILM = Information Lifecycle Management</li>
<li>Open Source</li>
<li>Work-flow (Python scripts, XML coming)</li>
<li>Policy-driven (“delete this after 2 years”, “encrypt me”) (Python scripts)</li>
</ul>
<h4>Twisted Storage Design Goals</h4>
<ul>
<li>Always available content (via replication)</li>
<li>No back-up or recovery needed (due to replication)</li>
<li>Linear scalability (scales out)</li>
<li>Able to trade off durability with performance</li>
<li>Supports old hardware</li>
<li>Minimal admin overhead</li>
<li>Support external storage systems and linkage</li>
<li>Portable – will run on Linux, Windows, (iPhone?) – due to portable Python implementation</li>
<li>Pricing: Enterprise Edition: $500 / TB up to 2 PB (annual), minimum $10k for first 20 TB (see <a href="http://www.twistedstorage.com">web site</a> for full story)</li>
<li>versus competition like Centera which charge $15k/Silo + Enterprise Edition</li>
<li><a href="http://www.twistedstorage.com">http://www.twistedstorage.com</a>, <a href="mailto:cwegrzyn@twistedstorage.com">cwegrzyn@twistedstorage.com</a></li>
</ul>
<h2>Info Security &amp; Cloud Computing Talk</h2>
<p>From Meetup description:  Javed Ikbal (principal and co-founder of zSquad LLC)- will talk about:   &#8220;Marketing, Uncertainty and Doubt: Information Security and Cloud Computing&#8221;</p>
<ul>
<li>What is the minimum security due diligence that a company needs to do before putting it&#8217;s data in the cloud?</li>
<li>Since 2007, Amazon has been telling us they are &#8220;.. working with a public accounting firm to &#8230; attain certifications such as SAS70 Type II&#8221;  but these have not happened in 2+ years.</li>
<li>On one side of the cloud security issue we have the marketing people, whohype up the existing security and gloss over the non-existing. On the other side we have security services vendors, who hawk their wares by hyping up the lack of security. The truth is, there is a class of data for every cloud out there, and there is also someone who will suffer a data breach because they did not secure it properly.</li>
<li>We will look at Amazon&#8217;s EC2, risk tolerance, and how to secure the data in the cloud.</li>
<li>Javed is a principal and co-founder of zSquad LLC, a Boston-based information security consulting practice.</li>
</ul>
<p>Javed is a Security Consultant</p>
<p>Also co-founded <a href="http://www.layoffsupportnetwork.com">http://www.layoffsupportnetwork.com</a></p>
<p>Formerly worked in Fidelity (in security area)</p>
<h4>Cloud Definition</h4>
<ul>
<li>Elastic – provision up/down on demand (technical)</li>
<li>Avail from anywhere (technical)</li>
<li>Pay-as-you-go (business model)</li>
</ul>
<h4>Cloud Challenges</h4>
<ul>
<li>Data stored in China – gov’t could get at it</li>
<li>We never have direct access</li>
<li>May be locked in? (for practical reasons)</li>
<li>March 7, 2009 from WSJ – Google disclosed that it exposed a “small number” of Google docs – users not supposed to be authorized were able to view them. Google estimated &lt; 0.05% of all stored Google docs were impacted – BUT! – this is a LOT of documents. <a href="http://blogs.wsj.com/digits/2009/03/08/1214/">http://blogs.wsj.com/digits/2009/03/08/1214/</a></li>
<li>Sept 18, 2009 from NYT – a recent bug in Google Apps allowed students at several colleges to read each other’s emails – this impacted only a “small handful” of colleges (like Brown University, for 3 days)<a href="http://www.nytimes.com/external/readwriteweb/2009/09/18/18/18readwriteweb-whoops-students-going-google-get-to-read-ea-12995.html">http://www.nytimes.com/external/readwriteweb/2009/09/18/18/18readwriteweb-whoops-students-going-google-get-to-read-ea-12995.html</a></li>
<li>Google’s official policy for paid customers states “at your sole risk” and no guarantee it will be uninterrupted, timely, secure, or free from errors</li>
<li>Amazon states it is not responsible for “deletioreach” &#8211; Javedn, destruction, loss” etc.</li>
<li>Google will not allow customers to audit Google’s cloud storage claims</li>
<li>Amazon says PCI level 2 compliance is possible with AWS, level 1 not possible</li>
<li>SAS 70 Type II reports not meaningful unless you can see which controls were evaluated</li>
<li>“on premise does not mean people are doing the right thing” –Javed</li>
<li>Perception of more breaches in on-premise systems – but there are so many more of them, it is easy to misinterpret</li>
<li>Business value of losing data will be balanced against business cost of it being exposed – but this does not account for the PROBABILITY of there being a breach – how do you calculate this risk? I bet it is easier to calculate this risk on the cloud than on premise (though *I* don’t know how to do this)</li>
<li>We can’t expect all cloud services to be up all the time – right, and many businesses don’t have the data to fairly/accurately compare their own uptimes with those of the cloud vendors – and, further, if the cloud vendors did have 100% up-time, that may destroy the economies we are seeing on the cloud today (it may be 100% reliable, but too expensive to be interesting)</li>
<li>Off-premise security != in cloud – different security issues for different data</li>
<li>“There are 2 kinds of companies – those which <em>have had </em>a [data security]breach, and those which <em>are going to have</em> a [data security] breach” -Javed</li>
<li>Centralization of data makes insider threat a bigger risk</li>
<li>Customers should perform on-site inspections of cloud provider facilities (but rare?)</li>
<li>Ask SaaS vendor to see 3rd party audit reports – SalesForce has one, Amazon does not (Google neither? What about Microsoft – not yet?)</li>
<li>Providers need to be clear about what you will NOT support – e.g., Amazon took 2 years to provide an answer… Amazon/AWS disclaimers are excellent models</li>
<li>Providers need to understand they may be subject to legal/regulatory discovery due to something a customer did</li>
<li>Unisys has ISO 27001-certified data centers (high cost, effort)</li>
</ul>
<h4>Creating Secure Software</h4>
<ul>
<li>Devs care about deadlines and meeting the requirements</li>
<li>If security is not in the requirements, it will not get done</li>
<li>if devs don’t know how to code securely, it will not get done right (if at all)</li>
<li>Train your devs and archs: one day will help with 90% of issues!</li>
<li>Build security into your software dev life-cycle</li>
<li>Let security experts, not necessarily developers, write the security requirements</li>
<li>Secure Code Review can be expensive –  bake in an application security audit into your schedule, to be done before going live</li>
<li>(high customer extensibility + low provider security responsibility) IaaS – PaaS – SaaS (low customer extensibility + high provider security responsibility)</li>
</ul>
<br />Posted in Cloud Computing, Trip Report Tagged: cloud, security <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/330/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=330&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/09/23/cloud-security-a-business-tradeoff/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Your First Code Camp Talk</title>
		<link>http://blog.codingoutloud.com/2009/09/23/your-first-code-camp-talk/</link>
		<comments>http://blog.codingoutloud.com/2009/09/23/your-first-code-camp-talk/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 11:03:37 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Presenting]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=319</guid>
		<description><![CDATA[I gave my first Code Camp talk earlier this year &#8211; at the New Hampshire Code Camp in Feb  2009. Have you ever thought about giving a Code Camp talk yourself, but have had trouble getting over the hump from &#8220;want to do&#8221; to &#8220;have done&#8221;? I am considering giving a talk at the upcoming [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=319&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I gave my first Code Camp talk earlier this year &#8211; at the <a href="http://www.thedevcommunity.org/Events/PresentationSummary.aspx?id=322&amp;pid=401">New Hampshire Code Camp in Feb  2009</a>. Have you ever thought about giving a Code Camp talk yourself, but have had trouble getting over the hump from &#8220;want to do&#8221; to &#8220;have done&#8221;?</p>
<p>I am considering giving a talk at the upcoming Boston (Waltham) Code Camp 12 titled &#8220;So, You Want to Give Your First Code Camp Talk&#8221; which will address that. Would that be of interest to you? If so, I&#8217;d like to hear from you in advance. Please comment either via comments to this blog post, or email me directly (to codingoutloud at gmail dot com).</p>
<p>What is blocking you from presenting?</p>
<p>From those of you who have successfully presented, do you have pointers for the aspiring speakers among us?</p>
<p>Inquiring minds want to know!</p>
<br />Posted in Presenting, Programming  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/319/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=319&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/09/23/your-first-code-camp-talk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Azure Development Requirements</title>
		<link>http://blog.codingoutloud.com/2009/09/22/azure-development-requirements/</link>
		<comments>http://blog.codingoutloud.com/2009/09/22/azure-development-requirements/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 03:43:04 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Azure]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/2009/09/22/azure-development-requirements/</guid>
		<description><![CDATA[Executive Summary This post describes some key aspects of your development environment that need to be in place in order to to write and test code for Windows Azure. Windows XP does not natively support Azure Development For all the developers running Windows XP face an obstacle to writing code for Windows Azure:  developing for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=317&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h3>Executive Summary</h3>
<p>This post describes some key aspects of your development environment that need to be in place in order to to write and test code for Windows Azure.</p>
<h3>Windows XP does not natively support Azure Development</h3>
<p>For all the developers running Windows XP face an obstacle to writing code for Windows Azure:  developing for Azure requires Windows 7, Windows Vista, or Windows Server 2008. The fundamental dependency is that the Azure Fabric Controller (which runs on your desktop for development purposes, simulating cloud behavior) relies on IIS 7, which (you guessed it!) ships with Vista, Windows 7, and Windows Server 2008.</p>
<p>One option is to upgrade your operating system. If you are not quite ready to do that, you have another option – use Virtual PC to run Windows 7 from Windows XP. (This technique also works to run a virtualized Windows 7 image from Vista – or even Win 7 itself – since maybe you don’t want to foul your machine with beta software, like a sandbox for Visual Studio 2010 while it is still in beta (beta 1 as of this writing)).</p>
<h3>Essential Software to Develop for Azure</h3>
<p>The four essentials are:</p>
<ul>
<li>Have IIS 7.x on one of Windows Vista (Business or Ultimate, I believe) –or– Windows Server 2008 –or– Windows 7</li>
<li>Install Visual Studio 2010 – currently in beta (beta 1 as of this writing) – or Visual Studio 2008</li>
<li>Install Azure plug-in – currently in beta – to Visual Studio 2010 or Visual Studio 2008</li>
<li>Create an account on Azure hosting in order to deploy to/test on the cloud</li>
</ul>
<p>I wrote a separate, detailed post on <a title="Step-by-Step - Creating a Virtual Machine image using Microsoft Virtual PC 2007" href="http://blog.codingoutloud.com/2009/09/20/creating-a-windows-7-virtual-machine-image-using-microsoft-virtual-pc-2007/">creating a virtual machine image for Windows 7 using Virtual PC 2007</a>.</p>
<br />Posted in Azure, Programming  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/317/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/317/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/317/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=317&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/09/22/azure-development-requirements/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>Creating a Windows 7 Virtual Machine Image using Microsoft Virtual PC 2007</title>
		<link>http://blog.codingoutloud.com/2009/09/20/creating-a-windows-7-virtual-machine-image-using-microsoft-virtual-pc-2007/</link>
		<comments>http://blog.codingoutloud.com/2009/09/20/creating-a-windows-7-virtual-machine-image-using-microsoft-virtual-pc-2007/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 03:35:00 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Step-by-Step]]></category>
		<category><![CDATA[virtual pc]]></category>
		<category><![CDATA[virtualization]]></category>
		<category><![CDATA[windows 7]]></category>

		<guid isPermaLink="false">http://codingoutloud.wordpress.com/2009/09/20/creating-a-windows-7-virtual-machine-image-using-microsoft-virtual-pc-2007/</guid>
		<description><![CDATA[Executive Summary This post describes how to install Microsoft Virtual PC 2007, followed by a detailed walk-through of how to create a virtual machine image of a fresh Windows 7 installation using Virtual PC 2007. In this post I concentrate on creating a Virtual PC image for Windows 7, but the steps for the other [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=314&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://codingoutloud.files.wordpress.com/2009/09/coolmonkeythinker.png"><img style="display:inline;border-width:0;margin:0 10px 5px 0;" title="cool-monkey-thinker" src="http://codingoutloud.files.wordpress.com/2009/09/coolmonkeythinker_thumb.png?w=157&#038;h=244" border="0" alt="cool-monkey-thinker" width="157" height="244" align="left" /></a></p>
<h2>Executive Summary</h2>
<p>This post describes how to install Microsoft Virtual PC 2007, followed by a detailed walk-through of how to create a virtual machine image of a fresh Windows 7 installation using Virtual PC 2007.</p>
<p>In this post I concentrate on creating a Virtual PC image for Windows 7, but the steps for the other operating systems are similar.</p>
<p>Note this post deals with concerns for Developers. This post does not cover use of (related) virtualization techniques which are very popular today on the server-side.</p>
<h3>Why Use Virtual Machines?</h3>
<p>There are several reasons to use a Virtual PC-managed virtual machine for development:</p>
<p><strong>You don’t want to install Pre-Release software (like a CTP &#8211; Community Technology Preview, which means &#8220;very rough&#8221;) or beta software directly on your development machine.</strong> A virtual machine environment makes it easy to manage these without risking your real machine.</p>
<p><strong>You want to experiment.</strong> You may want to try out some testing with 4 GB or RAM, then maybe with 1/2 GB or RAM – so you know what to expect. Or you to keep testing something that changes your machine – and need to “start from scratch” frequently.</p>
<p><strong>You want to run multiple operating systems.</strong> You may want to run Windows 7 to make sure your apps run fine on it – but you also don’t want to give up XP quite yet. You can run Windows 7 within a Windows XP host.</p>
<p><strong>You want to set up a machine configuration and reuse it.</strong> You go through a lot of trouble to get your configuration “just so” and now want to share that with colleagues – or with yourself (on your home machine).</p>
<h3>Are there other Virtualization options?</h3>
<p><em>If you are a developer running XP -or- are running Win 7 on hardware that does not support hardware virtualization, Virtual PC 2007 is very likely what you want.</em></p>
<p>If you are running Windows 7, you can look into <a href="http://www.microsoft.com/windows/virtual-pc/get-started.aspx">Virtual PC (sometimes seen as Virtual PC 7)</a> (which includes XP Mode). Unlike Virtual PC 2007 which will work regardless of whether you have hardware virtualization, Virtual PC will work ONLY WHEN your computer supports hardware virtualization. <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=0ee2a17f-8538-4619-8d1c-05d27e11adb2&amp;displaylang=en">Does my PC support hardware virtualization</a> (or <a href="http://www.microsoft.com/windows/virtual-pc/support/configure-bios.aspx">XP Mode</a>)?</p>
<p>Unlike Virtual PC <strong>2007</strong>, Virtual PC is for Windows 7 will not work on XP (but will work on the Windows 7 beta, sometimes known as Vista <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> .</p>
<p>Only one of Virtual PC -or- Virtual PC 2007 can be installed concurrently on any given machine.</p>
<p>From Microsoft, other vendors, and open source, there are <a href="http://en.wikipedia.org/wiki/Comparison_of_platform_virtual_machines">other sources of virtualization technology</a>, and <a href="http://en.wikipedia.org/wiki/Xensource#MS_Windows_systems_as_guests">some might even be compatible with Virtual PC</a> or <a href="http://www.crn.com/software/184425640">VHD</a>. [Did you know <a href="http://en.wikipedia.org/wiki/VHD_(file_format)">VHD format is an open standard</a>?]. Though, consider that Virtual PC 2007 does not cost anything beyond the Windows license you (presumably) already have. Microsoft has many virtualization solutions, some with different purposes, such as App-V which is more for enterprise roll-out of apps (get it? <em><strong>App</strong></em>-V) to minimize incompatibilities due to other apps or environmental changes.</p>
<p><em>For developers, let&#8217;s assume (for reasons stated above in prior section) that you want a parallel universe to run other software within &#8211; safely &#8211; like an early beta&#8230; Virtual Machine images make these scenarios possible and easy! Let’s get down to business and walk through how to install &amp; configure these virtual images.</em></p>
<h2>Ready to Get Started?</h2>
<h3>Enable Hardware Virtualization in your Computer</h3>
<p>The newer your PC, the more likely it is that it <a href="http://www.microsoft.com/windows/virtual-pc/support/configure-bios.aspx">supports hardware acceleration for Virtualization</a>. If you have this, you want to enable it for better performance. You may need to enable it in your BIOS. Unfortunately, the specific instructions will vary by computer manufacturer, so you&#8217;ll need to <a href="http://www.google.com/search?q=enable+hardware+virtualization">search the web for steps to enable Hardware Assisted Virtualization</a>.</p>
<h3>Installing Virtual PC 2007</h3>
<p>Visit the <span style="text-decoration:line-through;"><a href="http://www.microsoft.com/Downloads/details.aspx?familyid=04D26402-3199-48A3-AFA2-2DC0B40A73B6&amp;displaylang=en">download page for Microsoft Virtual PC 2007</a></span> <a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=28C97D22-6EB8-4A09-A7F7-F6C7A1F000B5&amp;displaylang=en">download page for Microsoft Virtual PC <strong>2007 sp1</strong></a> and then select the appropriate version for your system (that is, 32- or 64-bit version).</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb.png?w=244&#038;h=79" border="0" alt="image" width="244" height="79" /></a></p>
<p>Once downloaded, install it.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image1.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb1.png?w=244&#038;h=113" border="0" alt="image" width="244" height="113" /></a></p>
<p>If you already have an earlier version of Virtual PC installed, you will likely see this self-explanatory message to uninstall the older version. If you are upgrading to Virtual PC 2007 <strong>sp1 </strong>from Virtual PC 2007, the installer will handle it for you.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image2.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb2.png?w=244&#038;h=72" border="0" alt="image" width="244" height="72" /></a></p>
<p>Go to your trusty Add or Remove Programs applet and remove any remnants of old Virtual PC installs and proceed.</p>
<p>You can run Virtual PC 2007 and look in Help &gt; About to see which version you are running. Version &#8220;Microsoft Virtual PC 6.0.192.0&#8243; is Virtual PC 2007 <strong>sp1</strong>, which is the one expected by the rest of this post.</p>
<h2>Installing Microsoft Virtual PC 2007</h2>
<p>Run Virtual PC 2007 installer <strong>&#8230;</strong></p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image3.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb3.png?w=244&#038;h=185" border="0" alt="image" width="244" height="185" /></a></p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image4.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb4.png?w=244&#038;h=185" border="0" alt="image" width="244" height="185" /></a></p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image5.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb5.png?w=244&#038;h=102" border="0" alt="image" width="244" height="102" /></a></p>
<p>.. fill in your own info here, of course.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image6.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb6.png?w=244&#038;h=185" border="0" alt="image" width="244" height="185" /></a></p>
<p>I kept the default installation location and let it rip. It completed around 2 minutes later.</p>
<p><strong>NOW GET DOWN TO BUSINESS!<br />
</strong></p>
<h2>Create fresh Windows 7 virtual machine environment using Microsoft Virtual PC 2007</h2>
<h3>Download Your Windows 7 ISO Image</h3>
<p>In order to install Windows 7, you need a copy of Windows 7. This could be a retail version of Windows 7 (from a DVD), but let&#8217;s make the assumption here that since you are a developer, you will be using a download image from MSDN that comes down as an ISO file, such as <strong>en_windows_7_professional_x86_dvd_x15-65804.iso</strong>. Note that you will need to install a 32-bit operating system to run under Virtual PC 2007. <a href="http://msdn.microsoft.com/">Log in to your MSDN account</a> and <a href="https://msdn.microsoft.com/en-us/subscriptions/manage/cc137115.aspx">select an appropriate version of Windows 7 to download</a>, download it, and also be sure to copy the Activation Key (if applicable). </p>
<h3>Run Upgrade Advisor</h3>
<p>You may wish to <a href="http://www.microsoft.com/downloads/thankyou.aspx?familyId=1b544e90-7659-4bd9-9e51-2497c146af15&amp;displayLang=en">run the Windows 7 Upgrade Advisor</a> on your machine to make sure Windows 7 will be happy (as of this writing, the upgrade advisor tool is in beta). Assuming that goes well..</p>
<h3>Run Virtual PC 2007</h3>
<p>Run Microsoft Virtual PC 2007. From the opening screen, click the “New…” button:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image7.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb7.png?w=244&#038;h=168" border="0" alt="image" width="244" height="168" /></a></p>
<p>The wizard will start. Click the “Next &gt;” button:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image8.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb8.png?w=244&#038;h=188" border="0" alt="image" width="244" height="188" /></a></p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image9.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb9.png?w=244&#038;h=188" border="0" alt="image" width="244" height="188" /></a></p>
<p>Select “Create a virtual machine” and click “Next &gt;” button…</p>
<p>Give your new Virtual Machine an appropriate name:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image10.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb10.png?w=244&#038;h=188" border="0" alt="image" width="244" height="188" /></a></p>
<p>I also changed my location:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image11.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb11.png?w=244&#038;h=188" border="0" alt="image" width="244" height="188" /></a></p>
<p>Select “Other” as Operating system and click “Next &gt;” …</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image12.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb12.png?w=244&#038;h=188" border="0" alt="image" width="244" height="188" /></a></p>
<p>The recommended RAM will likely not be sufficient, so click “Adjusting the RAM” option:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image13.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb13.png?w=244&#038;h=188" border="0" alt="image" width="244" height="188" /></a></p>
<p>How much memory is right? Considering <a href="http://www.microsoft.com/windows/windows-7/get/system-requirements.aspx">Windows 7 system requirements</a> (which call for at least 1 GB in the 32-bit version) and <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=255fc5f1-15af-4fe7-be4d-263a2621144b&amp;displaylang=en#Requirements">Visual Studio 2010 (beta 1) system requirements</a> (which also calls for 1 GB (though <em>not an additional 1 GB</em>), you will hopefully be able to allocate at least 1 GB. I have 3 GB on my host machine, so I allocated 1.5 GB (1024 MB + 512 MB = 1536 MB). These values can also be tweaked later using Virtual PC.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image14.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb14.png?w=244&#038;h=188" border="0" alt="image" width="244" height="188" /></a></p>
<p>I chose to create a new virtual disk:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/new-virt-hard-disk1.png"><img class="alignnone size-full wp-image-566" title="new-virt-hard-disk" src="http://codingoutloud.files.wordpress.com/2009/09/new-virt-hard-disk1.png?w=510&#038;h=396" alt="" width="510" height="396" /></a></p>
<p>For disk space, you have another set of decisions – Windows 7 wants 15 GB, Visual Studio 2010 wants 3 GB, so I rounded up to a nice even 18.5 GB (since I don’t have an abundance of space here):</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image15.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb15.png?w=244&#038;h=188" border="0" alt="image" width="244" height="188" /></a></p>
<p>Click “Next &gt;” and you are almost done with this step.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image16.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb16.png?w=244&#038;h=188" border="0" alt="image" width="244" height="188" /></a></p>
<p>Click “Finish” and now we are in business within Virtual PC:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image17.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb17.png?w=244&#038;h=168" border="0" alt="image" width="244" height="168" /></a></p>
<p>Click on “Azure Dev” (or whatever you called your image) and click “Start” button to proceed:</p>
<p>If you have trouble starting your virtual machine due to not enough memory available, as in the following message, you either need to adjust its memory requirements of free up some memory.</p>
<p>You might consider throttling back your Anti-Virus software which could be a big consumer of memory (I disabled the on-the-fly file-system protection). Also, of course, close all unnecessary processes. The long-term solution is to buy a 64-bit machine with oodles of memory and be happy with that.</p>
<p>Once you have enough memory available, you will see the virtual machine complain very soon as it craps out after spinning up and thinking for a couple of minutes:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image18.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb18.png?w=244&#038;h=177" border="0" alt="image" width="244" height="177" /></a></p>
<p><strong><em>This is expected.</em></strong> You still need to install Windows 7 to move this along. To do this, make sure you have a ready-to-go image of Windows 7 as an ISO file (as you might download from MSDN) or physical media. You have two menu options, one for each of these cases:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image19.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb19.png?w=242&#038;h=154" border="0" alt="image" width="242" height="154" /></a></p>
<p>In my case, I selected “Capture ISO Image…” and installed from there. Note that you navigate your host file-system for the ISO image to capture – not the file-system on your virtual machine, since that does not yet exist.</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image20.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb20.png?w=244&#038;h=180" border="0" alt="image" width="244" height="180" /></a></p>
<p>Click “Open” and notice how the CD menu on the virtual machine has been updated:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image21.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb21.png?w=244&#038;h=87" border="0" alt="image" width="244" height="87" /></a></p>
<p>Now you can reboot your virtual machine to let the installation on the captured ISO image run (as if it was auto-starting to install on a physical machine). To reboot, choose Reset from the Action menu:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image22.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb22.png?w=244&#038;h=144" border="0" alt="image" width="244" height="144" /></a></p>
<p>You will be warned:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image23.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb23.png?w=244&#038;h=101" border="0" alt="image" width="244" height="101" /></a></p>
<p>But since you don’t have any unsaved changes to worry about, select the Reset button and proceed with the reset. (You have saved some information, you may be thinking, like memory and hard disk configuration; but that is all metadata about your image – not changes within the virtual machine itself – so there is no problem here.)</p>
<p>The reset begins…</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image24.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb24.png?w=244&#038;h=167" border="0" alt="image" width="244" height="167" /></a></p>
<p>Here is a warning which we will come back to. Dismiss this for now:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image25.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb26.png?w=244&#038;h=178" border="0" alt="image" width="244" height="178" /></a></p>
<p>The system will chug and chug for a looong time – mine took around two hours to run (the good news is I let this run while I was watching the New England Patriots game this Sunday; the bad news is the Patriots fell to the Jets):</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image26.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb27.png?w=244&#038;h=202" border="0" alt="image" width="244" height="202" /></a></p>
<p>You will then proceed to install Windows 7 … mostly you will be just moving along without much fanfare, though you will need to name your “computer”, come up with a username (and optionally a password), and will need your Activation Key for Windows 7. Here is a <a href="http://www.ehow.com/how_5092643_install-windows-virtual-pc.html">good guide for installing Windows 7</a> on Virtual PC 2007. (And <a href="http://www.shivaranjan.com/2009/05/14/how-to-install-windows-7-in-windows-vista-or-windows-xp-using-virtual-pc-2007/">another</a>.)</p>
<p>Don&#8217;t that forget the magic key/mouse combo to un-capture your mouse from the Virtual Machine is <strong>Right-Alt while dragging the mouse</strong>!!</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/magic-key-mouse-combo-to-uncapture-mouse-from-virtual-machine.png"><img class="alignnone size-full wp-image-568" title="magic-key-mouse-combo-to-uncapture-mouse-from-virtual-machine" src="http://codingoutloud.files.wordpress.com/2009/09/magic-key-mouse-combo-to-uncapture-mouse-from-virtual-machine.png?w=388&#038;h=256" alt="" width="388" height="256" /></a></p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image27.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb28.png?w=244&#038;h=204" border="0" alt="image" width="244" height="204" /></a></p>
<p>After you get Windows 7 all configured, you probably still want to come back and install some updates:</p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image28.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb29.png?w=244&#038;h=150" border="0" alt="image" width="244" height="150" /></a></p>
<p><a href="http://codingoutloud.files.wordpress.com/2009/09/image29.png"><img style="display:inline;border-width:0;" title="image" src="http://codingoutloud.files.wordpress.com/2009/09/image_thumb30.png?w=244&#038;h=158" border="0" alt="image" width="244" height="158" /></a></p>
<p>But that’s the end of the detailed tour. You should now have a usable baseline virtual machine image that you can reuse, share, play with, etc. Make sure you create a back-up copy! And have a look at the features which allow you to manage roll-backs.</p>
<p>Good luck!</p>
<br />Posted in Programming, Step-by-Step Tagged: virtual pc, virtualization, windows 7 <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/314/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/314/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=314&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/09/20/creating-a-windows-7-virtual-machine-image-using-microsoft-virtual-pc-2007/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/coolmonkeythinker_thumb.png" medium="image">
			<media:title type="html">cool-monkey-thinker</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb1.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb2.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb3.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb4.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb5.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb6.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb7.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb8.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb9.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb10.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb11.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb12.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb13.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb14.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/new-virt-hard-disk1.png" medium="image">
			<media:title type="html">new-virt-hard-disk</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb15.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb16.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb17.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb18.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb19.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb20.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb21.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb22.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb23.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb24.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb26.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb27.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/magic-key-mouse-combo-to-uncapture-mouse-from-virtual-machine.png" medium="image">
			<media:title type="html">magic-key-mouse-combo-to-uncapture-mouse-from-virtual-machine</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb28.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb29.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/image_thumb30.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Boston Azure User Group</title>
		<link>http://blog.codingoutloud.com/2009/09/18/boston-azure-user-group/</link>
		<comments>http://blog.codingoutloud.com/2009/09/18/boston-azure-user-group/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 16:23:08 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Boston Azure User Group]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[azure]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=242</guid>
		<description><![CDATA[Coming soon &#8211; a new user group for the Boston/Cambridge/Waltham area: The Boston Azure User Group will focus on Cloud Computing, specifically as it relates to Microsoft&#8217;s Windows Azure platform. This group will likely kick-off in October 2009 &#8211; exact date to be determined - exact dates have now been determined &#8211; now working on [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=242&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Coming soon &#8211; a new user group for the Boston/Cambridge/Waltham area:</p>
<p>The <a title="Boston Azure User Group" href="http://bostonazure.org"><strong>Boston Azure User Group</strong></a> will focus on Cloud Computing, specifically as it relates to Microsoft&#8217;s Windows Azure platform.</p>
<p>This group <strong>will </strong><span style="text-decoration:line-through;">likely</span> kick-off in October 2009 &#8211; <span style="text-decoration:line-through;">exact date to be determined -</span> <strong>exact dates have now been determined</strong> &#8211; now working on the times <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />   &#8211; <strong>see the <a title="Boston Azure User Group" href="http://bostonazureusergroup.org">Boston Azure User Group</a> site for details and updates &#8211; and to join the mailing list</strong>.</p>
<p>What would YOU like to see covered in the meetings of the Boston Azure User Group? Please leave a comment with your thoughts / feedback.</p>
<p>And see you at the Boston Azure User Group!</p>
<br />Posted in Boston Azure User Group, Events, Programming Tagged: azure, Boston Azure User Group <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/242/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/242/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/242/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=242&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/09/18/boston-azure-user-group/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>
	</item>
		<item>
		<title>The Fountainhead of Open Source</title>
		<link>http://blog.codingoutloud.com/2009/09/14/the-fountainhead-of-open-source/</link>
		<comments>http://blog.codingoutloud.com/2009/09/14/the-fountainhead-of-open-source/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 10:38:58 +0000</pubDate>
		<dc:creator>Bill Wilder</dc:creator>
				<category><![CDATA[Essay]]></category>
		<category><![CDATA[Random]]></category>
		<category><![CDATA[Silliness]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://blog.codingoutloud.com/?p=224</guid>
		<description><![CDATA[Just watched the The Fountainhead movie from 1946 (yes, from netflix). Here is the plot summary, brought up-to-date: Open Source is represented by the protagonist, a brilliant architect named Howard Rourke. Rourke is idealistic, does his own thing, is uncompromising, and is not driven by money or recognition &#8211; and certainly not by Big Business. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=224&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Just watched the <a href="http://en.wikipedia.org/wiki/The_Fountainhead_(film)">The Fountainhead</a> movie from 1946 (yes, from netflix).</p>
<div id="attachment_226" class="wp-caption alignleft" style="width: 232px"><a href="http://codingoutloud.files.wordpress.com/2009/09/fountainhead-of-open-source.png"><img class="size-medium wp-image-226" title="fountainhead-of-open-source" src="http://codingoutloud.files.wordpress.com/2009/09/fountainhead-of-open-source.png?w=222&#038;h=300" alt="Howard Rourke hacking Open Source code" width="222" height="300" /></a><p class="wp-caption-text">Howard Rourke hacking Open Source</p></div>
<p>Here is the plot summary, brought up-to-date:</p>
<ul>
<li>Open Source is represented by the protagonist, a brilliant architect named Howard Rourke. Rourke is idealistic, does his own thing, is uncompromising, and is not driven by money or recognition &#8211; and certainly not by Big Business.</li>
<li>Big Business is  represented by newspaper magnate Gail Wynand. Wynand wields substantial influence and is in perpetual pursuit of any means to incite the populace &#8211; an energized populace buys more product.</li>
<li>Consultants and Certified Vendor X Developers and Vendor Partners are represented by  architect Peter Keating. Keating goes with the flow, producing whatever the powers that be say is desirable. At one point, he mentions to Ms. Francon he&#8217;s polling folks on what they think of Rourke&#8217;s latest building to which she responds (with some disdain) &#8220;why, so you&#8217;ll know what <strong>you</strong> think of it?&#8221;</li>
</ul>
<p>Lessons:</p>
<ul>
<li>Talent != influence. Keating&#8217;s influence is limited to those who recognize his greatness. Most only recognize as great what they are told to recognize as great.</li>
<li>Passion can be directed constructively (Rourke pours his love into his life&#8217;s work) or destructively (Wynand devotes his career to controlling the masses through his newspaper).</li>
</ul>
<p>The movie is based <a href="http://en.wikipedia.org/wiki/The_Fountainhead#Gail_Wynand">a book of the same title</a>. The author, Ayn Rand, became well known for her <a href="http://en.wikipedia.org/wiki/Objectivism_(Ayn_Rand)">Objectivism</a> philosophy of life, exemplified in the movie by <a href="http://en.wikipedia.org/wiki/Gary_Cooper">Gary Cooper</a> who played the lead character, Howard Roark. [I wonder what <a href="http://stallman.org/">Richard Stallman</a> thinks of the book?]</p>
<p>I wonder how many professional software developers identify more with Howard Rourke or Peter Keating? And which is more desirable?</p>
<p>Any my clean analogies fall apart when one considers the combinations of Big  Business and Open Source. Microsoft just announced CodePlex.org and the CodePlex Foundation &#8220;to enable the exchange of code and understanding among software companies and open source communities.&#8221;</p>
<p>A dirty little secret of Eclipse, Linux, Apache and other high-profile projects is that they also have professional, full-time staff &#8211; sponsored by Big Business (like IBM) &#8211; since the success of these endeavors is strategic for their business.</p>
<p>Maybe Open Source isn&#8217;t as pure as the <a href="http://gnuwin.epfl.ch/articles/en/cathedralbazaar/cathedral-bazaar.pdf">romantic notion of developers from around the world contributing</a> since it was a nice thing to do. The world-wide altruistic contributions may still be there in some cases, just supplemented by Big Business. Which is okay with me, though might not be with Howard Rourke.</p>
<p><span id="more-224"></span></p>
<p>(The image above is a mashup of http://www.coverbrowser.com/image/bestselling-movies-2006/911-1.jpg and http://farm4.static.flickr.com/3045/2997960369_258313ab0a.jpg, both of which were found on the web with Creative Commons licenses allowing this use. I used Google&#8217;s Advanced Search for Images with a License filter to find these.)</p>
<br />Posted in Essay, Random, Silliness Tagged: open source <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/codingoutloud.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/codingoutloud.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/codingoutloud.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/codingoutloud.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/codingoutloud.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/codingoutloud.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/codingoutloud.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/codingoutloud.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/codingoutloud.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/codingoutloud.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/codingoutloud.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/codingoutloud.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/codingoutloud.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/codingoutloud.wordpress.com/224/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.codingoutloud.com&blog=490667&post=224&subd=codingoutloud&ref=&feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.codingoutloud.com/2009/09/14/the-fountainhead-of-open-source/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/baf1296780d2798c1072e65aed8652d9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">codingoutloud</media:title>
		</media:content>

		<media:content url="http://codingoutloud.files.wordpress.com/2009/09/fountainhead-of-open-source.png?w=222" medium="image">
			<media:title type="html">fountainhead-of-open-source</media:title>
		</media:content>
	</item>
	</channel>
</rss>