<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">
    <title>Joe Coder</title>
    
    
    <link rel="alternate" type="text/html" href="http://www.joecoder.com/" />
    <id>tag:typepad.com,2003:weblog-365586</id>
    <updated>2007-12-18T10:31:01-08:00</updated>
    <subtitle>AJAX, Javascript, XHTML, CSS and... *gasp* ASP.NET. 
No black boxes, just simple straightforward clean code</subtitle>
    <generator uri="http://www.typepad.com/">TypePad</generator>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/JoeCoder" /><feedburner:info uri="joecoder" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry>
        <title>Programming Languages I've learned</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/TdWUob3lsl4/programming-lan.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2007/12/programming-lan.html" thr:count="2" thr:updated="2010-03-12T06:45:16-08:00" />
        <id>tag:typepad.com,2003:post-42990632</id>
        <published>2007-12-18T10:31:01-08:00</published>
        <updated>2007-12-18T10:31:01-08:00</updated>
        <summary>I was listening to a Hanselminutes and Scott mentioned having learned a dozen or so programming languages (which is probably low for him). Which got me to thinking. Here, in the order I learned them, are the programming languages I've...</summary>
        <author>
            <name>Carson</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Code" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://www.joecoder.com/"><div xmlns="http://www.w3.org/1999/xhtml"><p>I was listening to a <a href="http://www.hanselminutes.com/">Hanselminutes</a> and Scott mentioned having learned a dozen or so programming languages (which is probably low for him). Which got me to thinking. Here, <strong>in the order I learned them</strong>, are the programming languages I've learned.</p>

<p>By "learned" I mean - became at least moderately competent with, wrote real programs in, and used for at least several months. Not just "played with over a weekend."</p>

<ol><li><a href="http://en.wikipedia.org/wiki/Logo_%28programming_language%29">Logo</a></li>

<li><a href="http://en.wikipedia.org/wiki/Applesoft_BASIC">Applesoft BASIC</a></li>

<li><a href="http://en.wikipedia.org/wiki/Pascal_%28programming_language%29">Pascal</a> </li>

<li>C++</li>

<li>Java</li>

<li>VBscript (with classic asp)</li>

<li>T-SQL</li>

<li>VB</li>

<li>C#</li>

<li>Javascript</li></ol>

<p>I'm a lightweight among my peers, but that's my story and I'm sticking to it.</p>

<p>It's funny how those first languages hold such a warm spot in my heart. It was with those that I first fell completely in love with programming computers.</p>

<p>I'd do the "tag" thing but those are lame, plus no one reads this blog for it's gripping yearly updates. But if you do manage to see this - <strong>what languages have you learned?</strong></p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/JoeCoder/~4/TdWUob3lsl4" height="1" width="1" /></div></content>


    <feedburner:origLink>http://www.joecoder.com/2007/12/programming-lan.html</feedburner:origLink></entry>
    <entry>
        <title>How to debug Javascript in Safari</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/NweSgQ5Ynkc/how-to-debug-ja.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2007/08/how-to-debug-ja.html" thr:count="2" thr:updated="2008-06-05T07:48:36-07:00" />
        <id>tag:typepad.com,2003:post-37254684</id>
        <published>2007-08-02T17:01:42-07:00</published>
        <updated>2007-08-02T17:01:42-07:00</updated>
        <summary>Link: Safari Developer FAQ.</summary>
        <author>
            <name>Carson</name>
        </author>
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://www.joecoder.com/"><div xmlns="http://www.w3.org/1999/xhtml"><p>Link: <a href="http://developer.apple.com/internet/safari/faq.html#anchor14" title="Safari Developer FAQ">Safari Developer FAQ</a>.</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/JoeCoder/~4/NweSgQ5Ynkc" height="1" width="1" /></div></content>


    <feedburner:origLink>http://www.joecoder.com/2007/08/how-to-debug-ja.html</feedburner:origLink></entry>
    <entry>
        <title>Apple to gain real ground in dev?</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/6LmyQr1x2mg/apple_to_gain_r.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2006/08/apple_to_gain_r.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-12086338</id>
        <published>2006-08-08T08:54:32-07:00</published>
        <updated>2006-08-08T08:54:32-07:00</updated>
        <summary>One of Microsoft's lasting areas of dominance has been software development. No one, really, has as advanced an infrastructure, toolset, platform, community or as much momentum. But Apple is wisely recognizing this largely unchallenged market and they've got my attention....</summary>
        <author>
            <name>Carson</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Apple" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Gripes" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Microsoft" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://www.joecoder.com/"><div xmlns="http://www.w3.org/1999/xhtml"><p>One of Microsoft's lasting areas of dominance has been software development. No one, really, has as advanced an infrastructure, toolset, platform, community or as much momentum. But Apple is wisely recognizing this largely unchallenged market and they've got my attention. First they revealed yesterday that they're now shipping some real powerhouse machines with quad Xeon processors and 16GB of RAM if you want it. Then this: <a title="Riding Rails: Ruby on Rails will ship with OS X 10.5 (Leopard)" href="http://weblog.rubyonrails.org/2006/8/7/ruby-on-rails-will-ship-with-os-x-10-5-leopard">Ruby on Rails will ship with OS X 10.5 (Leopard)</a>. </p>

