<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>nicholascloud.com</title>
	<atom:link href="http://www.nicholascloud.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.nicholascloud.com</link>
	<description>Existence is Identity, Consciousness is Identification</description>
	<lastBuildDate>Mon, 26 Jul 2010 13:09:55 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Avoid Unnecessary Comments</title>
		<link>http://www.nicholascloud.com/2010/07/avoid-unnecessary-comments/</link>
		<comments>http://www.nicholascloud.com/2010/07/avoid-unnecessary-comments/#comments</comments>
		<pubDate>Mon, 26 Jul 2010 13:07:52 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[comments]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=204</guid>
		<description><![CDATA[This morning's short read is "5 Types of Comments to Avoid Making in Your Code".  No developer doubts the benefit of good comments, but when the signal-to-noise ratio tips in favor of noise, productivity can actually be hindered.  I know I'm guilty of using at least one of these forbidden comment types in my code, [...]]]></description>
			<content:encoded><![CDATA[<p>This morning's short read is "<a href="http://repeatgeek.com/career/5-types-of-comments-to-avoid-making-in-your-code/" target="_blank">5 Types of Comments to Avoid Making in Your Code</a>".  No developer doubts the benefit of good comments, but when the signal-to-noise ratio tips in favor of noise, productivity can actually be hindered.  I know I'm guilty of using at least one of these forbidden comment types in my code, but</p>
<pre>//TODO: finish this blog post</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/07/avoid-unnecessary-comments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dynamic CSS and the Plan of Attack</title>
		<link>http://www.nicholascloud.com/2010/06/dynamic-css-and-the-plan-of-attack/</link>
		<comments>http://www.nicholascloud.com/2010/06/dynamic-css-and-the-plan-of-attack/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 00:45:59 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[css]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=190</guid>
		<description><![CDATA[I'm working on an ASP.NET website where I need to generate dynamic CSS, mostly for "theming" purposes.  I really don't like .NET skins or themes -- I prefer straight CSS and markup; besides, it needs to be configurable through an administration page and persisted to a database.  Here are the options I'm contemplating:

Allow the client [...]]]></description>
			<content:encoded><![CDATA[<p>I'm working on an ASP.NET website where I need to generate dynamic CSS, mostly for "theming" purposes.  I really don't like .NET skins or themes -- I prefer straight CSS and markup; besides, it needs to be configurable through an administration page and persisted to a database.  Here are the options I'm contemplating:</p>
<ol>
<li>Allow the client to define CSS styles and generate a flat file based on what is in the database when the web application loads (if no file exists, write one -- reference that for every subsequent request).  The downside is that I have to write to the filesystem, which means at least one publicly exposed directory must be writeable by some process.  The upside is that browsers will cache the file, so no subsequent requests are needed.</li>
<li>Allow the client to define CSS styles and write them to the output stream using a specialized instance of IHttpHandler.  The upside is that, well, this appeals to the code monkey in me.  The downside is that I'm not sure if a browser will cache this since it's not a CSS file per se.  I suppose some experimentation is in order.</li>
</ol>
<p>If anyone has experience with this, please let me know what solution you settled on.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/06/dynamic-css-and-the-plan-of-attack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Events page</title>
		<link>http://www.nicholascloud.com/2010/05/new-events-page/</link>
		<comments>http://www.nicholascloud.com/2010/05/new-events-page/#comments</comments>
		<pubDate>Sun, 16 May 2010 17:57:49 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=187</guid>
		<description><![CDATA[I have added a new page for developer events in the St. Louis/Kansas City areas.  If I have missed a big event (not local user group meetings), please let me know.
Also, Illinois, I have not purposefully left you out.  I just don't know what goes on over there in those corn fields!
]]></description>
			<content:encoded><![CDATA[<p>I have added a <a title="Events" href="http://www.nicholascloud.com/events/ " target="_blank">new page for developer events</a> in the St. Louis/Kansas City areas.  If I have missed a big event (not local user group meetings), please let me know.</p>
<p>Also, Illinois, I have not purposefully left you out.  I just don't know what goes on over there in those corn fields!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/05/new-events-page/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.NET Rocks Roadtrip: Destination St. Louis</title>
		<link>http://www.nicholascloud.com/2010/04/net-rocks-roadtrip-destination-st-louis/</link>
		<comments>http://www.nicholascloud.com/2010/04/net-rocks-roadtrip-destination-st-louis/#comments</comments>
		<pubDate>Sat, 01 May 2010 04:09:55 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Podcasts]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[.net rocks!]]></category>
		<category><![CDATA[carl franklin]]></category>
		<category><![CDATA[kate gregory]]></category>
		<category><![CDATA[richard campbell]]></category>
		<category><![CDATA[st. louis]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=178</guid>
		<description><![CDATA[Yesterday the .NET Rocks! Roadtrip came through St. Louis and local developers were treated to a very special live broadcast of the .NET Rocks! podcast by Carl Franklin and Richard Campbell, two tech heads who are just south of sane and a whole lot of fun to hang with!  The roadtrip is a fifteen-city trek across America in [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday the <a title=".NET Rocks! Roadtrip" href="http://www.dotnetrocks.com/roadtrip.aspx" target="_blank">.NET Rocks! Roadtrip</a> came through St. Louis and local developers were treated to a very special live broadcast of the <a title=".NET Rocks! podcast" href="http://itunes.apple.com/podcast/net-rocks/id130068596" target="_blank">.NET Rocks! podcast</a> by Carl Franklin and Richard Campbell, two tech heads who are just south of sane and a whole lot of fun to hang with!  The roadtrip is a fifteen-city trek across America in a large <a title="The RV" href="http://www.dotnetrocks.com/images/TheBoat2010.jpg" target="_blank">RV</a>, sponsored by Microsoft product teams and many .NET component, control, and tool providers.  The roadtrip team can be tracked in real-time with a feature-rich <a title="Track the trip!" href="http://silverlight.onterrasys.com/dnr_roadtrip/" target="_blank">Silverlight app</a> that integrates Bing mapping technology, live tweets featuring the hashtag #dnr_roadtrip, and Flickr image posts of the roadtrip team and RV.</p>
<p>During the first hour the podcast was recorded live with special guest <a title="Kate Gregory's blog" href="http://www.gregcons.com/kateblog/" target="_blank">Kate Gregory</a>--developer, writer, professor, and computer science PhD.  The discussion began with some brief overviews of Windows 7 development features and .NET Framework 4 enhancements that leverage them.  The banter was lively and the dual of wits commenced when Kate revealed that her two favorite languages are C++ and Visual Basic. (A confession which, in a room of C# developers, is tantamount to heresy!)  She was quick to point out that Microsoft's MFC libraries have received a hefty update in .NET 4, so people who write "trivial" applications like game engines, device drivers, and operating system libraries have finally received some love.  I had never heard Kate speak before, and it was quite an entertaining and enlightening hour.  I hope she will continue to be a guest on future .NET Rocks! podcast episodes (hint, hint).  To listen to the full 41 minute podcast, and read a more robust description of Kate Gregory's accomplishments, check out the <a title=".NET Rocks podcast 551" href="http://www.dotnetrocks.com/default.aspx?showNum=551" target="_blank">podcast page for show #551</a>.</p>
<p>Richard took stage for the second hour and demonstrated the new load testing features in Visual Studio 2010 Ultimate Edition.  He totes a "datacenter in a bag" which consists of four mini microcomputers, a switch and a bunch of network cables.  In the mix were two Windows 2008 web servers, an SQL Server 2008 database box, and a Windows 7 client machine running Visual Studio 2010 Ultimate for load testing.  Richard started with the price tag: ~$12,000 for 2010 Ultimate, which is not a bad investment considering comparable load testing suites are typically priced in the 10k range.  And 2010 comes with an IDE as well!  (joke)  He fired up his web servers (both running a mock storefront ASP.NET web application), created a load testing project in Visual Studio, specified the testing parameters (there are many testing scenarios to choose from), connected the IDE to the target web server's performance monitor, and let the test run for about sixty seconds.  When the test finished, Richard showed us many colorful graphs and explained that a) colorful graphs are a good way to convince your boss that you are being productive, and b) each colorful graph actually has extremely valuable data that can help pinpoint bottlenecks in hardware and software.  One thing that I was particularly impressed with is that Visual Studio also monitors the machine *performing* the load testing as well.  This is important because if the machine performing the testing can't keep up with the rigor of the test parameters, the data might lead to wrong conclusions.  When Richard was finished I found myself wishing I had a spare 12k to drop on Ultimate, but all the loose change in my couch only amounts to about $0.70, so it will be a while.</p>
<p>For the third hour, Carl showed off pictures of his amazing recording studio, audio and video equipment, and the plethora of musical devices he keeps stashed away in his home.  Truly a man of many talents, Carl plays just about any instrument and sings too.  After making us wish we were all artists and not code monkeys, he showed us some hot features of Silverlight 4 and the Expression suite of tools, specifically video encoding and playback.  He demonstrated how Silverlight video had been leveraged during the Olympics to provide coverage for the duration, and how it is being used to provide an interactive experience with Sunday Night Football.  He pulled up the latest copy of Expression Encoder and demonstrated how videos can be "tagged" at certain time stamps with a piece of data (think CommandArgument in ASP.NET), and those tags could be intercepted during playback in a WPF or Silverlight application with a special event handler.  The data that each tag contains can then be used to instruct the application to respond to that moment of video playback (maybe show a slide, cause UI controls to change state, go to a URL in a browser, etc.).  For the grand finale, Carl demonstrated a Silverlight application that interacts with an attached webcam, which can identify a specific artifact that the webcam is "seeing" (in this case, it was a piece of paper with a specific symbol on it), and then replace that artifact with another image, a video, a textbox--essentially anything that could be rendered in Silverlight.  Carl held the paper up to his face and his face was instantly turned into a giant textbox that could even accept input from the keyboard.  Whenever he would move his face, the textbox would follow the plane of his head and adjust itself accordingly.  While textboxes are great fun, he mentioned that real-world applications already exist for such technology, such as on-screen annotations during a football game (the yellow highlighted line of scrimmage superimposed over the field, for example).</p>
<p>Once all presentations were complete, swag was distributed to lucky attendees by random draw.  The kicker was that they had to answer a trivia question before they received their prizes.  Question topics ranged from obscure facts about the .NET Rocks! podcast to identifying incorrect regular expressions for email validation.  Most people were fairly nervous at first but special "clues" were present in each question that made guessing lots of fun.</p>
<p>Special thanks to Carl, Richard, Kate, and the local St. Louis .NET attendees and sponsors who worked hard to make an enjoyable evening.  You guys are the best!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/04/net-rocks-roadtrip-destination-st-louis/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Why Agile Works</title>
		<link>http://www.nicholascloud.com/2010/04/why-agile-works/</link>
		<comments>http://www.nicholascloud.com/2010/04/why-agile-works/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 03:30:55 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[agile]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=173</guid>
		<description><![CDATA[The ability to err early and often is essential to getting real work done. We are taught this in school when teachers tell us to write a rough draft of our final paper, store it away for a day or so, then revisit it several times refining and correcting as we go.  Unfortunately most of [...]]]></description>
			<content:encoded><![CDATA[<p>The ability to err early and often is essential to getting real work done. We are taught this in school when teachers tell us to write a rough draft of our final paper, store it away for a day or so, then revisit it several times refining and correcting as we go.  Unfortunately most of us always waited until the last minute to write our first (and final) draft, and produced something frightening as a result.  Writing software is not so dissimilar.</p>
<div style="text-align: center; margin-bottom: 10px;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="446" height="326" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="wmode" value="transparent" /><param name="bgColor" value="#ffffff" /><param name="flashvars" value="vu=http://video.ted.com/talks/dynamic/TomWujec_2010U-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/TomWujec-2010U.embed_thumbnail.jpg&amp;vw=432&amp;vh=240&amp;ap=0&amp;ti=837&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=tom_wujec_build_a_tower;year=2010;theme=new_on_ted_com;theme=a_taste_of_ted2010;theme=not_business_as_usual;event=TED2010;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;" /><param name="src" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" /><param name="bgcolor" value="#ffffff" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="446" height="326" src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" flashvars="vu=http://video.ted.com/talks/dynamic/TomWujec_2010U-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/TomWujec-2010U.embed_thumbnail.jpg&amp;vw=432&amp;vh=240&amp;ap=0&amp;ti=837&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=tom_wujec_build_a_tower;year=2010;theme=new_on_ted_com;theme=a_taste_of_ted2010;theme=not_business_as_usual;event=TED2010;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;" bgcolor="#ffffff" wmode="transparent" allowfullscreen="true"></embed></object></div>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/04/why-agile-works/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>IE does something better than Firefox, hell freezes over</title>
		<link>http://www.nicholascloud.com/2010/02/ie-does-something-better-than-firefox-hell-freezes-over/</link>
		<comments>http://www.nicholascloud.com/2010/02/ie-does-something-better-than-firefox-hell-freezes-over/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 23:59:45 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[Browsers]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Prototype]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[internet explorer]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=171</guid>
		<description><![CDATA[Like most web developers, I write markup and Javascript that will work on both IE and Firefox, and if I'm particularly ambitious, Chome and Safari.  I've been writing a lot of Javascript lately, which has been a good learning experience but frustrating at the same time.  I don't have the luxury of using jQuery on [...]]]></description>
			<content:encoded><![CDATA[<p>Like most web developers, I write markup and Javascript that will work on both IE and Firefox, and if I'm particularly ambitious, Chome and Safari.  I've been writing a lot of Javascript lately, which has been a good learning experience but frustrating at the same time.  I don't have the luxury of using jQuery on my current project -- I am pretty much restricted to Prototype for legacy reasons.  I was in the throes of reconciling a piece of code that copied values from one set of input fields to another, then accessing the innerHTML property of the target fields' containing div.  I was doing simple value assignments ($("textBox1").value = $("textBox2").value), and in IE everything worked like a peach.  Then I tested in Firefox and, to my amazement, the target input fields remained blank, even though FireBug assured me that the values were in fact being copied.  I was certain I was making a mistake somewhere in code, and spent an hour or so meticulously pouring over every line of Javascript, attempting to find the roadblock.  In desperation, I turned to the Google in search of an answer.  <a title="jQuery html() in Firefox (uses .innerHTML) ignores DOM changes" href="http://stackoverflow.com/questions/1388893/jquery-html-in-firefox-uses-innerhtml-ignores-dom-changes" target="_blank">What I found</a> surprised me enough that I felt compelled to write this post.</p>
<p><em>Firefox does not reflect dynamic DOM changes in the innerHTML property of a given DOM element.<br />
</em></p>
<p>This means that if you set the value of a text box to "123", then call the innerHTML property of the DOM element that contains the text box, the value of the text box according to innerHTML will appear to be whatever it was prior to your alteration.  In practice, when the page posts back to the server, the value will actually be "123" and not what innerHTML reports, but the fact that Firefox ignores the change gives me yet one more gray hair.</p>
<p>To get around this glaring oversight, I had to use the setAttribute() method on the DOM input element:</p>
<p>$("textBox1").setAttribute("value", $("textBox2").value);</p>
<p>This accomplishes both tasks -- updating the actual input value and changing the innerHTML property accordingly.</p>
<p>You've won this round IE... you've won this round.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/02/ie-does-something-better-than-firefox-hell-freezes-over/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Red Gate releases Reflector 6</title>
		<link>http://www.nicholascloud.com/2010/02/red-gate-releases-reflector-6/</link>
		<comments>http://www.nicholascloud.com/2010/02/red-gate-releases-reflector-6/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 01:41:53 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[red gate]]></category>
		<category><![CDATA[reflector]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=168</guid>
		<description><![CDATA[Lutz Roeder scored major points with developers the world over when he released his .NET Reflector software, a tiny package of TNT that lets the user examine compiled .NET assemblies, and even disassemble them (for debugging purposes).  I know it's a tool I couldn't live without.  I've used it countless times to examine APIs of [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Lutz Roeder" href="http://www.lutzroeder.com/" target="_blank">Lutz Roeder</a> scored major points with developers the world over when he released his .NET Reflector software, a tiny package of TNT that lets the user examine compiled .NET assemblies, and even disassemble them (for debugging purposes).  I know it's a tool I couldn't live without.  I've used it countless times to examine APIs of core .NET libraries, as well as third party, ill-documented assemblies.  (What? No documentation? Perish the thought!)  In 2008, Red Gate acquired the rights to enhance and publish reflector, and so their first polished incarnation has wandered into the wild.  <a title=".NET Reflector 6" href="http://www.red-gate.com/products/reflector/index.htm" target="_blank">.NET Reflector 6</a> is still free, but an optional "pro" version may be purchased for a paltry $195.00.  Reflector has been upgraded to support the new .NET 4.0 framework, and both versions come with Visual Studio integration.  Reflector Pro includes the ability to decompile from within Visual Studio, and debug step-through capabilities as well.  (You know, for those times when you're certain that Microsoft has screwed something up in their base class libraries because your own code is pristine.)  Add-ins for Reflector can be found on the <a title=".NET Reflector Add-Ins" href="http://www.codeplex.com/reflectoraddins" target="_blank">Reflector Codeplex site</a> in case the gun just isn't big enough for you out-of-the-box.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/02/red-gate-releases-reflector-6/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ambiguous match really is ambiguous in ASP.NET</title>
		<link>http://www.nicholascloud.com/2010/02/ambiguous-match-really-is-ambiguous-in-asp-net/</link>
		<comments>http://www.nicholascloud.com/2010/02/ambiguous-match-really-is-ambiguous-in-asp-net/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 05:13:16 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[ambiguous match found]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=163</guid>
		<description><![CDATA[I just love days of lost productivity.  You know, the ones where you pine away at some problem, retracing every change you made, every source control update you performed, attempting to track down the offending bug in code.  Days like yesterday, for example.  I was working on a fairly nondescript ASP.NET web page, but every [...]]]></description>
			<content:encoded><![CDATA[<p>I just love days of lost productivity.  You know, the ones where you pine away at some problem, retracing every change you made, every source control update you performed, attempting to track down the offending bug in code.  Days like yesterday, for example.  I was working on a fairly nondescript ASP.NET web page, but every time I would attempt to run it I would get the following error:</p>
<p><!--          body {font-family:"Verdana";font-weight:normal;font-size: .7em;color:black;}           p {font-family:"Verdana";font-weight:normal;color:black;margin-top: -5px}          b {font-family:"Verdana";font-weight:bold;color:black;margin-top: -5px}          H1 { font-family:"Verdana";font-weight:normal;font-size:18pt;color:red }          H2 { font-family:"Verdana";font-weight:normal;font-size:14pt;color:maroon }          pre {font-family:"Lucida Console";font-size: .9em}          .marker {font-weight: bold; color: black;text-decoration: none;}          .version {color: gray;}          .error {margin-bottom: 10px;}          .expandable { text-decoration:underline; font-weight:bold; color:navy; cursor:hand; }          --></p>
<blockquote>
<h2><em>Parser Error<br />
</em></h2>
<p><span style="font-family: Arial,Helvetica,Geneva,SunSans-Regular,sans-serif;"><strong>Description: </strong>An error occurred during the parsing of a resource required to service this  request. Please review the following specific parse error details and modify  your source file appropriately.<br />
<strong>Parser Error Message: </strong>Ambiguous  match found.</span></p>
<p><strong>Source File: </strong>/Default.aspx<strong> Line: </strong>1</p></blockquote>
<p>The only thing that is typically on Line 1 of any ASP.NET web page is the Page declaration, which specifies the <em>CodeBehind </em>and <em>Inherits </em>properties, so naturally my first thought was that perhaps the class name for the page conflicted with another class in the same namespace.  But this was an erroneous assumption, and after renaming the file several times I decided that was probably not the case.</p>
<p>After a few hours of searching, I realized that I had a button on my page declared something like this:</p>
<blockquote><p>&lt;asp:Button ID="cancel" runat="server" Text="Cancel" /&gt;</p></blockquote>
<p>and an event on the same page (in CodeBehind) declared like this:</p>
<blockquote><p>public event EventHandler Cancel;</p></blockquote>
<p>As it turns out, when ASP.NET parses a page's controls, it does so in a <em>case insensitive </em>manner, which means that the two "cancel" properties (a button is really a protected property declared in the designer) conflict.</p>
<p>This, of course, is completely contradictory, since the code will actually compile (case matters; there should be no name conflict) and only crashes at runtime.  This reeks of FAIL, especially since the whole <em>point</em> of ASP.NET is to make web pages more "object-like".</p>
<p>All the more reason to use MVC.</p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px;"><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves /> <w:TrackFormatting /> <w:PunctuationKerning /> <w:ValidateAgainstSchemas /> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF /> <w:LidThemeOther>EN-US</w:LidThemeOther> <w:LidThemeAsian>X-NONE</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables /> <w:SnapToGridInCell /> <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> <w:SplitPgBreakAndParaMark /> <w:DontVertAlignCellWithSp /> <w:DontBreakConstrainedForcedTables /> <w:DontVertAlignInTxbx /> <w:Word11KerningPairs /> <w:CachedColBalance /> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathPr> <m:mathFont m:val="Cambria Math" /> <m:brkBin m:val="before" /> <m:brkBinSub m:val="&#45;-" /> <m:smallFrac m:val="off" /> <m:dispDef /> <m:lMargin m:val="0" /> <m:rMargin m:val="0" /> <m:defJc m:val="centerGroup" /> <m:wrapIndent m:val="1440" /> <m:intLim m:val="subSup" /> <m:naryLim m:val="undOvr" /> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"   DefSemiHidden="true" DefQFormat="false" DefPriority="99"   LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Normal" /> <w:LsdException Locked="false" Priority="9" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="heading 1" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8" /> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9" /> <w:LsdException Locked="false" Priority="39" Name="toc 1" /> <w:LsdException Locked="false" Priority="39" Name="toc 2" /> <w:LsdException Locked="false" Priority="39" Name="toc 3" /> <w:LsdException Locked="false" Priority="39" Name="toc 4" /> <w:LsdException Locked="false" Priority="39" Name="toc 5" /> <w:LsdException Locked="false" Priority="39" Name="toc 6" /> <w:LsdException Locked="false" Priority="39" Name="toc 7" /> <w:LsdException Locked="false" Priority="39" Name="toc 8" /> <w:LsdException Locked="false" Priority="39" Name="toc 9" /> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption" /> <w:LsdException Locked="false" Priority="10" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Title" /> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font" /> <w:LsdException Locked="false" Priority="11" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtitle" /> <w:LsdException Locked="false" Priority="22" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Strong" /> <w:LsdException Locked="false" Priority="20" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Emphasis" /> <w:LsdException Locked="false" Priority="59" SemiHidden="false"    UnhideWhenUsed="false" Name="Table Grid" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" /> <w:LsdException Locked="false" Priority="1" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="No Spacing" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 1" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 1" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 1" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 1" /> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision" /> <w:LsdException Locked="false" Priority="34" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" /> <w:LsdException Locked="false" Priority="29" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Quote" /> <w:LsdException Locked="false" Priority="30" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 1" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 1" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 1" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 1" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 1" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 2" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 2" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 2" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 2" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 2" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 2" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 2" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 2" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 2" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 3" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 3" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 3" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 3" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 3" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 3" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 3" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 3" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 3" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 4" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 4" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 4" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 4" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 4" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 4" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 4" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 4" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 4" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 5" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 5" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 5" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 5" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 5" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 5" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 5" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 5" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 5" /> <w:LsdException Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 6" /> <w:LsdException Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 6" /> <w:LsdException Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 6" /> <w:LsdException Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" /> <w:LsdException Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" /> <w:LsdException Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 6" /> <w:LsdException Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 6" /> <w:LsdException Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" /> <w:LsdException Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" /> <w:LsdException Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" /> <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 6" /> <w:LsdException Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 6" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 6" /> <w:LsdException Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 6" /> <w:LsdException Locked="false" Priority="19" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" /> <w:LsdException Locked="false" Priority="21" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis" /> <w:LsdException Locked="false" Priority="31" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" /> <w:LsdException Locked="false" Priority="32" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" /> <w:LsdException Locked="false" Priority="33" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Book Title" /> <w:LsdException Locked="false" Priority="37" Name="Bibliography" /> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading" /> </w:LatentStyles> </xml><![endif]--><!--  /* Font Definitions */  @font-face 	{font-family:"Cambria Math"; 	panose-1:2 4 5 3 5 4 6 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:-1610611985 1107304683 0 0 415 0;} @font-face 	{font-family:Calibri; 	panose-1:2 15 5 2 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-520092929 1073786111 9 0 415 0;} @font-face 	{font-family:Consolas; 	panose-1:2 11 6 9 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:modern; 	mso-font-pitch:fixed; 	mso-font-signature:-520092929 1073806591 9 0 415 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-parent:""; 	margin:0in; 	margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} span.EmailStyle15 	{mso-style-type:personal; 	mso-style-noshow:yes; 	mso-style-unhide:no; 	mso-ansi-font-size:11.0pt; 	mso-bidi-font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi; 	color:windowtext;} .MsoChpDefault 	{mso-style-type:export-only; 	mso-default-props:yes; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} @page Section1 	{size:8.5in 11.0in; 	margin:1.0in 1.0in 1.0in 1.0in; 	mso-header-margin:.5in; 	mso-footer-margin:.5in; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --><!--[if gte mso 10]> <mce:style><!   /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:"Table Normal"; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin:0in; 	mso-para-margin-bottom:.0001pt; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} --> <!--[endif]--></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: Consolas; color: blue;">&lt;</span><span style="font-size: 10pt; font-family: Consolas; color: #a31515;">asp</span><span style="font-size: 10pt; font-family: Consolas; color: blue;">:</span><span style="font-size: 10pt; font-family: Consolas; color: #a31515;">Button</span><span style="font-size: 10pt; font-family: Consolas;"> <span style="color: red;">ID</span><span style="color: blue;">="cancel"</span> <span style="color: red;">runat</span><span style="color: blue;">="server"</span> <span style="color: red;">Text</span><span style="color: blue;">="Cancel"</span> <span style="color: blue;">/&gt;</span></span></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/02/ambiguous-match-really-is-ambiguous-in-asp-net/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Best IE 6 smack down. Ever.</title>
		<link>http://www.nicholascloud.com/2010/01/best-ie-6-smack-down-ever/</link>
		<comments>http://www.nicholascloud.com/2010/01/best-ie-6-smack-down-ever/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 20:30:48 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[Humor]]></category>
		<category><![CDATA[ie6]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[New to York]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=157</guid>
		<description><![CDATA[A friend sent me a link to this website, which has a disclaimer and the bottom that wins the gold in two categories: 1) side-splitting humor, and 2) caustic diatribe against inferior technology.  I reprint it here in its full glory.
"Hi, if you are coming to this site via Internet Explorer 6, you might not [...]]]></description>
			<content:encoded><![CDATA[<p>A friend sent me a link to <a title="New to York" href="http://www.newtoyork.com/" target="_blank">this website</a>, which has a disclaimer and the bottom that wins the gold in two categories: 1) side-splitting humor, and 2) caustic diatribe against inferior technology.  I reprint it here in its full glory.</p>
<blockquote><p>"Hi, if you are coming to this site via Internet Explorer 6, you might not be getting the best experience possible. Honestly, I can't even begin to think about what your entire experience on the internet must be like? (...probably like riding a bike on the highway while cars blow by you on their way to Costco to get gallons of mayonnaise and 60-inch plasma TV's). How will you ever be able to use this website?????? You wont. You're an asshole and your browser is an asshole. So look, I'm going to be honest: I kind of hate you. BUT we c-a-n make this work. Here is what I am going to need you to do: fire up your Toshiba ShitBook© that weighs about 45 pounds, wipe the Cheeto dust off the screen, download <a title="Safari" href="http://www.apple.com/safari/download/" target="_blank">Safari</a>, delete Internet Explorer from your computer, punch yourself in the face, and get me a pulled pork sandwich."</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/01/best-ie-6-smack-down-ever/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NUnit assertions and constraints cheat sheet</title>
		<link>http://www.nicholascloud.com/2010/01/nunit-assertions-and-constraints-cheat-sheet/</link>
		<comments>http://www.nicholascloud.com/2010/01/nunit-assertions-and-constraints-cheat-sheet/#comments</comments>
		<pubDate>Sun, 10 Jan 2010 22:53:05 +0000</pubDate>
		<dc:creator>ncloud</dc:creator>
				<category><![CDATA[Cheat Sheets]]></category>
		<category><![CDATA[NUnit]]></category>
		<category><![CDATA[Unit Testing]]></category>
		<category><![CDATA[cheat sheet]]></category>

		<guid isPermaLink="false">http://www.nicholascloud.com/?p=149</guid>
		<description><![CDATA[I'm pouring through the NUnit documentation to get a better grasp on the robust unit testing API.  I tend to learn quickly if I reproduce whatever I read (whether in written form, in passing conversation, with diagrams or drawings, etc.), so I decided to compile the NUnit assertions and constraints into a single "cheat sheet" [...]]]></description>
			<content:encoded><![CDATA[<p>I'm pouring through the <a title="NUnit" href="http://www.nunit.org/index.php?p=home" target="_blank">NUnit</a> documentation to get a better grasp on the robust unit testing API.  I tend to learn quickly if I reproduce whatever I read (whether in written form, in passing conversation, with diagrams or drawings, etc.), so I decided to compile the NUnit assertions and constraints into a single "cheat sheet" for quick reference.  You can <a title="NUnit 2.5.3 Assertions and Constraints Cheat Sheet" href="http://www.nicholascloud.com/wp-content/uploads/2010/01/Nunit-2.5.3-Assertions-and-Constraints-Cheat-Sheet1.pdf" target="_blank">download it here</a>, if you'd like.  If you find any errors, please shoot me an email (my email address is at the bottom of the cheat sheet).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nicholascloud.com/2010/01/nunit-assertions-and-constraints-cheat-sheet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
