<?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>Stuff From an IT Slug &#187; nerdiness</title>
	<atom:link href="http://blog.brettski.com/category/nerdiness/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.brettski.com</link>
	<description>It doesn't really get busier any given day, just more stuff doesn't get done.</description>
	<lastBuildDate>Sat, 04 Feb 2012 05:25:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.brettski.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Stuff From an IT Slug &#187; nerdiness</title>
		<link>http://blog.brettski.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.brettski.com/osd.xml" title="Stuff From an IT Slug" />
	<atom:link rel='hub' href='http://blog.brettski.com/?pushpress=hub'/>
		<item>
		<title>A run-in with custom helper extensions</title>
		<link>http://blog.brettski.com/2011/10/14/a-run-in-with-custom-helper-extensions/</link>
		<comments>http://blog.brettski.com/2011/10/14/a-run-in-with-custom-helper-extensions/#comments</comments>
		<pubDate>Fri, 14 Oct 2011 23:07:34 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[nerdiness]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=545</guid>
		<description><![CDATA[While working on Blog by Email (http://blogbyemail.com) I came across the necessity to create my own HTML helper class.  For those who don&#8217;t know helper classes &#8220;&#8230;reduce the amount of tedious typing of HTML tags that you must perform to create a standard HTML page.&#8221; The registration request form on the site was getting hit [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=545&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>While working on Blog by Email (<a title="Blog by Email" href="http://blogbyemail.com" target="_blank">http://blogbyemail.com</a>) I came across the necessity to create my own HTML helper class.  For those who don&#8217;t know helper classes &#8220;&#8230;reduce the amount of tedious typing of HTML tags that you must perform to create a standard HTML page.&#8221;</p>
<p>The registration request form on the site was getting hit pretty hard by spam bots and I was getting tired of cleaning up the mess, so I decided to add a captcha.</p>
<p>ReCaptcha is what I decided on and started down the rabbit hole.  First of all there was only ASP.NET examples.  Since I was writing this in ASP.NET MVC, I wanted to use a more, &#8220;MVC&#8221; approach to it.  I came across an post on <a href="http://devlicio.us/" target="_blank">Devlicio.us</a> named <a href="http://devlicio.us/blogs/derik_whittaker/archive/2008/12/02/using-recaptcha-with-asp-net-mvc.aspx" target="_blank">Using ReCaptcha with Asp.Net MVC</a>.  The post covered exactly everything I need, what it was missing is details around its steps, specifically <em>Step 5 &#8211; Create a Html Helper to build and render the Captcha control</em>. It shows the current code and nothing else:</p>
<p><pre class="brush: csharp;">
public static string GenerateCaptcha( this HtmlHelper helper )
{
  var captchaControl = new Recaptcha.RecaptchaControl
    {
      ID = &quot;recaptcha&quot;,
      Theme = &quot;blackglass&quot;,
      PublicKey = -- Put Public Key Here --,
      PrivateKey = -- Put Private Key Here --
    };
  var htmlWriter = new HtmlTextWriter( new StringWriter() );
  captchaControl.RenderControl(htmlWriter);
  return htmlWriter.InnerWriter.ToString();
}
</pre></p>
<p>My first thought, is cool, I can just add an HTML helper to the view to generate the captcha, this is a good approach.</p>
<p>First stumble, that is a method, that needs to go into a class&#8211;what class should it go in to?</p>
<p>No problem, I&#8217;ll just look up creating helper methods.  That was an easy search which rendered an ASP.Net site page, <a href="http://www.asp.net/mvc/tutorials/creating-custom-html-helpers-cs" target="_blank">Creating Custom HTML Helpers</a>.  Great, now I have my examples.  I matched it to an extension method; okay, I get that, I have used those before.  I learned the syntax and added it to my site.</p>
<p>It doesn&#8217;t come up in Inteli-sense.  What can it be.  I changed all kinds of things around, from renaming the class, to changing the method name.  I was wondering if it followed some naming scheme like controllers and models do.  I don&#8217;t recall it needing to.</p>
<p>I decided to browse though the comments, see if anyone else ran into this.  And there is was, someone named, <a href="http://forums.asp.net/members/ianchadwick.aspx" target="_blank">ianchadwick</a> mentioned a way to make the namespace global in the web.config.  Well, damn, that is it, the view doesn&#8217;t know about my namespace BlogByEmail.Helpers.  I added @using BlogByEmail.Helpers; to the top of the page, and everything fell into place.</p>
<p>To use the helper in the view simply use @Html.Raw(Html.GenerateCaptcha())</p>
<p>Html.Raw is needed to keep MVC from HTML Encoding the output.</p>
<p>Damn I feel dumb sometimes.  &#8230;back to my code!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/545/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/545/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/545/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/545/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/545/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/545/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/545/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/545/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/545/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/545/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/545/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/545/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/545/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/545/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=545&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2011/10/14/a-run-in-with-custom-helper-extensions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
		<item>
		<title>web.config inheritence in IIS7</title>
		<link>http://blog.brettski.com/2011/08/11/web-config-inheritence-in-iis7/</link>
		<comments>http://blog.brettski.com/2011/08/11/web-config-inheritence-in-iis7/#comments</comments>
		<pubDate>Fri, 12 Aug 2011 04:52:50 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[computer hell]]></category>
		<category><![CDATA[nerdiness]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[IIS7]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=528</guid>
		<description><![CDATA[I learned something new over the last week which I not exactly sure of the benefit of.  Probably because I still not entirely sure on how it is implemented. It seems that in IIS7 that the default functionality is that the web.config in the root website is inherited to the child webs. Of course I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=528&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I learned something new over the last week which I not exactly sure of the benefit of.  Probably because I still not entirely sure on how it is implemented.</p>
<p>It seems that in IIS7 that the default functionality is that the web.config in the root website is inherited to the child webs.</p>
<p>Of course I found this the hard way.  I changed to a new <a href="http://www.arvixe.com" target="_blank">web host</a> and while setting up my base sites I wanted to try out a few new applications.  I setup <a href="http://umbraco.com" target="_blank">Umbraco</a> under a sub-domain and played around with that for a while and remembered <a href="http://orchardproject.net/" target="_blank">Orchard</a> from <a href="http://www.mvcconf.com/" target="_blank">MVConf</a>.  I setup a virtual directory, /orchard, and loaded up the site.</p>
<p>I kept receiving 500 errors when going to the site.  There was a whole round of support emails around figuring out where the errors where steaming from.  Once I found out I learned about the IIS7 inheritance.</p>
<p>For starters I want to list the ways I found to disable the inheritance and then move on to how this could be useful.  (Man it&#8217;s always something)</p>
<p>First was the instructions from the <a href="http://support.arvixe.com" target="_blank">Arvixe</a> staff (which I think they found on <a href="http://stackoverflow.com" target="_blank">SO</a>)</p>
<pre><code>&lt;location path="." inheritInChildApplications="false"&gt;     &lt;system.web&gt;      ...     &lt;/system.web&gt; &lt;/location&gt; </code></pre>
<p>There is also three examples in the IIS.NET bog: <a href="http://blogs.iis.net/steveschofield/archive/2009/09/19/control-web-config-inheritance-with-iis-7-asp-net-options.aspx">http://blogs.iis.net/steveschofield/archive/2009/09/19/control-web-config-inheritance-with-iis-7-asp-net-options.aspx</a></p>
<ol>
<li>You can set the <strong>enableConfigurationOverride</strong> attribute to false for an application pool</li>
<li><strong>allowSubDirConfig=false (as above)</strong><a href="http://msdn.microsoft.com/en-us/library/ms689469.aspx" target="_blank">
<p>http://msdn.microsoft.com/en-us/library/ms689469.aspx</a></li>
<li><a href="http://msdn.microsoft.com/en-us/library/system.configuration.sectioninformation.inheritinchildapplications.aspx">inhertInChildApplications</a><a href="http://msdn.microsoft.com/en-us/library/ms689469.aspx"> property</a></li>
</ol>
<p>I haven&#8217;t tried all of these yet.  If you have leave a comment on how it well worked. It seems this functionality is enabled when the AppPool is set Integrated mode.</p>
<p>I just <a href="http://forums.iis.net/t/1170819.aspx" target="_blank">read</a> one suggestion to use &lt;clear /&gt; what was inherited in certain sections.</p>
<p>Now for some reasoning on why this functionality was added</p>
<p>For now I just have this link from <a href="http://msdn.microsoft.com/en-us/library/ms178685.aspx" target="_blank">ASP.NET MSDN library</a>.  It starts out with:</p>
<blockquote><p><em>&#8220;You can distribute ASP.NET configuration files throughout your application directories to configure ASP.NET applications in an inheritance hierarchy. This structure allows you to achieve the level of configuration detail that your applications require at the appropriate directory levels without affecting configuration settings at higher directory levels.&#8221;</em></p></blockquote>
<p>I have some reading to do&#8230;</p>
<p>Update (8/14/2011):<br />
Reading an informative article on <a href="http://www.iis.net" target="_blank">iis.net</a>, <a href="http://learn.iis.net/page.aspx/150/understanding-sites-applications-and-virtual-directories-on-iis-7/" target="_blank">Understanding Sites, Applications, and Virtual Directories on IIS 7</a></p>
<p>The only problem I have with the article is that there absolutely no details on any of the information provided.  Yet it&#8217;s a good overview of what they have done in the new version.</p>
<p>Now here are the details I have been looking for: <a href="http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis-7/" target="_blank">http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis-7/</a></p>
<p>&nbsp;</p>
<p><a href="http://www.iis.net/ConfigReference" target="_blank">IIS7 Configuration Reference on IIS.NET</a></p>
<p>&nbsp;</p>
<p>Reading on&#8230;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/528/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/528/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/528/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/528/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/528/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/528/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/528/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/528/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/528/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/528/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/528/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/528/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/528/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/528/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=528&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2011/08/11/web-config-inheritence-in-iis7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
		<item>
		<title>Assembly Info&#8230; File Version</title>
		<link>http://blog.brettski.com/2010/08/20/assembly-info-file-version/</link>
		<comments>http://blog.brettski.com/2010/08/20/assembly-info-file-version/#comments</comments>
		<pubDate>Sat, 21 Aug 2010 03:04:29 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[nerdiness]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=500</guid>
		<description><![CDATA[You would think it&#8217;s simple enough to get the file version information as it is set in Visual Studio&#8217;s UI setting, but it wasn&#8217;t for me.  Even after Googling around I only discovered how to the the Assembly version, not the file version.  Well not until I found this article. The information is at the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=500&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>You would think it&#8217;s simple enough to get the file version information as it is set in Visual Studio&#8217;s UI setting, but it wasn&#8217;t for me.  Even after Googling around I only discovered how to the the Assembly version, not the file version.  Well not until I found <a href="http://all-things-pure.blogspot.com/2009/09/assembly-version-file-version-product.html" target="_blank">this article</a>. The information is at the end of it and it basically goes like this:</p>
<pre>string fileVersion = FileVersionInfo
       .GetVersionInfo(Assembly.GetExecutingAssembly().Location).FileVersion;
</pre>
<p>I then also wanted to get the date too.  This is how I did it:</p>
<pre>string fileDate = System.IO.File
       .GetCreationTime(Assembly.GetExecutingAssembly().Location)
       .ToString("MMMM dd, yyyy")</pre>
<p>FileVersionInfo is at System.Diagnostics<br />
Assembly is at System.Reflection</p>
<p>The best thing is I no longer have to remember to set this stuff before packaging up my app for shipment.  Like I am doing right now:  BD File Hash version 1.0.10 going out right now.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/500/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/500/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/500/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=500&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2010/08/20/assembly-info-file-version/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
		<item>
		<title>Taking all the way to the stop</title>
		<link>http://blog.brettski.com/2010/06/16/taking-all-the-way-to-the-stop/</link>
		<comments>http://blog.brettski.com/2010/06/16/taking-all-the-way-to-the-stop/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 04:52:22 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[life]]></category>
		<category><![CDATA[nerdiness]]></category>
		<category><![CDATA[Dreamhost]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=482</guid>
		<description><![CDATA[Happy Summer!  The kids are out of school and already bored.  My oldest son though is really into reading this year, I mean REALLY into it.  He has probably read 10 books already on summer break. His school has a degree program for reading books during the summer.  Basically the students get a star for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=482&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Happy Summer!  The kids are out of school and already bored.  My oldest son though is really into reading this year, I mean REALLY into it.  He has probably read 10 books already on summer break.</p>
<p>His school has a degree program for reading books during the summer.  Basically the students get a star for each day they read more than twenty minutes.  My son has been doing much more than that I thought it would be great to keep track of it.  I am sure looking back at the list at the end of the Summer he would be pretty impressed by the list too.</p>
<p>My first thought is that I would set him up with a blog, and he could type in the books he read on any given day.  He and I have done some basic web page building together, so I thought he may get a kick out of this.</p>
<p>So I added a new blog to my account here at WordPress and picked a theme I hoped he didn&#8217;t think sucked.  When I went to add his as a contributor to the blog I discovered he needed an email address to that.  Hmm&#8230;.</p>
<p>Well I have thought about setting him up with an email address in the past, but never did it as there was really no reason and he is only eight.  So I went to Comcast to set him up with a family account.  The didn&#8217;t have the name I wanted, damn.  Well I found one close enough and went with that.  At least Comcast has some parental controls, I&#8217;ll have to look deeper into that.</p>
<p>I set him up with a WordPress account and when there to log him in.  When I logged in with his account to verify everything I was greeted with a page of many, many blogs.  Well this is not good, he doesn&#8217;t need to be exposed to to this, too young yet, too dangerous.</p>
<p>Going to the next level</p>
<p>As I pondered this in a background processes it hit me, what about setting up a new domain and hosting the stuff myself!?  I checked at GoDaddy and shit, the domain is available, excellent.</p>
<p>$10.67 / year for the domain, not so bad.  $9.99 for privacy, what!  that&#8217;s a bit outside.  Then it hit me again, <a href="http://www.dreamhost.com/r.cgi?490900" target="_blank">Dreamhost</a>.  Dreamhost has a free domain with a paid subscription and I never used it, perfect.  Off to <a href="http://www.dreamhost.com/r.cgi?490900" target="_blank">Dreamhost</a>&#8230;</p>
<p>I was able to create and host the the domain on my current account and loaded up a WordPress blog in about 10 seconds.  Added an email address and we are ready to go in a more &#8220;controlled&#8221; environment.</p>
<p>So a simple idea has bloomed into a fully hosted domain with private emails and sites, all for an eight year-old.  I am the Tim Allen of the Internet!</p>
<p>So my son and I went over some of the stuff I put together and he is pretty interested in it all.  As expected he is a bit overwhelmed.  That&#8217;s OK, we&#8217;ll take it a step at a time in what ever direction interests him most.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/482/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/482/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/482/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=482&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2010/06/16/taking-all-the-way-to-the-stop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
		<item>
		<title>A new convenient way hash compare your files</title>
		<link>http://blog.brettski.com/2010/06/13/a-new-convenient-way-hash-compare-your-files/</link>
		<comments>http://blog.brettski.com/2010/06/13/a-new-convenient-way-hash-compare-your-files/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 03:52:42 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[nerdiness]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[BDFileHash]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=479</guid>
		<description><![CDATA[I just finished a new file hashing tool, BD File Hash, which is hosted on CodePlex under the Microsoft Public License (Ms-PL). The goal behind this Windows tool is an easier way to verify files you download from the internet.  Many applications, ISO&#8217;s, and other files usually list a hash with them.  This hash is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=479&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I just finished a new file hashing tool, <a href="http://bdfilehash.codeplex.com/" target="_blank">BD File Hash</a>, which is hosted on <a href="http://www.codeplex.com" target="_blank">CodePlex</a> under the Microsoft Public License (Ms-PL).</p>
<p>The goal behind this Windows tool is an easier way to verify files you download from the internet.  Many applications, ISO&#8217;s, and other files usually list a hash with them.  This hash is used to verify the file you downloaded is the same file the author meant you to download.  It prevents you from using corrupt or exploited downloads by allowing you to verify the file before you use it.</p>
<p>The problem I had with most file hashing tools, is that they needed to be run from a command line, or you had to open the hash value into a text editor and copy/paste it into the hashing application to be compared. So I wanted <a href="http://bdfilehash.codeplex.com/" target="_blank">BD File Hash</a> to be a convenient way to verify files using hashes.</p>
<p>BD File Hash has the following capabilities:</p>
<ul>
<li>Right click any file and select BD File Hash from your Send To menu</li>
<li>Use a file picker to select the file with the authors hash value, it will automatically be parsed from the file and entered into the BD File has application</li>
<li>Easily hash to files to see if they are the same</li>
<li>Supports MD5, SHA-1, and SHA-256
<ul>
<li>Please recommend any other hashing algorithms you may need.</li>
</ul>
</li>
<li>Save your default hash type to the one you use most often</li>
</ul>
<p>BD File Hash requirements:</p>
<ul>
<li>.NET 3.5 SP1</li>
<li>Windows Installer 3.1</li>
</ul>
<p><strong><span style="color:#ff6600;">Give <a href="http://bdfilehash.codeplex.com/" target="_blank">BD File Hash</a> a try today!</span></strong></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/479/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/479/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/479/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=479&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2010/06/13/a-new-convenient-way-hash-compare-your-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
		<item>
		<title>In Search Of A Better Mouse Trap</title>
		<link>http://blog.brettski.com/2010/04/17/in-search-of-a-better-mouse-trap/</link>
		<comments>http://blog.brettski.com/2010/04/17/in-search-of-a-better-mouse-trap/#comments</comments>
		<pubDate>Sun, 18 Apr 2010 02:00:58 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[experiment]]></category>
		<category><![CDATA[nerdiness]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=467</guid>
		<description><![CDATA[I have this really, really bad habit; I spend a lot of time searching and trying out new tools for my tool box.  Some times to such extent I never get around to actually using the tools to build something, and that is just silly. On the positive side is have given me a lot [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=467&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I have this really, really bad habit; I spend a lot of time searching and trying out new tools for my tool box.  Some times to such extent I never get around to actually using the tools to build something, and that is just silly.</p>
<p>On the positive side is have given me a lot of exposure to the many, many options available to us, but on the negative side I think I use it as a form of procrastination.  If I am looking for for something, than I don&#8217;t actually have to &#8216;work&#8217; on something.  How convenient.</p>
<p>The toughest part, is that I really enjoy checking out different applications.  Experiencing what so many are putting their hard work into.</p>
<p>So I have started a <a href="http://home.brettski.com" target="_self">list</a>, it is by no means complete, nor do I really plan on making it complete.  Though it will give you a pretty good idea on all the different things I have checked out and played around with.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/467/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/467/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/467/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/467/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/467/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/467/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/467/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/467/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/467/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/467/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/467/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/467/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/467/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/467/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=467&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2010/04/17/in-search-of-a-better-mouse-trap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
		<item>
		<title>Sticky Footers</title>
		<link>http://blog.brettski.com/2010/02/10/sticky-footers/</link>
		<comments>http://blog.brettski.com/2010/02/10/sticky-footers/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 20:07:26 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[nerdiness]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=454</guid>
		<description><![CDATA[I have wondered for some time how to keep footers at the bottom of the page.  I have tried different methods of minimum heights, etc., but it only ever looked just &#8220;OK&#8221;. On Stackoverflow today, the a question was asked about sticky footers and a method being used to achieve them.  I thought the solutions [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=454&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I have wondered for some time how to keep footers at the bottom of the page.  I have tried different methods of minimum heights, etc., but it only ever looked just &#8220;OK&#8221;.</p>
<p>On <a href="http://stackoverflow.com" target="_blank">Stackoverflow </a>today, the a question was asked about sticky footers and a method being used to achieve them.  I thought the solutions interesting so I wanted to post them so I might be able to find this later.</p>
<p>Stackoverflow entry:<br />
<a href="http://stackoverflow.com/questions/2239780/css-why-does-height-seem-to-be-set-when-its-not" target="_blank">http://stackoverflow.com/questions/2239780/css-why-does-height-seem-to-be-set-when-its-not</a></p>
<p>The method referenced by the question&#8217;s author:<br />
<a href="http://ryanfait.com/sticky-footer/" target="_blank">http://ryanfait.com/sticky-footer/</a></p>
<p>A suggestion made by someone else:<br />
<a href="http://matthewjamestaylor.com/blog/keeping-footers-at-the-bottom-of-the-page" target="_blank">http://matthewjamestaylor.com/blog/keeping-footers-at-the-bottom-of-the-page</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/454/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/454/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/454/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/454/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/454/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/454/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/454/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/454/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/454/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/454/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/454/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/454/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/454/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/454/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=454&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2010/02/10/sticky-footers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
		<item>
		<title>VBA Convert Unicode to ASCII</title>
		<link>http://blog.brettski.com/2009/12/04/vba-convert-unicode-to-ascii/</link>
		<comments>http://blog.brettski.com/2009/12/04/vba-convert-unicode-to-ascii/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 21:18:16 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[nerdiness]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=438</guid>
		<description><![CDATA[I hacking together a report today and discovered the Unicode text I received was actually in Unicode not ASCII.  I remembered that ChrW(int) will convert character codes to their associated character.  I really wasn&#8217;t in the mood to write parsing logic and test it, but luckily I came across a class which does this.  I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=438&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I hacking together a report today and discovered the Unicode text I received was actually in Unicode not ASCII.  I remembered that ChrW(int) will convert character codes to their associated character.  I really wasn&#8217;t in the mood to write parsing logic and test it, but luckily I came across a class which does this.  I ripped out the method I needed and it worked great in all it&#8217;s simplicity.  I have included this function below:</p>
<pre>Public Function UnicodeToASCII(sText As String) As String
  Dim saText() As String, sChar As String
  Dim sFinal As String, saFinal() As String
  Dim x As Long, lPos As Long

  If Len(sText) = 0 Then
    Exit Function
  End If

  saText = Split(sText, ";") 'Unicode Chars are semicolon separated

  If UBound(saText) = 0 And InStr(1, sText, "&amp;#") = 0 Then
    UnicodeToASCII = sText
    Exit Function
  End If

  ReDim saFinal(UBound(saText))

  For x = 0 To UBound(saText)
    lPos = InStr(1, saText(x), "&amp;#", vbTextCompare)

    If lPos &gt; 0 Then
      sChar = Mid$(saText(x), lPos + 2, Len(saText(x)) - (lPos + 1))

      If IsNumeric(sChar) Then
        If CLng(sChar) &gt; 255 Then
          sChar = ChrW$(sChar)
        Else
          sChar = Chr$(sChar)
        End If
      End If

      saFinal(x) = Left$(saText(x), lPos - 1) &amp; sChar
    ElseIf x &lt; UBound(saText) Then
      saFinal(x) = saText(x) &amp; ";" 'This Semicolon wasn't a Unicode Character
    Else
      saFinal(x) = saText(x)
    End If
  Next

  sFinal = Join(saFinal, "")
  UnicodeToASCII = sFinal

  Erase saText
  Erase saFinal
End Function
</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/438/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/438/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/438/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=438&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2009/12/04/vba-convert-unicode-to-ascii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
		<item>
		<title>Accessing Web_DAV from Windows XP</title>
		<link>http://blog.brettski.com/2009/12/03/accessing-web_dav-from-windows-xp/</link>
		<comments>http://blog.brettski.com/2009/12/03/accessing-web_dav-from-windows-xp/#comments</comments>
		<pubDate>Thu, 03 Dec 2009 05:01:09 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[nerdiness]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[webdav]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=436</guid>
		<description><![CDATA[This has driven me crazy for weeks, I just haven&#8217;t been able to access web_dav I setup at dreamhost.com. I found a perfect article on how to do it at Geek Boy&#8217;s Blog.  It&#8217;s so simple,&#8230; Make sure you add the port number to the url you provide for the network place. E.g. http://www.mydomain.com:80/foo Once [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=436&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This has driven me crazy for weeks, I just haven&#8217;t been able to access web_dav I setup at <a href="http://www.dreamhost.com/r.cgi?490900" target="_blank">dreamhost.com</a>.</p>
<p>I found a perfect article on how to do it at <a href="http://blog.pclark.net/2005/03/fun-with-windows-xp-and-webdav.html" target="_blank">Geek Boy&#8217;s Blog</a>.  It&#8217;s so simple,&#8230;</p>
<p>Make sure you add the port number to the url you provide for the network place.</p>
<p>E.g. http://www.mydomain.com:80/foo</p>
<p>Once I did that, I connected instantly.  No more need for third party apps, I can just access it. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/436/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/436/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/436/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=436&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2009/12/03/accessing-web_dav-from-windows-xp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
		<item>
		<title>Install MoinMoin on Dreamhost. A Walk Through</title>
		<link>http://blog.brettski.com/2009/11/21/install-moinmoin-on-dreamhost-walk-through/</link>
		<comments>http://blog.brettski.com/2009/11/21/install-moinmoin-on-dreamhost-walk-through/#comments</comments>
		<pubDate>Sat, 21 Nov 2009 06:12:58 +0000</pubDate>
		<dc:creator>Brettski</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[nerdiness]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Dreamhost]]></category>
		<category><![CDATA[HowTo]]></category>
		<category><![CDATA[MoinMoin]]></category>

		<guid isPermaLink="false">http://blog.brettski.com/?p=411</guid>
		<description><![CDATA[The goal of this document is to walk through the installation of a MoinMoin wiki without getting bogged down in any details.  We&#8217;ll go through requirements, decisions, and steps to complete, that&#8217;s all.  (OK, I did end up indicating what directories are added; I can&#8217;t stand when stuff is added I don&#8217;t know about.)   I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=411&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The goal of this document is to walk through the installation of a <a href="http://MoinMoin.in" target="_blank">MoinMoin</a> wiki without getting bogged down in any details.  We&#8217;ll go through requirements, decisions, and steps to complete, that&#8217;s all.  (OK, I did end up indicating what directories are added; I can&#8217;t stand when stuff is added I don&#8217;t know about.)   I will follow up this post with the details for those who are interested. Once you have completed the steps herein you will have a working MoinMoin wiki on your Dreamhost.com shared hosting account.  By no way is this the only way to set up MoinMoin on an account, or even the best way, but I tested it and it will work.  Lets get to it!</p>
<h2>Requirements</h2>
<ul>
<li><a href="http://www.dreamhost.com/r.cgi?490900" target="_blank">Dreamhost</a> shared hosting account.</li>
<li>A domain setup as fully hosted</li>
<li>Shell and FTP access to the domain account</li>
</ul>
<h2>Assumptions</h2>
<ul>
<li>Dreamhost running python version 2.4</li>
<li>MoinMoin version 1.8.5</li>
<li>Understanding of editing files from Linux shell</li>
<li><strong>acctname</strong> is the accout name you used to access your domain account through ssh and FTPS.</li>
<li>~/ = $HOME = /home/<em>acctname</em>/</li>
</ul>
<h2>Decisions</h2>
<ul>
<li>URL to run wiki from (we use sub directory) [We will use: http://hosteddomain<strong>/wiki</strong>]</li>
<li>Private name for the wiki&#8217;s instance name [We will use: <strong>dhwiki</strong>]</li>
</ul>
<h2>Steps</h2>
<ol>
<li>Download MoinMoin wiki tarball from http://moinmo.in/MoinMoinDownload (<a href="http://static.moinmo.in/files/moin-1.8.5.tar.gz" target="_blank">moin-1.8.5.tar.gz</a>) to your local workstation.</li>
<li>From FTP: upload file to Dreamhost into folder ~/files [/home/acctname/files]<br />
** All commands from now on are from your shell access **</li>
<li>cd ~/files</li>
<li>
<pre>tar -xvzf ~/files/moin-1.8.5.tar.gz [new directory is created: ~/files/moin-1.8.5</pre>
</li>
<li>
<pre>cd ~/files/moin-1.8.5</pre>
</li>
<li>
<pre>python setup.py --quiet install --prefix=$HOME --record=install.log</pre>
<p>[two directories created: ~/share/moin; ~/lib/python2.4/site-packages/MoinMoin]</li>
<li>Setup environment variables
<ol>
<li>
<pre>export PREFIX=$HOME</pre>
</li>
<li>
<pre>export SHARE=$PREFIX/share/moin</pre>
</li>
<li>
<pre>export WIKILOC=$SHARE</pre>
</li>
<li>
<pre>export INSTANCE=dhwiki</pre>
</li>
</ol>
</li>
<li>
<pre>cd $WIKILOC</pre>
</li>
<li>
<pre>mkdir $INSTANCE</pre>
</li>
<li>
<pre>cp -R $SHARE/data $INSTANCE</pre>
</li>
<li>
<pre>cp -R $SHARE/underlay $INSTANCE</pre>
</li>
<li>
<pre>cp $SHARE/config/wikiconfig.py $INSTANCE</pre>
</li>
<li>
<pre>chmod -R o+rwX $INSTANCE</pre>
</li>
<li>Edit file $INSTANCE/wikiconfig.py<br />
Find and change the follwing lines:</p>
<ol>
<li>sitename = u'<em>Your Wiki Title</em>'</li>
<li>logo_string = u'&lt;img src="/wiki/common/moinmoin.png" alt="MoinMoin Logo"&gt;'</li>
<li>Remove hash (#) in front of: page_front_page = u"FrontPage"</li>
<li>data_dir = '/home/<em>acctname</em>/share/moin/<em>dhwiki</em>/data/'</li>
<li>data_underlay_dir = '/home/<em>acctname</em>/share/moin/<em>dhwiki</em>/underlay/'</li>
<li>url_prefix_static = '/wiki'   [(remove # from line)]</li>
<li>mail_smarhost = "<em>dreamhost smtp server</em>"</li>
</ol>
</li>
<li>
<pre>cd ~/hosteddomain</pre>
</li>
<li>
<pre>cp -R $SHARE/htdocs wiki</pre>
</li>
<li>
<pre>chmod -R a+rX wiki</pre>
</li>
<li>
<pre>cd wiki</pre>
</li>
<li>
<pre>mkdir ./cgi-bin</pre>
</li>
<li>
<pre>cp $SHARE/server/moin.cgi ./cgi-bin</pre>
</li>
<li>
<pre>chmod -R a+rx ./cgi-bin</pre>
</li>
<li>
<pre>cd ./cgi-bin</pre>
</li>
<li>Edit file moin.cgi<br />
Find and change the following lines.  Please remove the # if they exist on THESE lines:</p>
<ol>
<li>sys.path.insert(0, 'home/<em>acctname</em>/lib/python2.4/site-packages')</li>
<li>sys.path.insert(0, '/home/<em>acctname</em>/share/moin/<em>dhwiki</em>'<em>)</em></li>
</ol>
</li>
<li>
<pre>cd ..</pre>
</li>
<li>Edit file index.html<br />
Find and change the following lines:</p>
<ol>
<li>&lt;meta http-equiv="refresh" content="0; URL=cgi-bin/moin.cgi/"&gt;</li>
<li>Click &lt;a href="cgi-bin/moin.cgi"&gt;here&lt;/a&gt; to get to the FrontPage</li>
</ol>
</li>
<li><strong>Go to your favorite browser and enter your wiki's domain: </strong><strong>Http://hosteddomain/wiki</strong></li>
</ol>
<p><em><span style="text-decoration:underline;">Use these instructions at your own risk.  I extend no warranties or guarantees about the accuracy or safety of your data or website.</span></em></p>
<p>These instructions where tested by building the following wiki: http://MMonDH.brettski.com/wiki</p>
<p>All comments are welcome</p>
<h3>References Used</h3>
<ul>
<li>http://master.moinmo.in/MoinMoin/InstallDocs#basic-install</li>
<li>http://www.wombatnation.com/misc/installMoinMoinDreamHost.html</li>
</ul>
<h3>Revision Information</h3>
<ul>
<li>11/21/2009
<ul>
<li>Initial post after successfully building a wiki following exact steps</li>
</ul>
</li>
</ul>
<div id="_mcePaste" style="overflow:hidden;position:absolute;left:-10000px;top:1033px;width:1px;height:1px;">
<table id="BodyTable" style="text-align:left;font-family:Segoe UI;table-layout:fixed;font-size:75%;vertical-align:top;" cellspacing="0">
<tbody>
<tr style="background-color:#e0edff;">
<td><span style="color:windowtext;">Is this a negotiation, or are you just not  interested? I am spending about 40k a month right now on consultants, so I have  plenty of money to spend. Culture, to me it's directly impacted by budget and  resources. At the time that we spoke my budget isn't nearly as high as it is  right now. If you are talking about working evenings you do that already. </span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:11:16 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">When we first spoke, I was under the  impression you no longer available after 6:00. You underpromised, so you could  over deliver. I found out later that you were one of the hardest working guys  that I know.</span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:13:30 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">Maybe you don't want to work that hard which  is why it became an issue for you when I was pressing it. When I interview  people, I always try and understand where their comfort levels are so I  understand their boundries. The way I saw it is you wanted to have dinner with  your family and got back on the computer later. Here is what I would ask for you  to do.</span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:15:12 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">Look at your last month, and figure how many  hours you really worked. Was it 40-50? 50-55? or +55 hours per week? I am  interested in knowing because I am guessing your somewhere between 50-55. </span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:18:46 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">When we were in our discussions, you were  giving me the perception that it could cause a problem for you at home if you  were hoing to have to put in over 45 hours. What I really think is if you could  make $110,000 in a 50 hour work week, or you could make $150,000 in a 60 hour  work week I think you would probibly work 60. And then figure how you could get  it down to 55... and then 52...</span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:21:25 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">And at the same time you were doing that,  you would get me from 65 to 58, and 58 to 52, and so on. So at the end of the  day, it really comes down to how much my time is worth as well as your time.  Which is something you might not be taking into consiteration when you limit  your opportunities and not discussing this further. </span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:23:43 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">Currently, I have 3 consultants I am paying  170,000 and they are not as smart as you are. They are down the street and you  were down the block. At a certain point, I am sure you can understand that I can  only afford to spend so much time in IT. I am ready to discuss dollars if you  are. I am willing to discuss the boundries, or we can not discuss it at  all.</span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:24:56 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">Hopefully you at least know where I am  comming from. Bottom line, I am sitting here writing big checks saying to  myself. Would I be writing checks this big and having to invest the time if  Brett were here?</span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:27:22 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">I don't mind writing the checks, what I mind  is when I have ot write the checks and still put in the time. You asked me what  my commitment to you would be. If we were to do something, I told you I would  give you a year of 60 hours a week of helping you acclimate yourself to our  company. Thats a big investment of my time. I apprechiated the question because  no one had ever asked me before. </span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:29:59 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">So here is what you have to ask yourself...  Do I want to pass on the biggest financial opportunity of my life without going  to see this man? The question I would ask you, is why would you want to limit  your opportunities? </span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:34:35 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">The only thing I can think of is that you  would be affraid of the industry, maybe that you were getting dragged into the  deep end of the pool, giving up a job that I like that I am currently doing.  Also, I did hire a senior level programmer for more money than you were asking  for when you were interviewing and I am willing to pay him. Because I see how  much value he brings me.</span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:35:27 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">I guess the question I would ask you is  would you be willing to work with a programmer that makes more money that you  did if he had the tallent? </span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:38:26 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">We have an aggressive agenda, I am looking  to bring in top guys to make my life easier. I think you would be a good fit.  Tallent costs money, I realize that. Something to consider, the banks are  looking to change the comp plans for the Loan Officers and cut what they pay the  Loan Officers by 50% of what they pay now. They are doing this as a result of  the pressure they are getting from the gov</span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:39:50 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">The insurance companies that own mortgage  companies are following suit. Which means that we have hundreds of people who  are looking at our company as a result of massive pay cuts across the industry,  which we are not participating in doing.</span></td>
</tr>
<tr style="background-color:#e0edff;">
<td>11/20/2009</td>
<td></td>
<td>8:41:18 PM</td>
<td></td>
<td>mikeg1@ephmc.com (E-mail address not verified)</td>
<td></td>
<td>Brettski *red+u</td>
<td></td>
<td><span style="color:windowtext;">I know you have been looking for that 1  opportunity that you could capitalize on. Maybe this is it? Is it really that  far from the relm of possibility?</span></td>
</tr>
</tbody>
</table>
</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brettski111.wordpress.com/411/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brettski111.wordpress.com/411/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brettski111.wordpress.com/411/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brettski111.wordpress.com/411/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brettski111.wordpress.com/411/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brettski111.wordpress.com/411/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brettski111.wordpress.com/411/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brettski111.wordpress.com/411/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brettski111.wordpress.com/411/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brettski111.wordpress.com/411/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brettski111.wordpress.com/411/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brettski111.wordpress.com/411/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brettski111.wordpress.com/411/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brettski111.wordpress.com/411/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.brettski.com&amp;blog=730359&amp;post=411&amp;subd=brettski111&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.brettski.com/2009/11/21/install-moinmoin-on-dreamhost-walk-through/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Brettski</media:title>
		</media:content>
	</item>
	</channel>
</rss>
