<?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:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Kyle Hayes | Proficiency by Derivation</title>
	
	<link>http://www.kylehayes.info</link>
	<description>Rich Internet solutions utilizing Flex, ActionScript, JavaScript, Dojo, Objective-C, and the iPhone</description>
	<lastBuildDate>Tue, 17 Aug 2010 16:49:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/cfwise" /><feedburner:info uri="cfwise" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Giving Posterous a try</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/i9kJ23xSGvc/</link>
		<comments>http://www.kylehayes.info/2010/08/17/giving-posterous-a-try/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 16:49:21 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
		
		<guid isPermaLink="false">http://www.kylehayes.info/2010/08/17/giving-posterous-a-try/</guid>
		<description><![CDATA[I know it is cliché to write a post about trying a new service that posts but I gotta do it to give it a swing! I used to be a very frequent blogger over at kylehayes.info in my ColdFusion days, but haven&#8217;t touched it much lately because of how busy I&#8217;ve been. I figured [...]]]></description>
			<content:encoded><![CDATA[<div class='posterous_autopost'>
<div>I know it is cliché to write a post about trying a new service that posts but I gotta do it to give it a swing! I used to be a very frequent blogger over at kylehayes.info in my ColdFusion days, but haven&#8217;t touched it much lately because of how busy I&#8217;ve been. I figured if I can just send an email to write a post about something, I just might be more apt to blog more frequently. Although, that could mean that the quality of my content goes down, who knows, we&#8217;ll see!</div>
<p />
<div>Cheers.</div>
</div>

<p><a href="http://feedads.g.doubleclick.net/~a/4CNnugSGIkmqOOcZdlxxFcyKq20/0/da"><img src="http://feedads.g.doubleclick.net/~a/4CNnugSGIkmqOOcZdlxxFcyKq20/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/4CNnugSGIkmqOOcZdlxxFcyKq20/1/da"><img src="http://feedads.g.doubleclick.net/~a/4CNnugSGIkmqOOcZdlxxFcyKq20/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/i9kJ23xSGvc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2010/08/17/giving-posterous-a-try/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2010/08/17/giving-posterous-a-try/</feedburner:origLink></item>
		<item>
		<title>New Free JavaScript Tips Newsletter</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/1qBJ446mkjQ/</link>
		<comments>http://www.kylehayes.info/2010/06/16/new-free-javascript-tips-newsletter/#comments</comments>
		<pubDate>Wed, 16 Jun 2010 14:44:47 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Dojo]]></category>
		<category><![CDATA[newsletter]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=515</guid>
		<description><![CDATA[It&#8217;s no surprise that I&#8217;m a huge advocate and fan of the Dojo toolkit when it comes to quality JavaScript development. It consistently delivers quality results in my websites and web applications while also helping to keep my code very maintainable and reusable. However, it&#8217;s also no surprise that Dojo is not the most popular [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="Getting StartED with Dojo" src="http://ecx.images-amazon.com/images/I/61eC%2Bgc5D3L._SL500_AA240_.jpg" alt="" width="240" height="240" />It&#8217;s no surprise that I&#8217;m a huge advocate and fan of the <a title="DojoToolkit.org" href="http://www.dojotoolkit.org">Dojo toolkit</a> when it comes to quality JavaScript development. It consistently delivers quality results in my websites and web applications while also helping to keep my code very maintainable and reusable. However, it&#8217;s also no surprise that Dojo is not the most popular JavaScript toolkit. This is due to many factors, one of which is the lack of strong marketing. It&#8217;s my desire to help and support the Dojo team where I can especially in this area since it lacks so much by offering a free newsletter to subscribers over at <a title="Sign up for the free newsletter at StartDojo.com" href="http://startdojo.com/?cmp=khnlpromo" target="_blank">StartDojo.com</a>. Simply visit the site and register for free on the right-hand side.</p>
<p>The first issue has not been sent out yet as I wait for my subscribers, but I promise to only provide useful, pragmatic JavaScript and Dojo programming techniques as well as up-to-date industry news.</p>
<p><a title="Sign up for the free newsletter at StartDojo.com" href="http://startdojo.com/?cmp=khnlpromo" target="_blank">Sign up for free now!</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/SbQHpnPZI_Oq-fNNdQKD48_yaKs/0/da"><img src="http://feedads.g.doubleclick.net/~a/SbQHpnPZI_Oq-fNNdQKD48_yaKs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/SbQHpnPZI_Oq-fNNdQKD48_yaKs/1/da"><img src="http://feedads.g.doubleclick.net/~a/SbQHpnPZI_Oq-fNNdQKD48_yaKs/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/1qBJ446mkjQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2010/06/16/new-free-javascript-tips-newsletter/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2010/06/16/new-free-javascript-tips-newsletter/</feedburner:origLink></item>
		<item>
		<title>Things about JavaScript I wish I knew earlier</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/9Xs4LYdlWYI/</link>
		<comments>http://www.kylehayes.info/2010/04/20/things-about-javascript-i-wish-i-knew-earlier/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 19:37:44 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[arrays]]></category>
		<category><![CDATA[Dojo]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[objects]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=512</guid>
		<description><![CDATA[Christian Hellman wrote another excellent JavaScript article over at Smashing Magazine. This time he addresses styles and techniques of coding that is widely supported, accepted, and expected by good JavaScript developers. If you’ve been programming JavaScript for awhile, you’ll notice much of the stuff is different now than it was less than a decade ago [...]]]></description>
			<content:encoded><![CDATA[<p>Christian Hellman wrote another excellent JavaScript article over at <a href="http://www.smashingmagazine.com/">Smashing Magazine</a>. This time he addresses styles and techniques of coding that is widely supported, accepted, and expected by good JavaScript developers. If you’ve been programming JavaScript for awhile, you’ll notice much of the stuff is different now than it was less than a decade ago now that JavaScript has evolved and improved based on the  needs of the JavaScript community as well as the capabilities of modern-day browsers.</p>
<p>Personally, the ones I’ve fallen victim to most recently are shortcut notations. Having a Java background, I always wanted to create new Objects and Arrays using the “new” keyword and constructing. During the writing of <a href="http://startdojo.com/buy">Getting Started with Dojo</a>, Peter Higgins (the technical reviewer) pounded in my head that today, objects are created like var foo = {} and arrays are created like var bar = []. Christian discusses this in the article (and a bit more in detail).</p>
<p>Using JSON as a data format is another one I can strongly relate to, especially with his mention of using arrays and delimited strings in the past. Today, there will not be a project that goes by where I need data brought in and I will always choose JSON if it’s available due to its native support in modern day JavaScript.</p>
<p>I personally am always looking for ways to make my JavaScript run faster. As developers, we so often get caught up in the moment of getting something to work and simply implement a solution in a way that just came natural and was easy, we don’t go back to see if we can make it more efficient—especially in terms of browser memory usage. There have been many times I’ve seen a simple for loop accessing data in a way that is calling another method to fetch the data, instead of caching the data once and accessing the local cache. Christian brought up another way to make your page more efficient in terms of events that I had not thought of. His example perfectly illustrates a situation in which you want to listen for the click event on a set of list items inside an unordered list. Instead of looping through each list item and adding an event handler, you can simply add an event handler to the parent of this list (the ul). From here you can determine which li was clicked. This assuming that you understand that events in the DOM roll up from the bottom when an event occurs. This means that if you click an li,if that click is not handled on the li, it will roll up to the ul and so forth.</p>
<p>Finally the last few points on anonymous functions with the module pattern, configuration, interacting with the back end, and browser specific code, I cannot stress enough to read and understand these the best you can. These four points that he clearly makes are utterly important in ensuring you are an efficient JavaScript developer. This will set you apart from being a good JavaScript dev, to an excellent JavaScript dev—proving you know how the language works and how to best control it and use it as it should be used.</p>
<p>I highly respect Christian’s articles and his advice and I recommend you head his comments where you see fit. You can read the full article on Smashing Magazine below:</p>
<p><a href="http://bit.ly/amJ8sj">http://bit.ly/amJ8sj</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/yoMFiTJasR2I_HvHkMlej7qMRX8/0/da"><img src="http://feedads.g.doubleclick.net/~a/yoMFiTJasR2I_HvHkMlej7qMRX8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/yoMFiTJasR2I_HvHkMlej7qMRX8/1/da"><img src="http://feedads.g.doubleclick.net/~a/yoMFiTJasR2I_HvHkMlej7qMRX8/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/9Xs4LYdlWYI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2010/04/20/things-about-javascript-i-wish-i-knew-earlier/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2010/04/20/things-about-javascript-i-wish-i-knew-earlier/</feedburner:origLink></item>
		<item>
		<title>HTML5 Forms</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/RcIwc-SPqZg/</link>
		<comments>http://www.kylehayes.info/2010/04/13/html5-forms/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 15:06:21 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Innovation]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=507</guid>
		<description><![CDATA[With all the buzz of HTML5, most of it has been centered around the new video and canvas tags, however, so much more is being added and spec’ed out. One particular area that has been given some much needed love is forms. Some new form input types that we get are: search tel url email [...]]]></description>
			<content:encoded><![CDATA[<p>With all the buzz of HTML5, most of it has been centered around the new video and canvas tags, however, so much more is being added and spec’ed out. One particular area that has been given some much needed love is forms.</p>
<p>Some new form input types that we get are:</p>
<ul>
<li>search</li>
<li>tel</li>
<li>url</li>
<li>email</li>
<li>datetime, date, month, week, time, and datetime-local</li>
<li>number</li>
<li>range</li>
<li>color</li>
</ul>
<p>Along with that, some validation. But what browsers are supporting this new functionality? Check out the litmus tests here: <a href="http://cl.ly/4Bq">http://cl.ly/4Bq</a></p>
<p><strong>Update: </strong>See if your browser passes the HTML5 &#8220;Acid&#8221; test: <a href="http://html5test.com/">http://html5test.com/</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/qxUfrfZj-D1L9gmFR6lgHi0znaI/0/da"><img src="http://feedads.g.doubleclick.net/~a/qxUfrfZj-D1L9gmFR6lgHi0znaI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/qxUfrfZj-D1L9gmFR6lgHi0znaI/1/da"><img src="http://feedads.g.doubleclick.net/~a/qxUfrfZj-D1L9gmFR6lgHi0znaI/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/RcIwc-SPqZg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2010/04/13/html5-forms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2010/04/13/html5-forms/</feedburner:origLink></item>
		<item>
		<title>Debate on Automated Acceptance Testing</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/77XmoiRCsis/</link>
		<comments>http://www.kylehayes.info/2010/04/09/debate-on-automated-acceptance-testing/#comments</comments>
		<pubDate>Fri, 09 Apr 2010 14:02:33 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Innovation]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[use cases]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=504</guid>
		<description><![CDATA[Part of agile software development is the practice of acceptance testing to ensure the appropriate business requirements, use cases, and ensure confidence in the delivered product. This process is commonly recommended to be automated so the tests can be easily run at a given time as well as be consistent. James Shore created and encouraged [...]]]></description>
			<content:encoded><![CDATA[<p>Part of agile software development is the practice of acceptance testing to ensure the appropriate business requirements, use cases, and ensure confidence in the delivered product. This process is commonly recommended to be automated so the tests can be easily run at a given time as well as be consistent. James Shore created and encouraged the agile community to use his automated testing framework (Fit) to create these tests.</p>
<p>The problem is that it was meant for the business to be creating these tests, not the developers, however, it turns out that the developers were tasked with creating them instead which is a “maintenance burden”.</p>
<p>Shore now believes that automating the acceptance testing is <em>not</em> a good idea, summarized by the following two points:</p>
<p>1.       The real planned benefit of an automated acceptance tool, like Fit, was that the business folks (&#8220;customers&#8221;) would write executable examples themselves. History has shown that very rarely occurs. In a few cases testers do, but in the majority of cases these tests are written by the developers.</p>
<p>2.       These tests often become a real maintenance burden, as they are slow and brittle, and often hard to refactor. On this point, that end-to-end &#8220;integration tests&#8221; present a higher cost than they are worth, JB Rainsberger has a <a href="http://jbrains.ca/category/named/integrated-tests-are-a-scam">great series of articles</a> explaining his rational why.</p>
<p>What do you think?</p>
<p>Full article on InfoQ: <a href="http://bit.ly/a2002q">http://bit.ly/a2002q</a></p>

<p><a href="http://feedads.g.doubleclick.net/~a/mhiqMtwm5GqiPMjbMxnc_nxtRWs/0/da"><img src="http://feedads.g.doubleclick.net/~a/mhiqMtwm5GqiPMjbMxnc_nxtRWs/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/mhiqMtwm5GqiPMjbMxnc_nxtRWs/1/da"><img src="http://feedads.g.doubleclick.net/~a/mhiqMtwm5GqiPMjbMxnc_nxtRWs/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/77XmoiRCsis" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2010/04/09/debate-on-automated-acceptance-testing/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2010/04/09/debate-on-automated-acceptance-testing/</feedburner:origLink></item>
		<item>
		<title>Easily Generate Placeholder Images in Designs and Web Pages</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/DMXYtqr3Ndk/</link>
		<comments>http://www.kylehayes.info/2010/01/27/easily-generate-placeholder-images-in-designs-and-web-pages/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 15:26:10 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Innovation]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[example]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[service]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=499</guid>
		<description><![CDATA[I came across a neat site called dummyimage.com that allows you to append an image size to it&#8217;s URL as so: http://dummyimage.com/300&#215;250. However, what I didn&#8217;t like about it, is that I could not add text to the image to describe what the image is a placeholder for. I took upon myself to create my [...]]]></description>
			<content:encoded><![CDATA[<p>I came across a neat site called dummyimage.com that allows you to append an image size to it&#8217;s URL as so: <a href="http://dummyimage.com/300x250" target="_blank">http://dummyimage.com/300&#215;250</a>. However, what I didn&#8217;t like about it, is that I could not add text to the image to describe what the image is a placeholder for. I took upon myself to create my own service that does this and I plan on expanding it to do more as well.</p>
<p>Last night I created <a href="http://fpoimg.com">fpoimg.com</a>. It works in very much the same way as dummyimage.com, only you can add text to your images. The next iteration of the site will allow you to change the colors of the background and foreground. Anyway, the way you use the site is if you want to create a basic placeholder or FPO (For Placement Only) image you simply go to <a href="http://fpoimg.com/345x480" target="_blank">http://fpoimg.com/345&#215;480</a> and the image will be provided to you. You can save this image if you like, or you can refer to it directly in your code such as in an image tag:<br />
<code>&lt;img src="http://fpoimg.com/345x480"&gt;</code></p>
<p>The first number is your width in pixels, the second is your height in pixels. Additionally, if you want to add some text to the image to describe it as a placeholder, you simply append that to the URL as so:<br />
<a href="http://fpoimg.com/200x200/Advertisement" target="_blank">http://fpoimg.com/345&#215;480/Advertisement</a></p>
<p>This will create the following image:</p>
<p><img src="http://fpoimg.com/345x480/Advertisement" alt="" /></p>
<p>It&#8217;s really that basic! Here are some more examples:<br />
<img src="http://fpoimg.com/300x250/MREC" alt="" /><br />
<img src="http://fpoimg.com/728x90/Banner Ad" alt="" /></p>
<p>I of course do plan on tweaking this service as needed such as caching the images and providing the ability to change their colors. If the service becomes more popular, I have a feeling I&#8217;ll need to invoke some kind of limit as well so as not to crash the server.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/v5YNecdNG0raoAtc2eJ4wxRpSIY/0/da"><img src="http://feedads.g.doubleclick.net/~a/v5YNecdNG0raoAtc2eJ4wxRpSIY/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/v5YNecdNG0raoAtc2eJ4wxRpSIY/1/da"><img src="http://feedads.g.doubleclick.net/~a/v5YNecdNG0raoAtc2eJ4wxRpSIY/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/DMXYtqr3Ndk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2010/01/27/easily-generate-placeholder-images-in-designs-and-web-pages/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2010/01/27/easily-generate-placeholder-images-in-designs-and-web-pages/</feedburner:origLink></item>
		<item>
		<title>Getting StartED with Dojo now available!</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/IGwZ4jf-E7c/</link>
		<comments>http://www.kylehayes.info/2009/12/30/getting-started-with-dojo-now-available/#comments</comments>
		<pubDate>Wed, 30 Dec 2009 15:38:01 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[Dojo]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=496</guid>
		<description><![CDATA[The book that I&#8217;ve been writing for the past nine months is finally published and available for purchase. Below are the details as posted on the companion site, startdojo.com: Getting StartED with Dojo is finally available for purchase! About nine months ago I was approached by Apress to author a book on the Dojo toolkit. [...]]]></description>
			<content:encoded><![CDATA[<p>The book that I&#8217;ve been writing for the past nine months is finally published and available for purchase. Below are the details as posted on the companion site, <a title="Go to startdojo.com" href="http://startdojo.com" target="_blank">startdojo.com</a>:</p>
<blockquote><p>Getting StartED with Dojo is finally available for <a href="http://www.amazon.com/gp/product/1430225211?ie=UTF8&amp;tag=startdojo-com-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1430225211" target="_blank">purchase</a><img style="border: none !important; margin: 0px !important;" src="http://www.assoc-amazon.com/e/ir?t=startdojo-com-200&amp;l=as2&amp;o=1&amp;a=1430225211" border="0" alt="" width="1" height="1" />! About nine months ago I was approached by Apress to author a book on the <a href="http://" target="_blank">Dojo toolkit</a>. After a long journey of authoring my first book, the final phase is complete as the book is now officially published and out in the wild. While the actual publish date was December 28th, I&#8217;m sure it will be a little while before you start seeing it on the shelves of popular brick and mortar bookstore shelves such as Borders and Barnes &amp; Noble. For now, you can certainly <a href="http://www.amazon.com/gp/product/1430225211?ie=UTF8&amp;tag=startdojo-com-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1430225211">order it on Amazon</a><img style="border: none !important; margin: 0px !important;" src="http://www.assoc-amazon.com/e/ir?t=startdojo-com-20&amp;l=as2&amp;o=1&amp;a=1430225211" border="0" alt="" width="1" height="1" />.</p>
<p>Getting StartED with Dojo has fan page on Facebook:<br />
<!-- Facebook Badge START --><a style="font-family: &amp;amp;amp; font-size: 11px; font-variant: normal; font-style: normal; font-weight: normal; color: #3b5998; text-decoration: none;" title="Getting StartED with Dojo" href="http://www.facebook.com/pages/Getting-StartED-with-Dojo/224855113411" target="_TOP">Getting StartED with Dojo</a><span style="font-family: &amp;amp;amp; font-size: 11px; line-height: 16px; font-variant: normal; font-style: normal; font-weight: normal; color: #555555; text-decoration: none;"> | </span><a style="font-family: &amp;amp;amp; font-size: 11px; font-variant: normal; font-style: normal; font-weight: normal; color: #3b5998; text-decoration: none;" title="Make your own badge!" href="http://www.facebook.com/business/dashboard/" target="_TOP">Promote Your Page Too</a><br />
<a title="Getting StartED with Dojo" href="http://www.facebook.com/pages/Getting-StartED-with-Dojo/224855113411" target="_TOP"><img style="border: 0px;" src="http://badge.facebook.com/badge/224855113411.2790.2105382221.png" alt="" width="354" height="84" /></a></p>
<p>You may also <a title="Follow @startdojo on Twitter!" href="http://twitter.com/startdojo" target="_blank">follow @startdojo on Twitter</a> for up to date news and information relating to the Dojo toolkit and community.</p>
<p>I will mostly be using this site for updates to the book such as corrections to the code and copy. In addition, I will be posting tips and resources for learning more about the Dojo toolkit. A lot of work went into the creation of this book and I hope you enjoy it.</p></blockquote>

<p><a href="http://feedads.g.doubleclick.net/~a/2Yz4ke51jQ7ZU7CqKqhAkSzPw50/0/da"><img src="http://feedads.g.doubleclick.net/~a/2Yz4ke51jQ7ZU7CqKqhAkSzPw50/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/2Yz4ke51jQ7ZU7CqKqhAkSzPw50/1/da"><img src="http://feedads.g.doubleclick.net/~a/2Yz4ke51jQ7ZU7CqKqhAkSzPw50/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/IGwZ4jf-E7c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2009/12/30/getting-started-with-dojo-now-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2009/12/30/getting-started-with-dojo-now-available/</feedburner:origLink></item>
		<item>
		<title>Amazon.com’s Black Friday Deals Available Now</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/qMb4ogik_S4/</link>
		<comments>http://www.kylehayes.info/2009/11/23/amazon-coms-black-friday-deals-available-now/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 14:45:33 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Announcements]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=490</guid>
		<description><![CDATA[Every year Amazon.com has some incredible deals on some of their merchandise. This year, they&#8217;ve started even earlier to get you in the holiday shopping spirit by starting to offer their deals TODAY. They&#8217;ve said that all of their deals are limited in quantity but will line up new items after they sell out throughout [...]]]></description>
			<content:encoded><![CDATA[<p>Every year Amazon.com has some <a title="Amazon.com's Black Friday Deals" href="http://www.amazon.com/gp/redirect.html?ie=UTF8&amp;location=http%3A%2F%2Fwww.amazon.com%2FBlack-Friday-After-Thanksgiving-Sale%2Fb%3Fie%3DUTF8%26node%3D384082011%26ref_%3Dpe%255F67050%255F13524000%255Fpe%255Fbtn&amp;tag=cf0d-20&amp;linkCode=ur2&amp;camp=1789&amp;creative=390957" target="_blank">incredible deals</a> on some of their merchandise. This year, they&#8217;ve started even earlier to get you in the holiday shopping spirit by starting to offer their <a title="Amazon.com's Black Friday Deals" href="http://www.amazon.com/gp/redirect.html?ie=UTF8&amp;location=http%3A%2F%2Fwww.amazon.com%2FBlack-Friday-After-Thanksgiving-Sale%2Fb%3Fie%3DUTF8%26node%3D384082011%26ref_%3Dpe%255F67050%255F13524000%255Fpe%255Fbtn&amp;tag=cf0d-20&amp;linkCode=ur2&amp;camp=1789&amp;creative=390957" target="_blank">deals TODAY</a>.</p>
<p>They&#8217;ve said that all of their deals are limited in quantity but will line up new items after they sell out throughout the day.</p>
<p><a title="Amazon.com's Black Friday Deals" href="http://www.amazon.com/gp/redirect.html?ie=UTF8&amp;location=http%3A%2F%2Fwww.amazon.com%2FBlack-Friday-After-Thanksgiving-Sale%2Fb%3Fie%3DUTF8%26node%3D384082011%26ref_%3Dpe%255F67050%255F13524000%255Fpe%255Fbtn&amp;tag=cf0d-20&amp;linkCode=ur2&amp;camp=1789&amp;creative=390957" target="_blank">Visit Amazon.com&#8217;s Black Friday Deals</a></p>
<p><SCRIPT charset="utf-8" type="text/javascript" src="http://ws.amazon.com/widgets/q?ServiceVersion=20070822&#038;MarketPlace=US&#038;ID=V20070822/US/cf0d-20/8001/8c30b9d4-988a-4a90-8d1b-88eee45f908e"> </SCRIPT> <NOSCRIPT><A HREF="http://ws.amazon.com/widgets/q?ServiceVersion=20070822&#038;MarketPlace=US&#038;ID=V20070822%2FUS%2Fcf0d-20%2F8001%2F8c30b9d4-988a-4a90-8d1b-88eee45f908e&#038;Operation=NoScript">Amazon.com Widgets</A></NOSCRIPT></p>

<p><a href="http://feedads.g.doubleclick.net/~a/ED3Vy2F0NXnBGJvq8crmEeqnkkg/0/da"><img src="http://feedads.g.doubleclick.net/~a/ED3Vy2F0NXnBGJvq8crmEeqnkkg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/ED3Vy2F0NXnBGJvq8crmEeqnkkg/1/da"><img src="http://feedads.g.doubleclick.net/~a/ED3Vy2F0NXnBGJvq8crmEeqnkkg/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/qMb4ogik_S4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2009/11/23/amazon-coms-black-friday-deals-available-now/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2009/11/23/amazon-coms-black-friday-deals-available-now/</feedburner:origLink></item>
		<item>
		<title>Is Your Kid the Next Face of Gap?</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/8yobeVLz53Q/</link>
		<comments>http://www.kylehayes.info/2009/10/01/is-your-kid-the-next-face-of-gap/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 02:22:01 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[Dojo]]></category>
		<category><![CDATA[gwt]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=482</guid>
		<description><![CDATA[It&#8217;s been a long time since I&#8217;ve posted, I know it, but I have good excuses! The first is still an excuse as I&#8217;m still working on it, but, I was asked by Apress / Friends of ED to write a book on the Dojo JavaScript Toolkit. It&#8217;s been quite the journey to say the [...]]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://rcm.amazon.com/e/cm?lt1=_blank&#038;bc1=000000&#038;IS2=1&#038;bg1=FFFFFF&#038;fc1=000000&#038;lc1=0000FF&#038;t=cf0d-20&#038;o=1&#038;p=8&#038;l=as1&#038;m=amazon&#038;f=ifr&#038;md=10FE9736YVPPT7A0FBG2&#038;asins=1430225211" style="width:120px;height:240px;float:left;margin-right:10px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>It&#8217;s been a long time since I&#8217;ve posted, I know it, but I have good excuses! The first is still an excuse as I&#8217;m still working on it, but, I was asked by <a href="http://www.apress.com">Apress</a> / <a href="http://www.friendsofed.com">Friends of ED</a> to write a <a href="http://www.amazon.com/gp/product/1430225211?ie=UTF8&amp;tag=cf0d-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1430225211">book</a> on the <a href="http://www.dojotoolkit.org">Dojo JavaScript Toolkit</a>. It&#8217;s been quite the journey to say the least. It has been a desire of mine in the past few years to publish a technical book. When Apress approached me, I couldn&#8217;t resist. It&#8217;s been a lot of work but it&#8217;s almost done. You can check it out and pre-order it on Amazon.com! Needless to say I&#8217;ve had my head in Dojo quite a bit the past few months.</p>
<p>With that, I&#8217;ve also been working on a very large project at work that I&#8217;m one of the technical leads on. That project is the <a href="http://family.go.com/gapcastingcall/">Gap Casting Call</a> which is a contest that Gap runs every year to find the next faces of BabyGap and GapKids. They partnered with us at Family.com to build and host the online photo contest. Enter your kids to get a chance at winning! There are a lot of great <a href="http://family.go.com/gapcastingcall/prizes/">prizes</a> and a lot of great <a href="http://family.go.com/gapcastingcall/galleries/">entries</a>!</p>
<p>On to my next project at work where I get to learn and use GWT. More to come in the future I&#8217;m sure. Until then, thanks for staying up to date with me, and sorry it has been so long since I&#8217;ve posted.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/3c9rz7jIom55DH-ixAiSix4cnvg/0/da"><img src="http://feedads.g.doubleclick.net/~a/3c9rz7jIom55DH-ixAiSix4cnvg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/3c9rz7jIom55DH-ixAiSix4cnvg/1/da"><img src="http://feedads.g.doubleclick.net/~a/3c9rz7jIom55DH-ixAiSix4cnvg/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/8yobeVLz53Q" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2009/10/01/is-your-kid-the-next-face-of-gap/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2009/10/01/is-your-kid-the-next-face-of-gap/</feedburner:origLink></item>
		<item>
		<title>OOP + CF Debate Response</title>
		<link>http://feedproxy.google.com/~r/cfwise/~3/rNp9N83CLjU/</link>
		<comments>http://www.kylehayes.info/2009/05/27/oop-cf-debate-response/#comments</comments>
		<pubDate>Wed, 27 May 2009 15:40:14 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Announcements]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Innovation]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[CFML]]></category>
		<category><![CDATA[ColdFusion]]></category>
		<category><![CDATA[debate]]></category>
		<category><![CDATA[object-oriented programming]]></category>
		<category><![CDATA[oop]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=462</guid>
		<description><![CDATA[Reading Brian&#8217;s tweet this morning, I decided to read more about this whole OOP Debate. Unfortunately, I didn&#8217;t really have time, nor the interest to read Marc&#8217;s entire post. But I read as far to the point where he comes to the epiphany that CF is not Java and that it can&#8217;t handle the same [...]]]></description>
			<content:encoded><![CDATA[<p>Reading <a href="https://twitter.com/remotesynth/status/1935994201" target="_blank">Brian&#8217;s tweet</a> this morning, I decided to read more about this whole OOP Debate. Unfortunately, I didn&#8217;t really have time, nor the interest to read Marc&#8217;s <a href="http://www.advantexllc.com/blog/post.cfm/how-oo-almost-destroyed-my-business" target="_blank">entire post</a>. But I read as far to the point where he comes to the epiphany that CF is not Java and that it can&#8217;t handle the same patterns the same way that Java can&#8230;um&#8230;duh! I thought this was a known fact about ColdFusion / CFML. Rewind many years to the creation of ColdFusion&#8211;that was the whole point of coming up with ColdFusion was to have a language that did not require the sheer complexity of languages like C and CGIs to connect to databases. I think for the most part, ColdFusion has always aimed to be easy or easier and less code etc. If you want to program more along the lines of what Java supports and the patterns it uses, then use Java. Seriously. ColdFusion is not Java and it shouldn&#8217;t be. It should be what it is and do it well.</p>
<p>With that, here is my comment to <a href="http://www.remotesynthesis.com/post.cfm/this-oop-debate-isn-t-about-oop-at-all" target="_blank">Brian&#8217;s response</a> to this debate:</p>
<blockquote><p>I agree with you, Brian, in that his post may have been partly about the aspect you allude to. However, I also feel there is a real frustration in what he is really expressing with OO and CF. I noticed this same type of demeanor with some folks over the years when I strongly worked with CF. I myself have a Java background and as such tried to make CF follow the patterns and paradigms in the way that Java did. At the same time, I also recognized where CF fell short and thus worked with CF in it&#8217;s capacity as opposed to trying to get it to fit into the same context that Java is in.</p>
<p>With that, I encouraged other folks who worked with me to learn the better structured concepts of OO and MVC patterns and using the right mix of frameworks, such as a MVC, ORM, and IOC framework. The problem is, if you don&#8217;t understand these concepts from a fundamental level from the beginning without ever mixing CF in, they can be very overwhelming and start to crush the positive attitude that a CFML programmer may have.</p>
<p>Much of the time I also felt that parts of the community were pushing the use of so many patterns it was ridiculous and I think this is the storm that perhaps Marc was feeling.</p>
<p>To reiterate, I do feel that what you mentioned could be an underlying tone and perhaps fueling of anger and frustration, but at the same time I know from other CFML developers that I used to work with, his feelings at that show on the surface are valid and understood.</p>
<p>I think that most of the expert CFML developers in the community know and understand the limitations of the technology. Keep in mind, however, limitations is defined by what the requirements of a project are. Projects&#8217; requirements should be written around the technology being used. Perhaps ColdFusion doesn&#8217;t have limitations in the sense of the word when it comes to &#8220;industry standard patterns&#8221;. From it&#8217;s beginning, it has always defined it&#8217;s own set of patterns that work for the CFML workflow. Developer&#8217;s need to understand to not try to redefine something that doens&#8217;t need to be redefined. If they have different needs in a project that are strong enough to fully set the project&#8217;s scope outside the circle of ColdFusion, then they need to choose a different technology.</p>
<p>CF continues to have a strong closely-knit community, something I have always enjoyed about it. Embrace the community, but don&#8217;t forget that at the end of the day, it&#8217;s up to you how you want to program your applications. And yes patterns are good, but don&#8217;t overdo it. Allow yourself to focus on the tasks at hand as well as having good design at the same time. True, not EVERYTHING needs to be &#8220;OO&#8221;.</p>
<p>Finally, change rarely comes at the perfect time. As web developers, the past 5 years or so have been changing very rapidly with new languages, patterns, frameworks, libraries coming out every day it seems. Don&#8217;t focus on being up to date on every single one and figure out how you can use each of them in your next project. Pick and choose what you want to learn and learn it well. In a time such as now, stick with what you know cause you need to hold on for a little bit longer, there are some rough winds up ahead.</p></blockquote>
<p>I&#8217;m serious when I say don&#8217;t redefine something that is not meant to be that in the first place. I always uphold innovation in it&#8217;s highest regards, but there is innovation and then there is redefinition. They are NOT the same thing, so stop!</p>
<p> <img src='http://www.kylehayes.info/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>

<p><a href="http://feedads.g.doubleclick.net/~a/YWr8UPzj96FyV_EEL9KpXVBXXqg/0/da"><img src="http://feedads.g.doubleclick.net/~a/YWr8UPzj96FyV_EEL9KpXVBXXqg/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/YWr8UPzj96FyV_EEL9KpXVBXXqg/1/da"><img src="http://feedads.g.doubleclick.net/~a/YWr8UPzj96FyV_EEL9KpXVBXXqg/1/di" border="0" ismap="true"></img></a></p><img src="http://feeds.feedburner.com/~r/cfwise/~4/rNp9N83CLjU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2009/05/27/oop-cf-debate-response/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.kylehayes.info/2009/05/27/oop-cf-debate-response/</feedburner:origLink></item>
	</channel>
</rss>
