<?xml version="1.0" encoding="utf-8"?>
			
			<rss version="2.0" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://web.resource.org/cc/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd">

			<channel>
			<title>Cutter&apos;s Crossing - JQuery</title>
			<link>http://blog.cutterscrossing.com/index.cfm</link>
			<description>ColdFusion Development, Life, and Other Stuff</description>
			<language>en-us</language>
			<pubDate>Tue, 07 Sep 2010 18:15:37 -0400</pubDate>
			<lastBuildDate>Thu, 19 Feb 2009 08:53:00 -0400</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>web.admin@cutterscrossing.com</managingEditor>
			<webMaster>web.admin@cutterscrossing.com</webMaster>
			<itunes:subtitle></itunes:subtitle>
			<itunes:summary></itunes:summary>
			<itunes:category text="Technology" />
			<itunes:category text="Technology">
				<itunes:category text="Podcasting" />
			</itunes:category>
			<itunes:category text="Technology">
				<itunes:category text="Tech News" />
			</itunes:category>
			<itunes:keywords></itunes:keywords>
			<itunes:author></itunes:author>
			<itunes:owner>
				<itunes:email>web.admin@cutterscrossing.com</itunes:email>
				<itunes:name></itunes:name>
			</itunes:owner>
			<itunes:image href="" />
			<image>
				<url></url>
				<title>Cutter&apos;s Crossing</title>
				<link>http://blog.cutterscrossing.com/index.cfm</link>
			</image>
			<itunes:explicit>no</itunes:explicit>
			
			<item>
				<title>Development Ties</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2009/2/19/Development-Ties</link>
				<description>
				
				On the last day of CFUnited 2005, a group of us were out on the patio having a final drink together. I got into a conversation with &lt;a href=&quot;http://www.clarkvalberg.com&quot; target=&quot;_blank&quot;&gt;Clark Valberg&lt;/a&gt; about linguistics. I was a translator in latter half of my time in the military, and Clark was asking if I thought my experience with learning another language had helped me in learning to be a better developer?

I absolutely agreed. I have an aptitude for languages, and always have. It&apos;s something I&apos;ve picked up, and I can generally get to a point where I can effectively communicate (at least on the simplest of terms) within a very short time. Programming isn&apos;t much different, if you think about it. When I first got into computing again, after leaving the Army, I was teaching myself ten different programming languages at the same time. I had a lot of catching up to do, being out of the game for so long, so I picked up some books, found online resources, and took to the task of getting up to speed.

Maybe that&apos;s why there are so many talented developers outside the US. In the US, we aren&apos;t required to learn another language out of necessity, whereas in most other countries of the world (not all, but most) it is very commonplace for people to speak two or more languages.

You can kind of apply this in the reverse, to some degree, as well. Those who only learn one development platform may be limiting themselves. Knowing one programming language inside and out can be a good thing, but learning others can also open a developer to new ways of approaching a challenge. I&apos;ve known many developers who knew a server-side language (ColdFusion, ASP, PHP, whatever), but never bothered to learn JavaScript, or how to write well formed XHTML. To me, that&apos;s limiting. Even crippling.

What are your thoughts? 
				</description>
				
				<category>ColdFusion</category>				
				
				<category>Development</category>				
				
				<category>Who I Am</category>				
				
				<category>ColdFusion 8</category>				
				
				<category>ExtJS</category>				
				
				<category>My 2 cents</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Thu, 19 Feb 2009 08:53:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2009/2/19/Development-Ties</guid>
				
				
			</item>
			
			<item>
				<title>Upcoming Book: Learning ExtJS</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2008/11/11/Upcoming-Book-Learning-ExtJS</link>
				<description>
				
				&lt;a href=&quot;http://www.packtpub.com/learning-ext-js/book&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://blog.cutterscrossing.com/images//LearningExtJS.jpg&quot; style=&quot;float:left;margin:0 10px 10px 0;&quot;&gt;&lt;/a&gt;

I&apos;ve been rather quiet for quite a while now. I have a rather large side project I&apos;ve been working on, written entirely with an &lt;a href=&quot;http://www.extjs.com&quot; target=&quot;_blank&quot;&gt;ExtJS&lt;/a&gt; front-end and ColdFusion on the back-end. I&apos;m hoping to get that into a QA phase in the next week or two. I also just celebrated my 39&lt;sup&gt;th&lt;/sup&gt; birthday, my 8&lt;sup&gt;th&lt;/sup&gt; wedding anniversary, my daughter is the rock star of the 1&lt;sup&gt;st&lt;/sup&gt; grade (pulling straight A pluses in every category), and the holiday&apos;s are coming.

On top of everything else, I&apos;m putting the final touches on &lt;a href=&quot;http://www.packtpub.com/learning-ext-js/book&quot; target=&quot;_blank&quot;&gt;Learning Ext JS&lt;/a&gt;, to go to press at the end of the week/beginning of next, and due out in December. I&apos;ve stayed relatively quiet on this, as I wanted to wait until &lt;a href=&quot;http://www.packtpub.com&quot; target=&quot;_blank&quot;&gt;PackT&lt;/a&gt;, my publisher, officially released information on the book. Let me start by saying that a few years ago I never would have thought I&apos;d be doing this much client-side development again. And I definitely wouldn&apos;t have imagined me contributing to a book about client-side development.

I began looking at ExtJS quite a while back, while contemplating how to &quot;jazz up&quot; and modernize some dated interfaces I was supporting. I thought that ExtJS was an exceptionally well thought out library of rich, consistant components and functionality. While I use &lt;a href=&quot;http://www.jquery.com&quot; target=&quot;_blank&quot;&gt;JQuery&lt;/a&gt; almost exclusively for DOM queries and manipulation, I really didn&apos;t find enough consistency in the visual plugins at the time (this has improved with the latest round of the &lt;a href=&quot;http://ui.jquery.com&quot; target=&quot;_blank&quot;&gt;JQuery UI&lt;/a&gt; plugins). I began to learn of the real power of ExtJS, and became an even bigger fan when it was announced that &lt;a href=&quot;http://www.adobe.com&quot; target=&quot;_blank&quot;&gt;Adobe&lt;/a&gt; was including it in Scorpio, the codename for ColdFusion 8, Adobe&apos;s first implementation of the &lt;a href=&quot;http://www.adobe.com/products/coldfusion/&quot; target=&quot;_blank&quot;&gt;ColdFusion&lt;/a&gt; web application platform since it&apos;s acquisition with the Macromedia merger. Sweet! A total win-win for me.

