<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
    <channel>
        <title>Jay Kimble</title>
        <link>http://theruntime.com/blogs/jaykimble/Default.aspx</link>
        <description>The Dev Theologian</description>
        <language>en-US</language>
        <copyright>Jay Kimble</copyright>
        <managingEditor>jkimble@gmail.com</managingEditor>
        <generator>Subtext Version 1.9.5.0</generator>
        <image>
            <title>Jay Kimble</title>
            <url>http://theruntime.com/blogs/images/RSS2Image.gif</url>
            <link>http://theruntime.com/blogs/jaykimble/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/JayKimble" type="application/rss+xml" /><item>
            <title>If You Had 6 Months To a Sudden Death&amp;hellip;</title>
            <category>Dev Philosophy</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/9JHbj1RRji8/if-you-had-6-months-to-a-sudden-deathhellip.aspx</link>
            <description>&lt;p&gt;This is a concept I have been pondering lately (and not just from a personal perspective). To be clear on the concept, here’s the idea: what would you do differently right now, if you knew in 6 months you would be killed in an accident (and not a terminal illness)?&lt;/p&gt;  &lt;p&gt;Personally the answer that we all come up tends to be the same. Spend more time with family and friends. Have more fun. Maybe, join a religion or get deeper in the one that you subscribe to(you gotta worry about the afterlife if you believe in one.. which obviously I do). &lt;/p&gt;  &lt;p&gt;Professionally though, you might think a little differently. For instance I was tweeting this last week and Steve Hebert (can’t find your blog anymore man) responded…&lt;/p&gt;  &lt;p&gt;To summarize him he said that he would find a fun project and forget about unit testing on it (no point if you are dying in the not too distant future… it’s someone else’ problem… ) Interestingly enough I would say the opposite. Now to make it really weird, Steve is probably more in that realm than I am.. My suspicion for why this is has something to do with our current teams. My current team is in many respects very inexperienced; I’d bet the team Steve would pick for himself or who he would have in mind working with him isn’t. My reasons for wanting to do more is that I would want my team to have a better understanding of my code.&lt;/p&gt;  &lt;p&gt;Anyway, for me the more critical fact is that I would probably doing less development on my team.. Seriously, I’d be investing a lot more time into my team helping them grow.&lt;/p&gt;  &lt;p&gt;If I took the fun route, I’d be working on probably PocketCBZ or one of my other “fun” projects (which by the way have no unit tests in them)..&lt;/p&gt;  &lt;p&gt;How about you?&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2815.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=9JHbj1RRji8:wv58zA98XOo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=9JHbj1RRji8:wv58zA98XOo:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=9JHbj1RRji8:wv58zA98XOo:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=9JHbj1RRji8:wv58zA98XOo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=9JHbj1RRji8:wv58zA98XOo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=9JHbj1RRji8:wv58zA98XOo:G79ilh31hkQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=G79ilh31hkQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=9JHbj1RRji8:wv58zA98XOo:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/07/15/if-you-had-6-months-to-a-sudden-deathhellip.aspx</guid>
            <pubDate>Wed, 15 Jul 2009 18:22:00 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2815.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/07/15/if-you-had-6-months-to-a-sudden-deathhellip.aspx#feedback</comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2815.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/07/15/if-you-had-6-months-to-a-sudden-deathhellip.aspx</feedburner:origLink></item>
        <item>
            <title>Welcome Guiseppe Scarfone to TheRuntime.com</title>
            <category>TheRuntime.com news</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/vuBUPx4kG2E/welcome-guiseppe-scarfone-to-theruntime.com.aspx</link>
            <description>&lt;p&gt;I just wanted to mention that we added a new blogger here on theruntime.com (actually we have a few more in the pipeline. Guiseppe (“G” hereafter) is my workplace’s resident Reporting Services guru. He’s gonna focusing on Reporting Services (duhh), SSIS (which he also does), and Analysis Services (an area I bet most of us could use some additional knowledge of).&lt;/p&gt;  &lt;p&gt;He already put up an intro post &lt;a href="http://theruntime.com/blogs/gscarfone/archive/2009/07/13/introduction.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2814.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=vuBUPx4kG2E:3amKVPtf6RU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=vuBUPx4kG2E:3amKVPtf6RU:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=vuBUPx4kG2E:3amKVPtf6RU:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=vuBUPx4kG2E:3amKVPtf6RU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=vuBUPx4kG2E:3amKVPtf6RU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=vuBUPx4kG2E:3amKVPtf6RU:G79ilh31hkQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=G79ilh31hkQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=vuBUPx4kG2E:3amKVPtf6RU:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/07/15/welcome-guiseppe-scarfone-to-theruntime.com.aspx</guid>
            <pubDate>Wed, 15 Jul 2009 12:48:17 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2814.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/07/15/welcome-guiseppe-scarfone-to-theruntime.com.aspx#feedback</comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2814.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/07/15/welcome-guiseppe-scarfone-to-theruntime.com.aspx</feedburner:origLink></item>
        <item>
            <title>Tampa UX .NET next meeting July 29th at the Microsoft Offices (in Tampa)</title>
            <category>TUX</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/UKXyRi_bXuI/tampa-ux-.net-next-meeting-july-29th-at-the-micrososft.aspx</link>
            <description>&lt;p&gt;Just wanted to fire off a quick blog post/update on what is happening with Tampa UX this month. With the switch to the Microsoft Offices in Tampa (map, etc to come in a future post), we had to adjust the schedule a little, so sorry if this inconveniences you (BTW, I don’t have credentials for our web site nor do I have the email list at this time, but I will do my best to update them soon).&lt;/p&gt;  &lt;p&gt;Look for an update on our new URL – &lt;a href="http://www.tampaux.NET"&gt;http://www.tampaux.NET&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;We have really, really exciting things happening (I can’t wait to share them at the next meeting). I can tell you that next month is going to be mostly about re-inventing our web site. &lt;/p&gt;  &lt;p&gt;Among other things, we’re going to open source our web site’s source code and will be taking suggestions/patches from you (for design as well as development tasks).&lt;/p&gt;  &lt;p&gt;Anyway, stay tuned for more info…&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2810.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=UKXyRi_bXuI:O1tqOETkN58:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=UKXyRi_bXuI:O1tqOETkN58:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=UKXyRi_bXuI:O1tqOETkN58:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=UKXyRi_bXuI:O1tqOETkN58:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=UKXyRi_bXuI:O1tqOETkN58:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=UKXyRi_bXuI:O1tqOETkN58:G79ilh31hkQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=G79ilh31hkQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=UKXyRi_bXuI:O1tqOETkN58:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/07/06/tampa-ux-.net-next-meeting-july-29th-at-the-micrososft.aspx</guid>
            <pubDate>Mon, 06 Jul 2009 20:17:15 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2810.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/07/06/tampa-ux-.net-next-meeting-july-29th-at-the-micrososft.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2810.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/07/06/tampa-ux-.net-next-meeting-july-29th-at-the-micrososft.aspx</feedburner:origLink></item>
        <item>
            <title>Better JavaScript class generation</title>
            <category>AJAX</category>
            <category>ASP.Net</category>
            <category>Architecture</category>
            <category>Atlas</category>
            <category>ClientScript</category>
            <category>Components and tools</category>
            <category>JavaScript</category>
            <category>MS Ajax</category>
            <category>MS Ajax Extensions</category>
            <category>MS ASP.NET Ajax Extensions</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/0yyC91kXVPU/better-javascript-class-generation.aspx</link>
            <description>&lt;p&gt;For years, I have been espousing how great Script# is. I often do an advanced MS ASP.NET Ajax client talk and end it with a Script# talk. Mainly because I think that the idea of learning the nuances of JavaScript OO techniques can be a little confusing. It’s really the challenge (All you need to do is search the archives of my blog and you’ll see my own confusion on this topic).&lt;/p&gt;  &lt;p&gt;I think many web developers can wrap their heads around building the functionality, but making something private/public/static can get a little confusing. Especially if you are used to using something like C# or VB to do it.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://new.efficientcoder.net/"&gt;Kevin “ByteMaster” Wolf&lt;/a&gt; and I have been talking about this. As a result of those talks I started playing with an idea of allowing developers create something that feels more like OO… Anyway, I have come up with a very alpha version. &lt;/p&gt;  &lt;h3&gt;A Better OO For JavaScript??&lt;/h3&gt;  &lt;div style="border-bottom: silver 1px solid; text-align: left; border-left: silver 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: 'Courier New', courier, monospace; direction: ltr; max-height: 200px; font-size: 8pt; overflow: auto; border-top: silver 1px solid; cursor: text; border-right: silver 1px solid; padding-top: 4px" id="codeSnippetWrapper"&gt;   &lt;div style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;     &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum1"&gt;   1:&lt;/span&gt; compileClasses({    &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum2"&gt;   2:&lt;/span&gt;     testClass: {        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum3"&gt;   3:&lt;/span&gt;         ctor: &lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum4"&gt;   4:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// this is a test        &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum5"&gt;   5:&lt;/span&gt;         },        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum6"&gt;   6:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;private&lt;/span&gt;: {            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum7"&gt;   7:&lt;/span&gt;             privateVar:1,            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum8"&gt;   8:&lt;/span&gt;             privateMethd:&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {                &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum9"&gt;   9:&lt;/span&gt;                 &lt;span style="color: #008000"&gt;// test method            &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum10"&gt;  10:&lt;/span&gt;             }        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum11"&gt;  11:&lt;/span&gt;         },        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum12"&gt;  12:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;public&lt;/span&gt;:{            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum13"&gt;  13:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// public stuff here            &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum14"&gt;  14:&lt;/span&gt;             publicVar:&lt;span style="color: #006080"&gt;"2"&lt;/span&gt;        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum15"&gt;  15:&lt;/span&gt;         },        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum16"&gt;  16:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;static&lt;/span&gt;:{            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum17"&gt;  17:&lt;/span&gt;             &lt;span style="color: #008000"&gt;//public statics            &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum18"&gt;  18:&lt;/span&gt;             staticVar:&lt;span style="color: #006080"&gt;"test"&lt;/span&gt;        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum19"&gt;  19:&lt;/span&gt;         }    &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum20"&gt;  20:&lt;/span&gt;     },    &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum21"&gt;  21:&lt;/span&gt;     testClass2: {        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum22"&gt;  22:&lt;/span&gt;         ctor: testFunc,        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum23"&gt;  23:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;private&lt;/span&gt;: {            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum24"&gt;  24:&lt;/span&gt;             privateVar2:&lt;span style="color: #006080"&gt;"2"&lt;/span&gt;        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum25"&gt;  25:&lt;/span&gt;         },        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum26"&gt;  26:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;public&lt;/span&gt;:{            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum27"&gt;  27:&lt;/span&gt;             publicMethod:&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {                &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum28"&gt;  28:&lt;/span&gt;                 &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff"&gt;true&lt;/span&gt;;            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum29"&gt;  29:&lt;/span&gt;             },            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum30"&gt;  30:&lt;/span&gt;             myVar:&lt;span style="color: #006080"&gt;"this is a test"&lt;/span&gt;,            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum31"&gt;  31:&lt;/span&gt;             dispose:&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {            &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum32"&gt;  32:&lt;/span&gt;             }        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum33"&gt;  33:&lt;/span&gt;         },        &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum34"&gt;  34:&lt;/span&gt;         implements:[&lt;span style="color: #006080"&gt;"Sys.IDisposable"&lt;/span&gt;]    &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum35"&gt;  35:&lt;/span&gt;     }&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum36"&gt;  36:&lt;/span&gt; });&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Two classes are defined here.. the first one is the testClass. you will see that I’m creating a JSON object that has members called “&lt;em&gt;ctor&lt;/em&gt;” (constructor), “&lt;em&gt;private&lt;/em&gt;” (private members are contained within this object), “&lt;em&gt;public&lt;/em&gt;” (public members are contained within this object),”&lt;em&gt;static&lt;/em&gt;” (static public members are contained within this object), and “&lt;em&gt;implements&lt;/em&gt;” (“array of interfaces that are implemented). I also will handle single inheritance using a member called “&lt;em&gt;inherits&lt;/em&gt;.” &lt;/p&gt;

&lt;p&gt;I think this makes class definition a little more straightforward for those of us who aren’t closure gurus, and it just might replace the pull of Script# on my life.&lt;/p&gt;

&lt;p&gt;Right now this all works with a simple function that uses the MS Ajax Client framework. I’m considering doing this for other frameworks (so if you love some other framework, never fear I’m considering your framework as well).&lt;/p&gt;

&lt;p&gt;I created a codeplex project which contains a single release that contains a simple ASP.NET project (could have been a simple html page too).. Don’t fret I expect the code to be a ton cleaner in the next version (I’m reading the MEAP version of John Resig’s &lt;a href="http://www.manning.com/resig/"&gt;Secrets of the JavaScript Ninja&lt;/a&gt; (and am learning a ton!)&lt;/p&gt;

&lt;p&gt;Here’s the link: &lt;a href="http://JsClassDef.codeplex.com"&gt;JsClassDef Project&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let me know what you think.. does it stink? is it cool? I know it ain’t Resig-like, but both Kevin and I think the simplified structure is nice and not un-JavaScript-like&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2808.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=0yyC91kXVPU:3JUf2--lxtQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=0yyC91kXVPU:3JUf2--lxtQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=0yyC91kXVPU:3JUf2--lxtQ:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=0yyC91kXVPU:3JUf2--lxtQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=0yyC91kXVPU:3JUf2--lxtQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=0yyC91kXVPU:3JUf2--lxtQ:G79ilh31hkQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=G79ilh31hkQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=0yyC91kXVPU:3JUf2--lxtQ:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/06/24/better-javascript-class-generation.aspx</guid>
            <pubDate>Wed, 24 Jun 2009 21:15:32 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2808.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/06/24/better-javascript-class-generation.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2808.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/06/24/better-javascript-class-generation.aspx</feedburner:origLink></item>
        <item>
            <title>Using the Ajax control toolbox with jQuery (and ASP.NET MVC)</title>
            <category>ASP.Net</category>
            <category>ClientScript</category>
            <category>JavaScript</category>
            <category>MS Ajax</category>
            <category>MS Ajax Extensions</category>
            <category>MVC</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/Cy7spigG4B8/using-the-ajax-control-toolbox-with-asp.net-mvc-and-jquery.aspx</link>
            <description>&lt;p&gt;[Here’s a preview of something I’m going to show Thursday night at the Tampa MVC group.]&lt;/p&gt;  &lt;p&gt;You may have thought that by jumping on ASP.NET MVC that you have to leave behind all the cool Ajax Control Toolbox controls.. or more than likely you realize that it’s possible to use them, but one has to be a “JavaScript Rocket Scientist” to use them..&lt;/p&gt;  &lt;p&gt;It’s really not, but you do need a couple things to use them.. First of all go &lt;a href="http://weblogs.asp.net/bleroy/archive/2009/05/04/creating-jquery-plug-ins-from-microsoftajax-components.aspx"&gt;&lt;strong&gt;here (Bertrand Le Roy’s blog)&lt;/strong&gt;&lt;/a&gt; and pick up the jQuery plugin that let’s you instantiate MS Ajax Behaviors. Next go &lt;strong&gt;&lt;a href="http://ajaxcontroltoolkit.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=27326"&gt;here to the Ajax Control Toolbox project and get both the ScriptFilesOnly project and the Source code&lt;/a&gt;&lt;/strong&gt; as with MVC you won’t need anything but the JS files since the source/DLLs are for WebForms-related controls, but the Source code contains the debug version of the JS files which we’ll need (By the way, 6 months from now that link to the Ajax Control Toolbox will be old so you’ll probably want to get the latest release, and not the release I pointed at).&lt;/p&gt;  &lt;p&gt;Now let’s look at how you would wire up the DropShadow behavior (aka the DropShadow Extender). First of all, we need to figure out the references. Thanks to Visual Studio 2008, this is easy. Using the text editor/view of your choice, open up the DropShadowBehavior.Debug.js from the Source project (not the ScriptOnly zip); this is located under the zip file at .\AjaxControlToolkitSource\AjaxControlToolkit\DropShadow. When you open up the file you will see the following at the top of the file:&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="border-bottom: silver 1px solid; text-align: left; border-left: silver 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: 'Courier New', courier, monospace; direction: ltr; max-height: 200px; font-size: 8pt; overflow: auto; border-top: silver 1px solid; cursor: text; border-right: silver 1px solid; padding-top: 4px" id="codeSnippetWrapper"&gt;   &lt;div style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;     &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum1"&gt;   1:&lt;/span&gt; &lt;span style="color: #008000"&gt;/// &amp;lt;reference name="MicrosoftAjax.debug.js" /&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum2"&gt;   2:&lt;/span&gt; &lt;span style="color: #008000"&gt;/// &amp;lt;reference name="MicrosoftAjaxTimer.debug.js" /&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum3"&gt;   3:&lt;/span&gt; &lt;span style="color: #008000"&gt;/// &amp;lt;reference name="MicrosoftAjaxWebForms.debug.js" /&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum4"&gt;   4:&lt;/span&gt; &lt;span style="color: #008000"&gt;/// &amp;lt;reference path="../ExtenderBase/BaseScripts.js" /&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum5"&gt;   5:&lt;/span&gt; &lt;span style="color: #008000"&gt;/// &amp;lt;reference path="../Common/Common.js" /&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum6"&gt;   6:&lt;/span&gt; &lt;span style="color: #008000"&gt;/// &amp;lt;reference path="../RoundedCorners/RoundedCornersBehavior.js" /&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum7"&gt;   7:&lt;/span&gt; /// &amp;lt;reference path=&lt;span style="color: #006080"&gt;"../Compat/Timer/Timer.js"&lt;/span&gt; /&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;The first 3 items are all the standard MS Ajax client library, so we’ll need to reference those. Now we need to look at the last 4 items. If you open up the files from the ScriptOnly zip file, you aren’t going to find these exact named files; to find the right file look at the end of the file name to find the actual file you need to reference. You’ll also need to reference jQuery and Bertrand Le Roy plugins. Here’s what the references look like:&lt;/p&gt;

&lt;div style="border-bottom: silver 1px solid; text-align: left; border-left: silver 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: 'Courier New', courier, monospace; direction: ltr; max-height: 200px; font-size: 8pt; overflow: auto; border-top: silver 1px solid; cursor: text; border-right: silver 1px solid; padding-top: 4px" id="codeSnippetWrapper"&gt;
  &lt;div style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;
    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum1"&gt;   1:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/MicrosoftAjax.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum2"&gt;   2:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/jquery-1.3.2.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum3"&gt;   3:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/JqueryPlugin/jquery.MicrosoftAjax.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum4"&gt;   4:&lt;/span&gt;  &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum5"&gt;   5:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/MicrosoftAjaxTimer.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;    &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum6"&gt;   6:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/MicrosoftAjaxWebForms.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;    &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum7"&gt;   7:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/AjaxCT/AjaxControlToolkit.ExtenderBase.BaseScripts.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum8"&gt;   8:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/AjaxCT/AjaxControlToolkit.Common.Common.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum9"&gt;   9:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/AjaxCT/AjaxControlToolkit.RoundedCorners.RoundedCornersBehavior.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum10"&gt;  10:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/AjaxCT/AjaxControlToolkit.Compat.Timer.Timer.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum11"&gt;  11:&lt;/span&gt; &amp;lt;script src=&lt;span style="color: #006080"&gt;"Scripts/AjaxCT/AjaxControlToolkit.DropShadow.DropShadowBehavior.js"&lt;/span&gt; type=&lt;span style="color: #006080"&gt;"text/javascript"&lt;/span&gt;&amp;gt;&amp;lt;/script&amp;gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Here’s how we can then make every div with a “box” class to have a drop shadow:&lt;/p&gt;

&lt;div style="border-bottom: silver 1px solid; text-align: left; border-left: silver 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 97.5%; padding-right: 4px; font-family: 'Courier New', courier, monospace; direction: ltr; max-height: 200px; font-size: 8pt; overflow: auto; border-top: silver 1px solid; cursor: text; border-right: silver 1px solid; padding-top: 4px" id="codeSnippetWrapper"&gt;
  &lt;div style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px" id="codeSnippet"&gt;
    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum1"&gt;   1:&lt;/span&gt; $().ready(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum2"&gt;   2:&lt;/span&gt;     $(&lt;span style="color: #006080"&gt;".box"&lt;/span&gt;).create(AjaxControlToolkit.DropShadowBehavior,&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum3"&gt;   3:&lt;/span&gt;             { &lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum4"&gt;   4:&lt;/span&gt;                 Opacity: 0.3,&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum5"&gt;   5:&lt;/span&gt;                 Rounded: &lt;span style="color: #0000ff"&gt;false&lt;/span&gt;,&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum6"&gt;   6:&lt;/span&gt;                 TrackPosition: &lt;span style="color: #0000ff"&gt;true&lt;/span&gt;,&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum7"&gt;   7:&lt;/span&gt;                 Width: 5&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum8"&gt;   8:&lt;/span&gt;             });&lt;/pre&gt;
&lt;!--CRLF--&gt;

    &lt;pre style="border-bottom-style: none; text-align: left; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: 'Courier New', courier, monospace; direction: ltr; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060" id="lnum9"&gt;   9:&lt;/span&gt; });&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;See that JSON string (lines 3-8). If you look at those settings closely and compare them to the Ajax Control Toolbox documentation web site, you’ll see that these are the same settings that the extender uses which should make everything easy.&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2806.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=Cy7spigG4B8:1LwyIa2jqwA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=Cy7spigG4B8:1LwyIa2jqwA:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=Cy7spigG4B8:1LwyIa2jqwA:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=Cy7spigG4B8:1LwyIa2jqwA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=Cy7spigG4B8:1LwyIa2jqwA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=Cy7spigG4B8:1LwyIa2jqwA:G79ilh31hkQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=G79ilh31hkQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=Cy7spigG4B8:1LwyIa2jqwA:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/06/09/using-the-ajax-control-toolbox-with-asp.net-mvc-and-jquery.aspx</guid>
            <pubDate>Wed, 10 Jun 2009 02:19:30 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2806.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/06/09/using-the-ajax-control-toolbox-with-asp.net-mvc-and-jquery.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2806.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/06/09/using-the-ajax-control-toolbox-with-asp.net-mvc-and-jquery.aspx</feedburner:origLink></item>
        <item>
            <title>Tampa ux&amp;hellip; Meeting tomorrow night (Wed. June 10th, 2009).. 7:30pm</title>
            <category>TUX</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/WjnAoBl_Osw/tampa-uxhellip-meeting-tomorrow-night-wed.-june-10th-2009.-730pm.aspx</link>
            <description>&lt;p&gt;We are meeting at Buffalo Wild Wings across the street from our normal location tomorrow night. If you have had any complaints or suggestions about how we run Tampa UX, you need to be there. It’s an important meeting. We have some ideas that we want to run by you guys and see what you guys think.. We can’t do this without you!&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2805.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=WjnAoBl_Osw:0vk9VrNr0w0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=WjnAoBl_Osw:0vk9VrNr0w0:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=WjnAoBl_Osw:0vk9VrNr0w0:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=WjnAoBl_Osw:0vk9VrNr0w0:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=WjnAoBl_Osw:0vk9VrNr0w0:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=WjnAoBl_Osw:0vk9VrNr0w0:G79ilh31hkQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=G79ilh31hkQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=WjnAoBl_Osw:0vk9VrNr0w0:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/06/09/tampa-uxhellip-meeting-tomorrow-night-wed.-june-10th-2009.-730pm.aspx</guid>
            <pubDate>Tue, 09 Jun 2009 13:20:10 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2805.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/06/09/tampa-uxhellip-meeting-tomorrow-night-wed.-june-10th-2009.-730pm.aspx#feedback</comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2805.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/06/09/tampa-uxhellip-meeting-tomorrow-night-wed.-june-10th-2009.-730pm.aspx</feedburner:origLink></item>
        <item>
            <title>clientscript as the view controller</title>
            <category>Architecture</category>
            <category>ClientScript</category>
            <category>Dev Philosophy</category>
            <category>JavaScript</category>
            <category>MVC</category>
            <category>User Group</category>
            <category>Weird Ideas</category>
            <category>TUX</category>
            <category>Technology</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/26Bxc16AElU/clientscript-as-the-view-controller.aspx</link>
            <description>&lt;p&gt;I’m finalizing my demos for next week’s talk at the &lt;a href="http://www.tampadev.org/"&gt;Tampa ASP.NET MVC user group&lt;/a&gt;. I’m also in the midst of a deploy to our test servers of among other things a page that is an experimental architecture for me and my team. I was talking with my boss (Perry for those of you who attend Tampa UX). He had to do a little touch up on my quickly thrown together UI. He told me after playing with it that he really liked how it performs and even how it works. He thinks it’s a pretty good UX.&lt;/p&gt;  &lt;p&gt;It’s actually very similar to DT Mini Mint (the app I’ll show at &lt;a href="http://www.tampadev.org/"&gt;Tampa ASP.NET MVC user group&lt;/a&gt; next week). &lt;/p&gt;  &lt;p&gt;The idea behind it is that the initial page is pushed out by the server and then additional data is retrieved on the fly via services (or JSON views in MVC) using JavaScript; additional functions like updates, deletes, adds, and more complex operations use the same mechanism.. so the page never refreshes once it has been rendered the first time (no, I’m not using any kind of partial view in any of my examples.. not that I couldn’t, but I don’t have that much to render in either app). &lt;/p&gt;  &lt;p&gt;I jokingly referred to “Jay’s Dream Architecture” on Twitter, but was never really able to fully quantify what I was talking about. I likened it to MVC where the model was the service, and the controller was the JavaScript code..&lt;/p&gt;  &lt;p&gt;After &lt;a href="http://devlicious.com/blogs/christopher_bennage/default.aspx"&gt;Christopher Bennage&lt;/a&gt; came to Tampa UX last month, we came up with a term (that I’m sure already existed): JavaScript View Controller (or JC). I loved annoying Christopher by saying I was going to attribute the MVCJC pattern to him (it seems he really loves the over use of letters in Pattern names &amp;lt;smile /&amp;gt;). So remember he came up with the name for this pattern…&lt;/p&gt;  &lt;p&gt;I’m finding more and more that I am building key pages (not all pages) that have everything they need to get started but then user interactions that would normally cause a Postback or a Ajax Postback (for an UpdatePanel), etc. I’m replacing with a client-side Ajax call to a service (for WebForms) or a client-side Ajax call to a controller action (for ASP.NET MVC). The end result is a fairly responsive UI that gives me options.&lt;/p&gt;  &lt;p&gt;Back to my discussion with my boss today.. One of the things we realized is that side effect of this is there is an occasion where I have in memory the all the data in memory for render a client side paged grid (we’re talking at most 1000 rows of data… more like no more than 700 rows.. probably much smaller than that). We realized with this architecture and the rows in memory we could easily let the user filter the results client-side via textbox that updates the grid after filtering by the value in the test box.. without any hops back to the server)..&lt;/p&gt;  &lt;p&gt;A similar thing for my ASP.NET MVC talk in 2 weeks is that I’m going to be replacing a standard select with an autocomplete text box that uses the original select’s options array as the source for the autocomplete suggestions text (you’ll be able to type something new and that new item will be dynamically added to the DB on save). The idea is that the client browser has pieces of data already and doesn’t need to retrieve it. There are also Jquery cache plugins that can help with this (something I won’t be showing)..&lt;/p&gt;  &lt;p&gt;Bottom line is that the client is a for real place where we can write code and make the user’s experience better (I know I’ve not been one to totally go gaga in this arena in the past, but I’m starting to warm to it.. I think Jquery is the big reason why, too.. it’s very mature and really makes it easy to write complex interactions without writing tons of code..)&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2803.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=26Bxc16AElU:mdPmfzm1C6c:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=26Bxc16AElU:mdPmfzm1C6c:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=26Bxc16AElU:mdPmfzm1C6c:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=26Bxc16AElU:mdPmfzm1C6c:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=26Bxc16AElU:mdPmfzm1C6c:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=26Bxc16AElU:mdPmfzm1C6c:G79ilh31hkQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=G79ilh31hkQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=26Bxc16AElU:mdPmfzm1C6c:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/06/01/clientscript-as-the-view-controller.aspx</guid>
            <pubDate>Mon, 01 Jun 2009 18:34:29 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2803.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/06/01/clientscript-as-the-view-controller.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2803.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/06/01/clientscript-as-the-view-controller.aspx</feedburner:origLink></item>
        <item>
            <title>TUX: Wednesday May 13th, 2009 with Christopher Bennage</title>
            <category>TUX</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/Nbk9BRCmvQs/tux-wednesday-may-12th-2009-with-christopher-bennage.aspx</link>
            <description>&lt;p&gt;Just a quick reminder that at Tampa UX tomorrow night we’ll have Christopher Bennage presenting. Shawn Cady will also be continuing his What is UX series. Doors open at 6:30pm with the speaking starting at 7pm.&lt;/p&gt;  &lt;p&gt;Check out the &lt;a href="http://www.tampaux.org/meetings.html"&gt;web site for more detail&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2793.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=Nbk9BRCmvQs:BQFWm5cdSJo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=Nbk9BRCmvQs:BQFWm5cdSJo:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=Nbk9BRCmvQs:BQFWm5cdSJo:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=Nbk9BRCmvQs:BQFWm5cdSJo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=Nbk9BRCmvQs:BQFWm5cdSJo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=Nbk9BRCmvQs:BQFWm5cdSJo:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/05/12/tux-wednesday-may-12th-2009-with-christopher-bennage.aspx</guid>
            <pubDate>Tue, 12 May 2009 13:50:03 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2793.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/05/12/tux-wednesday-may-12th-2009-with-christopher-bennage.aspx#feedback</comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2793.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/05/12/tux-wednesday-may-12th-2009-with-christopher-bennage.aspx</feedburner:origLink></item>
        <item>
            <title>.NET’s Most Influential People in 2009</title>
            <category>.NET</category>
            <category>opinion</category>
            <category>Technology</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/D6CcMF5ZP8c/dotnets-most-influential-people-in-2009.aspx</link>
            <description>&lt;p&gt;[5/7/09 Small update to add a requested link]&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;My family subscribes to Time Magazine ©. This past week we received their annual 100  “The World’s Top Influential People” issue. One of the things I like is that there are always people in these lists that you never heard of. Some are kind of lame in my opinions and then there are those exceptions who you look at the article and say “cool!” The on thing I noticed was there weren’t any developers on the list…&lt;/p&gt;