<p>That's a big deal. They're starting to appeal to nerds, not just the snobsquad of thick-frame-glasses-black-turtleneck-kenneth-cole-styled designers. </p>

<p>Microsoft and our community ignore the RoR movement, the <a href="http://www.joecoder.com/2006/07/microsoft_net_b.html">clean, simple, lighter,</a> standards compliant, "web 2.0-ish" way of doing things at our peril.</p><blockquote><p>It’s been no secret that Apple is held in very high regard by the Rails community. <em>Every single Rails Core contributer is running on Apple</em> and the vast majority of Rails developers are too. (-emphasis mine, <a href="http://weblog.rubyonrails.org/2006/8/7/ruby-on-rails-will-ship-with-os-x-10-5-leopard">src</a>)<br /> </p></blockquote><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/JoeCoder/~4/6LmyQr1x2mg" height="1" width="1" /></div></content>


    <feedburner:origLink>http://www.joecoder.com/2006/08/apple_to_gain_r.html</feedburner:origLink></entry>
    <entry>
        <title>Free copy of WinRAR</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/raXanYWgU_E/free_copy_of_wi.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2006/08/free_copy_of_wi.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-12037885</id>
        <published>2006-08-04T22:28:46-07:00</published>
        <updated>2006-08-04T22:28:46-07:00</updated>
        <summary>Special One Day Offer.</summary>
        <author>
            <name>Carson</name>
        </author>
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://www.joecoder.com/"><div xmlns="http://www.w3.org/1999/xhtml"><p><a href="http://nct.digitalriver.com/fulfill/0233.001" title="Award Winner WinRAR 3.51 for Free - Special One Day Offer">Special One Day Offer</a>.</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/JoeCoder/~4/raXanYWgU_E" height="1" width="1" /></div></content>


    <feedburner:origLink>http://www.joecoder.com/2006/08/free_copy_of_wi.html</feedburner:origLink></entry>
    <entry>
        <title>Form Validation Quandary</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/bTSviU8gsGE/form_validation.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2006/08/form_validation.html" thr:count="2" thr:updated="2006-08-02T18:32:40-07:00" />
        <id>tag:typepad.com,2003:post-11994449</id>
        <published>2006-08-02T11:42:28-07:00</published>
        <updated>2006-08-02T11:42:28-07:00</updated>
        <summary>I'm doing form validation, and it seems I have the following (acceptable*) choices. Straight clean Javascript on the client, double-checked by the server on submit. Ajax talking to the server for the validation logic, reporting back to the client, and...</summary>
        <author>
            <name>Carson</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Best Practices" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://www.joecoder.com/"><div xmlns="http://www.w3.org/1999/xhtml"><p>I'm doing form validation, and it seems I have the following (acceptable*) choices.</p>

<ol><li>Straight clean Javascript on the client, double-checked by the server on submit.</li>

<li>Ajax talking to the server for the validation logic, reporting back to the client, and of course, backed up by the server.</li></ol>

<p><strong>Issues with option 1:</strong><br /><em>It's nice because</em>: 90%+ of users will likely get their needs met with the client side checking, very quickly. If it fails, the server logic will keep it from running afoul.<br /><em><br />It stinks because</em>: I'll have to write validation logic twice. I'll have to do some additional voodoo to make the client-side reporting of the errors work from the server side.</p>