Back in June, PackT contacted me. It seems they had started to develop a book, but the primary author, &lt;a href=&quot;http://www.vinylfox.com&quot; target=&quot;_blank&quot;&gt;Shea Frederick&lt;/a&gt;, had gotten bogged down in other commitments before being able to complete the project. Some Googling on their part led them to Colin Ramsay and myself, through Cutter&apos;s Crossing. So they contacted me to find out if I was interested. The timing on this was awful. I was just starting the previously mentioned side project, my daughter was on her very first summer vacation, and just a lot of things going on. But it was too good to pass up. Aside from the fame and glory (yeah, right!), I knew that there weren&apos;t any other books out there on ExtJS, and it would be an excellent book to get out there for all the people trying to learn this exciting library. After talking the pros and cons with &lt;a href=&quot;http://www.trajiklyhip.com&quot; target=&quot;_blank&quot;&gt;Aaron West&lt;/a&gt;, and getting sign off from my family, I finally contacted the Jedi himself, &lt;a href=&quot;http://www.coldfusionjedi.com&quot; target=&quot;_blank&quot;&gt;Ray Camden&lt;/a&gt;, to get some info on the writing process. We talked about time (a lot), commitment (more), and fame (maybe a little) and fortune (nearly none). I finally went ahead and said I would do it.

So, here it is almost six months later. I took on the final three chapters of the book: working with data stores (think like browser cached data table sets), extending Ext objects to build your own custom components, and the book wrap-up, which covers all the little stuff many people miss because they aren&apos;t typically visible. Only one chapter has any server-side code (the data stores). PackT originally wanted to convert my ColdFusion examples to PHP, to conform with the rest of the book. This morning the publisher told me that they want to keep my ColdFusion examples, to show that the ExtJS library can work with any server-side technology.

So, &lt;a href=&quot;http://www.packtpub.com/learning-ext-js/book&quot; target=&quot;_blank&quot;&gt;they&apos;re taking pre-order now,&lt;/a&gt; just in time for the holidays. Let me know what you think. 
				</description>
				
				<category>Learning ExtJS</category>				
				
				<category>My First ExtJS DataGrid</category>				
				
				<category>ColdFusion 8</category>				
				
				<category>ColdFusion</category>				
				
				<category>ExtJS</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Tue, 11 Nov 2008 17:16:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2008/11/11/Upcoming-Book-Learning-ExtJS</guid>
				
				
			</item>
			
			<item>
				<title>A Small Bug In AIR?</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2008/4/4/A-Small-Bug-In-AIR</link>
				<description>
				
				Well, maybe. One of my co-workers, Andy Matthews, has been working on a small app, integrating &lt;a href=&quot;http://opensource.adobe.com/wiki/display/blazeds/BlazeDS&quot; target=&quot;_blank&quot;&gt;BlazeDS&lt;/a&gt; with &lt;a href=&quot;http://www.adobe.com/products/coldfusion/?ogn=EN_US-gntray_prod_coldfusion_home&quot; target=&quot;_blank&quot;&gt;ColdFusion&lt;/a&gt; to push messages to an &lt;a href=&quot;http://www.adobe.com/devnet/air/ajax/&quot; target=&quot;_blank&quot;&gt;HTML/AJAX&lt;/a&gt; based &lt;a href=&quot;http://www.adobe.com/devnet/air/&quot; target=&quot;_blank&quot;&gt;AIR&lt;/a&gt; application. He and I spent several days configuring the server integration and piecing out the ins-and-outs of how the messaging works (big thanks to &lt;a href=&quot;http://www.infoaccelerator.net/&quot; target=&quot;_blank&quot;&gt;Andy Powell&lt;/a&gt; on this too). Andy (Matthews), coming from a design background, created this beautiful &lt;a href=&quot;http://weblogs.macromedia.com/cantrell/archives/2008/02/transparent_htm.html&quot; target=&quot;_blank&quot;&gt;chromeless HTML interface&lt;/a&gt;, with a little &lt;a href=&quot;http://www.jquery.com&quot; target=&quot;_blank&quot;&gt;JQuery&lt;/a&gt; magic thrown in to work with the bridge. That&apos;s where this possible bug reared it&apos;s ugly head.

The question is whether the bug is in AIR, or within the Flex/AJAX Bridge itself. Basically, if you&apos;ve defined your &lt;em&gt;transparency&lt;/em&gt; setting to &lt;em&gt;true&lt;/em&gt;, within your &lt;em&gt;App.xml&lt;/em&gt; file, then the &lt;em&gt;load()&lt;/em&gt; method of the bridge will not call the function reference.

Andy has submitted the bug to Adobe. He also dropped Christian Cantrell and Ben Forta (hey, it&apos;s who he knows...) the following email about the issue:

&lt;blockquote&gt;
Christian/Ben...

I believe that I&apos;ve discovered a bug in AIR and I&apos;m not sure who else to send this to. 

I&apos;ve been working on an HTML/JS based AIR application for my company using BlazeDS. I&apos;d finally gotten everything working in a test environment when I went to port the working code into my already working transparent, custom chrome AIR app. Then it stopped working.

After debugging, I found the reason, or at least part of it. It appears that an AIR app which uses the FDMSBridge.swf provided by Adobe WILL NOT work when the app has transparency.

In my sample app
-----------------
1) I opened my sample code (without transparency), and compiled it.
2) I pushed a message to the gateway and the message was successfully received in the app.
3) I then changed the transparency setting in the App.xml file from false to true and recompiled the app.
4) I pushed another message to the gateway and received nothing.