&lt;p&gt;I have been thinking about who I would throw in a list of DotNet influentials. Now the catch is that I’m avoiding any of the very visible MS employees. So in other words no Phill Haack (he’d be on my big list though), no ScottGu, no Scott Hanselman, no Nikhil Kothari (although that one hurts), and no Brad Abrams… I’m also not putting folks like Jesse Liberty or Tim Heuer (again very painful… I met Jesse and he would definitely be in my top tier list..) Ok, so you get the picture.. .NET Influentials that aren’t known for the their MS contributions.. &lt;/p&gt;
&lt;p&gt;Here’s my 5 (I’m trying to pick less common guys for my list)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1) Miguel de Icaza &lt;/strong&gt;&lt;br /&gt;
If you know who ScottGu is and you don’t know Miguel then shame on you! Seriously! Miguel is the guy who heads the mono project at Novell (that would be .NET on Linux, Mac, Sun Solaris, etc…) He’s more than important and wicked smart. I sat next to him at Mix and I swear my IQ jumps 5 points just from being near him (and keeping my mouth shut).. &amp;lt;grin /&amp;gt; Again, seriously very smart guy who does stuff that validates your choices as a VB/C# developers. (I suspect that Miguel might have been a bit obvious, but I can’t not mention him.. too important.. if you see him at a conference you should know who he is on sight… and I know that is not something that is not always true)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2) Bill Reiss, Chris Bennage, and Rob Eisenberg &lt;/strong&gt;&lt;br /&gt;
If you want Silverlight to succeed as a platform then IMO the next installation point is games.. I installed WIndows XP on my son’s (crappy) PC because he wanted to play games and SL doesn’t run on Windows 98 (his old OS).. People install runtimes to play games.. Bill, Chris, and Rob set up a web site for Silverlight Games (&lt;a href="http://www.silverlightarcade.com"&gt;silverlightarcade.com&lt;/a&gt;).. Bill is also the lead developer behind &lt;a href="http://silversprite.codeplex.com/"&gt;SilverSprite&lt;/a&gt; an XNA to Silverlight compatibility library for 2d XNA games.. (Rob and Chris are members of the team).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3) John Resig – JQuery Lead and JavaScript Guru&lt;/strong&gt;&lt;br /&gt;
You may think this is a bit of a cheat, since John isn’t a .NET developer, but trust me his contribution to Ajax/Web 2.0 is HUGE. If you code in this space I really don’t need to say much more than this. JQuery is a deceptively simple solution to the problem of developing fancy ClientScript solutions. It is LINQ for JavaScript/DOM Scripting.. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4) Rob Conery – the SubSonic guy&lt;/strong&gt;&lt;br /&gt;
Ok, I know Rob is a bit of a cheat, but I’m not really interested in his ASP.NET MVC Contributions. I’ve recently reconnected with the SubSonic3 project. And let me tell you, it’s going to be huge. I think it’s better than both Entity Framework and Linq To SQL.. RIGHT NOW. All those years at CodeBetter.com I heard the ALT.NET guys talking about using the Repository pattern and I thought dang another layer… what’s wrong with these guys.. they overcomplicate everything (being transparent here…) So SubSonic has that pattern basically built in, and IT ROCKS! I love it.. I get it.. SubSonic was the project that converted me to ORM (I am a classic Stored Proc lover), and now to the repository pattern. Those wanted to improve the general quality of software should look at Rob’s example.. he’s projects make it easy to do.. AND then there’s his ASP/NET MVC contributions (did you hear Hanselman in his Nerd Dinner takl at MIX09 refer to the repository as a “Rob Conery Repository.” Rob’s the guy who built the html helper (whether you like or hate them).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5) Daniel Cazzulino – Moq and T4 Editor&lt;/strong&gt;&lt;br /&gt;
Ok, I’m not entirely sure of Daniel’s involvement on the last one. I know he is huge in the Moq space. I know that Moq is my mocking library of choice (although I have that license of TypeMock I need to play with some more… and, yes, I do test and I do mock/double/isolate/etc.) Daniel always seems to have his head around something new (several years ago I saw him demo a project that he wrote while XML was alive that did XML Schema Validation… he’s definitely a mover and a shaker)..&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Honorable mentions&lt;/strong&gt;&lt;br /&gt;
I had trouble picking that last one.. Here’s the list of others that I thought about for that last spot.. Rory Becker (&lt;a href="javascript:void(0);/*1241701865956*/"&gt;DxCore Community Plugins&lt;/a&gt; project.. I use CodeRush, so his work greatly affects me), Chad Myers (mainly for his work in the ALT.NET space and his ability to hold back his own zeal and be a really reasonable/truly evangelistic voice… he’s also involved with the BUFU MVC project), Billy Hollis (‘cause we like Billy around here at the runtime… ), Dave Hayden (of CodeBetter and numerous other fames), and Sean Chambers (whose blog and projects really do a good job of helping the recreational agilist).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The obvious ones not mentioned&lt;/strong&gt;&lt;br /&gt;
There are a couple obvious names that didn’t get mentioned mainly because I don’t use their projects or just because the individual aren’t any less known than the MS guys I mentioned at the top of the article. Names like Ayende, Roy Osherove, Karl Franklin, Richard Campbell, Dino Esposito, Juval Loewy, and Rocky Lhotka just to name a few..&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Did I miss anyone?&lt;/strong&gt;&lt;br /&gt;
This was my list. you got your own you want to contribute.. Fire up your blog software and create a reply to this post on your blog.. we’ll compile a big list later on.. make sure there is a link back… if we get enough responses I’ll create a new post with links back to everyone’s blog (if someone with more readers than me posts then we’ll post the follow up on their blog)&lt;/p&gt;
&lt;p&gt;So who do you think are the top 5 .NET Influencers for you, personally..&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2792.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=D6CcMF5ZP8c:V8fJzGwduII:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=D6CcMF5ZP8c:V8fJzGwduII:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=D6CcMF5ZP8c:V8fJzGwduII:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=D6CcMF5ZP8c:V8fJzGwduII:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=D6CcMF5ZP8c:V8fJzGwduII:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=D6CcMF5ZP8c:V8fJzGwduII:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/05/06/dotnets-most-influential-people-in-2009.aspx</guid>
            <pubDate>Wed, 06 May 2009 18:09:22 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2792.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/05/06/dotnets-most-influential-people-in-2009.aspx#feedback</comments>
            <slash:comments>9</slash:comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2792.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/05/06/dotnets-most-influential-people-in-2009.aspx</feedburner:origLink></item>
        <item>
            <title>The two ways one writes JavaScript code..</title>
            <category>AJAX</category>
            <category>ASP.Net</category>
            <category>JavaScript</category>
            <category>Technology</category>
            <category>ClientScript</category>
            <link>http://feedproxy.google.com/~r/JayKimble/~3/DNxiC-i7pJ0/the-two-ways-one-writes-javascript-code.aspx</link>
            <description>&lt;p&gt;I think sometimes in the past I have been guilty in my presentation on JavaScript (JS) of not defining for myself who my audience is. Actually I know that I’ve done a poor job of this. You see there are 2 ways to write JavaScript code. Something that I knew, but recently realized the importance of.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;OO Baby&lt;/strong&gt;    &lt;br /&gt;If you are building your own controls then you are all about building things in an OO manner because it helps you in the areas on manageability. You may or may not be testing your components with automated/unit test tools and quality is everything.. as well as browser compatibility. When doing this one of the major struggles in your world will probably be in the area of memory leaks (I’ve joined the coalition to kill IE6). &lt;/p&gt;  &lt;p&gt;To be honest this is probably not you, but if you’ve come to one of my deep JS talks… this is my target (and my cardinal sin… sorry)&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;The way you probably use JS&lt;/strong&gt;    &lt;br /&gt;Ok, the most common use of JS and the way that I think most people use it is to do minimal coding to wire up some validation or to wire up some interaction or even to include some Web 2.0 control (aka “Ajax Control”). Your mantra is “I want to get in and out quickly so that I don’t have to touch JS more than I need to…" We usually don’t take the time to test this stuff because it feels more declarative and that seems trustworthy (although you could test it)&lt;/p&gt;  &lt;p&gt;This is exactly why jQuery is so popular. Not only does encourage this type of thinking (and even embraces it), but the re-usable plugins take on this same sort of thinking (the show/hide methods come to mind). That and the sheer fluency of the library makes it easy to use. The selectors are really a variation of the same selectors that CSS uses so you are re-using knowledge that should already be in your head as a web-developer/designer.. &lt;/p&gt;  &lt;p&gt;Anyway, while JS OO is cool.. most of us work the other way (and even those of us who use JS OO do most of our JS coding using the latter method)&lt;/p&gt;&lt;img src="http://theruntime.com/blogs/jaykimble/aggbug/2784.aspx" width="1" height="1" /&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=DNxiC-i7pJ0:yuywo1OUnjI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=DNxiC-i7pJ0:yuywo1OUnjI:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=DNxiC-i7pJ0:yuywo1OUnjI:F7zBnMyn0Lo" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=DNxiC-i7pJ0:yuywo1OUnjI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?i=DNxiC-i7pJ0:yuywo1OUnjI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/JayKimble?a=DNxiC-i7pJ0:yuywo1OUnjI:cGdyc7Q-1BI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/JayKimble?d=cGdyc7Q-1BI" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</description>
            <dc:creator>Jay Kimble</dc:creator>
            <guid isPermaLink="false">http://theruntime.com/blogs/jaykimble/archive/2009/04/21/the-two-ways-one-writes-javascript-code.aspx</guid>
            <pubDate>Tue, 21 Apr 2009 15:44:54 GMT</pubDate>
            <wfw:comment>http://theruntime.com/blogs/jaykimble/comments/2784.aspx</wfw:comment>
            <comments>http://theruntime.com/blogs/jaykimble/archive/2009/04/21/the-two-ways-one-writes-javascript-code.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://theruntime.com/blogs/jaykimble/comments/commentRss/2784.aspx</wfw:commentRss>
        <feedburner:origLink>http://theruntime.com/blogs/jaykimble/archive/2009/04/21/the-two-ways-one-writes-javascript-code.aspx</feedburner:origLink></item>
    </channel>
</rss>