<p><strong>Issues with option 2:</strong><br /><em>It's nice because</em>: I only have to write my validation logic once. I can use the same logic, in fact, for the double-check on the server when the page submits. </p>

<p><em>It stinks because</em>: I have to write the AJAX hooks, and I'll still have to find a way of making the client-side reporting of errors work after the submit.</p>

<p>Maybe it's a wash? Maybe if I go with 2 I'll be able to leverage the AJAX for other benefits. </p>

<p><strong>Additional considerations:</strong><br />This is another of many moments when I'm faced with the option of just not supporting browsers without Javascript enabled. I've come a long way without making that decision, but it's a hard one to avoid. We know it's not a good practice to do so because it alienates some visitors. But the compromise between creating graceful degradation and "getting something out there" is a tough one. 37signals decided long ago that anyone without Javascript was out of luck. They also have a very sophisticated audience, for the most part. I don't imagine they've lost many clients because of that decision. (I'd love to know the numbers). More importantly, they've released product and are making money.</p>

<p>* The built-in asp.net validation controls are too messy. 
</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/JoeCoder/~4/bTSviU8gsGE" height="1" width="1" /></div></content>


    <feedburner:origLink>http://www.joecoder.com/2006/08/form_validation.html</feedburner:origLink></entry>
    <entry>
        <title>Microsoft: .Net Beat Java, Who's Next?</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/747qUiFyvEM/microsoft_net_b.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2006/07/microsoft_net_b.html" thr:count="1" thr:updated="2008-02-16T14:39:13-08:00" />
        <id>tag:typepad.com,2003:post-11955077</id>
        <published>2006-07-31T09:40:25-07:00</published>
        <updated>2006-07-31T09:40:25-07:00</updated>
        <summary>Yes, they really have. But it's not over yet. With comments like this one: "As we focus on the enterprise segment, we have the ability to drive up our revenue share." ...I worry. I understand that you need to generate...</summary>
        <author>
            <name>Carson</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Gripes" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Microsoft" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://www.joecoder.com/"><div xmlns="http://www.w3.org/1999/xhtml"><p><a title="Microsoft: .Net Beat Java, Who's Next?" href="http://www.eweek.com/article2/0,1895,1995495,00.asp">Yes, they really have.</a><br />But it's not over yet. With comments like this one: </p>

<blockquote cite="http://www.eweek.com/article2/0,1895,1995495,00.asp"><p>"As we focus on the enterprise segment, we have the ability to drive up our revenue share."</p></blockquote><p>...I worry. I understand that you need to generate revenue for shareholders. And frankly, I don't begrudge you that. Go ahead. Cater to the enterprise. </p>

<p>But... "Who's next?" you ask? </p>

<p>The lightweight RAD-that-doesn't-blow stuff like Django/RoR/PHP. Of course this is selfish on my part. I realize my tiny segment of uber geeks is hardly a market-share worth pursuing. However, we're a barometer and an early warning system. As we go, so goes the industry in the near future. </p>

<p>And comments like this, really don't encourage me:</p><blockquote><p>Moreover, looking beyond J2EE, Microsoft has to deal with issues
like AJAX (Asynchronous JavaScript and XML)-style development, as well
as lighter-weight frameworks such Ruby on Rails.
</p>

<p>Ozzie said Microsoft must create frameworks for different types
of development. For instance, in the Web development space Microsoft
has ASP.Net, and for AJAX-style development Microsoft has its Atlas
tool.
</p></blockquote><p>*sigh* - Ozzie, everyone knows you're a genius, but you've obviously never looked at Atlas and you don't understand the crowd that uses (or wants to use) RoR. Atlas is fairly decent at mass-market buzz-lover appeal, and I suppose you'll get some VB6ers to convert over to it and get all excited. But no one in the serious web developer community can take Atlas seriously. It's too abstracted, too black box, too sealed. We don't want more black boxes and heavier frameworks we want (as you said) lighter-weight frameworks. </p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/JoeCoder/~4/747qUiFyvEM" height="1" width="1" /></div></content>


    <feedburner:origLink>http://www.joecoder.com/2006/07/microsoft_net_b.html</feedburner:origLink></entry>
    <entry>
        <title>Why serious web developers can't use Master Pages</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/0gyyLmiQyFk/why_serious_web.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2006/07/why_serious_web.html" thr:count="10" thr:updated="2010-03-08T15:08:00-08:00" />
        <id>tag:typepad.com,2003:post-11903626</id>
        <published>2006-07-27T14:07:10-07:00</published>
        <updated>2006-07-27T14:07:10-07:00</updated>
        <summary>ASP.NET 2.0 is a wonderful leap forward from 1.1. Much has improved, and one exciting improvement is Master Pages. Only Master Pages can't be used by serious web developers. For today: serious web developers = web developers who wish to...</summary>
        <author>
            <name>Carson</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Gripes" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://www.joecoder.com/"><div xmlns="http://www.w3.org/1999/xhtml"><p>ASP.NET 2.0 is a wonderful leap forward from 1.1. Much has improved, and one exciting improvement is Master Pages.</p>

<p>Only Master Pages can't be used by serious web developers.</p>

<p>For today: serious web developers = web developers who wish to observe best coding practices, especially loose coupling and clean separation between layers. </p>

<p><strong>The problem:</strong><br />Master Pages use a little gremlin called <a href="http://msdn2.microsoft.com/en-us/library/system.web.ui.inamingcontainer.aspx">INamingContainer</a> to "help" you. It ensures that no id names on a given page will collide. It does this by kindly renaming your control ids. So if your control id is called "textbox1" - when you use it with master pages, it becomes "ctl00_ContentPlaceHolder1_TextBox1".</p>

<p>And I suppose in some situations, that might be helpful. But in <strong><em>all</em></strong> situations? Come on guys.</p>

<p>The solutions out there range from detecting what that that name is going to be, and <a href="http://www.velocityreviews.com/forums/t115987-override-inamingcontainer.html">dynamically generating</a> your CSS or Javascript, to hard coding what the control will be into your js based on the predictable naming convention. These are <strong>completely unacceptable solutions.</strong></p>

<p>The only real solution (short of writing your own control, which I'm pondering), is to skip using Master Pages all together. Which is a serious shame. They had such insanely cool promise.</p>

<p>*sigh*</p>

<p>For more info, read through some of the comments on <a href="http://weblogs.asp.net/scottgu/archive/2006/04/18/443276.aspx#443287">this post</a> by ScottGu (including our hero's silly suggested workaround) and <a href="http://odetocode.com/Articles/450.aspx">this article</a> (scroll down to "Name Mangling"). All the suggested solutions are preposterous.</p>

<xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/JoeCoder/~4/0gyyLmiQyFk" height="1" width="1" /></div></content>


    <feedburner:origLink>http://www.joecoder.com/2006/07/why_serious_web.html</feedburner:origLink></entry>
    <entry>
        <title>A cool Javascript IDE</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/IbIWJv_WlUo/a_cool_javascri.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2006/07/a_cool_javascri.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-11899105</id>
        <published>2006-07-27T09:12:35-07:00</published>
        <updated>2006-07-27T09:12:35-07:00</updated>
        <summary>As an undying fan of VS's intellisense and other code-helpers, I'm pretty excited about this new tool. Aptana is a very nice looking IDE for JS (any web stuff really, but it seems to shine for JS). There's even YUI...</summary>
        <author>
            <name>Carson</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Javascript" />
        <category scheme="http://www.sixapart.com/ns/types#category" term="Tools" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://www.joecoder.com/"><div xmlns="http://www.w3.org/1999/xhtml"><p>As an undying fan of VS's intellisense and other code-helpers, I'm pretty excited about this new tool. <a title="Aptana: The Web IDE" href="http://www.aptana.com/">Aptana</a> is a very nice looking IDE for JS (any web stuff really, but it seems to shine for JS). There's even <a href="http://www.aptana.tv/movies/aptana_yui_demo/YUIDemo.html">YUI</a> (and <a href="http://www.aptana.tv/">many other libraries</a>)-specific support. Cool!</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/JoeCoder/~4/IbIWJv_WlUo" height="1" width="1" /></div></content>


    <feedburner:origLink>http://www.joecoder.com/2006/07/a_cool_javascri.html</feedburner:origLink></entry>
    <entry>
        <title>YUI Library Release 0.11</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/44nVnAgf0R4/yui_library_rel.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2006/07/yui_library_rel.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-11497683</id>
        <published>2006-07-10T15:33:39-07:00</published>
        <updated>2006-07-10T15:33:39-07:00</updated>
        <summary>Let's all do the happy dance! Actually, adding the file-upload capability to the Connection Manager might just be enough to garner it some more love from the "L337" JS/Ajax weenies out there. Yahoo! User Interface Blog.</summary>
        <author>
            <name>Carson</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="YUI" />
        
        
<content type="xhtml" xml:lang="en-US" xml:base="http://www.joecoder.com/"><div xmlns="http://www.w3.org/1999/xhtml"><p>Let's all do the happy dance!<br />Actually, adding the file-upload capability to the Connection Manager might just be enough to garner it some more love from the "L337" JS/Ajax weenies out there. <a title="YUI Library Release 0.11: A Host of Enhancements and a New Logger Control � Yahoo! User Interface Blog" href="http://yuiblog.com/blog/2006/07/10/yui-library-release-011-a-host-of-enhancements-and-a-new-logger-control/">Yahoo! User Interface Blog</a>.</p><xhtml:img xmlns:xhtml="http://www.w3.org/1999/xhtml" src="http://feeds.feedburner.com/~r/JoeCoder/~4/44nVnAgf0R4" height="1" width="1" /></div></content>


    <feedburner:origLink>http://www.joecoder.com/2006/07/yui_library_rel.html</feedburner:origLink></entry>
    <entry>
        <title>findContainer()</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/MffkERmuFLA/findcontainer.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2006/07/findcontainer.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-11396774</id>
        <published>2006-07-04T09:41:07-07:00</published>
        <updated>2006-07-04T09:41:07-07:00</updated>
        <summary>When handling events in the DOM it's often useful to get a reference to the containing element (say, a div) around a certain item. For example: you've got a "hide" link inside some element (the div) and you want to...</summary>
        <author>
            <name>Carson</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Code" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://www.joecoder.com/">
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;p&gt;When handling events in the DOM it's often useful to get a reference to the containing element (say, a div) around a certain item. For example: you've got a &amp;quot;hide&amp;quot; link inside some element (the div) and you want to detect the click on the &amp;quot;hide&amp;quot; link, then hide the (div) element. &lt;/p&gt;

&lt;p&gt;So... you need a handle on that containing element (the div) so you can hide it. &lt;br /&gt; &lt;/p&gt;

&lt;p&gt;With this in mind, I created what I'm sure is highly unoriginal, but it works quite well for me. I present: findContainer().&lt;/p&gt;

&lt;p&gt;Note: YUD = Yahoo.util.Dom.&lt;/p&gt;

&lt;p&gt;&lt;textarea class="js" name="code"&gt;function findContainer(el, containerCssClass)
{
	var currentNode = el;
		
	while (!YUD.hasClass(currentNode,containerCssClass));
	{
		currentNode = currentNode.parentNode;

		//failsafe, they went all the way up
		if (currentNode.parentNode.nodeName == 'HTML')
			return el;
	}
			
	return currentNode;
}

&lt;/textarea&gt;



&lt;/p&gt;

&lt;p&gt;This function takes 2 arguments. The element being acted (probably clicked) upon (the &amp;quot;hide&amp;quot; link in this example) and the css class of the containing element.&amp;nbsp; It will work it's way up the tree until it runs into an element with the specified class. Once that class is encountered, it returns that element. You can then hide it (or whatever).&lt;/p&gt;

&lt;p&gt;You could easily re-purpose this to have it take an element type as the second argument. (e.g. 'DIV' or 'LI') with the same effect. The cssClass method feels more predictable to me.
&lt;/p&gt;&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/JoeCoder/~4/MffkERmuFLA" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://www.joecoder.com/2006/07/findcontainer.html</feedburner:origLink></entry>
    <entry>
        <title>My Philosophy and Approach</title>
        <link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/JoeCoder/~3/CsTc76KHKsY/my_philosophy_a.html" />
        <link rel="replies" type="text/html" href="http://www.joecoder.com/2006/07/my_philosophy_a.html" thr:count="0" />
        <id>tag:typepad.com,2003:post-11389732</id>
        <published>2006-07-03T22:28:55-07:00</published>
        <updated>2006-07-03T22:28:55-07:00</updated>
        <summary>I hate high level abstraction. "Black Boxes" if you will. ATLAS is one, so is GWT. I don't want to program in binary, but I also don't want a miracle tier. It's important for me me to have (a) control...</summary>
        <author>
            <name>Carson</name>
        </author>
        <category scheme="http://www.sixapart.com/ns/types#category" term="Philosophy" />
        
        
<content type="html" xml:lang="en-US" xml:base="http://www.joecoder.com/">
&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;ul&gt;&lt;li&gt;I hate high level abstraction. &amp;quot;Black Boxes&amp;quot; if you will. &lt;a href="http://atlas.asp.net/default.aspx?tabid=47&amp;amp;subtabid=471"&gt;ATLAS&lt;/a&gt; is one, so is &lt;a href="http://www.google.com/search?hl=en&amp;amp;q=GWT&amp;amp;btnG=Google+Search"&gt;GWT&lt;/a&gt;. I don't want to program in binary, but I also don't want a miracle tier. It's important for me me to have (a) control and (b) understanding. Without those, an application quickly devolves into a mess filled with compromises and maintenance headaches. I'm all for frameworks, toolkits, and other RAD resources, but from there up, I want to roll my own.&lt;/li&gt;

&lt;li&gt;I'm a Microsoft guy, and I don't apologize for it. Microsoft has done a stellar job creating development tools. They are fans of the miracle tier, but I completely and fiercely ignore that stuff. (Microsoft has to appeal to the VB6/2-tier crowd, and I grumble and whine and swear it's a complete waste of time and resources, but it's their right. I understand it from a business standpoint.) The .NET framework is a thing of beauty. And Visual Studio is (&lt;em&gt;finally&lt;/em&gt;) near perfect. I can't imagine a life without intellisense. Microsoft has created a powerful foundation. ASP.NET + SQL Server are my world. I love how they work and I've hitched my wagon to them. &lt;br /&gt; &lt;/li&gt;

&lt;li&gt;I'm a harsh Microsoft critic. It used to be they could do no wrong in my eyes, lately (last 2-3 years) they've disappointed me greatly and I'm not shy in talking about it. But, per my previous point, my criticisms come from a place of love. I &lt;em&gt;want&lt;/em&gt; them to succeed, their success is mine.&lt;/li&gt;

&lt;li&gt; I'm a javascript noob. I resolved at the beginning of the year (2006) that I would learn it. I've been reading voraciously, applying, eating the learning curve and I'm now currently engaged in a large-ish project that heavily uses it (for me, nothing teaches like the need to do something real with it, now). I'm actually falling in love with javascript. Which is astounding to anyone who has heard me talk about javascript in years past. I hated it with such a festering passion that when I spoke of it, my wife wondered if I used that same mouth to kiss my mother.&lt;/li&gt;

&lt;li&gt;I spent a great deal of time evaluating different javascript frameworks. The frontrunners were (the horridly named) Prototype library and the Yahoo Interface Library (YUI). After fooling around with both, creating junk, reading documentation, reading community opinions, I landed on YUI for my current project. It's not quite as rich or mature as Prototype, but as a traditionalist OOP purist, and formally-trained programmer, its approach appeals to me. Plus it has the backing of Yahoo. Prototype has way more stuff and a much larger community, but it feels a bit too (wait for it) &amp;quot;black box&amp;quot; to me.&lt;/li&gt;

&lt;li&gt;I've brewed my own approach to AJAX that I'll share in another post, but in short: YUI Connection Manager -- post back -- page detects an AJAX request by looking at the querystring -- use normal framework mechanics to construct the HTML response -- spit it back -- Response.End -- innerHTML the response into the appropriate spot.&amp;nbsp; &lt;/li&gt;

&lt;li&gt;Yes it's possible to be a Microsoft guy, and a javascript/AJAX/Web2.0 guy. Get over it.&lt;/li&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;img src="http://feeds.feedburner.com/~r/JoeCoder/~4/CsTc76KHKsY" height="1" width="1"/&gt;</content>


    <feedburner:origLink>http://www.joecoder.com/2006/07/my_philosophy_a.html</feedburner:origLink></entry>
 
</feed><!-- ph=1 --><!-- nhm:dynamic-ssi -->