In the final app
---------------------------------------------
1) Transparency was already set to true, so I compiled the app
2) I pushed a message to the gateway, and received nothing.
3) I then changed transparency to false, recompiled the app
4) Pushed a message and successfully received it.

Further, when the app first loads, it correctly displays the alert window when transparency is set to false, but not when it&apos;s set to true.
------------------------
Here&apos;s a small code sample:
&lt;/blockquote&gt;

&lt;code&gt;
FDMSLibrary.load(&quot;FDMSBridge.swf&quot;, initBlazeDSCode);
 
function initBlazeDSCode() {
 alert(&apos;why me&apos;);
 var cs = new ChannelSet();
 cs.addChannel(new AMFChannel(&quot;cf-polling-amf&quot;,&quot;http://domainname.com/flex2gateway/cfamfpolling&quot;));
 consumer = new Consumer();
 consumer.setDestination(&quot;ColdFusionGateway&quot;);
 consumer.addEventListener(&quot;message&quot;, messageHandler);
 consumer.setChannelSet(cs);
 consumer.subscribe();
}
 
function messageHandler(e) {
 alert(&apos;got a message! I GOT A MESSAGE!&apos;);
}
&lt;/code&gt; 
				</description>
				
				<category>ColdFusion</category>				
				
				<category>ColdFusion 8</category>				
				
				<category>JQuery</category>				
				
				<category>Development</category>				
				
				<category>AIR</category>				
				
				<pubDate>Fri, 04 Apr 2008 11:23:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2008/4/4/A-Small-Bug-In-AIR</guid>
				
				
			</item>
			
			<item>
				<title>The Year In Review</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2008/1/1/The-Year-In-Review</link>
				<description>
				
				2007, The Year Of The Scorpio, was a fantastic year to be a ColdFusion developer. The release of &lt;a href=&quot;http://www.adobe.com/products/coldfusion/?ogn=EN_US-gntray_prod_coldfusion_home&quot; target=&quot;_blank&quot;&gt;ColdFusion 8&lt;/a&gt; marked a new age in web application development, with so many new features and enhancements that should see some truly outstanding next generation applications in the years to come. As a community, the CF crowd has really been flourishing, with new releases in several &lt;a href=&quot;http://cfframeworks.com/&quot; target=&quot;_blank&quot;&gt;major frameworks&lt;/a&gt;, the introduction of the &lt;a href=&quot;http://www.riaforge.org&quot; target=&quot;_blank&quot;&gt;RIAForge&lt;/a&gt; open source repository for &lt;a href=&quot;http://www.adobe.com&quot; target=&quot;_blank&quot;&gt;Adobe&lt;/a&gt; related technologies, widely publicized adjunct technologies like &lt;a href=&quot;http://labs.adobe.com/technologies/flex/&quot; target=&quot;_blank&quot;&gt;Flex 3&lt;/a&gt; and &lt;a href=&quot;http://labs.adobe.com/technologies/air/&quot; target=&quot;_blank&quot;&gt;AIR&lt;/a&gt; approaching final release (spawning a &lt;a href=&quot;http://www.webmaniacsconference.com&quot; target=&quot;_blank&quot;&gt;new conference&lt;/a&gt; in 2008, showcasing all three technologies together), and the premier of our own developer&apos;s social networking site, &lt;a href=&quot;http://www.coldfusioncommunity.org&quot; target=&quot;_blank&quot;&gt;ColdFusion Community&lt;/a&gt;. We saw the loss of the CFDJ albatross, while the &lt;a href=&quot;http://www.fusionauthority.com/quarterly/&quot; target=&quot;_blank&quot;&gt;Fusion Authority Quarterly&lt;/a&gt;, introduced at &lt;a href=&quot;http://www.cfunited.com&quot; target=&quot;_blank&quot;&gt;CFUnited 2006&lt;/a&gt;, has truly come out as an excellent ColdFusion developer&apos;s resource. And we can&apos;t forget our very own, ColdFusion specific, blog aggregator, &lt;a href=&quot;http://www.coldfusionbloggers.org&quot; target=&quot;_blank&quot;&gt;ColdFusion Bloggers&lt;/a&gt;, introducing us to so many other great developers willing to share their knowledge and experiences, like the creative, and very colorful, examples provided by &lt;a href=&quot;http://www.bennadel.com&quot; target=&quot;_blank&quot;&gt;Ben Nadel&lt;/a&gt;.

I&apos;ve always felt that a day without learning is a day that your dead from the neck up.I spent quite a bit of time this year learning new things, and sharing most. I&apos;ve been slowly picking up Flex, put a little research into AIR, adopted &lt;a href=&quot;http://blog.cutterscrossing.com/index.cfm/JQuery&quot; target=&quot;_blank&quot;&gt;JQuery&lt;/a&gt; heavily, run series of posts on developing on &lt;a href=&quot;http://blog.cutterscrossing.com/index.cfm/Apache&quot; target=&quot;_blank&quot;&gt;Apache&lt;/a&gt; and utilizing the outstanding components of the &lt;a href=&quot;http://blog.cutterscrossing.com/index.cfm/ExtJS&quot; target=&quot;_blank&quot;&gt;ExtJS&lt;/a&gt; library (the most trafficed posts on this blog). I tried to share some of the things I had learned about the new functionality of &lt;a href=&quot;http://blog.cutterscrossing.com/index.cfm/ColdFusion-8&quot; target=&quot;_blank&quot;&gt;ColdFusion 8&lt;/a&gt;, started posting some &lt;a href=&quot;http://blog.cutterscrossing.com/index.cfm/General-Coding-Guidelines&quot; target=&quot;_blank&quot;&gt;General Coding Guidelines&lt;/a&gt; I&apos;ve been writing for our company, and even got some first hand experience looking at the &lt;a href=&quot;http://blog.cutterscrossing.com/index.cfm?mode=entry&amp;entry=02AB38AF-3048-71C2-170F1CEC0892FFA8&quot; target=&quot;_blank&quot;&gt;Current ColdFusion Job Market&lt;/a&gt;.

I look forward to sharing more in the year to come. I always look for, and appreciate, all of the feedback you readers send my way. I think the future for ColdFusion is extremely bright, and I can&apos;t wait to see what 2008 holds for us all. 
				</description>
				
				<category>This Blog</category>				
				
				<category>Development</category>				
				
				<category>ColdFusion 8</category>				
				
				<category>ColdFusion</category>				
				
				<category>ExtJS</category>				
				
				<category>My 2 cents</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Tue, 01 Jan 2008 13:29:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2008/1/1/The-Year-In-Review</guid>
				
				
			</item>
			
			<item>
				<title>My First ExtJS DataGrid Pt 7: Custom Cell Renderers</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/8/22/My-First-ExtJS-DataGrid-Pt-7-Custom-Cell-Renderers</link>
				<description>
				
				So, it&apos;s been awhile. No, I haven&apos;t forgotten you, I&apos;ve just been busy with a lot of things. One of which has been implementing a new &lt;a href=&quot;http://www.extjs.com&quot; target=&quot;_blank&quot;&gt;ExtJS&lt;/a&gt; DataGrid in a project I&apos;m working on. Sure, there&apos;s a lot more going on, but that&apos;s becoming a nice front end piece. As previously promised, I want to look at a &lt;em&gt;renderer&lt;/em&gt;.  [More]
				</description>
				
				<category>My First ExtJS DataGrid</category>				
				
				<category>ExtJS</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Wed, 22 Aug 2007 09:07:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/8/22/My-First-ExtJS-DataGrid-Pt-7-Custom-Cell-Renderers</guid>
				
				
			</item>
			
			<item>
				<title>ExtJS Nested Tab Set with Demo</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/6/15/ExtJS-Nested-Tab-Set-with-Demo</link>
				<description>
				
				&lt;script src=&quot;http://blog.cutterscrossing.com/js/jquery/jquery-1.1.2.pack.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;http://blog.cutterscrossing.com/js/ext-1.0/ext.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;http://blog.cutterscrossing.com/js/custom/ExtJSTabsDemo.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;http://blog.cutterscrossing.com/resources/css/ext-1.0/tabs.css&quot; type=&quot;text/css&quot;&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;http://blog.cutterscrossing.com/resources/css/ext-1.0/tabs-example.css&quot; type=&quot;text/css&quot;&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;http://blog.cutterscrossing.com/resources/css/custom/ExtJSTabsDemo.css&quot; type=&quot;text/css&quot;&gt;
Ok, following up on my last entry, here is the same nested tab set done with the &lt;a href=&quot;http://www.extjs.com&quot; target=&quot;_blank&quot;&gt;ExtJS UI Library&lt;/a&gt;. I went the the &quot;Build Your Own&quot; section within &quot;Downloads&quot; and built a script for JQuery with the ExtJS Core and the TabPanel. I also downloaded the whole library so that I had all of the example scripts, css, and images. After this I included the following files in my document header (notice the pathing changes):  [More]
				</description>
				
				<category>ColdFusion</category>				
				
				<category>ExtJS</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Fri, 15 Jun 2007 18:22:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/6/15/ExtJS-Nested-Tab-Set-with-Demo</guid>
				
				
				<enclosure url="http://blog.cutterscrossing.com/enclosures/ExtJSTabsDemo.zip" length="41887" type="application/zip"/>
				
			</item>
			
			<item>
				<title>Updated JQuery Nested Tab Set  with Demo</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/6/15/Updated-JQuery-Nested-Tab-Set-with-Demo</link>
				<description>
				
				&lt;script src=&quot;http://blog.cutterscrossing.com/js/jquery/jquery-1.1.2.pack.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;http://blog.cutterscrossing.com/js/jquery/plugins/tabs/jquery.tabs.pack.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;http://blog.cutterscrossing.com/resources/css/tabs/jquery.tabs.css&quot; type=&quot;text/css&quot; media=&quot;print, projection, screen&quot;&gt;
&lt;!-- Additional IE/Win specific style sheet (Conditional Comments) --&gt;
&lt;!--[if lte IE 7]&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;http://blog.cutterscrossing.com/resources/css/tabs/jquery.tabs-ie.css&quot; type=&quot;text/css&quot; media=&quot;projection, screen&quot;&gt;
&lt;![endif]--&gt;
&lt;script src=&quot;http://blog.cutterscrossing.com/js/custom/jqTabsExample.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;http://blog.cutterscrossing.com/resources/css/custom/jqTabsExample.css&quot; type=&quot;text/css&quot;&gt;
Ok, there have been some changes, but I&apos;ll try to keep it easy, with an example, and there will be an included .zip file. First, you&apos;ll need the latest &lt;a href=&quot;http://www.jquery.com&quot; target=&quot;_blank&quot;&gt;JQuery&lt;/a&gt; build, as well as the latest version of the &lt;a href=&quot;http://www.stilbuero.de/jquery/tabs/&quot; target=&quot;_blank&quot;&gt;Tabs Plugin&lt;/a&gt;. Pay attention to the pathing I have created in my code snippets here.  [More]
				</description>
				
				<category>ColdFusion</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Fri, 15 Jun 2007 14:00:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/6/15/Updated-JQuery-Nested-Tab-Set-with-Demo</guid>
				
				
				<enclosure url="http://blog.cutterscrossing.com/enclosures/JQueryTabsDemo.zip" length="2759" type="application/zip"/>
				
			</item>
			
			<item>
				<title>The ColdFusion 8 AJAX Components Debate</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/6/5/The-ColdFusion-8-AJAX-Components-Debate</link>
				<description>
				
				A debate rages on across the ColdFusion development community about the inclusion, and use, of the AJAX driven components and accompanying tags that have been included in the Beta Release of &lt;a href=&quot;http://labs.adobe.com/technologies/coldfusion8/&quot; target=&quot;_blank&quot;&gt;ColdFusion 8&lt;/a&gt;. Many examples of their use and benefit have already been posted by the likes of &lt;a href=&quot;ray.camdenfamily.com&quot; target=&quot;_blank&quot;&gt;Ray Camden&lt;/a&gt;, &lt;a href=&quot;http://www.kinkysolutions.com&quot; target=&quot;_blank&quot;&gt;Ben Nadel&lt;/a&gt;, and &lt;a href=&quot;http://www.forta.com/blog&quot; target=&quot;_blank&quot;&gt;Ben Forta&lt;/a&gt;. No surprise there, as they all are huge proponents of the product, and, like so many of us, are very excited about the upcoming release of our favorite web programming platform.

But there are others still that think that the inclusion of these tags and components don&apos;t necessarily belong in the core language set of CFML. Many of these folks are also diehard JavaScripters, who took up writing AJAX early in it&apos;s infancy, fashioned their own components, or even contribute to open source libraries like &lt;a href=&quot;http://www.jquery.com&quot; target=&quot;_blank&quot;&gt;JQuery&lt;/a&gt;. They argue that maybe the tags should have been separate CFCs available through the &lt;a href=&quot;http://www.adobe.com/cfusion/exchange/&quot; target=&quot;_blank&quot;&gt;Adobe Developer&apos;s Exchange&lt;/a&gt;, or that the JavaScript rendered by the ColdFusion engine is too fat, taking up unnecessary bandwidth.

Can&apos;t we all just get along?  [More]
				</description>
				
				<category>ColdFusion</category>				
				
				<category>ColdFusion 8</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<category>Scorpio Tour</category>				
				
				<pubDate>Tue, 05 Jun 2007 23:51:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/6/5/The-ColdFusion-8-AJAX-Components-Debate</guid>
				
				
			</item>
			
			<item>
				<title>My First ExtJS DataGrid Pt 6: The Grid</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/5/26/My-First-ExtJS-DataGrid-Pt-6-The-Grid</link>
				<description>
				
				Alright, rolling right along. Last tutorial (see the bottom of this post for a complete listing) we covered the initial setup of our ColumnModel, which is telling our DataGrid what the basic layout of our grid columns will be and to which fields of our DataStore each column will be mapped to. Now it&apos;s time to actually instantiate our grid.

So, the first thing we have to do is create our Grid object and tell it which html element will be our grid within our page. Basically we&apos;ll tell the function the ID of the div element, what DataStore object to use, and which ColumnModel object to use.

&lt;code&gt;
// create the editor grid
var grid = new Ext.grid.Grid(&apos;topic-grid&apos;, {
    ds: ds,
    cm: cm
    });
&lt;/code&gt;

This is it in it&apos;s most basic form. We&apos;re going to stay away from any fancy stuff for now, and get to selection models and stuff in a later post. Let&apos;s add to it a little bit by stating that the grid may be resizable.

&lt;code&gt;
// make the grid resizable, do before render for better performance
var rz = new Ext.Resizable(&apos;topic-grid&apos;, {
	wrap:true,
	minHeight:100,
	pinned:true,
	handles: &apos;s&apos;
});
rz.on(&apos;resize&apos;, grid.autoSize, grid);
&lt;/code&gt;

That will make the grid resizable, and should be declared prior to rendering the grid. Rendering the grid is our next step, and way simple.

&lt;code&gt;
// render it
grid.render();
&lt;/code&gt;

Can&apos;t get much easier than that. Going back to the resizable for a second, don&apos;t ask, I don&apos;t know. Easiest one for me to figure on sight is the minHeight attribute, but I haven&apos;t reviewed the API enough to know what all is going on. If you figure it out before I do then leave a comment. Next we&apos;ll need to add the paging tool bar to the footer. We&apos;ll get the footer, then add the paging toolbar.

&lt;code&gt;
var gridFoot = grid.getView().getFooterPanel(true);

// add a paging toolbar to the grid&apos;s footer
var paging = new Ext.PagingToolbar(gridFoot, ds, {
    pageSize: 25,
    displayInfo: true,
    displayMsg: &apos;Displaying users {0} - {1} of {2}&apos;,
    emptyMsg: &quot;No users to display&quot;
});
&lt;/code&gt;

Notice the arguments of the PagingToolbar() function, the footer object, the DataStore object, and a JSON object with attributes of the pageSize (number of records), whether to display data set info, the message of the count, and a message to display should no records be returned.

The final step here is to load the DataStore. Once this is done you will have a complete, basic DataGrid for display.

&lt;code&gt;
// trigger the data store load
ds.load({params:{start: 0, limit: 25}});
&lt;/code&gt;

Notice here the &apos;params&apos;. These are name/value pairs that are passed, via post, whenever you request the next page of your data, with these values being your initial request (starting at row 0, returning 25 records). If you go back and look at your pagingService.cfm (included in the download) you&apos;ll see where these values are used.

So, that&apos;s the end of this post. You now have a basic DataGrid. In our next tutorial we&apos;ll start to style some things, and show you how to implement a custom &apos;renderer&apos; for a specific column&apos;s data. 
				</description>
				
				<category>My First ExtJS DataGrid</category>				
				
				<category>ColdFusion</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Sat, 26 May 2007 20:52:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/5/26/My-First-ExtJS-DataGrid-Pt-6-The-Grid</guid>
				
				
				<enclosure url="http://blog.cutterscrossing.com/enclosures/ExtJS_pt5.zip" length="5578" type="application/zip"/>
				
			</item>
			
			<item>
				<title>My First ExtJS DataGrid Pt 5: The ColumnModel</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/5/8/My-First-ExtJS-DataGrid-Pt-5-The-ColumnModel</link>
				<description>
				
				OK, we&apos;re winding down to the end of this tutorial, with only a few key components left. Today we cover the ColumnModel, which is how we manage the initial layout of our ExtJS DataGrid. We&apos;ve already covered initial setup, our paging query, and defined out DataStore (see related entry links at the bottom of the post).

First things first, let&apos;s instantiate the ColumnModel

&lt;code&gt;
var cm = new Ext.grid.ColumnModel([{
	// cm is our ColumnModel object

}]);
&lt;/code&gt;

Next we&apos;ll define the layout of the first column in our grid

&lt;code&gt;
var cm = new Ext.grid.ColumnModel([{
	id: &apos;fname&apos;,
	header: &quot;First Name&quot;,
	dataIndex: &apos;vcFirstName&apos;,
	width: 120
    }
}]);
&lt;/code&gt;

Alright, pretty basic stuff here. We&apos;ve placed an &lt;em&gt;&apos;id&apos;&lt;/em&gt; on this column. This allows you to later reference the column specifically for styling. We didn&apos;t really mark this one for a particular reason, we just did it to explain. Next we have the &lt;em&gt;&apos;header&apos;&lt;/em&gt;, which is the text that appears in your column header at the top of your DataGrid. This is then followed by the &lt;em&gt;&apos;dataIndex&apos;&lt;/em&gt; to define the data column it is mapped to within your DataStore. Lastly we have the &lt;em&gt;&apos;width&apos;&lt;/em&gt; attribute, which speaks for itself.

There are several other possible attributes that are available to you here, most of which are fairly easy to grab from the ExtJS API. We&apos;ll cover a few more in our next tutorial, but for now we&apos;ll just complete the layout of the ColumnModel.

&lt;code&gt;
var cm = new Ext.grid.ColumnModel([{
	id: &apos;fname&apos;,
	header: &quot;First Name&quot;,
	dataIndex: &apos;vcFirstName&apos;,
	width: 120
    },{
	header: &quot;Last Name&quot;,
	dataIndex: &apos;vcLastName&apos;,
	width: 120
	},{
	header: &quot;Is Admin&quot;,
	dataIndex: &apos;bIsAdministrator&apos;,
	width: 40
	},{
	header: &quot;Is Active&quot;,
	dataIndex: &apos;bIsActive&apos;,
	width: 40
	},{
	id: &apos;last&apos;,
	header: &quot;Last Login&quot;,
	dataIndex: &apos;tsDateLastLogin&apos;,
	width: 150
}]);
// by default columns are sortable

cm.defaultSortable = true;
&lt;/code&gt;

The order you work in will be reflected in your final initial layout. Each column definition is contained in curly braces, separated by commas. Each attribute is also comma delimited, with the attribute name being un-quoted, while their values are quoted if string values and not if numeric. Also notice the double quotes around the &lt;em&gt;&apos;header&apos;&lt;/em&gt; values, but the single quotes around the others. I don&apos;t know if this is intentional, and haven&apos;t really tested it, but this is the way it was in all of the example files so I thought it best to stick with the convention. The last thing we did here was set a directive on the ColumnModel to state the the columns will be sortable by default.

Alright, now you have defined your ColumnModel. A few steps left to go just yet, like the grid itself, custom renderers, styles, and other things to give it a little more cowbell. We&apos;ll begin wrapping those up in our next edition. For those coming to the Nashville CFUG Scorpio Tour presentation tomorrow night I hope you&apos;ll flag me down and say high. 
				</description>
				
				<category>My First ExtJS DataGrid</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Tue, 08 May 2007 22:32:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/5/8/My-First-ExtJS-DataGrid-Pt-5-The-ColumnModel</guid>
				
				
				<enclosure url="http://blog.cutterscrossing.com/enclosures/ExtJS_pt4.zip" length="4992" type="application/unknown"/>
				
			</item>
			
			<item>
				<title>My First ExtJS DataGrid Pt 3: A Paging Query</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/4/29/My-First-ExtJS-DataGrid-Pt-3-A-Paging-Query</link>
				<description>
				
				OK, we&apos;re cooking with crisco now. You&apos;ve probably taken a little time to look through the examples a little bit by now, and you&apos;ve seen a little of what the paging grid looks like and can do, along with the many other examples. Our last tutorial covered &lt;a href=&quot;&quot; target=&quot;_blank&quot;&gt;setting things up&lt;/a&gt;, but before we dive into the JavaScript we&apos;ll need some data.

Now, the paging example that&apos;s included with the Ext download calls an external PHP page to retrieve the necessary JSON dataset. JSON is great, being small and lightweight, but I&apos;m working with MS SQL at work, which can return XML data. Since the library has built in proxies for dealing with either, I change it up to take in the XML.

Each database has different ways of writing a &apos;paging&apos; query. MySQL makes it really easy by providing multiple arguments for the LIMIT statement. MS SQL makes it a little harder. See, the trick is to only pull in the records, on each db call, that you actually need. Some people pull the entire recordset and then use a query-of-query to poll their required data, but if you&apos;re dealing with very large datasets then it makes more sense to only pull what your need when the time comes. I found a great article on MSDN (which I can no longer find) that gives a good suggestion on how to approach this, by using multiple sub select statements. But, the first thing we&apos;ll do is define some default parameters for those that will eventually be passed in on the AJAX calls.

&lt;code&gt;
&lt;cfparam name=&quot;URL.start&quot; default=&quot;0&quot; /&gt;
&lt;cfparam name=&quot;FORM.start&quot; default=&quot;#URL.start#&quot; /&gt;
&lt;cfparam name=&quot;URL.limit&quot; default=&quot;25&quot; /&gt;
&lt;cfparam name=&quot;FORM.limit&quot; default=&quot;#URL.limit#&quot; /&gt;
&lt;cfparam name=&quot;URL.dir&quot; default=&quot;DESC&quot; /&gt;
&lt;cfparam name=&quot;FORM.dir&quot; default=&quot;#URL.dir#&quot;&gt;
&lt;cfparam name=&quot;URL.sort&quot; default=&quot;vcLastName&quot; /&gt;
&lt;cfparam name=&quot;FORM.sort&quot; default=&quot;#URL.sort#&quot; /&gt;
&lt;/code&gt;

First thing you probably noticed is that I have a FORM scoped variable that matches every URL scoped variable, defaulting the URL var first then defaulting the FORM var to the URL var&apos;s value. What this allows me to do is testing. I can call the page without any additional info and it will properly run, since I have defaulted all values, and I can tag on query string variables for initial output testing, or tap it directly from a form post. These variables are pretty basic: &apos;start&apos; is the starting record row, &apos;limit&apos; is the number of records to be returned, &apos;dir&apos; is the sort order, and &apos;sort&apos; is the column to sort on. After this we move to the query itself.

&lt;code&gt;
	SELECT	(SELECT COUNT(ID) AS recCount FROM tblUsers) AS recCount,
			ID,
			vcFirstName,
			vcLastName,
			bIsAdministrator,
			bIsActive,
			tsDateLastLogin
	FROM  ( SELECT TOP #FORM.limit# ID,
					vcFirstName,
					vcLastName,
					bIsAdministrator,
					bIsActive,
					tsDateLastLogin
			FROM   (SELECT TOP #FORM.start + FORM.limit# ID,
							vcFirstName,
							vcLastName,
							bIsAdministrator,
							bIsActive,
							tsDateLastLogin
	    			FROM (SELECT TOP #FORM.start + FORM.limit# ID,
								vcFirstName,
								vcLastName,
								bIsAdministrator,
								bIsActive,
								tsDateLastLogin
						FROM tblUsers AS T1
						WHERE tsDateLastLogin IS NOT NULL
	         			ORDER BY #FORM.sort# ) AS T2
	         		WHERE tsDateLastLogin IS NOT NULL
					ORDER BY #FORM.sort# DESC ) AS T3
			WHERE tsDateLastLogin IS NOT NULL) AS T4
	WHERE tsDateLastLogin IS NOT NULL
	ORDER BY #FORM.sort# #FORM.dir#
	FOR		XML AUTO, ELEMENTS
&lt;/code&gt;

Notice a few things here. I only call the columns that I need. The two inner most sub selects use the TOP functionality to retrieve the &apos;start&apos; row number plus the &apos;limit&apos;, so if you &apos;limit&apos; yourself to 25 records and you are now calling page 3 (which would start with row 50) then you would say in these statements &apos;retrieve the TOP 50+25 rows&apos;, with the first sub-select then only asking for the &apos;limit&apos; of the TOP 25. This gives you the TOP 25 rows of 50+25. You also see that a COUNT was added to the first select. Although this number appears in each record as &apos;recCount&apos;, it also gives you the total number of records that could be returned, thereby giving us the ability to say &apos;these are rows 50 thru 75 out of 38,543 records.&apos;

If you cfdump the query return you will see multiple query rows returned, but nothing like you might expect. We now have to convert the returned query into a properly formated XML string. For this I use a function that &lt;a href=&quot;http://www.infoaccelerator.net/&quot; target=&quot;_blank&quot;&gt;Andrew Powell&lt;/a&gt; showed us in a &lt;a href=&quot;http://mmusergroup.adobe.acrobat.com/p13001596/&quot; target=&quot;_blank&quot;&gt;Spry presentation&lt;/a&gt; that he did for the &lt;a href=&quot;http://www.ncfug.com&quot; target=&quot;_blank&quot;&gt;Nashville ColdFusion User Group&lt;/a&gt;. This was something that one of his compadres at &lt;a href=&quot;http://universalmind.com/&quot; target=&quot;_blank&quot;&gt;Universal Mind&lt;/a&gt; wrote, and that I&apos;ve adjusted slightly here.

&lt;code&gt;
&lt;cffunction name=&quot;sqlXMLtoCFXML&quot; access=&quot;public&quot; output=&quot;false&quot; returntype=&quot;any&quot;&gt;
	&lt;cfargument name=&quot;doc&quot; type=&quot;string&quot; required=&quot;false&quot; default=&quot;xml&quot; /&gt;
	&lt;cfargument name=&quot;qry&quot; type=&quot;query&quot; required=&quot;true&quot; /&gt;
	&lt;cfscript&gt;
		var x = &quot;&quot;;
		var y = &quot;&quot;;
		var retXML = &quot;&quot;;
		x = listFirst(ARGUMENTS.qry.columnList);
		for (y=1;y lte ARGUMENTS.qry.recordCount;y=y+1){
			retXML = retXML &amp; ARGUMENTS.qry[x][y];
		}
		retXML = &quot;&lt;&quot; &amp; ARGUMENTS.doc &amp; &quot;&gt;&quot; &amp; retXML &amp; &quot;&lt;/&quot; &amp; ARGUMENTS.doc &amp; &quot;&gt;&quot;;
	&lt;/cfscript&gt;
	&lt;cfreturn retXML /&gt;
&lt;/cffunction&gt;
&lt;/code&gt;

Basically this will take your MS SQL query output and format it into a proper XML document, with the ability for you to also define the &apos;root&apos; element (doc). I keep this function in a utility library so that I can call it at anytime. I then take the return of this and output it between some cfcontent tags with a type of &apos;text/xml&apos; to get a dynamic xml doc to be consumed by these AJAX calls. 

&lt;code&gt;
&lt;cfcontent type=&quot;text/xml&quot;&gt;&lt;cfoutput&gt;#sqlXMLtoCFXML(VARIABLES.qryReturned)#&lt;/cfoutput&gt;&lt;/cfcontent&gt;
&lt;/code&gt;

The Ext library makes the call to the pages via a form post, then inspects the XML return to map fields to their assigned grid columns. 

But, that&apos;s another lesson. This wraps it up for today. Tune in next time (same Bat-time, same Bat-channel) for our next installment: Defining the DataStore.

&lt;strike&gt;P.S. Sample files will be added to this post sometime tomorrow.&lt;/strike&gt;

The sample files are now included in the download area below. Let me know if you have any questions, comments, or war stories. 
				</description>
				
				<category>My First ExtJS DataGrid</category>				
				
				<category>ColdFusion</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Sun, 29 Apr 2007 20:15:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/4/29/My-First-ExtJS-DataGrid-Pt-3-A-Paging-Query</guid>
				
				
				<enclosure url="http://blog.cutterscrossing.com/enclosures/ExtJS_pt2.zip" length="4066" type="application/unknown"/>
				
			</item>
			
			<item>
				<title>My First ExtJS DataGrid Pt 2: Setting Up</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/4/25/My-First-ExtJS-DataGrid-Pt-2-Setting-Up</link>
				<description>
				
				So, off we go. First things first, you&apos;ll need the &lt;a href=&quot;http://www.jquery.org&quot; target=&quot;_blank&quot;&gt;JQuery&lt;/a&gt; and &lt;a href=&quot;http://www.extjs.com&quot; target=&quot;_blank&quot;&gt;ExtJS&lt;/a&gt; libraries. I also found out (the hard way, since it&apos;s not in the install notes) that you&apos;ll need the &lt;a href=&quot;http://dev.jquery.com/browser/trunk/plugins/dimensions/dimensions.js?format=txt&quot; target=&quot;_blank&quot;&gt;Dimensions JQuery Plugin&lt;/a&gt;. The &lt;a href=&quot;http://extjs.com/download&quot; target=&quot;_blank&quot;&gt;full ExtJS download&lt;/a&gt; contains the project core files, JS library &apos;adapter&apos; files, all of the Ext components, examples, documentation, and a &apos;resource&apos; directory of images and stylesheets to help you get started.

I start off by placing the necessary script tags in the &lt;em&gt;head&lt;/em&gt;er of my document. Order of placement is important.

&lt;code&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;js/jquery/jquery.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;js/jquery/plugins/dimensions.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;js/ext-1.0/adapter/jquery/ext-jquery-adapter.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;js/ext-1.0/ext-all.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;js/paging.js&quot;&gt;&lt;/script&gt;
&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;resources/css/ext-all.css&quot; /&gt;
&lt;/code&gt;

Now, for reference, you don&apos;t need the &apos;all&apos; ext library for this to work, but I&apos;m just doing personal testing right now and figured that it&apos;s easier than breaking things out at this point. The &apos;all&apos; library is the complete component collection, core, and utilities within one script file. While nice to have it all, it is large, and you can use just the components you need. The &apos;&lt;a href=&quot;http://extjs.com/download/build&quot; target=&quot;_blank&quot;&gt;Build your own Ext&lt;/a&gt;&apos; section of the ExtJS site can show you all of the necessary dependencies to put together only what you need.

I&apos;m going to copy the &lt;em&gt;paging.js&lt;/em&gt; file out of the ExtJS example directory and place it in the root of my &lt;em&gt;js&lt;/em&gt; directory. I&apos;m going to adjust this existing file to create my first paging grid. I know that this works, so I might as well not re-write the wheel. You&apos;ll also noticed that I used the included stylesheet file from the &lt;em&gt;resources&lt;/em&gt; directory. Now, with all of this in place, all I need is my container div that will hold my DataGride. In the &lt;em&gt;body&lt;/em&gt; of my document I place the following container code:

&lt;code&gt;
	&lt;div id=&quot;topic-grid&quot; style=&quot;border:1px solid #99bbe8;overflow: hidden; width: 665px; height: 300px;&quot;&gt;&lt;/div&gt;
&lt;/code&gt;

And that&apos;s the end of the initial setup. In part 3 I&apos;ll cover creating a paging sql page that will only call the records needed for each &apos;view&apos; in our paging grid, returning the records in an XML format to be consumed by our grid. Until then, take a good look at the &apos;examples&apos; directory in your ExtJS download, as well as the &lt;a href=&quot;http://extjs.com/deploy/ext/docs/index.html&quot; target=&quot;_blank&quot;&gt;API and Examples&lt;/a&gt; section of &lt;a href=&quot;http://extjs.com/learn-about-ext-javascript-library&quot; target=&quot;_blank&quot;&gt;Learn&lt;/a&gt; area of the ExtJS site. Also, included in the &lt;strong&gt;download&lt;/strong&gt; below you will find the complete document we created today. 
				</description>
				
				<category>My First ExtJS DataGrid</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Wed, 25 Apr 2007 14:23:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/4/25/My-First-ExtJS-DataGrid-Pt-2-Setting-Up</guid>
				
				
				<enclosure url="http://blog.cutterscrossing.com/enclosures/index.cfm.txt" length="1768" type="text/plain"/>
				
			</item>
			
			<item>
				<title>My First ExtJS DataGrid Pt 1</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/4/24/My-First-ExtJS-DataGrid-Pt-1</link>
				<description>
				
				I can write my own code. I can take a process, define a proper algorithm for addressing an issue, and tap it out. In fact I enjoy the art of writing code, it&apos;s kinda like working on puzzles day in and day out, and I like a good puzzle. On the other hand I think it&apos;s also smart not to re-invent the wheel. Many minds have dealt with the same problems that I encounter every day, and someone has probably found a solution by now. Why fight that?  [More]
				</description>
				
				<category>My First ExtJS DataGrid</category>				
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Tue, 24 Apr 2007 22:41:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/4/24/My-First-ExtJS-DataGrid-Pt-1</guid>
				
				
			</item>
			
			<item>
				<title>Nested Tab Sets with JQuery and the Tabs Plugin</title>
				<link>http://blog.cutterscrossing.com/index.cfm/2007/3/16/Nested-Tab-Sets-with-JQuery-and-the-Tabs-Plugin</link>
				<description>
				
				OK, I&apos;m working on a small side project with a &lt;a href=&quot;http://www.bluerobot.com/web/layouts/&quot; target=&quot;_blank&quot;&gt;three column layout&lt;/a&gt;. In one column I want to place two multi-step forms. So I decide it would be good to use nested tab sets. From a usability perspective it makes sense, with so many operating system and program dialogs functioning the same way. From a design standpoint it makes sense, because it takes up little space and groups similar content.  [More]
				</description>
				
				<category>Development</category>				
				
				<category>JQuery</category>				
				
				<pubDate>Fri, 16 Mar 2007 14:28:00 -0400</pubDate>
				<guid>http://blog.cutterscrossing.com/index.cfm/2007/3/16/Nested-Tab-Sets-with-JQuery-and-the-Tabs-Plugin</guid>
				
				
			</item>
			</channel></rss>