<?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>Jeremy Knight</title>
	<atom:link href="http://jeremyknight.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://jeremyknight.wordpress.com</link>
	<description>Software Developer, SharePoint Developer, Consultant, Cajun</description>
	<lastBuildDate>Tue, 08 May 2012 16:31:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='jeremyknight.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Jeremy Knight</title>
		<link>http://jeremyknight.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://jeremyknight.wordpress.com/osd.xml" title="Jeremy Knight" />
	<atom:link rel='hub' href='http://jeremyknight.wordpress.com/?pushpress=hub'/>
		<item>
		<title>.NET String Concatenation</title>
		<link>http://jeremyknight.wordpress.com/2012/05/04/net-string-concatenation/</link>
		<comments>http://jeremyknight.wordpress.com/2012/05/04/net-string-concatenation/#comments</comments>
		<pubDate>Fri, 04 May 2012 16:30:12 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[concatenation]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[string]]></category>
		<category><![CDATA[stringbuilder]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=686</guid>
		<description><![CDATA[String concatenation is a tool on every developer’s tool belt but in .NET there are multiple ways to accomplish it. There are also a lot of conflicting articles, posts, etc. on the subject. When should you use StringBuilder? When should you use string formatting? This article will hopefully shine some light on when to use [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=686&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>String concatenation is a tool on every developer’s tool belt but in .NET there are multiple ways to accomplish it. There are also a lot of conflicting articles, posts, etc. on the subject. When should you use StringBuilder? When should you use string formatting? This article will hopefully shine some light on when to use each method.</p>
<h2>Which Methods Were Tested?</h2>
<ul>
<li>The concatenation operator. In C#, it is the + operator. In VB.NET, it is the &amp; operator.</li>
<li>The <a class="vt-p" title="String.Concat Method" href="http://msdn.microsoft.com/en-us/library/system.string.concat.aspx" target="_blank">String.Concat()</a> method.</li>
<li>The <a class="vt-p" title="StringBuilder Class" href="http://msdn.microsoft.com/en-us/library/system.text.stringbuilder.aspx" target="_blank">System.Text.StringBuilder</a> class.</li>
<li>The <a class="vt-p" title="String.Format Method" href="http://msdn.microsoft.com/en-us/library/system.string.format.aspx" target="_blank">String.Format()</a> method.</li>
</ul>
<h2>How Were They Tested?</h2>
<p>A console application was prepared to test operation scenarios. The scenarios were timed using the <a class="vt-p" title="Stopwatch Class" href="http://msdn.microsoft.com/en-us/library/system.diagnostics.stopwatch.aspx" target="_blank">System.Diagnostics.Stopwatch class</a>. The full Visual Studio solution can be found in <a class="vt-p" title="Jeremy Knight - Code samples, snippets, etc from my personal blog." href="http://jeremyknight.codeplex.com/" target="_blank">my CodePlex project</a>.</p>
<p><a class="vt-p" href="https://jeremyknight.files.wordpress.com/2012/05/screenshot-single-run.png"><img class="aligncenter size-full wp-image-823" title="screenshot-single-run" src="https://jeremyknight.files.wordpress.com/2012/05/screenshot-single-run.png?w=645" alt=""   /></a></p>
<h2>What Were the Results?</h2>
<p><strong>Scenario 1: Loop Concatenation</strong></p>
<p>The Loop Concatenation scenario was built to test string concatenation within a loop. This data set had the most straight-forward results. The StringBuilder class gives the best performance when using concatenation in this scenaraio.</p>
<div id="attachment_828" class="wp-caption aligncenter" style="width: 305px"><img class="size-full wp-image-828" title="string-concat-loop-results" src="https://jeremyknight.files.wordpress.com/2012/05/string-concat-loop-results.png?w=645" alt=""   /><p class="wp-caption-text">Loop Concatenation Results (in milliseconds)</p></div>
<p>Code sample using StringBuilder in this scenario:</p>
<p><pre class="brush: csharp;">
var builder = new StringBuilder();

for (int i = 0; i &lt; this.iterations; i++)
{
    builder.Append(&quot;x&quot;);
}

var testString = builder.ToString();
</pre></p>
<p><strong>Scenario 2: Full Name Concatenation</strong></p>
<p>The Full Name Concatenation scenario was built to test simple string concatenation in which few concatenations occur. It concatenates first name, a space, and last name. This is commonly used to build display names for a UI. These results point to the String.Concat method as the most efficient way to concatenate small numbers of strings.</p>
<div id="attachment_826" class="wp-caption aligncenter" style="width: 365px"><img class="size-full wp-image-826" title="string-concat-full-name-results" src="https://jeremyknight.files.wordpress.com/2012/05/string-concat-full-name-results.png?w=645" alt=""   /><p class="wp-caption-text">Full Name Concatenation Results (in ticks)</p></div>
<p>Code sample using String.Concat in this scenario:</p>
<p><pre class="brush: csharp;">
string first = &quot;John&quot;;
string last = &quot;Deaux&quot;;
string fullName = string.Concat(first, &quot; &quot;, last);
</pre></p>
<p><strong>Scenario 3: Long Text Concatenation</strong></p>
<p>The Long Text Concatenation scenario was built to test long concatenations in which many concatenations occur. It simulates building the body of an email message. These results also point to the String.Concat method as the most efficient. Comparing the prior scenario with this scenario you can begin to see pattern. As you add concatenations, the efficiency of String.Format and StringBuilder (when out of a looping scenario) declines.</p>
<div id="attachment_827" class="wp-caption aligncenter" style="width: 363px"><img class="size-full wp-image-827 " title="string-concat-long-text-results" src="https://jeremyknight.files.wordpress.com/2012/05/string-concat-long-text-results.png?w=645" alt=""   /><p class="wp-caption-text">Long Text Concatenation Results (in ticks)</p></div>
<p>Code sample using String.Concat in this scenario:</p>
<p><pre class="brush: csharp;">
string newLine = System.Environment.NewLine;
string name = &quot;John Deaux&quot;;
string email = &quot;john.deaux@123.me&quot;;
string subject = &quot;The Subject of the Message&quot;;
string product = &quot;ABC&quot;;
string feature = &quot;XYZ&quot;;
string body = &quot;The comment(s) made about product/feature.&quot;;

string[] values = new[]
    {
        &quot;Name: &quot;, name, newLine,
        &quot;Email: &quot;, email, newLine,
        &quot;Subject: &quot;, subject, newLine,
        &quot;Product: &quot;, product, newLine,
        &quot;Feature: &quot;, feature, newLine,
        &quot;Message: &quot;, newLine, body
    };

var emailBody = string.Concat(values);
</pre></p>
<p><strong>Scenario 4: Date Concatenation</strong></p>
<p>The Date Concatenation scenario was built to test the formatting of dates. It formats a date into the sortable format of 2011-12-31T15:30:15. Of the people I&#8217;ve talked to about this little experiment, this one has surprised the most. Why? Because it is highly touted by articles, books, and even Microsoft as the way to format data and it&#8217;s <em>extremely</em> inefficient. The String.Format method is slower and less efficient than every other method tested including the StringBuilder operator for formatting DateTime objects as strings.</p>
<div id="attachment_825" class="wp-caption aligncenter" style="width: 357px"><img class="size-full wp-image-825 " title="string-concat-date-results" src="https://jeremyknight.files.wordpress.com/2012/05/string-concat-date-results.png?w=645" alt=""   /><p class="wp-caption-text">Date Concatentation Results (in ticks)</p></div>
<p>Code sample using String.Concat in this scenario:</p>
<p><pre class="brush: csharp;">
DateTime date = DateTime.Now;

var values = new[]
    {
        date.Year.ToString(&quot;0000&quot;),
        &quot;-&quot;,
        date.Month.ToString(&quot;00&quot;),
        &quot;-&quot;,
        date.Day.ToString(&quot;00&quot;),
        &quot;T&quot;,
        date.Hour.ToString(&quot;00&quot;),
        &quot;:&quot;,
        date.Minute.ToString(&quot;00&quot;),
        &quot;:&quot;,
        date.Second.ToString(&quot;00&quot;)
    };

var sortable = string.Concat(values);
</pre></p>
<p>Yes, you did read that correctly. The above code is <em>a lot</em> faster and more efficient than:</p>
<p><pre class="brush: csharp;">
var sortable = string.Format(&quot;{0:u}&quot;, DateTime.Now);
// or
var sortable = string.Format(&quot;{0:yyyy-MM-ddTHH:mm:ss}&quot;, DateTime.Now);
</pre></p>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/software-development/'>Software Development</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/net/'>.net</a>, <a href='http://jeremyknight.wordpress.com/tag/code/'>code</a>, <a href='http://jeremyknight.wordpress.com/tag/concatenation/'>concatenation</a>, <a href='http://jeremyknight.wordpress.com/tag/development/'>development</a>, <a href='http://jeremyknight.wordpress.com/tag/performance/'>performance</a>, <a href='http://jeremyknight.wordpress.com/tag/string/'>string</a>, <a href='http://jeremyknight.wordpress.com/tag/stringbuilder/'>stringbuilder</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/686/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=686&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2012/05/04/net-string-concatenation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>

		<media:content url="https://jeremyknight.files.wordpress.com/2012/05/screenshot-single-run.png" medium="image">
			<media:title type="html">screenshot-single-run</media:title>
		</media:content>

		<media:content url="https://jeremyknight.files.wordpress.com/2012/05/string-concat-loop-results.png" medium="image">
			<media:title type="html">string-concat-loop-results</media:title>
		</media:content>

		<media:content url="https://jeremyknight.files.wordpress.com/2012/05/string-concat-full-name-results.png" medium="image">
			<media:title type="html">string-concat-full-name-results</media:title>
		</media:content>

		<media:content url="https://jeremyknight.files.wordpress.com/2012/05/string-concat-long-text-results.png" medium="image">
			<media:title type="html">string-concat-long-text-results</media:title>
		</media:content>

		<media:content url="https://jeremyknight.files.wordpress.com/2012/05/string-concat-date-results.png" medium="image">
			<media:title type="html">string-concat-date-results</media:title>
		</media:content>
	</item>
		<item>
		<title>My Visual Studio Theme</title>
		<link>http://jeremyknight.wordpress.com/2012/04/18/my-visual-studio-theme/</link>
		<comments>http://jeremyknight.wordpress.com/2012/04/18/my-visual-studio-theme/#comments</comments>
		<pubDate>Wed, 18 Apr 2012 23:16:42 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[customization]]></category>
		<category><![CDATA[resharper]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[visual-studio]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=807</guid>
		<description><![CDATA[So I&#8217;ve finally published my Visual Studio theme on the Studio Styles website. It&#8217;s a customized version of the Ragnarok Grey theme created by Tomas Restrepro. I darkened the background then had to make a few other subtle changes for readability due to the darker background. Ragnarok Dark as I&#8217;ve chosen to call it can be found [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=807&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So I&#8217;ve finally published my Visual Studio theme on the <a class="vt-p" title="Studio Styles - Custom Styles for Visual Studio" href="http://studiostyl.es/" target="_blank">Studio Styles</a> website. It&#8217;s a customized version of the <a class="vt-p" href="http://winterdom.com/2007/10/ragnarokavs2005colorscheme" target="_blank">Ragnarok Grey theme</a> created by Tomas Restrepro. I darkened the background then had to make a few other subtle changes for readability due to the darker background.</p>
<p>Ragnarok Dark as I&#8217;ve chosen to call it can be found here: <a class="vt-p" href="http://studiostyl.es/schemes/ragnarok-dark-grey-customized">http://studiostyl.es/schemes/ragnarok-dark-grey-customized</a></p>
<p>And remember to rate it if you like it!</p>
<p>Now a bonus for those of you that use ReSharper. The following line pasted into the bottom of the items section in the XML downloaded from the site before you import will make those To Do Comments and Not Implemented Exceptions stand out.</p>
<p><pre class="brush: xml;">&lt;Item Name=&quot;ReSharper Todo Item&quot; Foreground=&quot;0x0000FFFF&quot; Background=&quot;0x02000000&quot; BoldFont=&quot;Yes&quot;/&gt;</pre></p>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/software-development/'>Software Development</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/net/'>.net</a>, <a href='http://jeremyknight.wordpress.com/tag/customization/'>customization</a>, <a href='http://jeremyknight.wordpress.com/tag/resharper/'>resharper</a>, <a href='http://jeremyknight.wordpress.com/tag/software/'>software</a>, <a href='http://jeremyknight.wordpress.com/tag/tools/'>tools</a>, <a href='http://jeremyknight.wordpress.com/tag/visual-studio/'>visual-studio</a>, <a href='http://jeremyknight.wordpress.com/tag/xml/'>xml</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/807/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/807/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/807/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/807/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/807/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/807/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/807/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/807/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/807/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/807/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/807/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/807/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/807/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/807/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=807&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2012/04/18/my-visual-studio-theme/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>
	</item>
		<item>
		<title>2012 Baton Rouge SQL Saturday &amp; Tech Day</title>
		<link>http://jeremyknight.wordpress.com/2012/04/18/2012-baton-rouge-sql-saturday-tech-day/</link>
		<comments>http://jeremyknight.wordpress.com/2012/04/18/2012-baton-rouge-sql-saturday-tech-day/#comments</comments>
		<pubDate>Wed, 18 Apr 2012 16:05:04 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[baton-rouge]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[louisiana]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[sharepoint]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[sql-saturday]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=814</guid>
		<description><![CDATA[The information for this year&#8217;s Baton Rouge SQL Saturday &#38; Tech Day came online this past week. It&#8217;s scheduled for August 4, 2012. Free SQL Server, SharePoint and .NET training!  Chance to win great prizes!  What more could an IT Professional ask for?  If this sounds good to you, then don’t miss your opportunity to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=814&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The information for this year&#8217;s Baton Rouge SQL Saturday &amp; Tech Day came online this past week. It&#8217;s scheduled for August 4, 2012.</p>
<blockquote><p>Free SQL Server, SharePoint and .NET training!  Chance to win great prizes!  What more could an IT Professional ask for?  If this sounds good to you, then don’t miss your opportunity to attend SQL Saturday #150 and TECH Day, the largest FREE training event in Louisiana dedicated exclusively to SQL Server, .NET, Development, SharePoint and Business Intelligence.   This is a COMMUNITY driven event!</p></blockquote>
<p>For more information visit the official website at: <a class="vt-p" href="http://sqlsaturday.com/150/eventhome.aspx">http://sqlsaturday.com/150/eventhome.aspx</a></p>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/uncategorized/'>Uncategorized</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/net/'>.net</a>, <a href='http://jeremyknight.wordpress.com/tag/baton-rouge/'>baton-rouge</a>, <a href='http://jeremyknight.wordpress.com/tag/event/'>event</a>, <a href='http://jeremyknight.wordpress.com/tag/louisiana/'>louisiana</a>, <a href='http://jeremyknight.wordpress.com/tag/microsoft/'>microsoft</a>, <a href='http://jeremyknight.wordpress.com/tag/sharepoint/'>sharepoint</a>, <a href='http://jeremyknight.wordpress.com/tag/sql/'>sql</a>, <a href='http://jeremyknight.wordpress.com/tag/sql-saturday/'>sql-saturday</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/814/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/814/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/814/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/814/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/814/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/814/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/814/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/814/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/814/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/814/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/814/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/814/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/814/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/814/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=814&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2012/04/18/2012-baton-rouge-sql-saturday-tech-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>
	</item>
		<item>
		<title>Default Style Sheet v1.1</title>
		<link>http://jeremyknight.wordpress.com/2012/03/28/default-style-sheet-v1-1/</link>
		<comments>http://jeremyknight.wordpress.com/2012/03/28/default-style-sheet-v1-1/#comments</comments>
		<pubDate>Wed, 28 Mar 2012 05:18:25 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=804</guid>
		<description><![CDATA[If you missed my first post, default style sheet is meant to be a starter style sheet for a new project. I&#8217;ve made a few adjustments to default style sheet. The button styling has had some minor tweaking (rounded corners, color changes, etc.) and the sheet has some random cleanup. I have also changed the location [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=804&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you missed my first post, default style sheet is meant to be a starter style sheet for a new project. I&#8217;ve made a few adjustments to default style sheet. The button styling has had some minor tweaking (rounded corners, color changes, etc.) and the sheet has some random cleanup.</p>
<p>I have also changed the location of the CSS sheet. The is no longer a zip file available for download. You can now view the CSS sheet directly in the source view of my CodePlex project: <a title="Jeremy Knight CodePlex Project" href="http://jeremyknight.codeplex.com">Jeremy Knight CodePlex Project</a>.</p>
<p>Again, my thanks go out to the following:</p>
<ul>
<li>Eric Meyer for his <a class="vt-p" title="Eric Meyer's Reset CSS" href="http://meyerweb.com/eric/tools/css/reset/index.html" target="_blank">reset style sheet</a>.</li>
<li><a class="vt-p" title="Funroe.net - Jess Planck" href="http://www.funroe.net" target="_blank">Jess Planck</a> for his table styles.</li>
<li>Particletree for their article <a class="vt-p" title="Particletree - Rediscovering the Button Element" href="http://particletree.com/features/rediscovering-the-button-element/" target="_blank">Rediscovering the Button Element</a></li>
</ul>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/web-development/'>Web Development</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/css/'>css</a>, <a href='http://jeremyknight.wordpress.com/tag/html5/'>html5</a>, <a href='http://jeremyknight.wordpress.com/tag/web/'>web</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/804/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/804/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/804/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/804/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/804/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/804/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/804/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/804/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/804/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/804/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/804/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/804/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/804/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/804/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=804&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2012/03/28/default-style-sheet-v1-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>
	</item>
		<item>
		<title>Back to Basics: System.String</title>
		<link>http://jeremyknight.wordpress.com/2011/10/28/back-to-basics-system-string/</link>
		<comments>http://jeremyknight.wordpress.com/2011/10/28/back-to-basics-system-string/#comments</comments>
		<pubDate>Fri, 28 Oct 2011 23:21:05 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[string]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=764</guid>
		<description><![CDATA[For such a simple concept, the string class is, in my opinion, one of the most complex classes in the System namespace. The MSDN page for String Class is 53 printed pages excluding the 2 additional pages of comments. What is System.String? In the .NET framework, the string type is a reference type. It is not [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=764&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>For such a simple concept, the string class is, in my opinion, one of the most complex classes in the System namespace. The MSDN page for String Class is 53 printed pages excluding the 2 additional pages of comments.</p>
<p><strong>What is System.String?</strong></p>
<p>In the .NET framework, the string type is a reference type. It is not a value type as is often the belief. It is an object that consists of a collection of System.Char values in sequential order. Characters within the string can be referenced as follows:</p>
<p><pre class="brush: csharp;">
string foo = &quot;bar&quot;;
char r = foo[2];
</pre></p>
<p><strong>Immutable</strong></p>
<p>The string type is also immutable. You cannot change the contents of a string without reflection or <a class="vt-p" title="[MSDN] How to: Modify String Contents" href="http://msdn.microsoft.com/en-us/library/ms228599.aspx" target="_blank">unsafe code</a>. The methods, operators, etc. that appear to modify a string actually return a new string with the modified contents. The Replace function of the string object is a great example of this. You cannot simply call the Replace method. You have to return the results of the method to a string variable.</p>
<p><pre class="brush: csharp;">
string foo = &quot;abc&quot;;
foo = foo.Replace(&quot;abc&quot;, &quot;xyz&quot;);
</pre></p>
<p><strong>Concatenation and the Compiler</strong></p>
<p>The compiler does some interesting things when working with strings. For example, when concatenating with variables in a single statement:</p>
<p><pre class="brush: csharp;">
string foobar = foo + &quot; &quot; + bar;

// compiler sees the above as:
string foobar = string.Concat(foo, &quot; &quot;, bar);
</pre></p>
<p>When you use constants such as literals and const string members, the compiler knows that all the parts are constant and it does all the concatenation at compile time, storing the full string in the compiled code.</p>
<p><pre class="brush: csharp;">
string foobar = &quot;foo&quot; + &quot; &quot; + &quot;bar&quot;;

// compiler sees the above as:
string foobar = &quot;foo bar&quot;;
</pre><br />
<pre class="brush: csharp;">
const string foo = &quot;foo&quot;;
string foobar = foo + &quot; &quot; + &quot;bar&quot;;

// compiler sees the above as:
string foobar = &quot;foo bar&quot;;
</pre></p>
<p><strong>String.Empty versus &#8220;&#8221;</strong></p>
<p>And finally, there is a difference between string.Empty and “”. When you use “”, .NET creates an object but when you use string.Empty it does not. The difference may be small, but its a difference that can make a performance impact.</p>
<p><pre class="brush: csharp;">
string foo = &quot;&quot;; // creates an object
string bar = string.Empty; // doesn't create an object
</pre></p>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/software-development/'>Software Development</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/net/'>.net</a>, <a href='http://jeremyknight.wordpress.com/tag/code/'>code</a>, <a href='http://jeremyknight.wordpress.com/tag/development/'>development</a>, <a href='http://jeremyknight.wordpress.com/tag/string/'>string</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/764/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=764&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2011/10/28/back-to-basics-system-string/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>
	</item>
		<item>
		<title>Null Coalescing Operator</title>
		<link>http://jeremyknight.wordpress.com/2011/10/27/null-coalescing-operator/</link>
		<comments>http://jeremyknight.wordpress.com/2011/10/27/null-coalescing-operator/#comments</comments>
		<pubDate>Thu, 27 Oct 2011 05:06:41 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[null]]></category>
		<category><![CDATA[operator]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=741</guid>
		<description><![CDATA[In C# 2.0, Microsoft introduced the null coalescing operator (??). The ?? operator is a shorthand notation for returning a default value if a reference or Nullable&#60;T&#62; type is null. The examples below show how the null coalescing operator achieves the same result as traditional conditional statements but with less lines of code. Both sets [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=741&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In C# 2.0, Microsoft introduced the null coalescing operator (??). The ?? operator is a shorthand notation for returning a default value if a reference or <a class="vt-p" title="Nullable Types (C# Programming Guide) - MSDN" href="http://msdn.microsoft.com/en-us/library/1t3y8s4s.aspx" target="_blank">Nullable&lt;T&gt;</a> type is null.</p>
<p>The examples below show how the null coalescing operator achieves the same result as traditional conditional statements but with less lines of code. Both sets of examples use property getter methods with assumed fields.</p>
<p><strong>Reference Examples with Conditional Statements</strong></p>
<p><pre class="brush: csharp;">
public MyObject MyObjectProperty
{
    get
    {
        if (this.myObject == null)
        {
            return new MyObject();
        }

        return this.myObject;
    }
}
</pre></p>
<p><strong>Reference Examples with Null Coalescing Operator</strong></p>
<p><pre class="brush: csharp;">
public MyObject MyObjectProperty
{
    get
    {
        return this.myObject ?? new MyObject();
    }
}
</pre></p>
<p><strong>Nullable&lt;T&gt; Example with Conditional Statements</strong></p>
<p><pre class="brush: csharp;">
public int Number
{
    get
    {
        if (this.nullableNumber.HasValue)
        {
            return this.nullableNumber.Value;
        }

        return 0;
    }
}
</pre></p>
<p><strong>Nullable&lt;T&gt; Example with Null Coalescing Operator</strong></p>
<p><pre class="brush: csharp;">
public int Number
{
    get { return this.nullableNumber ?? 0; }
}
</pre></p>
<p>The main argument against the ?? operator is that developers don&#8217;t understand it so it makes the code less readable and maintainable. This is a poor argument in my opinion. As developers, we should never stop trying to improve both ourselves and our teams. This is something that can be taught over lunch one day.</p>
<p>More reading: <a class="vt-p" title="?? Operator (C# Reference) - MSDN" href="http://msdn.microsoft.com/en-us/library/ms173224(v=VS.100).aspx" target="_blank">?? Operator (C# Reference) &#8211; MSDN</a></p>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/software-development/'>Software Development</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/net/'>.net</a>, <a href='http://jeremyknight.wordpress.com/tag/code/'>code</a>, <a href='http://jeremyknight.wordpress.com/tag/development/'>development</a>, <a href='http://jeremyknight.wordpress.com/tag/null/'>null</a>, <a href='http://jeremyknight.wordpress.com/tag/operator/'>operator</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/741/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/741/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/741/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/741/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/741/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/741/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/741/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/741/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/741/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/741/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/741/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/741/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/741/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/741/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=741&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2011/10/27/null-coalescing-operator/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>
	</item>
		<item>
		<title>Default Style Sheet v1.0</title>
		<link>http://jeremyknight.wordpress.com/2011/10/19/default-style-sheet/</link>
		<comments>http://jeremyknight.wordpress.com/2011/10/19/default-style-sheet/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 22:53:03 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=631</guid>
		<description><![CDATA[I&#8217;ve been using a reset style sheet for years to smooth out browser inconsistencies but at the start of every project there was always a period of rework. A reset style sheet basically zeros out the styles set by a browser and gives you a blank slate to work with. But what if I don&#8217;t [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=631&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using a reset style sheet for years to smooth out browser inconsistencies but at the start of every project there was always a period of rework. A reset style sheet basically zeros out the styles set by a browser and gives you a blank slate to work with. But what if I don&#8217;t want a blank slate over and over again?</p>
<p>That&#8217;s where the default style sheet comes in. A default style sheet is zeroes out the styles of a browser but then defines default styles for common HTML elements. There are a few default style sheets out there but I&#8217;ve always found they didn&#8217;t default enough elements. The following link will take you to a zip file download containing my version of a default style sheet.</p>
<p><a class="vt-p" style="border:1px dashed #666666;background:transparent url('http://cdn.digi-la.com/icons/misc/download-icon.gif') no-repeat 6px center;display:block;height:64px;width:250px;line-height:64px;text-align:left;margin:0 auto;padding:2px 2px 2px 64px;" title="Default CSS (v1.0)" href="http://jeremyknight.codeplex.com/" target="_blank">Default CSS v1.0</a></p>
<p>My thanks go out to the following:</p>
<ul>
<li>Eric Meyer for his <a class="vt-p" title="Eric Meyer's Reset CSS" href="http://meyerweb.com/eric/tools/css/reset/index.html" target="_blank">reset style sheet</a>.</li>
<li><a class="vt-p" title="Funroe.net - Jess Planck" href="http://www.funroe.net" target="_blank">Jess Planck</a> for his table styles.</li>
<li>Particletree for their article <a class="vt-p" title="Particletree - Rediscovering the Button Element" href="http://particletree.com/features/rediscovering-the-button-element/" target="_blank">Rediscovering the Button Element</a></li>
</ul>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/web-development/'>Web Development</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/css/'>css</a>, <a href='http://jeremyknight.wordpress.com/tag/html5/'>html5</a>, <a href='http://jeremyknight.wordpress.com/tag/web/'>web</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/631/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/631/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/631/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/631/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/631/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/631/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/631/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/631/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/631/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/631/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/631/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/631/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/631/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/631/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=631&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2011/10/19/default-style-sheet/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>
	</item>
		<item>
		<title>Another Reason to Use Google+</title>
		<link>http://jeremyknight.wordpress.com/2011/10/07/another-reason-to-use-google/</link>
		<comments>http://jeremyknight.wordpress.com/2011/10/07/another-reason-to-use-google/#comments</comments>
		<pubDate>Fri, 07 Oct 2011 05:17:10 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Personal Computing]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[social]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=748</guid>
		<description><![CDATA[Unlimited free storage unless you take pictures at a really, really high resolution. There are 2 articles on the picasa web albums support section that are of interest. The first is entitled How It Works and states: Picasa Web provides 1 GB for photos and videos. Files under certain sizes don&#8217;t count towards this limit. The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=748&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Unlimited free storage unless you take pictures at a really, really high resolution. There are 2 articles on the picasa web albums support section that are of interest.</p>
<p>The first is entitled <a class="vt-p" href="http://picasa.google.com/support/bin/answer.py?answer=39567">How It Works</a> and states:</p>
<blockquote><p>Picasa Web provides 1 GB for photos and videos. Files under certain sizes don&#8217;t count towards this limit.</p></blockquote>
<p>The second is entitled <a class="vt-p" href="http://picasa.google.com/support/bin/answer.py?answer=1224181">Free Storage Limits</a> and it states the following:</p>
<blockquote><p><strong>If you&#8217;ve signed up for Google+</strong></p>
<p>Free storage limits</p>
<p>Photos up to 2048 x 2048 pixels and videos up to 15 minutes won&#8217;t count towards your free storage.</p>
<p>Automatic resizing</p>
<p>All photos uploaded in Google+ will be automatically resized to 2048 pixels (on their longest edge) and won&#8217;t count towards your free storage quota.</p>
<p>All photos uploaded to Picasa Web Albums over the free size limit will count towards your 1 GB of free storage. When you reach your storage limit, any new photos you upload to Picasa Web larger than the free size limit will be automatically resized to 2048 pixels (on their longest edge).</p>
<p><strong>If you haven&#8217;t signed up for Google+</strong></p>
<p>Free storage limits</p>
<p>Photos up to 800 x 800 pixels and videos up to 15 minutes won&#8217;t count towards your free storage.</p>
<p>Automatic resizing</p>
<p>All photos uploaded over the free size limit will count towards your 1 GB of free storage. When you reach your storage limit, any new photos you upload to Picasa Web larger than the free size limit will be automatically resized to 800 pixels (on their longest edge).</p></blockquote>
<p>That&#8217;s right you read that right. If you&#8217;re a Google+ member, you get over double the resolution free.</p>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/personal-computing/'>Personal Computing</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/google/'>google</a>, <a href='http://jeremyknight.wordpress.com/tag/social/'>social</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/748/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/748/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/748/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=748&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2011/10/07/another-reason-to-use-google/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>
	</item>
		<item>
		<title>HTML5 and target=&#8221;_blank&#8221;</title>
		<link>http://jeremyknight.wordpress.com/2011/09/24/html5-and-target-blank/</link>
		<comments>http://jeremyknight.wordpress.com/2011/09/24/html5-and-target-blank/#comments</comments>
		<pubDate>Sat, 24 Sep 2011 19:11:58 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=744</guid>
		<description><![CDATA[I posted a jQuery solution to the XHTML Strict Target=&#8221;_blank&#8221; problem a while back. Well I finally had some free time to start delving deep into HTML5. Low and behold the W3C has removed the deprecated status from the &#8220;_blank&#8221; value for the target attribute. What does that mean? That means that target=&#8221;_blank&#8221; is 100% [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=744&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I posted a <a class="vt-p" title="jQuery XHTML Strict Target=”_blank” Solution" href="http://jeremyknight.wordpress.com/2010/11/27/jquery-xhtml-strict-target-blank-solution/">jQuery solution to the XHTML Strict Target=&#8221;_blank&#8221; problem</a> a while back. Well I finally had some free time to start delving deep into HTML5. Low and behold the W3C has removed the deprecated status from the &#8220;_blank&#8221; value for the target attribute. What does that mean?</p>
<p>That means that target=&#8221;_blank&#8221; is 100% valid in HTML5!</p>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/web-development/'>Web Development</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/html5/'>html5</a>, <a href='http://jeremyknight.wordpress.com/tag/javascript/'>javascript</a>, <a href='http://jeremyknight.wordpress.com/tag/xhtml/'>xhtml</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/744/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/744/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/744/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=744&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2011/09/24/html5-and-target-blank/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>
	</item>
		<item>
		<title>Get a String from a MemoryStream</title>
		<link>http://jeremyknight.wordpress.com/2011/09/09/get-a-string-from-a-memorystream/</link>
		<comments>http://jeremyknight.wordpress.com/2011/09/09/get-a-string-from-a-memorystream/#comments</comments>
		<pubDate>Fri, 09 Sep 2011 22:58:04 +0000</pubDate>
		<dc:creator>Jeremy</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[string]]></category>

		<guid isPermaLink="false">http://jeremyknight.wordpress.com/?p=718</guid>
		<description><![CDATA[The MSDN article for MemoryStream has this example of outputting a string to the console. I have a problem with code examples that try and do too much. Here is a much less complex example of writing a string to the console from a MemoryStream. Filed under: Software Development Tagged: .net, code, development, string<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=718&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The <a class="vt-p" title="MSDN article for MemoryStream" href="http://msdn.microsoft.com/en-us/library/system.io.memorystream.aspx" target="_blank">MSDN article for MemoryStream</a> has this example of outputting a string to the console.</p>
<p><pre class="brush: csharp;">
private static void Main(string[] args)
{
    int count;
    byte[] byteArray;
    char[] charArray;
    UnicodeEncoding uniEncoding = new UnicodeEncoding();

    // Create the data to write to the stream.
    byte[] firstString = uniEncoding.GetBytes(&quot;Invalid file path characters are: &quot;);
    byte[] secondString = uniEncoding.GetBytes(Path.GetInvalidPathChars());

    using(MemoryStream memStream = new MemoryStream(100))
    {
        // Write the first string to the stream.
        memStream.Write(firstString, 0 , firstString.Length);

        // Write the second string to the stream, byte by byte.
        count = 0;
        while(count &lt; secondString.Length)
        {
            memStream.WriteByte(secondString[count++]);
        }

        // Write the stream properties to the console.
        Console.WriteLine(
            &quot;Capacity = {0}, Length = {1}, Position = {2}\n&quot;,
            memStream.Capacity.ToString(),
            memStream.Length.ToString(),
            memStream.Position.ToString());

        // Set the position to the beginning of the stream.
        memStream.Seek(0, SeekOrigin.Begin);

        // Read the first 20 bytes from the stream.
        byteArray = new byte[memStream.Length];
        count = memStream.Read(byteArray, 0, 20);

        // Read the remaining bytes, byte by byte.
        while(count &lt; memStream.Length)
        {
            byteArray[count++] = Convert.ToByte(memStream.ReadByte());
        }

        // Decode the byte array into a char array
        // and write it to the console.
        charArray = new char[uniEncoding.GetCharCount(byteArray, 0, count)];
        uniEncoding.GetDecoder().GetChars(byteArray, 0, count, charArray, 0);
        Console.WriteLine(charArray);
    }
}
</pre></p>
<div>I have a problem with code examples that try and do too much. Here is a much less complex example of writing a string to the console from a MemoryStream.</div>
<p><pre class="brush: csharp;">
private static void Main(string[] args)
{
    using (var memoryStream = new MemoryStream(100))
    using (var streamWriter = new StreamWriter(memoryStream))
    using (var streamReader = new StreamReader(memoryStream))
    {
        var invalidPath = new string(Path.GetInvalidPathChars());
        streamWriter.WriteLine(&quot;Invalid file path characters are:&quot;);
        streamWriter.WriteLine(invalidPath);

        streamWriter.Flush();
        memoryStream.Position = 0;

        var stringToOutput = streamReader.ReadToEnd();
        Console.WriteLine(stringToOutput);
    }
}
</pre></p>
<br />Filed under: <a href='http://jeremyknight.wordpress.com/category/software-development/'>Software Development</a> Tagged: <a href='http://jeremyknight.wordpress.com/tag/net/'>.net</a>, <a href='http://jeremyknight.wordpress.com/tag/code/'>code</a>, <a href='http://jeremyknight.wordpress.com/tag/development/'>development</a>, <a href='http://jeremyknight.wordpress.com/tag/string/'>string</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jeremyknight.wordpress.com/718/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jeremyknight.wordpress.com/718/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jeremyknight.wordpress.com/718/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jeremyknight.wordpress.com/718/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jeremyknight.wordpress.com/718/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jeremyknight.wordpress.com/718/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jeremyknight.wordpress.com/718/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jeremyknight.wordpress.com/718/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jeremyknight.wordpress.com/718/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jeremyknight.wordpress.com/718/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jeremyknight.wordpress.com/718/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jeremyknight.wordpress.com/718/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jeremyknight.wordpress.com/718/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jeremyknight.wordpress.com/718/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jeremyknight.wordpress.com&#038;blog=1534389&#038;post=718&#038;subd=jeremyknight&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jeremyknight.wordpress.com/2011/09/09/get-a-string-from-a-memorystream/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/caef9f0bc357e81fdf169eb5ff790964?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=PG" medium="image">
			<media:title type="html">Jeremy</media:title>
		</media:content>
	</item>
	</channel>
</rss>
