<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Kyle Hayes &#124; Proficiency by Derivation &#187; Tech</title>
	<atom:link href="http://www.kylehayes.info/category/tech/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kylehayes.info</link>
	<description>Rich Internet solutions utilizing Flex, ActionScript, JavaScript, Dojo, Objective-C, and the iPhone</description>
	<lastBuildDate>Wed, 16 Jun 2010 14:54:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>New Free JavaScript Tips Newsletter</title>
		<link>http://www.kylehayes.info/2010/06/16/new-free-javascript-tips-newsletter/</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>
]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2010/06/16/new-free-javascript-tips-newsletter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML5 Forms</title>
		<link>http://www.kylehayes.info/2010/04/13/html5-forms/</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>
]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2010/04/13/html5-forms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Debate on Automated Acceptance Testing</title>
		<link>http://www.kylehayes.info/2010/04/09/debate-on-automated-acceptance-testing/</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>
]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2010/04/09/debate-on-automated-acceptance-testing/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Is Your Kid the Next Face of Gap?</title>
		<link>http://www.kylehayes.info/2009/10/01/is-your-kid-the-next-face-of-gap/</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>
]]></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>
		</item>
		<item>
		<title>OOP + CF Debate Response</title>
		<link>http://www.kylehayes.info/2009/05/27/oop-cf-debate-response/</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>
]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2009/05/27/oop-cf-debate-response/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>5 Easy Tutorials for Advanced JavaScript using Dojo</title>
		<link>http://www.kylehayes.info/2009/04/08/5-easy-tutorials-for-advanced-javascript-using-dojo/</link>
		<comments>http://www.kylehayes.info/2009/04/08/5-easy-tutorials-for-advanced-javascript-using-dojo/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 02:49:30 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[air]]></category>
		<category><![CDATA[Dojo]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/?p=414</guid>
		<description><![CDATA[I&#8217;ve been using Dojo a lot lately and have really gotten knee deep in development with it. Best of all, it is so easy to do so. The number one thing I&#8217;ve noticed is that the community is great&#8211;very approachable and they really know what they are talking about. These are true programmers who love [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using Dojo a lot lately and have really gotten knee deep in development with it. Best of all, it is so easy to do so. The number one thing I&#8217;ve noticed is that the community is great&#8211;very approachable and they really know what they are talking about. These are true programmers who love what they do, and it shows in this toolkit.</p>
<p>The <a title="Dojo Campus" href="http://www.dojocampus.org/" target="_blank">Dojo Campus</a> provides a wealth of documentation, <a title="Dojo tutorials" href="http://dojocampus.org/content/category/tutorials/" target="_blank">tutorials</a> for all levels, <a title="Dojo Cookies" href="http://dojocampus.org/content/category/dojo-cookies/" target="_blank">Dojo Cookies (kind of like recipes)</a>, and <a title="Cool features of Dojo" href="http://dojocampus.org/explorer/" target="_blank">demos of cool features.</a></p>
<p>Below are just a handful of tutorials that are available to beginners in Dojo that really help you get started.</p>
<ol>
<li><strong><a title="Dojo and Air, a fancy file uploader" href="http://dojocampus.org/content/2008/04/02/dojo-on-air-a-fancy-file-uploader/" target="_blank">Dojo and Air, a fancy file uploader</a></strong><br />
<span style="font-weight: normal;">How many times have you had trouble uploading files to your favorite CMS? How many times did a client say “I am not happy with uploading one file at a time”? And last but not least, how many times did you implement a third party plugin/software/piece of magic to implement efficient file uploading?<br />
<a title="Dojo and Air, a fancy file uploader" href="http://dojocampus.org/content/2008/04/02/dojo-on-air-a-fancy-file-uploader/" target="_blank">View tutorial &gt;&gt;</a><br />
</span></li>
<li><strong><span style="font-weight: normal;"><a title="Fancy rounded corners" href="http://dojocampus.org/content/2008/03/21/no-end-to-rounded-corners/" target="_blank">Fancy Rounded Corners</a></span></strong><span style="font-weight: normal;"><br />
Make great looking rounded corners on your elements using only a single image.<br />
<a title="Fancy rounded corners" href="http://dojocampus.org/content/2008/03/21/no-end-to-rounded-corners/" target="_blank">View tutorial &gt;&gt;</a><br />
</span></li>
<li><span style="font-weight: normal;"><a title="Easily listen for events" href="http://dojocampus.org/content/2008/02/29/preface-to-dnd-topics/" target="_blank"><strong>Easily listen for events</strong></a><br />
</span>Custom events and Dom Events are all well and good for method-to-method functionality. It is a really common use case to connect some event happening to call another function, but when you get into really ambiguous, large applications, you need some mechanism to just say “hey, something has happened, act accordingly” … dojo.publish and dojo.subscribe provide just that mechanism.<br />
<a title="Easily listen for events" href="http://dojocampus.org/content/2008/02/29/preface-to-dnd-topics/">View tutorial &gt;&gt;</a></li>
<li><strong><a title="Rounded tabs with themes" href="http://dojocampus.org/content/2008/02/22/make-your-own-rounded-tabs-with-dijit-theming/" target="_blank">Rounded tabs with themes</a></strong><br />
Everybody likes rounded buttons, rounded page elements and last but not least, rounded tabs. Fortunately dijit comes with great theming possibilities, so I will show you how you can make your own fancy rounded tabs using a simple image sprite and a couple of CSS classes.<br />
<a title="Rounded tabs with themes" href="http://dojocampus.org/content/2008/02/22/make-your-own-rounded-tabs-with-dijit-theming/" target="_blank">View tutorial &gt;&gt;</a></li>
<li><strong><a title="Separating Content from Presentation" href="http://dojocampus.org/content/2008/06/18/separating-content-from-presentation-ajax/" target="_self">Separating Content from Presentation</a></strong><br />
One of the cool things about Dojo is the dojo.xhrGet() function. It’s powerful because it makes transparent the browser dependent transports that make AJAX possible. In this cookie, we’re going to explore a simple use case in Dojo to separate content from the presentation of a page.<br />
<a title="Separating Content from Presentation" href="http://dojocampus.org/content/2008/06/18/separating-content-from-presentation-ajax/">View tutorial &gt;&gt;</a><br />
<span style="font-weight: normal;"><br />
</span></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2009/04/08/5-easy-tutorials-for-advanced-javascript-using-dojo/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Short JavaScript Frameworks Survey</title>
		<link>http://www.kylehayes.info/2009/03/04/short-javascript-frameworks-survey/</link>
		<comments>http://www.kylehayes.info/2009/03/04/short-javascript-frameworks-survey/#comments</comments>
		<pubDate>Wed, 04 Mar 2009 08:03:00 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Dojo]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[qooxdoo]]></category>
		<category><![CDATA[YUI]]></category>
		<category><![CDATA[zk]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/blog/index.cfm/2009/03/04/Short-JavaScript-Frameworks-Survey</guid>
		<description><![CDATA[In an effort to better understand how developer&#8217;s feel about a particular JavaScript framework they use on a daily basis or in their projects, I have created a short survey. I would be very grateful for you to take this survey and to pass it on to others if you would be so kind. I [...]]]></description>
			<content:encoded><![CDATA[<p>In an effort to better understand how developer&#8217;s feel about a particular JavaScript framework they use on a daily basis or in their projects, I have created a <a href="http://spreadsheets.google.com/viewform?formkey=cE1nWDhnRzFwdUhMRlRaNV9Tc183UEE6MA..">short survey</a>.</p>
<p>I would be very grateful for you to <a href="http://spreadsheets.google.com/viewform?formkey=cE1nWDhnRzFwdUhMRlRaNV9Tc183UEE6MA..">take this survey</a> and to pass it on to others if you would be so kind.</p>
<p>I understand that the data that I receive from this will most likely be skewed and extremely inaccurate on a broader level, nevertheless I am quite curious about the topic. In addition, I will most likely be spreading the word on the results of this survey. In addition, I&#8217;m also aware of the <a href="http://blog.creonfx.com/javascript/mootools-vs-jquery-vs-prototype-vs-yui-vs-dojo-comparison-revised">existing posts</a> available in regards to the measured speed of these frameworks.</p>
<p>Thanks!</p>
<p><a href="http://spreadsheets.google.com/viewform?formkey=cE1nWDhnRzFwdUhMRlRaNV9Tc183UEE6MA..">Please take this short survey on JavaScript Frameworks</a></p>
<p>Alternatively you can fill out the form here:<br />
<iframe src="http://spreadsheets.google.com/embeddedform?key=pMgX8gG1puHLFTZ5_Ss_7PA" width="450" height="600" frameborder="0" marginheight="0" marginwidth="0">Loading&#8230;</iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2009/03/04/short-javascript-frameworks-survey/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Reliably Sync Google Calendar with iCal on Your Mac</title>
		<link>http://www.kylehayes.info/2008/08/27/reliably-sync-google-calendar-with-ical-on-your-mac/</link>
		<comments>http://www.kylehayes.info/2008/08/27/reliably-sync-google-calendar-with-ical-on-your-mac/#comments</comments>
		<pubDate>Wed, 27 Aug 2008 21:08:00 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/blog/index.cfm/2008/08/27/Reliably-Sync-Google-Calendar-with-iCal-on-Your-Mac</guid>
		<description><![CDATA[Ever since I have converted over to using Gmail&#8217;s online interface, I have also been using Google Calendar ever so frequently. The workflow Google invented for these products is very efficient and I enjoy using both of them. While Google Calendar is great in that I can view and edit it anywhere, it&#8217;s not so [...]]]></description>
			<content:encoded><![CDATA[<p>Ever since I have converted over to using Gmail&#8217;s online interface, I have also been using Google Calendar ever so frequently. The workflow Google invented for these products is very efficient and I enjoy using both of them.</p>
<p>While Google Calendar is great in that I can view and edit it anywhere, it&#8217;s not so great, when I am not somewhere there is an Internet connection for my computer, or for my iPod Touch. One way I attempted a while back in keeping the these calendars in sync, was to use the private iCalendar address that Google provides for my calendar. The issue I quickly found was that is a read only link of course, I needed to be able to add events via my iPod Touch or iCal.</p>
<p>I stumbled upon a little product known as Spanning Sync, which at the time was in private beta. After a couple of weeks of signing up to be notified when they were opening more beta spots, I garnered an invitation to the beta. I have been a loyal user ever since.</p>
<p>Spanning Sync does an incredible job at syncing your Google Calendar with any of your Mac Calendars (iCal, Entourage, etc.). It uses a centralized syncing engine that is always being improved on that is extremely accurate and very efficient. I have my preferences set to sync every 10 minutes. When I add an event on Google Calendar, I can be assured that when I go home, that same even will be sitting in the iCal database waiting for me.</p>
<p>You don&#8217;t have to keep iCal open all the time either for all this to work. iCal actually reads it&#8217;s data from a centralized user account database that is stored on your Mac. Spanning Sync, syncs with that very database even when iCal is closed. In addition, they give you many options for which you can choose the calendars you would like to sync from iCal to Google Calendar.</p>
<p><a href="http://spanningsync.com/?r=6T7TYY">I highly recommend you give them a try by signing up for a 15-day trial</a>. And, if you click through my site, you&#8217;ll save $5 on the annual subscription (which is normally $25, which I find to be more than reasonable if it means having my life synced up so well).</p>
<p>One final note, they are a company built off of great morals. They really respect their user&#8217;s wishes and are very attentive to the customer support they offer.</p>
<p>Leave comments below if you have tried them before, and what your experiences were or are.</p>
<p><a href="http://spanningsync.com/?r=6T7TYY">Click here to save $5 on Spanning Sync!</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2008/08/27/reliably-sync-google-calendar-with-ical-on-your-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Good Enough to Touch: Texas Hold&#8217;em App</title>
		<link>http://www.kylehayes.info/2008/07/23/good-enough-to-touch-texas-holdem/</link>
		<comments>http://www.kylehayes.info/2008/07/23/good-enough-to-touch-texas-holdem/#comments</comments>
		<pubDate>Wed, 23 Jul 2008 12:07:00 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/blog/index.cfm/2008/07/23/Good-Enough-to-Touch-Texas-Holdem</guid>
		<description><![CDATA[Uploaded with plasq&#8216;s Skitch! In a response to Brian Rinaldi&#8217;s post Good Enough to Touch? Apps for the iPod Touch, I&#8217;ve decided to compose my first guest post of a review of the new Texas Hold&#8217;em game offered on the recently released App Store for iPhone and iPod Touch owners. I&#8217;m a huge fan of [...]]]></description>
			<content:encoded><![CDATA[<div class="thumbnail" style="float:left; padding-right:10px; padding-bottom:10px;"><a href="http://skitch.com/kylehayes/t192/organizer"><img src="http://img.skitch.com/20080723-guhtjbbx33bdh5ah9xu2cexcjg.preview.jpg" alt="Organizer" /></a><br /><span style="font-family: Lucida Grande, Trebuchet, sans-serif, Helvetica, Arial; font-size: 10px; color: #808080">Uploaded with <a href="http://plasq.com/">plasq</a>&#8216;s <a href="http://skitch.com">Skitch</a>!</span></div>
<p>In a response to Brian Rinaldi&#8217;s post <a href="http://www.remotesynthesis.com/post.cfm/good-enough-to-touch-apps-for-the-ipod-touch" alt="Go to blog article 'Good Enough to Touch? Apps for the iPod Touch'"><em>Good Enough to Touch? Apps for the iPod Touch</em></a>, I&#8217;ve decided to compose my first guest post of a review of the new Texas Hold&#8217;em game offered on the recently released <a href="http://www.apple.com/iphone/appstore/">App Store</a> for iPhone and iPod Touch owners.</p>
<p>I&#8217;m a huge fan of the classic poker game, Texas Hold&#8217;em or Hold&#8217;em for short, and have been for a few years now. I find it more exciting than traditional 5-card draw/stud&#8211;not to mention better odds of winning. I&#8217;m always on the lookout for a good electronic rendition of the game. Browsing the App Store, I found one that received extremely good reviews and for a price of $4.99, I couldn&#8217;t resist.</p>
<p>After playing for a few minutes, I was addicted to the beautiful graphics and in-game integrated video of live action opponents&#8211;each one dressed atypically as a poker aficionado. The game incorporates superb touch interaction while coupling with the unwritten style of playing Hold&#8217;em (e.g., double-tapping to Check). When betting, a cleverly placed spinner graphic allows you to easily, though slightly inaccurately, change your bet higher or lower. </p>
<p>Hold&#8217;em intelligently takes advantage of iPhone/iPod&#8217;s smart rotation technology to switch screen modes. Doing so changes from a vertical upright view of the players to a bird&#8217;s eye view of the table and each player&#8217;s profile.</p>
<p>While the game offers the opportunity to play in various different environments (e.g., Garage, Paris, Cruise ship, Las Vegas), they are not all accessible upon your first play. The game is centered around the tournament style where you must win a game starting at the Garage table to accumulate enough money to fund your buy-in to a table in a more upscale environment. As you accumulate enough money, the chances of winning a tournament becomes increasingly difficult as requirements of winning multiple tables comes into play.</p>
<p>The <acronym title="Artificial Intelligence">AI</acronym> is equally impressive and more advanced for a standard off-the-shelf electronic Hold&#8217;em in that the <em>characters</em> with whom you play each have their own style of playing the game in how they bet and bluff.</p>
<p>Another perk that this game offers is the ability to play in a multiplayer environment with other iPhone/iPod Touch owners within the same WiFi network. While the odds are that you will be able to find another user who happens to have purchased the game and who happens to be playing it on your WiFi network are slim-to-none, it&#8217;s a great idea to encourage your friends to purchase the game and participate in this mode.</p>
<p>Overall, I highly recommend this game for both iPhone and iPod Touch users as it incorporates all the great features that you have come to love with these excellent touch-enabled devices. Mutiplayer via WiFi is optional which is great for iPod Touch owners. If you have your headphones handy, plug them in for enjoyable music serenading a friendly game of Hold&#8217;Em.</p>
<div class="thumbnail"><a href="http://skitch.com/kylehayes/tuyb/texas-holdem-table"><img src="http://img.skitch.com/20080723-nf47ty29gdch3pabnxrdrfxr2d.preview.jpg" alt="Texas Hold'em - Table" /></a><br /><span style="font-family: Lucida Grande, Trebuchet, sans-serif, Helvetica, Arial; font-size: 10px; color: #808080">Uploaded with <a href="http://plasq.com/">plasq</a>&#8216;s <a href="http://skitch.com">Skitch</a>!</span></div>
<div class="thumbnail"><a href="http://skitch.com/kylehayes/tuyj/texas-holdem-hand-strength"><img src="http://img.skitch.com/20080723-m66duukb6ijsjaqc96b9thpf7m.preview.jpg" alt="Texas Hold'em - Hand Strength" /></a><br /><span style="font-family: Lucida Grande, Trebuchet, sans-serif, Helvetica, Arial; font-size: 10px; color: #808080">Uploaded with <a href="http://plasq.com/">plasq</a>&#8216;s <a href="http://skitch.com">Skitch</a>!</span></div>
<div class="thumbnail"><a href="http://skitch.com/kylehayes/tuyt/texas-holdem-a-player"><img src="http://img.skitch.com/20080723-py1a95ti9ii4t4p91nxk8hyhb7.preview.jpg" alt="Texas Hold'em - A player" /></a><br /><span style="font-family: Lucida Grande, Trebuchet, sans-serif, Helvetica, Arial; font-size: 10px; color: #808080">Uploaded with <a href="http://plasq.com/">plasq</a>&#8216;s <a href="http://skitch.com">Skitch</a>!</span></div>
]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2008/07/23/good-enough-to-touch-texas-holdem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interface Builder 3 and Creating Classes</title>
		<link>http://www.kylehayes.info/2008/04/24/interface-builder-3-and-creating-classes/</link>
		<comments>http://www.kylehayes.info/2008/04/24/interface-builder-3-and-creating-classes/#comments</comments>
		<pubDate>Thu, 24 Apr 2008 08:04:00 +0000</pubDate>
		<dc:creator>Kyle Hayes</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[interface builder]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://www.kylehayes.info/blog/index.cfm/2008/04/24/Interface-Builder-3-and-Creating-Classes</guid>
		<description><![CDATA[Apple made many changes with the release of XCode 3 and Interface Builder 3 with the OS X Leopard operating system for the Mac. The workflow for these toolsets is very good as to be expected. With the release of these latest versions they aimed to provide an even more strict bound toolset to the [...]]]></description>
			<content:encoded><![CDATA[<p>Apple made many changes with the release of XCode 3 and Interface Builder 3 with the OS X Leopard operating system for the Mac. The workflow for these toolsets is very good as to be expected. With the release of these latest versions they aimed to provide an even more strict bound toolset to the ideals of the MVC paradigm.</p>
<p>In previous versions of Interface Builder, whilst creating your views for your application, you could quickly create a subclass of an existing object, say NSObject, by clicking the &#8220;Classes&#8221; tab and Control-clicking a class to subclass it into your own custom class. Apple realized this was probably not the best form as it allowed you to basically be creating part of the model within the wrong part of the IDE. The model should be created within XCode itself where all the other classes are developed. In Interface Builder 3, you can no longer subclass. You need to go back to XCode and create your class there, then when you go into Interface Builder, drag a generic Object/ObjectController and drop it in your nib. From there, inside the Inspector under Name, start typing the name of the custom class you created in XCode and push return after it has auto-completed. This will in turn apply the parent class to your custom class.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.kylehayes.info/2008/04/24/interface-builder-3-and-creating-classes/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
