<?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>My Software Notes</title>
	<atom:link href="http://mysoftwarenotes.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://mysoftwarenotes.wordpress.com</link>
	<description>Useful things I discover</description>
	<lastBuildDate>Thu, 19 Jan 2012 18:26:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='mysoftwarenotes.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>My Software Notes</title>
		<link>http://mysoftwarenotes.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://mysoftwarenotes.wordpress.com/osd.xml" title="My Software Notes" />
	<atom:link rel='hub' href='http://mysoftwarenotes.wordpress.com/?pushpress=hub'/>
		<item>
		<title>How to Unit Test Custom Data Annotations</title>
		<link>http://mysoftwarenotes.wordpress.com/2011/12/16/how-to-unit-test-custom-data-annotations/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2011/12/16/how-to-unit-test-custom-data-annotations/#comments</comments>
		<pubDate>Fri, 16 Dec 2011 22:42:35 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Data Annotations]]></category>
		<category><![CDATA[Unit Testing]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=240</guid>
		<description><![CDATA[I created a custom data annotation to test a zip code and I started writing a unit test to make sure it worked and &#8230; ehhh, ummm, arrr?? How do I test it? Well, I searched and found this great article: Unit Testing Custom Data Annotations. Thank you Walter C. Johnson! A nice clean solution.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=240&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I created a custom data annotation to test a zip code and I started writing a unit test to make sure it worked and &#8230; ehhh, ummm, arrr?? How do I test it?</p>
<p>Well, I searched and found this great article: <a href="http://villecoder.com/2010/04/23/unit-testing-custom-data-annotations/">Unit Testing Custom Data Annotations</a>.</p>
<p>Thank you Walter C. Johnson! A nice clean solution.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/240/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/240/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/240/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/240/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/240/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/240/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/240/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/240/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/240/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/240/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/240/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/240/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/240/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/240/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=240&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2011/12/16/how-to-unit-test-custom-data-annotations/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>
	</item>
		<item>
		<title>Entity Framework 4 – The selected stored procedure returns no columns (part 2)</title>
		<link>http://mysoftwarenotes.wordpress.com/2011/11/04/entity-framework-4-%e2%80%93-the-selected-stored-procedure-returns-no-columns-part-2/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2011/11/04/entity-framework-4-%e2%80%93-the-selected-stored-procedure-returns-no-columns-part-2/#comments</comments>
		<pubDate>Fri, 04 Nov 2011 19:35:38 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Entity Framework]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=244</guid>
		<description><![CDATA[My original post on this topic, Entity Framework 4 – The selected stored procedure returns no columns, has been getting quite a lot of hits recently and I realize that of all the solutions I gave on that page the one I use the most is the one that&#8217;s mentioned way down the page in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=244&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>My original post on this topic, <a href="http://mysoftwarenotes.wordpress.com/2010/11/02/entity-framework-4-the-selected-stored-procedure-returns-no-columns/">Entity Framework 4 – The selected stored procedure returns no columns</a>, has been getting quite a lot of hits recently and I realize that of all the solutions I gave on that page the one I use the most is the one that&#8217;s mentioned way down the page in a comment.  So I thought it would be a good idea to highlight it.</p>
<p>The simplest solution to this issue is based on some data given by <a title="Frank Lan" href="/members/Frank%20Lan.aspx">Frank Lan</a>, a guy from MS Online Community Support on the SilverLight forums.  He said:</p>
<blockquote><p>I did some research on how Visual Studio gets the column information. If you open SQL Server profiler when you click “Get Column Information”, you will find that Visual Studio queries against database to get the column information. One query I notice is that Visual Studio tries to execute the store procedure with all parameters set to be null. I am not sure if this is the way Visual Studio determines whether there’s column information or not. But I suggest you trying to execute your query in this way to see if there’s any column returned by your store procedure. Of course you can monitor the profiler your own to find more useful information.</p></blockquote>
<p>That suggested a simple way to handle any situation where you have applied the solutions I gave in the original article (don&#8217;t just ignore those solutions and do this easy one) or where you are forced to use temp tables because temp variables won’t do and you still can’t get the columns:</p>
<blockquote><p>Stick an “if” statement at the top of your sproc that checks if all parameters are null and if true returns the structure.</p></blockquote>
<p>For Example:<br />
<code>if @param1 is null and @param2 is null then<br />
begin<br />
select<br />
cast(null as varchar(10)) as Column1,<br />
cast(null as bit) as Column2,<br />
cast(null as decimal) as Column3<br />
end</code></p>
<p>Just be aware that the casts are required otherwise EF won&#8217;t be able to tell what the data types are supposed to be.  Even if you return values instead of nulls you still need the casts.</p>
<p>Hope that helps.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/244/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/244/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/244/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=244&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2011/11/04/entity-framework-4-%e2%80%93-the-selected-stored-procedure-returns-no-columns-part-2/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>
	</item>
		<item>
		<title>Podcast Introductions to node.js</title>
		<link>http://mysoftwarenotes.wordpress.com/2011/11/02/podcast-introductions-to-node-js/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2011/11/02/podcast-introductions-to-node-js/#comments</comments>
		<pubDate>Wed, 02 Nov 2011 15:14:57 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[node.js]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=241</guid>
		<description><![CDATA[I&#8217;ve recently come across some good intro podcasts on node.js. I&#8217;ve been listening to the .NET Rocks podcast for a while now and their latest show is a talk with Tomasz Janczuk, the guy at Microsoft who is working on porting node.js to Windows and IIS. It&#8217;s a good intro for all types of developers [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=241&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently come across some good intro podcasts on node.js.</p>
<p>I&#8217;ve been listening to the <a href="http://www.dotnetrocks.com/">.NET Rocks</a> podcast for a while now and their latest show is a talk with <a href="http://tomasz.janczuk.org/">Tomasz Janczuk</a>, the guy at Microsoft who is working on porting node.js to Windows and IIS. It&#8217;s a good intro for all types of developers but is probably aimed at .NET devs more than open source or Java devs.</p>
<p>» <a href="http://www.dotnetrocks.com/default.aspx?showNum=711">.NET Rocks &#8211; Show 711: Tomasz Janczuk Builds Web Apps with node.js</a> &#8211; As well as the basics on what node.js is and how you use it, there is some very good data on when you&#8217;d use iisnode versus basic node.exe.</p>
<p>I only came across the <a href="http://herdingcode.com/">Herding Code</a> podcast a few weeks ago, but I like it so much that I&#8217;ve already caught up on all the shows for this year and a couple of the earlier ones that covered topics I&#8217;m interested in. The four presenters are real pro devs and the discussions are always really lively, funny and interesting.</p>
<p>There are two node.js related shows:</p>
<p>» <a href="http://herdingcode.com/?p=299">Herding Code 102: Tim Caswell on Node.js</a> &#8211; this is an excellent intro that goes beyond the basics and explains the event loop of node and the non-blocking async programming model it uses. This gives you a good foundation.</p>
<p>» <a href="http://herdingcode.com/?p=347">Herding Code 122: Bert Belder on porting Node.js to Windows</a> &#8211; This is about more than just porting node to Windows, which is very interesting in itself, it builds on show 102, so listen to that one first.</p>
<p>I hope these are helpful.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/241/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=241&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2011/11/02/podcast-introductions-to-node-js/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>
	</item>
		<item>
		<title>A transport-level error has occurred when sending the request to the server. (provider: TCP Provider, error: 0 &#8211; An existing connection was forcibly closed by the remote host.)</title>
		<link>http://mysoftwarenotes.wordpress.com/2011/10/07/a-transport-level-error-has-occurred-when-sending-the-request-to-the-server-provider-tcp-provider-error-0-an-existing-connection-was-forcibly-closed-by-the-remote-host/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2011/10/07/a-transport-level-error-has-occurred-when-sending-the-request-to-the-server-provider-tcp-provider-error-0-an-existing-connection-was-forcibly-closed-by-the-remote-host/#comments</comments>
		<pubDate>Fri, 07 Oct 2011 15:36:03 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Database]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=236</guid>
		<description><![CDATA[Well, that&#8217;s a mouthful, isn&#8217;t it? I saw this in our production web site&#8217;s log and wondered how serious an issue it is.  Our site is ASP.NET MVC 3, using Entity Framework 4.1 for database connectivity. I dug around and found the best explanations here: Michael Aspengren blog post with the same loooong title Adapter [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=236&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Well, that&#8217;s a mouthful, isn&#8217;t it?</p>
<p>I saw this in our production web site&#8217;s log and wondered how serious an issue it is.  Our site is ASP.NET MVC 3, using Entity Framework 4.1 for database connectivity.</p>
<p>I dug around and found the best explanations here:</p>
<ul>
<li><a href="http://blogs.msdn.com/b/spike/archive/2009/04/16/a-transport-level-error-has-occurred-when-sending-the-request-to-the-server-provider-tcp-provider-error-0-an-existing-connection-was-forcibly-closed-by-the-remote-host.aspx">Michael Aspengren blog post with the same loooong title</a></li>
<li><a href="http://msdn.microsoft.com/en-us/library/dd788435(BTS.10).aspx#BKMK_SQLRestoreConn">Adapter client throws an exception on performing an operation after the connectivity is restored between the adapter client and the SQL Server database</a></li>
<li><a href="http://msdn.microsoft.com/en-us/library/ms187005.aspx">Troubleshooting: Connection Forcibly Closed</a></li>
</ul>
<p>It&#8217;s only appears once in the current log and not at all in the last archived log, so I&#8217;m not going to worry about it, yet.  But I thought other people might be interested in what it is, what causes it and what to do about it and I wanted to record the explanation sources in case it happens again and I need to do something about it.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/236/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/236/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/236/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/236/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/236/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/236/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/236/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/236/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/236/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/236/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/236/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/236/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/236/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/236/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=236&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2011/10/07/a-transport-level-error-has-occurred-when-sending-the-request-to-the-server-provider-tcp-provider-error-0-an-existing-connection-was-forcibly-closed-by-the-remote-host/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>
	</item>
		<item>
		<title>Installing nodejs and iisnode on Windows</title>
		<link>http://mysoftwarenotes.wordpress.com/2011/09/29/installing-nodejs-and-iisnode-on-windows/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2011/09/29/installing-nodejs-and-iisnode-on-windows/#comments</comments>
		<pubDate>Thu, 29 Sep 2011 13:36:31 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[node.js]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=231</guid>
		<description><![CDATA[The instructions I used are at WebMatrix and node.js: The easiest way to get started with node on Windows Here&#8217;s how it went for me: WebMatrix Install:  It took a looooong time to install, about 30 minutes.  I was running quite a few things on my machine at the time, including VS2010 and SQL Mgmt Studio, but it [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=231&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The instructions I used are at <a href="http://www.hanselman.com/blog/WebMatrixAndNodejsTheEasiestWayToGetStartedWithNodeOnWindows.aspx">WebMatrix and node.js: The easiest way to get started with node on Windows</a></p>
<p>Here&#8217;s how it went for me:</p>
<ol>
<li><a href="http://www.microsoft.com/web/gallery/install.aspx?appid=webmatrix">WebMatrix Install</a>:  It took a looooong time to install, about 30 minutes.  I was running quite a few things on my machine at the time, including VS2010 and SQL Mgmt Studio, but it still seemed like a heckuva long time, so be patient.</li>
<li><a href="http://go.microsoft.com/?linkid=9784334">node.js for Windows Install</a>:  If you save to the default downloads folder in IE9 you&#8217;ll get the &#8220;This program is not commonly downloaded and could harm your computer&#8221; message.  Click on &#8220;Actions&#8221; &gt; &#8220;More actions&#8221; and &#8220;Run anyway&#8221;. Or you can open the folder in Windows explorer and double-click the file.  Once you get that far the rest is easy.  It installs to &#8220;C:\Program Files\nodejs&#8221;  Add it to your path so you can play with the REPL and can run .js scripts.  Once it&#8217;s in your path, just type &#8220;node&#8221; at the command prompt and there you have a JavaScript REPL!  Or type &#8220;node myfile.js&#8221; and run JavaScript directly on Windows.  Nice!</li>
<li><a href="http://go.microsoft.com/?linkid=9784329">iisnode for iis7 express (x86) Install</a>: If you don&#8217;t have <a href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=5555">Microsoft Visual C++ 2010 Redistributable Package (x86)</a> installed then the iisnode installer will tell you that you need it. Just click my link here and get it. It installs easily and then the iisnode install is a piece of cake. (FYI: You&#8217;ll have the same &#8220;This program is not commonly &#8230; etc.&#8221; message if you try to run after downloading in IE9 and that&#8217;ll happen on the next two also.)</li>
<li><a href="http://go.microsoft.com/?linkid=9784330">iisnode for iis7 (x86) Install</a>: For my messing about I didn&#8217;t really need to install it but I wanted to anyway. There were no issues.</li>
<li><a href="http://go.microsoft.com/?linkid=9784331">iisnode for iis7 (x64) Install</a>: I didn&#8217;t install this, &#8217;cause I&#8217;m using a 32 bit machine for this messing about, but if you are installing the x64 version then I&#8217;m guessing you&#8217;ll need the <a href="http://www.microsoft.com/download/en/details.aspx?id=14632">C++ 2010 redistributable for x64</a>.</li>
<li><a href="https://github.com/downloads/SteveSanderson/Node.js-Site-Templates-for-WebMatrix/Node.js%20Templates%20for%20WebMatrix.msi">node.js templates for WebMatrix</a>: Easy install.  Thanks to <a href="http://blog.stevensanderson.com/">Steve Sanderson</a> (the genius behind <a href="http://knockoutjs.com/">knockout.js</a>) for the templates</li>
</ol>
<p>So that&#8217;s all it took.  After that I fired up WebMatrix and created a &#8220;Hello World&#8221; type app, by using the &#8220;Node.js Express Site&#8221; template.  Then I plowed around in the packages that come with it: express and jade, etc.  It&#8217;s just amazing what you can get open source these days.  There is a fabulous community out there in JavaScriptland.</p>
<p>Finally I wrote a quick testme.js file and ran it from the command line.  You can use straight JavaScript and all the &#8220;console&#8221; object methods you get in a browser.  When you want to test out node&#8217;s built-in objects and cool async methods, you&#8217;ll need to check out the <a href="http://nodejs.org/docs/v0.5.7/api/">node.js documentation</a> and maybe the <a href="https://github.com/joyent/node/wiki">node.js wiki</a>.</p>
<p>If I get some time free and I feel courageous, I might try to figure out how to use VS2010 to write node apps.  If anyone out there has already done it then please leave a comment &#8211; no point in re-inventing the wheel.</p>
<p>Happy hunting!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/231/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=231&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2011/09/29/installing-nodejs-and-iisnode-on-windows/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>
	</item>
		<item>
		<title>Nodejs for Windows and IIS</title>
		<link>http://mysoftwarenotes.wordpress.com/2011/09/27/nodejs-for-windows-and-iis/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2011/09/27/nodejs-for-windows-and-iis/#comments</comments>
		<pubDate>Tue, 27 Sep 2011 19:32:44 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=228</guid>
		<description><![CDATA[I&#8217;ve been programming a lot of JavaScript recently. I&#8217;m really enjoying it as a language. It&#8217;s spoiling me for the static languages like C#. (But only a little, after all C# 4 has plenty of dynamic features. In fact, if you use the ExpandoObject you can &#8211; to some degree &#8211; almost write C# like JavaScript). Anyway, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=228&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been programming a lot of JavaScript recently. I&#8217;m really enjoying it as a language. It&#8217;s spoiling me for the static languages like C#. (But only a little, after all C# 4 has plenty of dynamic features. In fact, if you use the <a href="http://blogs.msdn.com/b/csharpfaq/archive/2009/10/01/dynamic-in-c-4-0-introducing-the-expandoobject.aspx">ExpandoObject</a> you can &#8211; to some degree &#8211; almost write C# like JavaScript).</p>
<p>Anyway, in expanding my JavaScript horizons I&#8217;ve started to dabble with <a href="http://nodejs.org/">node.js</a>, a server-side implementation of JavaScript.  I&#8217;ve been using it mainly for the <a href="http://en.wikipedia.org/wiki/REPL">REPL</a> so I can try out stuff to make sure I&#8217;m doing it right.</p>
<p>I installed node.js a month or so ago and it wasn&#8217;t too much trouble, but I had to install Cygwin and other stuff with it for it to work on Windows.  I wasn&#8217;t interested in taking the time to compile it myself, so I used what the node.js guys were good enough to supply.</p>
<p>I wasn&#8217;t looking forward to upgrading though, but <a href="http://tomasz.janczuk.org/">Tomasz Janczuk</a> came to my rescue!  He&#8217;s been working on making node.js work on not just Windows but also in IIS AND IIS Express.  All the links you need to download node.js are here: <a href="http://tomasz.janczuk.org/2011/09/current-installation-packages-for.html">Current installation packages for node.js and iisnode for Windows</a>.</p>
<p>Instructions on how to get started using it are here:</p>
<ul>
<li><a href="http://tomasz.janczuk.org/2011/09/getting-started-with-nodejs-on-windows.html">Getting started with node.js on Windows</a></li>
<li><a href="http://www.hanselman.com/blog/WebMatrixAndNodejsTheEasiestWayToGetStartedWithNodeOnWindows.aspx?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+ScottHanselman+%28Scott+Hanselman+-+ComputerZen.com%29&amp;utm_content=Google+Reader">WebMatrix and node.js: The easiest way to get started with node on Windows</a></li>
<li><a href="https://github.com/joyent/node/wiki">Node.js community wiki</a></li>
</ul>
<p>The ability to use JavaScript on both the client and the server has tremendous potential for making our lives simpler.  Imagine programming both areas using a single language.  It seems like it&#8217;s a ways in the future, but who knows in this industry?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/228/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=228&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2011/09/27/nodejs-for-windows-and-iis/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>
	</item>
		<item>
		<title>To var or not to var. That is the question.</title>
		<link>http://mysoftwarenotes.wordpress.com/2011/04/21/to-var-or-not-to-var-that-is-the-question/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2011/04/21/to-var-or-not-to-var-that-is-the-question/#comments</comments>
		<pubDate>Thu, 21 Apr 2011 13:46:46 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[Languages]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=215</guid>
		<description><![CDATA[You can always use or misuse or overuse Shakespeare to make a point.  Hopefully this is an example of &#8220;use&#8221; and not &#8220;misuse&#8221;.  Somewhere on this blog I posted about using &#8220;var&#8221; in C# (&#8220;var&#8221; is a pronoun).  In it I said you should only use it when it was obvious what the data type [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=215&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>You can always use or misuse or overuse Shakespeare to make a point.  Hopefully this is an example of &#8220;use&#8221; and not &#8220;misuse&#8221;.  <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Somewhere on this blog I posted about using &#8220;var&#8221; in C# (<a href="http://mysoftwarenotes.wordpress.com/2009/03/04/var-is-a-pronoun/">&#8220;var&#8221; is a pronoun</a>).  In it I said you should only use it when it was obvious what the data type is.  Well, I&#8217;ve changed my mind.  What can I say?  Times change, people evolve, live with it.</p>
<p>I now use &#8220;var&#8221; all of the time.  I rarely, if ever, don&#8217;t use it.  If I am declaring a variable and setting it to null then I will explicitly name the data type, otherwise it&#8217;s &#8220;var&#8221;.</p>
<p>Why the change?  The first thing that led to it was some study of F#, which does implicit typing all the time.  Even if you don&#8217;t assign a value to a new variable the compiler will still figure out what the type is based on what you do with it later in your program.  Very nice.</p>
<p>(As an aside: Studying F# has made a big impression on how I code:  I tend to keep my variables immutable and declare another one if I am making a change &#8211; not 100% of the time as it would be impractical in my main languages (which, just now, are C#, TSQL and JavaScript), but probably 80 to 90%.  Another change caused by studying functional programming is that I am very aware of any side-effects my methods may cause and I try to write side-effect free methods and if they do cause side-effects I name them so it is clear that they do.  If you have only ever been exposed to OOP languages (like C#, Java, etc.) and procedural languages (like C, VB script, etc.)  I highly recommend studying a functional language.  It will expand your horizons.  In fact I recommend studying lots of different language types &#8211; more on that later.)</p>
<p>But back to the point.  So, studying a functional language that has implicit typing and seeing the advantages of that was the first reason.  The second reason was laziness.  The third and (for me) most important reason was that I really wasn&#8217;t gaining anything by explicitly naming the types.  Honest, in the years that I&#8217;ve been using &#8220;var&#8221; I have never had a problem figuring out a bug or how to modify some existing code because I used &#8220;var&#8221;.  So why would I not use it?  The fourth and final reason was that I can change the type of something and not need to change assignment statements. E.g., var myVar = SomeMethod(); If SomeMethod returns a bool and I change it to return a string &#8211; I don&#8217;t need to change that assignment statement.</p>
<p>If you need a deeper analysis of this then read Eric Lippert&#8217;s excellent article: <a href="http://blogs.msdn.com/b/ericlippert/archive/2011/04/20/uses-and-misuses-of-implicit-typing.aspx">Uses and misuses of implicit typing</a>.  Or just start using &#8220;var&#8221; and see for yourself if it ever causes a problem.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/215/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/215/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/215/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=215&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2011/04/21/to-var-or-not-to-var-that-is-the-question/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>
	</item>
		<item>
		<title>Test Driven Development &#8211; I finally get it</title>
		<link>http://mysoftwarenotes.wordpress.com/2011/02/25/test-driven-development-i-finally-get-it/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2011/02/25/test-driven-development-i-finally-get-it/#comments</comments>
		<pubDate>Fri, 25 Feb 2011 16:28:52 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[Architecture]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Musings]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=204</guid>
		<description><![CDATA[Okay, so I did know what TDD was. I&#8217;ve read about it. I&#8217;ve (sort-of) tried it out. But this morning I was listening to a Hanselminute podcast about TDD and I finally got what it really is. It is NOT &#8220;Test&#8221; Driven Development. The tests are there only because we happen to use a unit [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=204&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Okay, so I did know what TDD was. I&#8217;ve read about it. I&#8217;ve (sort-of) tried it out. But this morning I was listening to a <a href="http://hanselminutes.com/default.aspx?showID=164">Hanselminute podcast about TDD</a> and I finally got what it really is. It is NOT &#8220;Test&#8221; Driven Development. The tests are there only because we happen to use a unit testing tool to help us apply this <strong>method of software development</strong>.</p>
<p>It really should be called something like &#8220;Harness&#8221; Driven Development or &#8220;Wrapper&#8221; Driven Development because what we are doing is creating a software exercising harness to help us design and develop our applications.</p>
<p>The side-effect of having a bunch of unit-tests so we can have confidence in the correctness of our code and so we can quickly test later changes, is great, but it is a side-effect and not the purpose of TDD.</p>
<p>Example: I need view models for the customer related views in an ASP.NET MVC app. So, to figure out the design of how I&#8217;m going to do this, I create a class in my &#8220;test&#8221; project with a method containing the functionality to get one of these view models: I have it instantiate an object of the class that will have this responsibility and make a call to a method on the class that will return one of the view models I need. <em>This is the first step of figuring out the class and the api it will have. Now I can continue with the other steps of TDD. <strong>What I am doing here is NOT testing. It is designing and developing in an interactive manner.</strong></em>  It gives me a quick turnaround because I don&#8217;t have to fire up the entire application to see if what I just did works, I can run just that single &#8220;test&#8221;.</p>
<p>It&#8217;s not practical to rename TDD to something else because the term is so ubiquitous, but from now on I&#8217;m going to name my &#8220;test&#8221; project &#8220;DevWrappers&#8221; or &#8220;DesignWrappers&#8221; or something similar to help me keep in mind that I&#8217;m NOT testing, I&#8217;m developing.</p>
<p>And now I understand that the &#8220;Test&#8221; in TDD is a misnomer, I think I will be using it a lot more.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/204/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/204/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/204/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=204&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2011/02/25/test-driven-development-i-finally-get-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>
	</item>
		<item>
		<title>JavaScript: I Repent</title>
		<link>http://mysoftwarenotes.wordpress.com/2010/12/19/javascript-i-repent/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2010/12/19/javascript-i-repent/#comments</comments>
		<pubDate>Sun, 19 Dec 2010 17:04:09 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[Languages]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=199</guid>
		<description><![CDATA[I admit it &#8211; I have sinned.  I&#8217;ve been proud and arrogant.   For years now I&#8217;ve had &#8220;JavaScript&#8221; listed on my resumé as one of the languages I know.  I listed it because, you know, JavaScript &#8220;isn&#8217;t really a language anyway&#8221; and I can &#8220;get by&#8221; with what I need to do with it because [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=199&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I admit it &#8211; I have sinned.  I&#8217;ve been proud and arrogant.  </p>
<p>For years now I&#8217;ve had &#8220;JavaScript&#8221; listed on my resumé as one of the languages I know.  I listed it because, you know, JavaScript &#8220;isn&#8217;t really a language anyway&#8221; and I can &#8220;get by&#8221; with what I need to do with it because &#8220;nobody really develops with JavaScript&#8221; and anyway &#8220;JavaScript sucks&#8221;.  </p>
<p>Oh, the justifications for my arrogance.  It&#8217;s embarrassing now to look back and realize that I was daring to use a language that I knew virtually nothing about.</p>
<p>Well all that has changed.  I repent.  I have seen the light. (Praise dee Lord.  Hallelujah.  Etc., etc., etc.)</p>
<p>I will now admit the truth:  JavaScript is a real programming language.</p>
<p>And (until just a few days ago): I don&#8217;t really know how to program with it.</p>
<p>I think <a href="http://www.amazon.com/gp/redirect.html?ie=UTF8&amp;location=http%3A%2F%2Fwww.amazon.com%2Fgp%2Fentity%2FDouglas-Crockford%2FB002N3VYB6%3Fie%3DUTF8%26ref_%3Dsr_tc_2_0%26qid%3D1292777906%26sr%3D8-2-ent&amp;tag=mywri-20&amp;linkCode=ur2&amp;camp=1789&amp;creative=390957">Douglas Crockford</a><img style="border:none!important;margin:0!important;" src="https://www.assoc-amazon.com/e/ir?t=mywri-20&amp;l=ur2&amp;o=1" border="0" alt="" width="1" height="1" /> says it best in his brilliant book &#8220;<a href="http://www.amazon.com/gp/product/0596517742?ie=UTF8&amp;tag=mywri-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0596517742">JavaScript: The Good Parts</a><img style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=mywri-20&amp;l=as2&amp;o=1&amp;a=0596517742" border="0" alt="" width="1" height="1" />&#8220;:</p>
<blockquote><p>JavaScript is most despised because it isn&#8217;t <em>some other language</em>. If you are good in <em>some other language</em> and you have to program in an environment that only supports JavaScript, then you are forced to use JavaScript, and that is annoying. <strong>Most people in that situation don&#8217;t even bother to learn JavaScript first, and then they are surprised when JavaScript turns out to have significant differences from the <em>some other language</em> they would rather be using</strong>, and that those differences matter.</p></blockquote>
<p>I just read that book from cover to cover and I can now honestly say for the first time that I actually understand JavaScript.  It IS a language and (when you use only the &#8220;good&#8221; parts) it&#8217;s quite an amazing language and (other than its syntax) it is NOTHING LIKE Java or C or C#.</p>
<p>How I program  JavaScript has changed dramatically &#8211; there is just no comparison to what I was doing before.</p>
<p>I&#8217;ve been regarding jQuery as the &#8220;solution&#8221; to JavaScript, but now I realize that jQuery is the solution to the DOM and that understanding JavaScript vastly improves my ability to use jQuery well.</p>
<p>If you haven&#8217;t read the book &#8220;<a href="http://www.amazon.com/gp/product/0596517742?ie=UTF8&amp;tag=mywri-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0596517742">JavaScript: The Good Parts</a><img style="border:none!important;margin:0!important;" src="http://www.assoc-amazon.com/e/ir?t=mywri-20&amp;l=as2&amp;o=1&amp;a=0596517742" border="0" alt="" width="1" height="1" />&#8221; or watched the video series &#8220;<a href="http://oreilly.com/catalog/9780596809614/">Douglas Crockford JavaScript Master Class</a>&#8221; then you don&#8217;t understand JavaScript well enough to use it correctly and you will be using it as if it is <em>some other language</em> and  making dumb mistakes (just like I did) that will be driving you crazy and making you curse JavaScript and wishing it would be cast into the pit along with whoever came up with it.  </p>
<p>So read the book and watch the videos and you too will see the light. Hallelujah!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/199/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/199/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/199/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=199&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2010/12/19/javascript-i-repent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>

		<media:content url="https://www.assoc-amazon.com/e/ir?t=mywri-20&#38;l=ur2&#38;o=1" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=mywri-20&#38;l=as2&#38;o=1&#38;a=0596517742" medium="image" />

		<media:content url="http://www.assoc-amazon.com/e/ir?t=mywri-20&#38;l=as2&#38;o=1&#38;a=0596517742" medium="image" />
	</item>
		<item>
		<title>Entity Framework 1.0 (aka 3.5) &#8211; Problem in Mapping Fragments</title>
		<link>http://mysoftwarenotes.wordpress.com/2010/11/19/entity-framework-1-0-aka-3-5-problem-in-mapping-fragments/</link>
		<comments>http://mysoftwarenotes.wordpress.com/2010/11/19/entity-framework-1-0-aka-3-5-problem-in-mapping-fragments/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 11:15:09 +0000</pubDate>
		<dc:creator>gsdwriter</dc:creator>
				<category><![CDATA[Entity Framework]]></category>

		<guid isPermaLink="false">http://mysoftwarenotes.wordpress.com/?p=189</guid>
		<description><![CDATA[I have an Entity Framework 1.0 (aka 3.5) project (I wish we could upgrade to 4) and I recently got this error: Problem in Mapping Fragments starting at lines 1987, 2308: Non-Primary-Key column(s) [ColumnBlah] are being mapped in both fragments to different conceptual side properties &#8211; data inconsistency is possible because the corresponding conceptual side [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=189&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I have an Entity Framework 1.0 (aka 3.5) project (I wish we could upgrade to 4) and I recently got this error:</p>
<p style="padding-left:30px;">Problem in Mapping Fragments starting at lines 1987, 2308: Non-Primary-Key column(s) [ColumnBlah] are being mapped in both fragments to different conceptual side properties &#8211; data inconsistency is possible because the corresponding conceptual side properties can be independently modified.</p>
<p>It turns out it was caused because the person who created the table didn&#8217;t put a foreign key constraint on the column and so I had to add one.  When I updated the EF model it saw the constraint and added the corresponding navigation property to the entities BUT it kept the original scalar property and was still mapping it to the table column.  So now I had a property in an entity mapped to a column in the underlying table AND a navigation property mapped to the same column.</p>
<p>Simple solution: I deleted the scalar property from the entity.</p>
<p>Hope that helps someone.</p>
<p> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mysoftwarenotes.wordpress.com/189/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mysoftwarenotes.wordpress.com/189/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mysoftwarenotes.wordpress.com/189/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mysoftwarenotes.wordpress.com/189/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mysoftwarenotes.wordpress.com/189/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mysoftwarenotes.wordpress.com/189/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mysoftwarenotes.wordpress.com/189/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mysoftwarenotes.wordpress.com/189/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mysoftwarenotes.wordpress.com/189/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mysoftwarenotes.wordpress.com/189/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mysoftwarenotes.wordpress.com/189/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mysoftwarenotes.wordpress.com/189/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mysoftwarenotes.wordpress.com/189/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mysoftwarenotes.wordpress.com/189/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mysoftwarenotes.wordpress.com&amp;blog=6810723&amp;post=189&amp;subd=mysoftwarenotes&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mysoftwarenotes.wordpress.com/2010/11/19/entity-framework-1-0-aka-3-5-problem-in-mapping-fragments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c224e04c8f1de24e618e6e673b4e6148?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">gsdwriter</media:title>
		</media:content>
	</item>
	</channel>
</rss>
