<?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/"
	>

<channel>
	<title>Randall Bits</title>
	<atom:link href="http://randallbits.com/blog/feed" rel="self" type="application/rss+xml" />
	<link>http://randallbits.com/blog</link>
	<description>Development, IT and Life</description>
	<lastBuildDate>Tue, 13 Sep 2011 18:36:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Windows 8 First Impression</title>
		<link>http://randallbits.com/blog/posts/173</link>
		<comments>http://randallbits.com/blog/posts/173#comments</comments>
		<pubDate>Tue, 13 Sep 2011 18:36:38 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[it]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/?p=173</guid>
		<description><![CDATA[Lots of interesting new features in the core of windows (fast boot, process management, low memory footprint, low power mode, ARM support, etc). I think the metro stuff will be about as popular as WPF has been. Web apps appear &#8230;<p class="read-more"><a href="http://randallbits.com/blog/posts/173">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Lots of interesting new features in the core of windows (fast boot, process management, low memory footprint, low power mode, ARM support, etc).</p>
<p>I think the metro stuff will be about as popular as WPF has been. Web apps appear to be the future of development, except in special cases where heavy resource usage is required (3D modeling, games, etc) and I don&#8217;t think you&#8217;ll see a metro version of those.</p>
<p>I do think the WinRT is a good think and although they made it seem like it is connected to the metro stuff it seemed more like a framework akin to the .NET framework to me. If so where does that leave the .NET framework?</p>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/173/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Google+</title>
		<link>http://randallbits.com/blog/posts/115</link>
		<comments>http://randallbits.com/blog/posts/115#comments</comments>
		<pubDate>Mon, 11 Jul 2011 21:28:27 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[misc]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/posts/115</guid>
		<description><![CDATA[I still have invites left so you want one let me know.]]></description>
			<content:encoded><![CDATA[<p>I still have invites left so you want one let me know.</p>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/115/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>New Machine</title>
		<link>http://randallbits.com/blog/posts/114</link>
		<comments>http://randallbits.com/blog/posts/114#comments</comments>
		<pubDate>Mon, 11 Jul 2011 21:26:06 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[it]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/posts/114</guid>
		<description><![CDATA[Here my are the parts I purchased on Newegg for my new machine. CPU &#8211; Intel Core i7-2600K Motherboard &#8211; ASUS P8Z68-V PRO RAM &#8211; CORSAIR XMS 8GB DDR3 1600 Power Supply &#8211; CORSAIR Enthusiast Series TX850 Hard Drive &#8211; &#8230;<p class="read-more"><a href="http://randallbits.com/blog/posts/114">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Here my are the parts I purchased on <a href="http://newegg.com">Newegg</a> for my new machine.</p>
<p>CPU &#8211; <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16819115070" name="CART_ITEM">Intel Core i7-2600K</a></p>
<p>Motherboard &#8211; <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16813131730" name="CART_ITEM">ASUS P8Z68-V PRO</a></p>
<p>RAM &#8211; <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16820145324">CORSAIR XMS 8GB DDR3 1600</a></p>
<p>Power Supply &#8211; <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16817139022" name="CART_ITEM">CORSAIR Enthusiast Series TX850</a></p>
<p>Hard Drive &#8211; <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16820227706" name="CART_ITEM">OCZ Vertex 3 120G</a></p>
<p>Case &#8211; <a href="http://www.newegg.com/Product/Product.aspx?Item=N82E16811129042" name="CART_ITEM">Antec Three Hundred Black Steel</a></p>
<p>Total Cost: Less than $1200</p>
<p>Total Satisfaction: 110%</p>
<p>My <a href="http://randallbits.com/blog/posts/29">previous machine</a> was also a dream and this one is even better than that.</p>
<p>I did end up doing an RMA on one of the motherboards and of course <a href="http://newegg.com">Newegg</a> handled this very well. I couldn’t recommend them more.</p>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/114/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disk Space Usage Utility</title>
		<link>http://randallbits.com/blog/posts/74</link>
		<comments>http://randallbits.com/blog/posts/74#comments</comments>
		<pubDate>Fri, 24 Jun 2011 21:05:02 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[it]]></category>
		<category><![CDATA[misc]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/?p=74</guid>
		<description><![CDATA[WinDirStat]]></description>
			<content:encoded><![CDATA[<p><a href="http://windirstat.info">WinDirStat</a></p>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/74/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Visual Studio Code Metrics Without Visual Studio</title>
		<link>http://randallbits.com/blog/posts/73</link>
		<comments>http://randallbits.com/blog/posts/73#comments</comments>
		<pubDate>Thu, 23 Jun 2011 21:41:15 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/?p=73</guid>
		<description><![CDATA[Recently I wanted to integrate the Visual Studio code metrics into my build. I use TeamCity as the build server. After some searching I found the Visual Studio Code Metrics Power Tool which allows you to generate the metrics from &#8230;<p class="read-more"><a href="http://randallbits.com/blog/posts/73">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Recently I wanted to integrate the Visual Studio code metrics into my build. I use TeamCity as the build server. After some searching I found the Visual Studio Code Metrics Power Tool which allows you to generate the metrics from the command line. As a general rule I do not install Visual Studio on my build servers, but this tool appeared to require the installation of Visual Studio. This is NOT true. It only requires FxCop. When you install the tool in puts two files into your FxCop directory.</p>
<p><span class="full-image-block ssNonEditable"><span><img src="/blog/media/metricsfiles.png" alt="" /></span></span></p>
<p>In order to run the tool my build server all I had to do was copy those two files into my FxCop directory and viola, code metrics. In addition, you can also copy the FxCop directory to your build server so there isn&#8217;t even a requirement for FxCop to be installed with the installer. I find this helpful because the location of FxCop installed with Visual Studio is not the same as when installed with the Windows SDK.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/73/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lamenting the Demise of IronRuby and IronPython</title>
		<link>http://randallbits.com/blog/posts/72</link>
		<comments>http://randallbits.com/blog/posts/72#comments</comments>
		<pubDate>Wed, 27 Oct 2010 22:03:07 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/?p=72</guid>
		<description><![CDATA[We all know that software projects sometimes fail and fail for various reason. I personally have had a hard time with Microsoft abandoning IronRuby and IronPython. I could accept them abandoning one language, but not both. Sure I guess you &#8230;<p class="read-more"><a href="http://randallbits.com/blog/posts/72">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>We all know that software projects sometimes fail and fail for various reason. I personally have had a hard time with Microsoft abandoning IronRuby and IronPython. I could accept them abandoning one language, but not both. Sure I guess you could be excited about how the community now has control of them, but I&#8217;m not.</p>
<p>Upon thinking about the architecture of IronRuby and IronPython I see what I consider to be a major design flaw. A design flaw that in my mind could be a good reason why Microsoft would abandon these languages. The design flaw I&#8217;m referring to is the notion of being able to bind to real Ruby and Python libraries. It seems to me that this feature alone would require more work and cause more headaches than any other feature. Personally as a .NET developer I don&#8217;t care about this feature. What I want is the Ruby language with a good interop story for .NET. I could care less if I can run Ruby on Rails on .NET. If I wanted to run Ruby on Rails, I would switch to Ruby on Rails. That use case just doesn&#8217;t make sense to me as a .NET developer.</p>
<p>What does make sense to me is being to use the power and flexibility of these languages with the amazing .NET framework. I love all the libraries in .NET. They are awsome and if they don&#8217;t have something I dowload a dll or two, slap them in a lib directory, add a reference and I&#8217;m off and running. In my opinion if this had been the focus, instead of running Rails on .NET, IronRuby and IronPython would have survived. Case in point is F#. Let&#8217;s be honest, my guess is not many .NET devs will be using F# any time soon. Sure some do and love it, but they are a micro minority, yet F# ships with Visual Studio! Why? Because it is just a language with a great .NET interop story.</p>
<p>So my challenge to the IronRuby and IronPython guys is to at least consider what I have to say, and if I were you I would drop the binding stuff for Ruby and Python. We as .NET devs don&#8217;t need to Rails or Django on .NET.</p>
<p>Thanks also to all those who have devoted their time and talents to .NET open source software.</p>
<p>- Randall</p>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/72/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Auto Update Twitter Web Client</title>
		<link>http://randallbits.com/blog/posts/71</link>
		<comments>http://randallbits.com/blog/posts/71#comments</comments>
		<pubDate>Wed, 13 Oct 2010 03:35:52 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/?p=71</guid>
		<description><![CDATA[I like the twitter web client, but one thing that I don&#8217;t like is that I always have to click the new tweets thing whenever there is an update. &#160;For this reason I created a little javascript line that you &#8230;<p class="read-more"><a href="http://randallbits.com/blog/posts/71">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>I like the twitter web client, but one thing that I don&#8217;t like is that I always have to click the new tweets thing whenever there is an update. &nbsp;For this reason I created a little javascript line that you can just paste into the Javascript console in Firebug for Firefox or Developer Tools for Chrome/Safari.</p>
<p>function f() { $(&#8216;.new-tweets-bar&#8217;).trigger(&#8216;click&#8217;); setTimeout(&#8220;f()&#8221;, 1000); } f();</p>
<p>If I had time I would make this an extension, but I don&#8217;t so just paste it in :)</p>
<p><strong>UPDATE1 &#8211; This one is much better:</strong></p>
<p>(function f() { $(&#8216;.new-tweets-bar&#8217;).trigger(&#8216;click&#8217;); setTimeout(f, 1000); })();</p>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/71/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simpler CQRS Example in 324 Lines of Code</title>
		<link>http://randallbits.com/blog/posts/70</link>
		<comments>http://randallbits.com/blog/posts/70#comments</comments>
		<pubDate>Fri, 01 Oct 2010 02:20:11 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/?p=70</guid>
		<description><![CDATA[I have really enjoyed the information provided by both Udi Dahan, Jonathan Oliver, and Greg Young on the subject of CQRS.  I have particularly grown fond of CQRS with Event Sourcing, because of all the interesting properties this architecture has.  Recently, &#8230;<p class="read-more"><a href="http://randallbits.com/blog/posts/70">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>I have really enjoyed the information provided by both <a href="http://www.udidahan.com/">Udi Dahan</a>, <a href="http://jonathan-oliver.blogspot.com">Jonathan Oliver</a>, and <a href="http://codebetter.com/blogs/gregyoung/">Greg Young</a> on the subject of CQRS.  I have particularly grown fond of CQRS with Event Sourcing, because of all the interesting properties this architecture has.  Recently, Greg Young released some code that demonstrated a very <a href="Super Simple CQRS Example">simple implementation of CQRS with Event Sourcing</a>.  Based on that implementation and on the <a href="http://cqrs.wordpress.com/video">recorded class</a> he gave, which I highly recommend, I decided to implement my own so that I could improve my understanding of the architecture.</p>
<p>A design decision I made when creating this example was to remove as much complexity as possible, so that I could understand the architecture in its simplest form.  For instance, I decided to completely avoid anything to do with asynchronous processing.  In addition I have included unit tests showing how to do some basic testing.</p>
<p>All in all I have learned a tremendous amount from creating this example, and I would encourge anyone to do the same.  This example is not anything special and I&#8217;m sure I&#8217;ve done some things wrong, but hey that&#8217;s what life is all about right! :)</p>
<p>Example code: <a href="/blog/media/cqrs.zip">cqrs</a></p>
<p><a href="http://cqrs.wordpress.com/">CQRS Site</a></p>
<p><a href="http://cqrs.wordpress.com/video">Excellent CQRS with Event Sourcing presentation by Greg Young</a></p>
<p><a href="http://skillsmatter.com/podcast/open-source-dot-net/udi-dahan-command-query-responsibility-segregation/rl-311">Excellent CQRS presentation by Udi Dahan</a></p>
<p><strong>UPDATE 1:</strong> I changed all the instance ids to be stored as GUIDs instead of strings.</p>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/70/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple Amazon Web Services Auth Version 2 in Python</title>
		<link>http://randallbits.com/blog/posts/69</link>
		<comments>http://randallbits.com/blog/posts/69#comments</comments>
		<pubDate>Sat, 18 Sep 2010 02:30:49 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/?p=69</guid>
		<description><![CDATA[I posted an example of version 1 connection to SQS.  This version highlights how to perfect a request using Version 2 authentication.  The cool part is I also included how to do this using Google AppEngine.]]></description>
			<content:encoded><![CDATA[<p>I <a href="/blog/simple-amazon-web-services-aws-example-in-python.html">posted</a> an example of version 1 connection to <a href="http://aws.amazon.com/">SQS</a>.  This version highlights how to perfect a request using Version 2 authentication.  The cool part is I also included how to do this using <a href="https://appengine.google.com/">Google AppEngine</a>.</p>
<p><span class="full-image-block ssNonEditable"><span><img src="/blog/media/appengine2.png" alt="" /></span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/69/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simplier Static Resources with ASP.NET MVC 2 Areas</title>
		<link>http://randallbits.com/blog/posts/68</link>
		<comments>http://randallbits.com/blog/posts/68#comments</comments>
		<pubDate>Sat, 14 Aug 2010 04:04:51 +0000</pubDate>
		<dc:creator>rsutton</dc:creator>
				<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://randallbits.com/blog/?p=68</guid>
		<description><![CDATA[I posted the following question on&#160;stackoverflow: Can&#8217;t use relative paths with areas in ASP.NET MVC 2 In my application I have an area call Mobile. In this area I have a folder call Assets where we place all our css, &#8230;<p class="read-more"><a href="http://randallbits.com/blog/posts/68">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<div>
<p>I posted the following question on&nbsp;<a href="http://stackoverflow.com/questions/3397924/cant-use-relative-paths-with-areas-in-asp-net-mvc-2">stackoverflow</a>:</p>
<h3><span>Can&rsquo;t use relative paths with areas in ASP.NET MVC 2</span></h3>
<p>In my application I have an area call Mobile. In this area I have a folder call Assets where we place all our css, javascript and images.</p>
<p>Accessing the views works just fine.&nbsp;<a rel="nofollow" href="http://localhost/webapp/mobile/stuff">http://localhost/webapp/mobile/stuff</a></p>
<p>The problem is when I access my css, javascript and images.</p>
<p>I cannot do something like this in my view.</p>
<pre class="prettyprint"><code><span class="tag">&lt;img</span><span class="pln"> </span><span class="atn">src</span><span class="pun">=</span><span class="atv">"Assets/css/styles.css"</span><span class="pln"> </span><span class="tag">/&gt;</span><span class="pln"></span></code></pre>
<p>The reason is because the real url is:&nbsp;<a rel="nofollow" href="http://localhost/webapp/areas/mobile/assets/css/styles.css">http://localhost/webapp/areas/mobile/assets/css/styles.css</a></p>
<p>Is there a way to map&nbsp;<a rel="nofollow" href="http://locahost/webapp/areas/mobile">http://locahost/webapp/areas/mobile</a>&nbsp;to&nbsp;<a rel="nofollow" href="http://locahost/webapp/mobile">http://locahost/webapp/mobile</a>&nbsp;for static files?</p>
<p>Thanks, Randall</p>
<p>I received a few answers, but non of them address my problem with wanting to basically rewrite the url for static resources, so I didn&#8217;t have to worry about using Url.Content or ../../../../ forever. &nbsp;The solution I came up with was to use a simple IHTTPModule, that would rewrite the urls for me. &nbsp;Here is the method I implemented for the BeginRequest event.</p>
<pre>void BeginRequest(object sender, EventArgs e)
{
var context = HttpContext.Current;
var path = context.Request.Path;
// Add Areas to the Mobile path, so we don't have to specify it manually.
// This is mainly for handling static resources that you place in areas.
if (!path.Contains("Mobile/")) return;
if (path.EndsWith(".png") ||
path.EndsWith(".gif") ||
path.EndsWith(".css") ||
path.EndsWith(".js") ||
path.EndsWith(".htm") ||
path.EndsWith(".cache"))
context.RewritePath(path.Replace("Mobile/", "Areas/Mobile/"));
}
</pre>
</div>
]]></content:encoded>
			<wfw:commentRss>http://randallbits.com/blog/posts/68/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

