<?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>Rob Kraft&#039;s Software Development Blog</title>
	<atom:link href="http://csharpdeveloper.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://csharpdeveloper.wordpress.com</link>
	<description>Software Development Insights</description>
	<lastBuildDate>Sun, 29 Jan 2012 22:29:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='csharpdeveloper.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Rob Kraft&#039;s Software Development Blog</title>
		<link>http://csharpdeveloper.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://csharpdeveloper.wordpress.com/osd.xml" title="Rob Kraft&#039;s Software Development Blog" />
	<atom:link rel='hub' href='http://csharpdeveloper.wordpress.com/?pushpress=hub'/>
		<item>
		<title>How to fix a black or blank RDP (Remote Desktop) Screen</title>
		<link>http://csharpdeveloper.wordpress.com/2012/01/29/how-to-fix-a-black-or-blank-rdp-remote-desktop-screen/</link>
		<comments>http://csharpdeveloper.wordpress.com/2012/01/29/how-to-fix-a-black-or-blank-rdp-remote-desktop-screen/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 22:29:26 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[I.T.]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=391</guid>
		<description><![CDATA[This is a repost of a post I made on Microsoft forums, but several people have found it useful so I&#8217;m spreading the fix. My RDP screen was black.  So I tried CTRL-ALT-END.  Then I hit cancel, then I closed RDP.  Then I re-opened RDP and I had my desktop back! YAY!!! http://social.technet.microsoft.com/Forums/en-US/winserverTS/thread/31b681c5-3658-45a5-8158-a0a0f967c4a2/<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=391&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is a repost of a post I made on Microsoft forums, but several people have found it useful so I&#8217;m spreading the fix.</p>
<div>My RDP screen was black.  So I tried CTRL-ALT-END.  Then I hit cancel, then I closed RDP.  Then I re-opened RDP and I had my desktop back! YAY!!!</div>
<div></div>
<div><a href="http://social.technet.microsoft.com/Forums/en-US/winserverTS/thread/31b681c5-3658-45a5-8158-a0a0f967c4a2/">http://social.technet.microsoft.com/Forums/en-US/winserverTS/thread/31b681c5-3658-45a5-8158-a0a0f967c4a2/</a></div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/391/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/391/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/391/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=391&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2012/01/29/how-to-fix-a-black-or-blank-rdp-remote-desktop-screen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>
	</item>
		<item>
		<title>Reduce Waste During Software Development by Increasing Communication</title>
		<link>http://csharpdeveloper.wordpress.com/2012/01/16/reduce-waste-during-software-development-by-increasing-communication/</link>
		<comments>http://csharpdeveloper.wordpress.com/2012/01/16/reduce-waste-during-software-development-by-increasing-communication/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 00:42:24 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[Code Design]]></category>
		<category><![CDATA[CodeProject]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Process]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=381</guid>
		<description><![CDATA[Lean software development focuses on reducing waste. One source of waste is time spent implementing a difficult solution when the product owner would have been satisfied with a simpler solution. The likelihood that this source of waste occurs increases as the interactions between developer and product owner decreases. When the environment discourages frequent communication between [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=381&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Lean software development focuses on reducing waste. One source of waste is time spent implementing a difficult solution when the product owner would have been satisfied with a simpler solution. The likelihood that this source of waste occurs increases as the interactions between developer and product owner decreases. When the environment discourages frequent communication between product owner and developer, and the developer discovers some minor features will be more difficult than expected, the developer is likely to attempt to implement the solution as the product owner requested it. But when the environment encourages frequent communication, the developer is more likely to let the product owner know that a specific feature is more difficult than anticipated, but that the same feature goals could probably be achieved with an alternative implementation. This allows the product owner to decide if the alternative implementation is sufficient, or if he wants to pay the extra time to have the feature as originally envisioned.  A few of the factors that can contribute to an environment that discourages developer to product owner communication include:</p>
<ol>
<li>Physical distance. For several reasons, physical distance discourages communication. Developers don&#8217;t want to interrupt the product owner, and it is difficult to know if the product owner is currently in a meeting, or involved in other activities when the product owner is not visible.</li>
<li>Personal perception. Developers don&#8217;t want the product owner to think they are unable to make decisions themselves, and may be concerned the product owner will gain that impression if the developer is frequently asking for product owner input.</li>
<li>Unfriendly product owners. Developers quickly sense when product owners are getting annoyed with questions. Once a developer feels he has used his allowance of goodwill, he is more likely to just attempt to implement difficult solutions per the original spec rather than suggest an alternative.</li>
<li>Introverted developers. Some developers simply prefer to minimize interactions with people they are not extremely comfortable with. When faced with the choice of interacting with a person they aren&#8217;t comfortable with, or trying to make the software work as originally requested, they frequently choose the latter.</li>
</ol>
<p>It does not matter whether you develop software using Lean (Kanban), Agile, or Waterfall. If you can increase communication between the product owners and developers, you can probably reduce or eliminate this source of waste.  Product owners pay the price of this waste, and they are also best positioned to reduce the problems I mentioned above.  Product owners, at least the people that make the detailed decisions about how the software should work, should strive to make themselves constantly accessible to software developers.  When a developer comes with a question, the product owner should treat the developer as a welcome interruption, not as an inconvenience.  Product owners can also improve the relationship with the developer by engaging with the developers on social, non-work, levels.  This fosters a growth in trust between product owners and developers and increases the odds that developers will come to the product owner when the potential exists to eliminate waste.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/381/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/381/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/381/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=381&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2012/01/16/reduce-waste-during-software-development-by-increasing-communication/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>
	</item>
		<item>
		<title>Make note of FUTA Tax Filing Changes for 2012!</title>
		<link>http://csharpdeveloper.wordpress.com/2012/01/15/make-note-of-futa-tax-filing-changes-for-2012/</link>
		<comments>http://csharpdeveloper.wordpress.com/2012/01/15/make-note-of-futa-tax-filing-changes-for-2012/#comments</comments>
		<pubDate>Sun, 15 Jan 2012 18:59:26 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[Taxes and Fees]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=378</guid>
		<description><![CDATA[I was unpleasantly surprised to learn today that the FUTA tax rate changed mid-year of 2011 and I didn&#8217;t know about it. Fortunately, this did not affect my 2011 tax filings in any way because I had no new employees and had already incurred the maximum unemployment tax for the year because my taxable earnings [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=378&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I was unpleasantly surprised to learn today that the FUTA tax rate changed mid-year of 2011 and I didn&#8217;t know about it.  Fortunately, this did not affect my 2011 tax filings in any way because I had no new employees and had already incurred the maximum unemployment tax for the year because my taxable earnings prior to July 1, 2011 exceeded $7,000 .<br />
I learned this when I went to fill out Federal form &#8220;940 for 2011: Employer&#8217;s Annual Federal Unemployment (FUTA) Tax Return&#8221;.  A google search brought me to a URL confirming the change mid-year <a>http://bkl-cpa.com/news/2011/06/29/futa-tax-rate-change-effective-july-1-2011/</a>).<br />
When you fill out this form, make sure to include 401k contributions made to the employee in line 3, then deduct those contributions in line 4.  Regardless of your numbers, there is a good chance that line 7a will end up with a balance of $7,000.00 (if you are self-employed).  And if you worked all of last year, it is likely that line 7b is $7,000.00, 7c is $56.00, 7d is $0.00, 7e is $0.00, and line 8 is $56.00.<br />
Since I live in Missouri and do not have a payment to submit, I send this completed form to<br />
Department of the Treasury<br />
Internal Revenue Service<br />
Ogden, UT 84201-0046<br />
By February 10, 2012 (by January 31, 2012 if you need to send money)<br />
<a href="http://www.irs.gov/pub/irs-pdf/f940.pdf" title="http://www.irs.gov/pub/irs-pdf/f940.pdf" target="_blank">http://www.irs.gov/pub/irs-pdf/f940.pdf (form online)</a><br />
<a href="http://www.irs.gov/pub/irs-pdf/i940.pdf" title="http://www.irs.gov/pub/irs-pdf/i940.pdf" target="_blank">http://www.irs.gov/pub/irs-pdf/i940.pdf (instructions online)</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/378/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/378/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/378/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=378&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2012/01/15/make-note-of-futa-tax-filing-changes-for-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>
	</item>
		<item>
		<title>Resolving missing System.Windows.Forms.DataVisualization in nant build</title>
		<link>http://csharpdeveloper.wordpress.com/2011/12/11/resolving-missing-system-windows-forms-datavisualization-in-nant-build/</link>
		<comments>http://csharpdeveloper.wordpress.com/2011/12/11/resolving-missing-system-windows-forms-datavisualization-in-nant-build/#comments</comments>
		<pubDate>Mon, 12 Dec 2011 00:43:42 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Dev Environment]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=369</guid>
		<description><![CDATA[We added some new features in our code this week that required System.Windows.Forms.DataVisualization. No problem until we ran the nant build and it failed with: The type or namespace name 'DataVisualization' does not exist in the namespace 'System.Windows.Forms' (are you missing an assembly reference?) We tried copying the DLL several places, even though we later [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=369&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We added some new features in our code this week that required System.Windows.Forms.DataVisualization.  No problem until we ran the nant build and it failed with:</p>
<p><code>The type or namespace name 'DataVisualization' does not exist in the namespace 'System.Windows.Forms' (are you missing an assembly reference?)</code></p>
<p>We tried copying the DLL several places, even though we later discovered this was unnecessary.  The DLL exists in the GAC and we only need to add the reference to the DLL in the nant .build file.</p>
<p>It turns out that the problem exists in the nant.exe.config file we use.  This file notoriously has several errors and needs to be updated.  I found a copy of nant.exe.config that we need at http://pastebin.com/YxxaKADS.  I simply copied the 2 lines at 121 and 122 and pasted them into our nant.exe.config build file and the problem was solved.</p>
<p><code>121. &lt;include name="System.Windows.Forms.DataVisualization.Design.dll" / &gt;<br />
122. &lt;include name="System.Windows.Forms.DataVisualization.dll" / &gt;<br />
</code> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/369/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/369/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/369/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/369/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/369/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/369/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/369/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/369/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/369/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/369/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/369/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/369/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/369/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/369/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=369&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2011/12/11/resolving-missing-system-windows-forms-datavisualization-in-nant-build/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>
	</item>
		<item>
		<title>Find Stored Procedures that are not using all the Parameters Passed into them. SQL Server.</title>
		<link>http://csharpdeveloper.wordpress.com/2011/12/10/find-stored-procedures-that-are-not-using-all-the-parameters-passed-into-them-sql-server/</link>
		<comments>http://csharpdeveloper.wordpress.com/2011/12/10/find-stored-procedures-that-are-not-using-all-the-parameters-passed-into-them-sql-server/#comments</comments>
		<pubDate>Sat, 10 Dec 2011 21:28:40 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=363</guid>
		<description><![CDATA[This last week we discovered a bug in a stored procedure. We were passing a parameter into a stored procedure used to do an insert, but the value was not used in the actual insert statement, and thus the value was not stored in the database table. The problem was easy to fix, but as [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=363&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This last week we discovered a bug in a stored procedure.   We were passing a parameter into a stored procedure used to do an insert, but the value was not used in the actual insert statement, and thus the value was not stored in the database table.  The problem was easy to fix, but as with all bugs, I ask if there is a way we can prevent the bug from recurring.   We came up with an SQL statement that we can run to identify all the stored procedures that have unused parameters into them.  We then set up a unit test to run every night to let us know if any of our stored procedures have this flaw.  Here is the stored procedure that should work on any version of SQL Server from 2005 on up.</p>
<p><code>SELECT ROUTINE_NAME, P.PARAMETER_NAME<br />
FROM INFORMATION_SCHEMA.ROUTINES R<br />
INNER JOIN<br />
INFORMATION_SCHEMA.PARAMETERS P<br />
ON P.SPECIFIC_NAME = R.ROUTINE_NAME<br />
WHERE ( (LEN(OBJECT_DEFINITION(OBJECT_ID(R.ROUTINE_NAME)) ) - LEN(REPLACE(OBJECT_DEFINITION(OBJECT_ID(R.ROUTINE_NAME)) , P.PARAMETER_NAME, ''))) - LEN(P.PARAMETER_NAME) = 0)<br />
ORDER BY 1,2</code></p>
<p>The clever piece of this query is that we use the Information_Schema.Parameters to get a list of all the parameters in each stored procedure, and then we replace all occurrences of the parameter name in the stored procedure with an empty length string.  If the length of the stored procedure prior to our substitution and subtracting the length of the parameter name just once is equal to zero, then we know the parameter only occurs once, in the input, and that it is not used within the body of the stored procedure.</p>
<p>Note, you may want to include an additional clause in the where clause if you want to exclude some of the system stored procedures.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/363/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/363/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/363/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=363&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2011/12/10/find-stored-procedures-that-are-not-using-all-the-parameters-passed-into-them-sql-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>
	</item>
		<item>
		<title>Binary Serialization Notes in .Net 4.0</title>
		<link>http://csharpdeveloper.wordpress.com/2011/12/05/binary-serialization-notes-in-net-4-0/</link>
		<comments>http://csharpdeveloper.wordpress.com/2011/12/05/binary-serialization-notes-in-net-4-0/#comments</comments>
		<pubDate>Tue, 06 Dec 2011 00:21:36 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=359</guid>
		<description><![CDATA[I ran into a problem using binary serialization recently.  Some of the objects that I was serializing were really large.  By really large I mean that they were 2,000,000 bytes long instead of the expected 2,000 bytes long.  I could not find a good source of information about binary serialization other than this fine article:  [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=359&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I ran into a problem using binary serialization recently.  Some of the objects that I was serializing were really large.  By really large I mean that they were 2,000,000 bytes long instead of the expected 2,000 bytes long.  I could not find a good source of information about binary serialization other than this fine article:  <a href="http://www.diranieh.com/NETSerialization/BinarySerialization.htm">http://www.diranieh.com/NETSerialization/BinarySerialization.htm</a><br />
But even that article left we with questions.  I ended up writing tests to find my answers.  Here are my notes:</p>
<ul>
<li>In Binary Serialization, fields are serialized (in XML serialization they are not).</li>
<li>Properties are serialized in both Binary and XML.</li>
<li>In Binary Serialization, if you add a property for the field, the field and property are not both serialized (at least for simple properties).</li>
<li>Static fields and properties are not serialized.</li>
<li>Private fields ARE serialized in Binary Serialization.</li>
<li>Properties without setters (ReadOnly properties) are not serialized.</li>
<li>Make sure that you do not serialize events.  That is what caused my objects to grow 1,000 times larger.</li>
</ul>
<p>Make sure to apply this attribute to any events you define:<br />
[field: NonSerialized]<br />
public new event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;</p>
<p>We also wrote unit tests to make sure our objects did not experience unintended excessive growth in the future:<br />
<!-- code formatted by http://manoli.net/csharpformat/ --></p>
<div class="csharpcode">
<pre><span class="lnum">   1:  </span>[Test]</pre>
<pre><span class="lnum">   2:  </span><span class="kwrd">public</span> <span class="kwrd">void</span> TheSizeOfOneModuleShouldNotExceed25000bytes()</pre>
<pre><span class="lnum">   3:  </span>{</pre>
<pre><span class="lnum">   4:  </span>var module = ModuleList.GetByModuleID(3);</pre>
<pre><span class="lnum">   5:  </span><span class="kwrd">long</span> lBuffer = 0;</pre>
<pre><span class="lnum">   6:  </span><span class="kwrd">using</span> (MemoryStream buffer = <span class="kwrd">new</span> MemoryStream())</pre>
<pre><span class="lnum">   7:  </span>{</pre>
<pre><span class="lnum">   8:  </span> BinaryFormatter formatter = <span class="kwrd">new</span> BinaryFormatter();</pre>
<pre><span class="lnum">   9:  </span> formatter.Serialize(buffer, module);</pre>
<pre><span class="lnum">  10:  </span> lBuffer += buffer.Length;</pre>
<pre><span class="lnum">  11:  </span>}</pre>
<pre><span class="lnum">  12:  </span>Assert.That(lBuffer, Is.LessThan(25000));</pre>
<pre><span class="lnum">  13:  </span>}</pre>
</div>
<pre></pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/359/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/359/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/359/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=359&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2011/12/05/binary-serialization-notes-in-net-4-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>
	</item>
		<item>
		<title>Encapsulating code in business objects almost always means better code</title>
		<link>http://csharpdeveloper.wordpress.com/2011/12/03/encapsulating-code-in-business-objects-almost-always-means-better-code/</link>
		<comments>http://csharpdeveloper.wordpress.com/2011/12/03/encapsulating-code-in-business-objects-almost-always-means-better-code/#comments</comments>
		<pubDate>Sat, 03 Dec 2011 22:08:49 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[Code Design]]></category>
		<category><![CDATA[CodeProject]]></category>
		<category><![CDATA[Coding]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=352</guid>
		<description><![CDATA[Good examples of better coding are not always easy to find, but here is one.  A good coding principal is to encapsulate business logic in business objects instead of including business logic in the user interface.  This is the foundation of coding using object oriented principles.  One specific example is to compare these two ways [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=352&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Good examples of better coding are not always easy to find, but here is one.  A good coding principal is to encapsulate business logic in business objects instead of including business logic in the user interface.  This is the foundation of coding using object oriented principles.  One specific example is to compare these two ways to write the same code:</p>
<div class="csharpcode">
<pre><span class="lnum"> 1: </span>buttonDelete_click()
<span class="lnum"> 2: </span>{
<span class="lnum"> 3: </span>    If myObject.HasChildren then
<span class="lnum"> 4: </span>        ShowMessage(<span class="str">"You can't delete an object with children."</span>)
<span class="lnum"> 5: </span>    End <span class="kwrd">if</span>
<span class="lnum"> 6: </span>}
<span class="lnum"> 7: </span> 
<span class="lnum"> 8: </span>buttonDelete_click()
<span class="lnum"> 9: </span>{
<span class="lnum"> 10: </span>    If myObject.AllowDelete = False then
<span class="lnum"> 11: </span>        ShowMessage(myObject.ReasonDeleteNotAllowedMessage)
<span class="lnum"> 12: </span>    End <span class="kwrd">if</span>
<span class="lnum"> 13: </span>}</pre>
</div>
<p>The first code sample may be the first to come to mind, but the first solution that comes to mind is often not the best.  The second code sample is superior because it places the logic for AllowDelete inside the business object, and thus it makes that logic re-usable in other places.  Perhaps you have an import utility that could use the same logic, or perhaps you want to write unit tests.  In the second example, you can write unit tests to make sure that the AllowDelete property is being set correctly; but the first example would require UI testing to confirm this.</p>
<p>In my example, the code inside of the .AllowDelete property probably looks like this:<br />
<!-- code formatted by http://manoli.net/csharpformat/ --></p>
<div class="csharpcode">
<pre><span class="lnum"> 1: </span>Public <span class="kwrd">bool</span> AllowDelete()
<span class="lnum"> 2: </span>{
<span class="lnum"> 3: </span>    If (<span class="kwrd">this</span>.HasChildren == <span class="kwrd">true</span>)
<span class="lnum"> 4: </span>        Return <span class="kwrd">false</span>;
<span class="lnum"> 5: </span>    End <span class="kwrd">if</span>
<span class="lnum"> 6: </span>}</pre>
</div>
<p>By placing this logic in the business object, it would be easy to expand it later and the additional logic would apply to all user interface and batch processing code that uses it.</p>
<p>Any time you can encapsulate some logic within an object, it is probably worth the smalladditional amount of time to do so.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/352/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/352/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/352/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=352&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2011/12/03/encapsulating-code-in-business-objects-almost-always-means-better-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>
	</item>
		<item>
		<title>The Next Generation of User Group Meetings</title>
		<link>http://csharpdeveloper.wordpress.com/2011/12/02/the-next-generation-of-user-group-meetings/</link>
		<comments>http://csharpdeveloper.wordpress.com/2011/12/02/the-next-generation-of-user-group-meetings/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 20:41:05 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[CodeProject]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Resources and Tools]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=350</guid>
		<description><![CDATA[In the Kansas City metro I&#8217;ve noticed an increase in the number of computer user groups forming to meet and discuss and learn about software technologies.  Some of these groups have exploded on the scene with an average attendance of more than 30 people per meeting, which outdoes groups that have been existing more than [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=350&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In the Kansas City metro I&#8217;ve noticed an increase in the number of computer user groups forming to meet and discuss and learn about software technologies.  Some of these groups have exploded on the scene with an average attendance of more than 30 people per meeting, which outdoes groups that have been existing more than a decade with less than 10 people per meeting.</p>
<p>But I think it is time to try to do more.  I think we can do a better job.  I think the goal is to increase the knowledge of technologists about all the things they are interested in; and I&#8217;ve noticed that some of the most popular meeting topics are about &#8220;other things&#8221;.  For example, training on Ruby at the .Net meeting produces a large crowd; and training on IIS at the Java meeting produces a large crowd.  Why is that?  I believe it is because most developers recognize the need to have at least some knowledge of the tools they don&#8217;t regularly use.  By raising our own awareness of other tools and techniques, we are open to more possible ways to solve problems.  More importantly, after we have learned the basics and some pros and cons of a new tool or language, we are less intimidated by that tool or language and more open to consider using it in future projects.</p>
<p>What does this all mean for user groups?  I believe that we should continue to have the &#8220;Special Interest Groups&#8221; to focus on the arcane and specific features of the group&#8217;s named technology.  But I believe we need a general interest group that presents tools and technologies at a high-level (introductory level) that can be marketed to the entire community of developers in the metro.</p>
<p>How do we go about this?</p>
<ol>
<li>We need to find a venue to host these meetings.  My hope is that we can draw 50 to 200 people at each meeting.  Therefore, we would want a venue that can accommodate such a crowd.</li>
<li>We need to identify topics of presentations that can be presented as introductory material to this large audience.</li>
<li>We need to find good presenters that are enthusiastic about presenting and answering questions on these topics.  In addition, the      presents will probably, but not necessarily, need to create the presentation.</li>
<li> We need to get the word out to all IT people in the KC Metro about the event.  And I want to jump on my soap box here and say that the goal is not to get as many bodies as possible at the event; the goal is to make everyone in the KC Metro that might be interested in this topic aware of the opportunity to learn.</li>
<li>We need coordinators to bring all these elements together at the same place and time.</li>
<li>Optionally, we could obtain sponsors to help pay venue costs if any, and to provide food, drinks and prizes; but I don&#8217;t believe that food, drinks, or prizes are necessary to draw the crowd.</li>
</ol>
<ol>
<li>Now I am not sure what venues can hold this many people.  I believe that JCCC could do it, and probably would be open to it; but their business needs usually come first.  Red Nova Labs and VML both seem to have large venues, but I don&#8217;t know if they are large enough.  Can you suggest other venues?</li>
<li>The list of potential topics is long.  I will start a list with these items: TDD, Agile, Kanban, Starting in Ruby, Perl, JavaScript, Jquery, HTML5, CSS3, SQL, Unit tests, Inversion of Control, Asp.Net, MVC, MVVM, SQL Injection and XSS, Starting in .Net, Starting in Java.</li>
<li>The list of good presenters is also long.  In fact, the current local user groups, those that I collectively refer to as Special Interest      Groups, could serve as the training grounds for finding presenters.  If you know someone that gave a great presentation at a local user group, then recommend that person and their presentation for the new general interest group.  Also we need to hear from presenters      about topics they would like to present.</li>
<li>We already know several ways to get the word out.  <a href="http://www.KansasCityUsergroups.com">www.KansasCityUsergroups.com</a>, and <a href="http://www.kcitp.com">www.kcitp.com</a> and linkedIn.  We would, of course, set up a simple web site with info about the upcoming event.  We could contact all the local groups and have them announce the meeting.  We might also spread the word by creating a meetup for the event.  We could start a twitter hash tag as well.</li>
<li>We need people to do these things.  I believe that if we can get 5 to 10 people behind this to do the work, it will be enough to make it happen and those 5 to 10 won&#8217;t get burned out.  Personally, I would like to be one of the marketers to spread the message about the upcoming meetings, and I hope Mike Gelphman would work with me.  I would leave it to others to find the venue, topic, and presenter.</li>
<li>If a vendor reads this blog and wants to step forward, then please do so.  Of if you want to contact potential sponsors, please do so.  They are certainly welcome, especially if we incur venue costs that the sponsor will pay for.  But this is primarily about increasing the skill levels of our technologies and those making technology decisions, not about selling products.</li>
</ol>
<p>The OWASP group has a pretty good speaker agreement that I believe we could copy for this group as well.  Perhaps a similar agreement from venue host and sponsor would be helpful. <a href="https://www.owasp.org/index.php/Speaker_Agreement">https://www.owasp.org/index.php/Speaker_Agreement</a></p>
<p>Who wants to see this happen?  Who wants to be a driver to make this happen?  Let&#8217;s make the software developers in the Kansas City metro the best in the world!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/350/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/350/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/350/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=350&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2011/12/02/the-next-generation-of-user-group-meetings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>
	</item>
		<item>
		<title>How to fix SQL Server Profiler Error opening trace file from 2008R2 server</title>
		<link>http://csharpdeveloper.wordpress.com/2011/11/18/how-to-fix-sql-server-profiler-error-opening-trace-file-from-2008r2-server/</link>
		<comments>http://csharpdeveloper.wordpress.com/2011/11/18/how-to-fix-sql-server-profiler-error-opening-trace-file-from-2008r2-server/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 13:58:56 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=334</guid>
		<description><![CDATA[I received a SQL Profiler trace file from a client in order to analyze activity on their SQL Server.  When I attempted to open the file, I received a helpful error message that began, &#8220;Unable to locate trace definition file Microsoft SQL Server TraceDefinition 10.50.0.xml&#8230;&#8221;.  This happened because my client is running SQL Server 2008 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=334&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I received a SQL Profiler trace file from a client in order to analyze activity on their SQL Server.  When I attempted to open the file, I received a helpful error message that began, &#8220;Unable to locate trace definition file Microsoft SQL Server TraceDefinition 10.50.0.xml&#8230;&#8221;.  This happened because my client is running SQL Server 2008 R2 but I am running SQL Server 2008.  I had the client sent the Trace Definition file mentioned to me: &#8220;D:\Program Files (x86)\Microsoft SQL Server\100\Tools\Profiler\TraceDefinitions\Microsoft SQL Server TraceDefinition 10.50.0.xml&#8221; and I copied that file into my &#8220;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Profiler\TraceDefinitions&#8221;.  Copying it to this folder required admin permissions.</p>
<p>I then went back and double-clicked on the trace file (.trc) that the client had sent to me and I received this error:</p>
<p><a href="http://csharpdeveloper.files.wordpress.com/2011/11/sqlprofilererror.png"><img class="alignnone size-full wp-image-338" title="SQLProfilerError" src="http://csharpdeveloper.files.wordpress.com/2011/11/sqlprofilererror.png" alt="" width="489" height="200" /></a></p>
<p>&#8220;Unrecognized command line argument.  All command line arguments will be ignored.  Please run &#8216;profiler.exe -?&#8217; to see a list of valid command line arguments.&#8221; I have not resolved this error, and don&#8217;t plan to.  I was able to open the trace file by first opening SQL Server Profiler, then using File Open and selecting the .trc file.<a href="http://csharpdeveloper.files.wordpress.com/2011/11/sqlprofilerfileopen.png"><img class="alignnone size-full wp-image-335" title="SQLProfilerFileOpen" src="http://csharpdeveloper.files.wordpress.com/2011/11/sqlprofilerfileopen.png" alt="" width="463" height="143" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/334/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/334/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/334/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=334&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2011/11/18/how-to-fix-sql-server-profiler-error-opening-trace-file-from-2008r2-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>

		<media:content url="http://csharpdeveloper.files.wordpress.com/2011/11/sqlprofilererror.png" medium="image">
			<media:title type="html">SQLProfilerError</media:title>
		</media:content>

		<media:content url="http://csharpdeveloper.files.wordpress.com/2011/11/sqlprofilerfileopen.png" medium="image">
			<media:title type="html">SQLProfilerFileOpen</media:title>
		</media:content>
	</item>
		<item>
		<title>Don&#8217;t let Hackers Configure Your Router, Turn off UPnP</title>
		<link>http://csharpdeveloper.wordpress.com/2011/10/23/dont-let-hackers-configure-your-router-turn-off-upnp/</link>
		<comments>http://csharpdeveloper.wordpress.com/2011/10/23/dont-let-hackers-configure-your-router-turn-off-upnp/#comments</comments>
		<pubDate>Sun, 23 Oct 2011 22:51:26 +0000</pubDate>
		<dc:creator>robkraft</dc:creator>
				<category><![CDATA[Home Tech]]></category>
		<category><![CDATA[I.T.]]></category>

		<guid isPermaLink="false">http://csharpdeveloper.wordpress.com/?p=330</guid>
		<description><![CDATA[Add this step to hardening your home and work networks against attacks from the Internet: Turn your router&#8217;s UPnP off. I previously thought that making sure all ports on the router were closed was sufficient to block attacks from the Internet, but it is not.  If your router supports UPnP, which most do now, you [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=330&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Add this step to hardening your home and work networks against attacks from the Internet:</p>
<ul>
<li>Turn your router&#8217;s UPnP off.</li>
</ul>
<p>I previously thought that making sure all ports on the router were closed was sufficient to block attacks from the Internet, but it is not.  If your router supports UPnP, which most do now, you should disable this feature as recently reported by Daniel Garcia at H-Report.com:</p>
<p><a href="http://www.h-online.com/security/news/item/UPnP-enabled-routers-allow-attacks-on-LANs-1329727.html">http://www.h-online.com/security/news/item/UPnP-enabled-routers-allow-attacks-on-LANs-1329727.html</a></p>
<p>If you can disable UPnP on the WAN side of the router, do so.  If this isn&#8217;t possible, disable UPnP completely on the router.  UPnP is rarely needed by most users, but online gamers may benefit from UPnP to more easily connect to online gaming networks.</p>
<p>This article shows how to turn off UPnP in common Linksys routers:</p>
<p><a href="http://www.informit.com/articles/article.aspx?p=461084">http://www.informit.com/articles/article.aspx?p=461084</a></p>
<p>&nbsp;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/csharpdeveloper.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/csharpdeveloper.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/csharpdeveloper.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/csharpdeveloper.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/csharpdeveloper.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/csharpdeveloper.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/csharpdeveloper.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/csharpdeveloper.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/csharpdeveloper.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/csharpdeveloper.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/csharpdeveloper.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/csharpdeveloper.wordpress.com/330/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/csharpdeveloper.wordpress.com/330/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/csharpdeveloper.wordpress.com/330/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=csharpdeveloper.wordpress.com&amp;blog=2365164&amp;post=330&amp;subd=csharpdeveloper&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://csharpdeveloper.wordpress.com/2011/10/23/dont-let-hackers-configure-your-router-turn-off-upnp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/13df325d4e7b07f357c6c63f21aee090?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">robkraft</media:title>
		</media:content>
	</item>
	</channel>
</rss>
