<?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>willcodeforcoffee.com &#187; jQuery</title>
	<atom:link href="http://willcodeforcoffee.com/category/jquery/feed/" rel="self" type="application/rss+xml" />
	<link>http://willcodeforcoffee.com</link>
	<description>The personal programming blog of Eric Hoff.</description>
	<lastBuildDate>Wed, 18 Jan 2012 20:03:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Those Dangerous UpdatePanels and &#8220;The Intern&#8221;</title>
		<link>http://willcodeforcoffee.com/2008/10/31/those-dangerous-updatepanels-and-the-intern/</link>
		<comments>http://willcodeforcoffee.com/2008/10/31/those-dangerous-updatepanels-and-the-intern/#comments</comments>
		<pubDate>Fri, 31 Oct 2008 16:32:48 +0000</pubDate>
		<dc:creator>eric</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://willcodeforcoffee.com/?p=49</guid>
		<description><![CDATA[At my current contract I am saddled working with an intern. He&#8217;s a bright kid, and he&#8217;s gone through three years of school, but I&#8217;m kind of staggered by how much he doesn&#8217;t actually know! Development is extremely difficult because &#8230; <a href="http://willcodeforcoffee.com/2008/10/31/those-dangerous-updatepanels-and-the-intern/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>At my current contract I am <span style="text-decoration: line-through;">saddled</span> working with an intern. He&#8217;s a bright kid, and he&#8217;s gone through three years of <a href="http://nait.ca/" target="_blank">school</a>, but I&#8217;m kind of staggered by how much he doesn&#8217;t actually know! Development is extremely difficult because he doesn&#8217;t know much about JavaScript, AJAX, jQuery, CSS styling and positioning, Web Services, C#, UpdatePanels, LINQ, Ruby on Rails, MVC, DLL Libraries, ReSharper, and the list goes on and on! It&#8217;s hard to believe what eight years of experience teaches you, and I&#8217;m finding it difficult, and sometimes limiting because I have to move at a slower speed bringing him up to speed.</p>
<p>I was using some cool features of jQuery to do AJAX instead of using UpdatePanels, but when The Intern wanted to do some AJAX he got totally lost. In the end I taught him to use both jQuery and (<a href="http://willcodeforcoffee.com/2008/09/23/those-dangerous-updatepanels/" target="_blank">despite how dangerous it is)</a>, Ihow to use UpdatePanels.  In the end I encouraged him to use the UpdatePanel with his pages, read on to find out why.</p>
<p><span id="more-49"></span><strong>1.  Updating the DOM using jQuery and Web Services is an Advanced Skill</strong></p>
<p>Oh yes, both you and I can look at the code and figure out exactly what is happening.  We see the JS file linked in the ScriptManagerProxy control, we can follow the JavaScript code to the webservice call, and even more, but it is a <em>very</em> advanced skill.</p>
<p><strong>2.  Updating the DOM using jQuery and Web Services Reduced Maintainability</strong></p>
<p>Even with all of my knowledge, it&#8217;s still a long, messy trail of code until you get to the end (the web service). You&#8217;re crossing several files, including C#, ASPX, JavaScript, and ASMX files.  In my opinion this <em>drastically </em>decreases maintainability and makes the code much less readable and obvious to other .NET developers, even those who <strong>have</strong> read Encosia&#8217;s article.</p>
<p><strong>3.  Using UpdatePanels Doesn&#8217;t Change the ASP.NET PostBack Model</strong></p>
<p>The UpdatePanel is just another ASP.NET tag.  The PostBack model is retained, you still have Button OnClick events, you still have TextBox.Text, Page_Load etc. All of the code is still retained within one ASPX/ASPX.CS file pair. Almost any .NET developer, no matter how junior, should be able to follow this code. That makes the code maintainable.</p>
<p>In the end, even though jQuery will be shipping with future versions of ASP.NET, the .NET Framework, and Visual Studio, it&#8217;s still a relatively new concept. We need to proceed with it, but this is new ground so we have to blaze a trail that the slower movings guys can follow.</p>
<p>One of the big benefits we have as .NET developers is the <a href="http://msdn.microsoft.com/en-ca/library/default.aspx" target="_blank">MSDN Library</a>. I like to use MSDN as a scale for maintainability. If it is in MSDN then I consider it general knowledge that a new developer should know or be able to find easily. Otherwise I have to document it really well so that at least a mid-level developer should be able to figure out my application.</p>
<p>We have to be careful that the people maintaining the code behind us know what we&#8217;ve done, otherwise our awesome code gets rewritten by newb developers who can&#8217;t figure it out. If we can write maintainable code then hopefully the developers behind us will learn something and eventually become more advanced in their skills too.</p>
]]></content:encoded>
			<wfw:commentRss>http://willcodeforcoffee.com/2008/10/31/those-dangerous-updatepanels-and-the-intern/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Enabling jQuery Intellisense in Visual Studio 2008</title>
		<link>http://willcodeforcoffee.com/2008/10/29/enabling-jquery-intellisense-in-visual-studio-2008/</link>
		<comments>http://willcodeforcoffee.com/2008/10/29/enabling-jquery-intellisense-in-visual-studio-2008/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 19:20:32 +0000</pubDate>
		<dc:creator>eric</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://willcodeforcoffee.com/?p=47</guid>
		<description><![CDATA[OK, I know this is just a re-tweet, but in the light of my previous post on jQuery I figured I&#8217;d better post this too: http://blogs.msdn.com/webdevtools/archive/2008/10/28/rich-intellisense-for-jquery.aspx It&#8217;s just a quick article on how to enable Intellisense for jQuery in Visual Studio.]]></description>
			<content:encoded><![CDATA[<p>OK, I know this is just a re-tweet, but in the light of my previous post on jQuery I figured I&#8217;d better post this too: <a href="http://blogs.msdn.com/webdevtools/archive/2008/10/28/rich-intellisense-for-jquery.aspx">http://blogs.msdn.com/webdevtools/archive/2008/10/28/rich-intellisense-for-jquery.aspx</a></p>
<p>It&#8217;s just a quick article on how to enable Intellisense for jQuery in Visual Studio.</p>
]]></content:encoded>
			<wfw:commentRss>http://willcodeforcoffee.com/2008/10/29/enabling-jquery-intellisense-in-visual-studio-2008/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Some jQuery Tools for working with ASP.NET</title>
		<link>http://willcodeforcoffee.com/2008/10/23/some-jquery-tools-for-working-with-aspnet/</link>
		<comments>http://willcodeforcoffee.com/2008/10/23/some-jquery-tools-for-working-with-aspnet/#comments</comments>
		<pubDate>Thu, 23 Oct 2008 18:47:37 +0000</pubDate>
		<dc:creator>eric</dc:creator>
				<category><![CDATA[ASP.Next]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://willcodeforcoffee.com/?p=45</guid>
		<description><![CDATA[It was recently announced that the next version of ASP.NET (4.0?) would ship with jQuery, and the new Beta of the ASP.NET MVC Framework shipped with jQuery as well.  I&#8217;ve been using jQuery with ASP.NET for a while, so I &#8230; <a href="http://willcodeforcoffee.com/2008/10/23/some-jquery-tools-for-working-with-aspnet/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>It was recently <a title="Scott Guthrie's Blog Post" href="http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx" target="_blank">announced</a> that the next version of ASP.NET (4.0?) would ship with <a title="jQuery.com" href="http://jquery.com/" target="_blank">jQuery</a>, and the new <a title="Scott Guthrie's Blog Announcement" href="http://weblogs.asp.net/scottgu/archive/2008/10/16/asp-net-mvc-beta-released.aspx" target="_blank">Beta of the ASP.NET MVC Framework</a> shipped with <a href="http://weblogs.asp.net/scottgu/archive/2008/10/16/asp-net-mvc-beta-released.aspx#two" target="_blank">jQuery</a> as well.  I&#8217;ve been using jQuery with ASP.NET for a while, so I wanted to post some links related to jQuery to help some other people who are jQuery noobs out.</p>
<p><span id="more-45"></span><strong>1. Custom jQuery Selector</strong></p>
<p>One of the best parts of jQuery is it&#8217;s robost CSS style element selector. However, ASP.NET screws up our element IDs.  John Sheehan did some cool research and created a custom selector to select items based on the <em>end</em> of of the item ID.</p>
<ul>
<li><a href="http://john-sheehan.com/blog/index.php/custom-jquery-selector-for-aspnet-webforms/">http://john-sheehan.com/blog/index.php/custom-jquery-selector-for-aspnet-webforms/</a></li>
</ul>
<p><strong>2. The jQuery UI Widgets</strong></p>
<p>jQuery UI comes with some great UI widgets, especially in the development bundle.  See the download builder for all of the utilities.</p>
<ul>
<li><a href="http://ui.jquery.com/" target="_blank">http://ui.jquery.com/</a></li>
<li><a href="http://ui.jquery.com/download_builder/" target="_blank">http://ui.jquery.com/download_builder/</a></li>
</ul>
<p>Also, check out the UI Theme Roller to build custom themes.</p>
<ul>
<li><a href="http://ui.jquery.com/themeroller" target="_blank">http://ui.jquery.com/themeroller</a></li>
</ul>
<p><strong>3. The Date Picker Plugin</strong></p>
<p>I can&#8217;t remember the last app I&#8217;ve developed without a Date Picker.</p>
<ul>
<li><a href="http://plugins.jquery.com/project/datepicker" target="_blank">http://plugins.jquery.com/project/datepicker</a></li>
</ul>
<p><strong>4. The Form Plugin</strong></p>
<p>The Form plugin has some good tools, including a form data serializer (often handy when calling webservices).</p>
<ul>
<li><a href="http://malsup.com/jquery/form/" target="_blank">http://malsup.com/jquery/form/</a></li>
</ul>
<p><strong>5.  The bgiframe Plugin</strong></p>
<p>The bgIframe plugin is good for fixing Z-Index issues in popups on Internet Exploder.</p>
<ul>
<li><a href="http://plugins.jquery.com/project/bgiframe" target="_blank">http://plugins.jquery.com/project/bgiframe</a></li>
</ul>
<p><strong>6. The BlockUI Plugin</strong></p>
<p>BlockUI is handy for preventing extra button clicks on elements you&#8217;re updating with a web service or even inside an UpdatePanel if you&#8217;re still into that kind of thing&#8230;  :)</p>
<ul>
<li><a href="http://malsup.com/jquery/block/" target="_blank">http://malsup.com/jquery/block/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://willcodeforcoffee.com/2008/10/23/some-jquery-tools-for-working-with-aspnet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

