<?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>Sam Farmer&apos;s Blog on App Development</title>
			<link>http://www.samfarmer.com/blog/index.cfm</link>
			<description>Sam Farmer -- App Development</description>
			<language>en-us</language>
			<pubDate>Fri, 18 May 2012 12:00:30 -0700</pubDate>
			<lastBuildDate>Tue, 15 May 2012 07:15:00 -0700</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>sam@samfarmer.com</managingEditor>
			<webMaster>sam@samfarmer.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>sam@samfarmer.com</itunes:email>
				<itunes:name></itunes:name>
			</itunes:owner>
			
			<itunes:explicit>no</itunes:explicit>
			
			
			
			
			
			<item>
				<title>ColdFusion 10 is Released!</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/5/15/ColdFusion-10-is-Released</link>
				<description>
				
				&lt;p&gt;Its out of beta and up for grabs...&lt;a href=&quot;http://www.adobe.com/products/coldfusion-family.html&quot;&gt;ColdFusion 10 has been released!&lt;/a&gt; (I make a small appearance in the intro video as well.)&lt;/p&gt;

&lt;p&gt;I wrote about ColdFusion 10 back in February &lt;a href=&quot;http://www.samfarmer.com/blog/index.cfm/2012/2/24/So-What-is-ColdFusion-10&quot;&gt;read my thoughts&lt;/a&gt;.
				
				</description>
				
				
				<category>ColdFusion</category>
				
				<category>ColdFusion 10</category>
				
				<pubDate>Tue, 15 May 2012 07:15:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/5/15/ColdFusion-10-is-Released</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Crack your laptop open, we&apos;ll crack a beer at the Hackathon</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/5/14/Crack-your-laptop-open-well-crack-a-beer-at-the-Hackathon</link>
				<description>
				
				&lt;p&gt;My buddy, Adam Tuttle, has organized a Hackathon at cf.Objective() to code for his &lt;a href=&quot;http://fusiongrokker.com/post/be-the-change&quot;&gt;CFScript Community Components&lt;/a&gt; project. The &lt;a href=&quot;http://fusiongrokker.com/post/free-booze-for-hackers-at-cfobjective&quot;&gt;&lt;b&gt;hackathon is taking place at 7pm&lt;/b&gt;&lt;/a&gt; on Friday. That sounds like a time when its better to have a beer in hand. So, I spoke to some good people at Adobe and they agreed to buy everyone who participates a drink!&lt;/p&gt;

&lt;p&gt;So, come along, crack open your laptop and make ColdFusion better and we&apos;ll crack open a beer, or drink of preference, for you!&lt;/p&gt;
				
				</description>
				
				
				<category>cf.Objective()</category>
				
				<category>ColdFusion</category>
				
				<pubDate>Mon, 14 May 2012 07:11:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/5/14/Crack-your-laptop-open-well-crack-a-beer-at-the-Hackathon</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>10 Little Ones: Automatic CFC Init (#5)</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/4/30/10-Little-Ones-Automatic-CFC-Init-5</link>
				<description>
				
				&lt;p&gt;One of the language enhancements in &lt;a href=&quot;http://labs.adobe.com/wiki/index.php/ColdFusion_10&quot;&gt;ColdFusion 10 beta&lt;/a&gt; is implicit/automatic constructors for CFC&apos;s. In short this means that if a component has defined properties and there is no init function ColdFusion will look to match the parameters passed in to the properties. Lets take a look at how it works:

&lt;code&gt;
component accessors=&quot;true&quot; {

property firstname;
property lastname;

}
&lt;/code&gt;

&lt;code&gt;
&lt;cfscript&gt;	
user = new user( firstname=&quot;Homer&quot;, lastname=&quot;Simpson&quot; );

writeDump( var=user, format=&quot;text&quot;, showudfs=false );
&lt;/cfscript&gt;
&lt;/code&gt;

&lt;p&gt;Which will produce:&lt;/p&gt;

&lt;pre&gt;[cfc1] component user

Properties: 

	firstname: Homer 

	lastname: Simpson

&lt;/pre&gt;

&lt;p&gt;Parameters can be passed in as name-value pairs or as a struct:&lt;p&gt;

&lt;code&gt;
&lt;cfscript&gt;
user = new user( {firstname=&quot;Homer&quot;, lastname=&quot;Simpson&quot;} );
&lt;/cfscript&gt;
&lt;/code&gt;
				
				</description>
				
				
				<category>10 Little Ones</category>
				
				<category>ColdFusion 10</category>
				
				<pubDate>Mon, 30 Apr 2012 18:41:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/4/30/10-Little-Ones-Automatic-CFC-Init-5</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>10 Little Ones: Specify Language Version on Per Project Basis in Builder (#4)</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/3/28/10-Little-Ones-Specify-Language-Version-on-Per-Project-Basis-in-Builder-4</link>
				<description>
				
				&lt;p&gt;The &lt;a href=&quot;http://labs.adobe.com/technologies/coldfusion10/&quot;&gt;ColdFusion 10 beta also includes ColdFusion Builder 2.0.1 beta&lt;/a&gt; (scroll down page). One nice addition is the option to specify language version on a per project basis rather than per editor.&lt;/p&gt;

&lt;p&gt;For developers who work on multiple versions this is a great improvement.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://www.samfarmer.com/blog/images/projectOptions.png&quot; /&gt;&lt;/p&gt;
				
				</description>
				
				
				<category>10 Little Ones</category>
				
				<category>ColdFusion 10</category>
				
				<category>ColdFusion Builder</category>
				
				<pubDate>Wed, 28 Mar 2012 19:59:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/3/28/10-Little-Ones-Specify-Language-Version-on-Per-Project-Basis-in-Builder-4</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>10 Little Ones: Write and Append Enhancements for cffile (#3)</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/3/15/10-Little-Ones-Write-and-Append-Enhancements-for-cffile-3</link>
				<description>
				
				&lt;p&gt;An enhancement in ColdFusion 10 to cffile makes it very easy to write or append content to a file on physical disk, Amazon S3 or RAM disk.&lt;/p&gt;

&lt;p&gt;In the following example a new file will be created:
&lt;code&gt;
&lt;cffile action=&quot;append&quot; file=&quot;#expandPath(&quot;test.txt&quot;)#&quot;&gt;
Here is my file content
With several lines
That go on
&lt;/cffile&gt;
&lt;/code&gt;
&lt;br&gt;
&lt;p&gt;In this example the content is appended to the file:
&lt;code&gt;
&lt;cffile action=&quot;append&quot; file=&quot;ram://test.txt&quot;&gt;
And now
appending a couple lines
&lt;/cffile&gt;
&lt;/code&gt;
				
				</description>
				
				
				<category>10 Little Ones</category>
				
				<category>ColdFusion 10</category>
				
				<pubDate>Thu, 15 Mar 2012 20:14:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/3/15/10-Little-Ones-Write-and-Append-Enhancements-for-cffile-3</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>10 Little Ones: For in loop for Queries (#2)</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/3/7/10-Little-Ones-For-in-loop-for-Queries-2</link>
				<description>
				
				&lt;p&gt;
&lt;a href=&quot;http://labs.adobe.com/wiki/index.php/ColdFusion_10&quot;&gt;ColdFusion 10&lt;/a&gt;, now in public beta, adds for-in loops for query recordsets. The variable name in the for loop will reference each column by the column name.
&lt;/p&gt;
&lt;p&gt;The currentrow can be referenced by &lt;em&gt;queryname&lt;/em&gt;.currentrow as seen in the example below. Same for recordcount.
&lt;code&gt;
&lt;cfscript&gt;
getArt = new query( sql=&quot;SELECT artName, price FROM Art&quot; ).execute().getResult();
for ( row in getArt ) {
	writeOutput( &quot;&lt;li&gt;&quot; &amp; getArt.currentRow &amp; &quot;: &quot; &amp; row.artName &amp; &quot; &quot; &amp; row.price &amp; &quot;&lt;/li&gt;&quot;);
}
&lt;/cfscript&gt;
&lt;/code&gt;
				
				</description>
				
				
				<category>10 Little Ones</category>
				
				<category>ColdFusion 10</category>
				
				<pubDate>Wed, 07 Mar 2012 19:35:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/3/7/10-Little-Ones-For-in-loop-for-Queries-2</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>10 Little Ones: Memory and CPU Figures (#1)</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/2/29/10-Little-Ones-Memory-and-CPU-Figures-1</link>
				<description>
				
				&lt;a href=&quot;http://labs.adobe.com/wiki/index.php/ColdFusion_10&quot;&gt;ColdFusion 10 beta&lt;/a&gt; adds three new functions that provide system stats:
&lt;ul&gt;
&lt;li&gt;getCPUUsage()&lt;/li&gt;
&lt;li&gt;getSystemFreeMemory()&lt;/li&gt;
&lt;li&gt;getSystemTotalMemory()&lt;/li&gt;
&lt;/ul&gt;
The first returns a percentage while the other two return the amount of bytes. Here is a quick example:&lt;/p&gt;
&lt;code&gt;

&lt;b&gt;CPU Usage&lt;/b&gt; #getCPUUsage()#&lt;br&gt;&lt;br&gt;

&lt;b&gt;System Memory&lt;/b&gt;&lt;br&gt;
Total #getSystemTotalMemory()#&lt;br&gt;
Free #getSystemFreeMemory()#&lt;br&gt;

% Free: #numberFormat( ( getSystemFreeMemory()/getSystemTotalMemory() ) *100, &quot;999.99&quot;)#
&lt;/code&gt;

&lt;p&gt;Which produces&lt;hr&gt;
&lt;b&gt;CPU Usage&lt;/b&gt; 24.875624&lt;br&gt;&lt;br&gt;

&lt;b&gt;System Memory&lt;/b&gt;&lt;br&gt;
Total 8589934592&lt;br&gt;
Free 1640640512&lt;br&gt;
% Free:  19.10 

&lt;hr&gt;
Pretty straightforward and information that would look good in the new &lt;a href=&quot;http://www.boyzoid.com/blog/index.cfm/2012/2/29/ColdFusion-10--Client-Side-Charting-Demo&quot;&gt;charting functionality...&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;(This is the first in a series to show off some of the smaller additions to ColdFusion 10).&lt;/p&gt;
&lt;p&gt;
				
				</description>
				
				
				<category>10 Little Ones</category>
				
				<category>ColdFusion 10</category>
				
				<pubDate>Wed, 29 Feb 2012 20:12:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/2/29/10-Little-Ones-Memory-and-CPU-Figures-1</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>So What is ColdFusion 10?</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/2/24/So-What-is-ColdFusion-10</link>
				<description>
				
				&lt;p&gt;Coming 20 months after ColdFusion 9.0.1 &amp;mdash; which was way more than a &quot;.0.1 release&quot; &amp;mdash; &lt;a href=&quot;http://labs.adobe.com/wiki/index.php/ColdFusion_10&quot;&gt;ColdFusion 10 public beta is here&lt;/a&gt;. So what is ColdFusion 10? Lets start with looking at the new features.&lt;/p&gt;

&lt;h3&gt;New Features&lt;/h3&gt;

&lt;p&gt;REST webservices&lt;br&gt;
Native support for REST webservices from within a ColdFusion component (cfc) is as simple as adding a few attributes to the component, functions and arguments. Full support is baked in for the HTTP request model of POST, GET, PUT, DELETE, HEAD and OPTIONS. (And I&apos;m not shouting thats how HTTP requests are referred to :) ).&lt;/p&gt;

&lt;p&gt;WebSockets&lt;br&gt;
In the never ending quest to communicate faster comes WebSockets. In the middle of the last decade came AJAX which sped up web applications. Now comes, WebSockets which takes the fast and offers very fast in return. And it does it by sending less data around. How? WebSockets communicate over TCP and allow the server and browser to both send messages to each other when needed. With AJAX similar functionality is achieved by polling -- sending a request from the browser to server somewhere between every 1 to 60+ seconds. WebSockets offer a better way.&lt;/p&gt;

&lt;p&gt;The ColdFusion implementation has some niceties; sharing of authentication over HTTP, supports browsers without a native implementation (hello IE!) via a Flash plugin; supports both subscriber and publisher model and point-to-point communication. While other features use third-party tools or open-source libraries, WebSockets is one area where the ColdFusion team have written the implementation completely.&lt;/p&gt;

&lt;p&gt;Tomcat&lt;br&gt;
The default J2EE container is now Tomcat replacing the aging JRUN.  This will make little difference to many but will make it easier to deploy ColdFusion to many cloud based systems both public and private.&lt;/p&gt;

&lt;p&gt;Security&lt;br&gt;
While its always been possible to write secure ColdFusion applications the native support for OWASP ESAPI  functions will make it easier and help meet the ever changing security threats. Features also include items such as settings to make session cookies be http only and SSL-only cookies as well as harder session techniques such as sessionRotate. [Updated 2/26: Originally I wrote OSWAPI instead of OWASP ESAPI. Thanks to &lt;a href=&quot;http://www.12robots.com/&quot;&gt;Jason Dean&lt;/a&gt; for the correction.]&lt;/p&gt;

&lt;p&gt;ORM Search&lt;br&gt;
Full-text search, powered by Lucene, comes to ORM entities. Searches can use boost, sounds like, range and other features of Lucene searches including speed.&lt;/p&gt;

&lt;p&gt;Closures&lt;br&gt;
Every developers favorite JavaScript technique even when they are not sure what they are is now in ColdFusion.&lt;/p&gt;

&lt;p&gt;Java First Class&lt;br&gt;
JavaLoader has now been &quot;Mandeled&quot; and built into the language allowing for loading of Java classes placed anywhere on the system. That&apos;s great for ColdFusion developers. What is great for Java developers is that Java can now access CFCs from within a Java class. (And if you are both a ColdFusion and Java developer you are golden!).&lt;/p&gt;

&lt;p&gt;Hotfix Updater&lt;br&gt;
The often complicated hotfix process is now as simple as clicking Download and Install. Woo-hoo.&lt;/p&gt;

&lt;p&gt;The Almost New Features
While technically improvements to existing features some of the improvements go so deep that they feel more like new features.&lt;/p&gt;

&lt;p&gt;Scheduler&lt;br&gt;
Priorities, cron commands, chaining, application level tasks, grouping, improved error handling the list goes on. While previous attempts at using the scheduler for complicated business needs felt like using duct tape, these improvements should usher in a brand new world.&lt;/p&gt;

&lt;h3&gt;Improvements&lt;/h3&gt;

&lt;p&gt;Language Enhancements&lt;br&gt;
Over twenty enhancements in all but my top three are using colon in implicit structs, dynamically calling object methods in script and implicit notation for getters and settings. &lt;/p&gt;


&lt;p&gt;Display Improvements&lt;br&gt;
The Media Player tag has been updated to include HTML5 video format while the map tag has the option to find the users geolocation.&lt;/p&gt;

&lt;p&gt;HTML5 Charting&lt;br&gt;
ColdFusion charts look sharp again. Real sharp. Such are the changes this one came close to being in the &quot;Almost New Features&quot; category.&lt;/p&gt;

&lt;p&gt;Caching&lt;br&gt;
Using regions and advanced configuration of Ehcache is much easier. But the biggest change is that cfquery caching uses Ehcache by default.&lt;/p&gt;

&lt;p&gt;Exchange 2010&lt;br&gt;
Support has been added for Exchange 2010 servers.&lt;/p&gt;

&lt;p&gt;Searching with Solr&lt;br&gt;
Unlimited custom fields. Importing data directly from databases and then accessing via ColdFusion search tags are just a few of the niceties added here. On a related note Verity is no longer shipped.&lt;/p&gt;

&lt;p&gt;SOAP webservices&lt;br&gt;
Axis 2 webservices are now supported along with Axis 1 webservices. From what I understand this was quite an engineering feat to maintain backward compatibility while providing support to more modern techniques.&lt;/p&gt;

&lt;h3&gt;Whats missing&lt;/h3&gt;
&lt;p&gt;The hardest part of software (and I include languages and frameworks in this) is deciding what not to add or upgrade. With the caveat out of the way I am disappointed that the engine for converting HTML to PDF, and the underlying JavaScript libraries behind the various cfajax functionality where not updated. Depending on your applications needs these may be big omissions or no big deal at all.&lt;/p&gt;

&lt;h3&gt;So, what is ColdFusion 10?&lt;/h3&gt;
&lt;p&gt;ColdFusion is often easier to think about as a tool-chest and one that keeps adding useful features and improvements with each release. ColdFusion 10 continues this with a pretty wide set of new features and improvements but I think three additions are quite notable. &lt;/p&gt;

&lt;p&gt;First, the language enhancements, and I&apos;m including closures and Java integration here, point to a determination to make the syntax lean and current. That is a good thing.&lt;/p&gt;

&lt;p&gt;Second, the addition of REST baked in, points to ColdFusion servers playing a role both in talking with other API&apos;s but also providing a solid back end to the increasing number  of front-end JavaScript MV* frameworks. It feels as though the ColdFusion team felt this was a vital area to stay current in (and some may argue come-up-to-current in).&lt;/p&gt;

&lt;p&gt;Third is the addition of WebSockets. Due to its release cycles ColdFusion is rarely on the cutting edge of web technologies. WebSockets are cutting edge (as proof they don&apos;t work in IE9 -- although ColdFusion 10 makes them work) and it feels exciting that ColdFusion developers can start to build WebSocket based applications and functionality.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://labs.adobe.com/wiki/index.php/ColdFusion_10&quot;&gt;ColdFusion 10 is now in public beta&lt;/a&gt;.&lt;/p&gt;
				
				</description>
				
				
				<category>ColdFusion 10</category>
				
				<pubDate>Fri, 24 Feb 2012 07:00:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/2/24/So-What-is-ColdFusion-10</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Looking for a ColdFusion job?</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/2/2/Looking-for-a-ColdFusion-job</link>
				<description>
				
				&lt;p&gt;A month ago Raymond Camden blogged about &lt;a href=&quot;http://www.raymondcamden.com/index.cfm/2012/1/4/Looking-for-a-ColdFusion-job&quot;&gt;ColdFusion jobs at REX Technologies&lt;/a&gt;. From that posting we received many excellent candidates and made hires but still have some open spots. If you want to work on an excellent team (including three presenters at cf.Objective() &lt;a href=&quot;http://www.cfobjective.com/sessions/managing-your-software-development-lifecycle/&quot;&gt;1&lt;/a&gt;, &lt;a href=&quot;http://www.cfobjective.com/sessions/automated-ui-testing-with-cfselenium-mxunit-ant-and-jenkinsci/&quot;&gt;2&lt;/a&gt;, &lt;a href=&quot;http://www.cfobjective.com/sessions/searching-orm-first-why-then-how/&quot;&gt;3&lt;/a&gt;) in one of the locations below contact Chris Seim or &lt;a href=&quot;http://www.samfarmer.com/blog/contact.cfm&quot;&gt;myself&lt;/a&gt;.&lt;/p&gt;

&lt;blockquote&gt;REX Technologies is looking to increase the size of their ColdFusion development team. There are Application Developer and Sr. Application Developer positions open. This is an opportunity to join a skilled ColdFusion development team building an enterprise application for a large insurance company. We are looking for developers in the following locations: Omaha NE, Warwick RI, Henderson NV, Tampa FL, or Ontario CA. Please contact Chris Seim at cseim@riskexchange.com for more information or to apply.&lt;/blockquote&gt;
				
				</description>
				
				
				<category>ColdFusion</category>
				
				<pubDate>Thu, 02 Feb 2012 07:06:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/2/2/Looking-for-a-ColdFusion-job</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Add a keyboard shortcut to a Builder extension</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/1/17/Add-a-keyboard-shortcut-to-a-Builder-extension</link>
				<description>
				
				&lt;p&gt;To set up a keyboard shortcut to a ColdFusion Builder extension:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Use the extension at least once.&lt;/li&gt;
&lt;li&gt;Open Preferences &gt; General &gt; Keys&lt;/li&gt;
&lt;li&gt;In the &apos;type filter text&apos; field type part of the extension name&lt;/li&gt;
&lt;li&gt;Select the extension&lt;/li&gt;
&lt;li&gt;Enter a binding. Click on &apos;Apply&apos;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;So far I have found this works with extensions that open a view. I find it quite useful for &lt;a href=&quot;https://github.com/samfarmer/codey&quot;&gt;Codey&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I&apos;ve always liked how flexible Eclipse is with its keyboard shortcuts. Two of my customized favorites are command-shift-Z (control-shift-Z) for a quick view of the navigator and command-shift-A (control-shift-A) for the MXUnit view (good for making reds go green).&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://www.samfarmer.com/blog/images/builderShortcut.png&quot; /&gt;&lt;/p&gt;
				
				</description>
				
				
				<category>ColdFusion Builder</category>
				
				<pubDate>Tue, 17 Jan 2012 18:30:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/1/17/Add-a-keyboard-shortcut-to-a-Builder-extension</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Excited to Speak at cf.Objective() 2012 (Plus job opportunities)</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2012/1/3/Excited-to-Speak-at-cfObjective-2012</link>
				<description>
				
				&lt;p&gt;I am excited and honored to have been chosen to speak at cf.Objective() 2012 on &lt;a href=&quot;http://www.cfobjective.com/sessions/searching-orm-first-why-then-how/&quot;&gt;Searching ORM: First Why, Then How&lt;/a&gt;. This will be my first time speaking and attending cf.Objective as personal conflicts have generally kept me away in the past.&lt;/p&gt; There are some excellent &lt;a href=&quot;http://www.cfobjective.com/sessions/&quot;&gt;sessions this year&lt;/a&gt; and a whole tracked on &lt;a href=&quot;http://www.cfobjective.com/index.cfm/schedule/jsobjective/&quot;&gt;JavaScript dubbed js.Objective()&lt;/a&gt;

&lt;p&gt;Two of my colleagues are also speaking: Jason Delmore on &lt;a href=&quot;http://www.cfobjective.com/sessions/managing-your-software-development-lifecycle/&quot;&gt;Managing your Software Development LifeCycle&lt;/a&gt; and Steven Erat on &lt;a href=&quot;http://www.cfobjective.com/sessions/automated-ui-testing-with-cfselenium-mxunit-ant-and-jenkinsci/&quot;&gt;Automated UI Testing with CFSelenium, MXUnit, ANT, and JenkinsCI&lt;/a&gt;. If you would like to work with us we have openings in both Omaha and Providence. &lt;a href=&quot;http://www.samfarmer.com/blog/contact.cfm&quot;&gt;Contact me&lt;/a&gt; if your interested.&lt;/p&gt;
				
				</description>
				
				
				<category>cf.Objective()</category>
				
				<category>ColdFusion</category>
				
				<category>Conferences</category>
				
				<pubDate>Tue, 03 Jan 2012 07:52:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2012/1/3/Excited-to-Speak-at-cfObjective-2012</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Why ColdFusion&apos;s Future is Fine</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2011/11/14/Why-ColdFusions-Future-is-Fine</link>
				<description>
				
				&lt;p&gt;I am a developer and a big part of my programming is done with ColdFusion. Making me partially dependent on it for a living. Due to this I often evaluate its future. I also do this for plenty of other technology out there (jQuery, jQuery UI, Node.js, backbone.js, Sencha, Terracotta/ehcache are some I&apos;ve looked at in the past six months). I do this for personal reasons, so I can make enough money to put food on the table, and professional reasons as it is currently part of my job.&lt;/p&gt;

&lt;p&gt;In the past week Adobe has announced a change in strategy and pretty massive layoffs. As my buddy &lt;a href=&quot;http://twitter.com/#!/DanWilson/status/135421346967588865&quot;&gt;Dan Wilson put it on Twitter&lt;/a&gt;:
&lt;blockquote&gt;
Funny, I wondered where the netflix PR team went after their disaster earlier this year. Obviously, they went to Adobe.
&lt;/blockquote&gt;
As has been posted on various blogs this has mostly effected various parts of the Flash Platform.&lt;/p&gt;

&lt;p&gt;Due to nature of the news and the angst it has caused there have also been questions asked within the ColdFusion community about its future.&lt;/p&gt;

&lt;p&gt;My short response is: &lt;strong&gt;The future of ColdFusion is positive and in a good, strong position.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;My longer response and why is below.&lt;/p&gt;

&lt;p&gt;First ColdFusion makes money for Adobe. &lt;a href=&quot;http://twitter.com/#!/styggiti/status/135742259537784832&quot;&gt;Rob Brooks-Bilson wrote on Twitter&lt;/a&gt; over the weekend:
&lt;blockquote&gt;
The thing to remember with CF is that CF is profitable for Adobe.
&lt;/blockquote&gt;
I&apos;ve spoken to a lot of people about ColdFusion in the past three or four and everyone in a position to know has confirmed this.&lt;/p&gt;

&lt;p&gt;Second, at MAX, the ColdFusion team was quite bullish about showing features in the next version of ColdFusion. &lt;a href=&quot;http://www.samfarmer.com/blog/index.cfm/2011/10/24/Next-release-of-ColdFusion-has-websockets-closures-enhanced-security-and-more&quot;&gt;More.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, also over the past few years Adobe have invited me (and many others) to see their plans for ColdFusion. All of this information is confidential so I can&apos;t share it but, and I&apos;ll be careful here, part of that means knowing what future plans are and therefore knowing if they got changed. So, today came confirmation by ColdFusion Sales Engineer &lt;a href=&quot;http://blog.joshuaadams.com/index.cfm/2011/11/14/ColdFusion-Staying-the-Course&quot;&gt;Josh Adams that nothing has changed for ColdFusion&lt;/a&gt;:
&lt;blockquote&gt;
Following on the heels of the slew of Adobe announcements of last week, &lt;a href=&quot;http://www.terrenceryan.com/blog/post.cfm/coldfusion-zeus-is-still-in-development&quot;&gt;Adobe evangelist Terry Ryan released a blog post stating that ColdFusion Zeus is still under development and on schedule.&lt;/a&gt; We&apos;re still here--same leadership, engineers, and sales team as before last week--and we&apos;re still selling ColdFusion 9 and working hard on the next version of ColdFusion, codenamed ColdFusion Zeus.
&lt;/blockquote&gt;

(There is more in his blog entry as well, including information about Zeus release dates, so &lt;a href=&quot;http://blog.joshuaadams.com/index.cfm/2011/11/14/ColdFusion-Staying-the-Course&quot;&gt;do read it&lt;/a&gt;). &lt;/p&gt;

&lt;p&gt;Third, ColdFusion moved from the Flash Platform earlier this year and, thus, was not around for the changes to the Flash Platform that happened last week. Its worth reading a quote from Adam Lehman&apos;s &lt;a href=&quot;http://www.adrocknaphobia.com/post.cfm/the-modern-age-of-coldfusion&quot;&gt;blog entry announcing the change&lt;/a&gt;:
&lt;blockquote&gt;
The fact of the matter is Adobe just upped their commitment to ColdFusion in a HUGE way.
&lt;/blockquote&gt;&lt;/p&gt;

&lt;p&gt;Forth, ColdFusion is part of a big ecosystem in Java (and due to its .NET integration possibly also within an enterprises ecosystem). While the Flash Platform had to invent just about everything themselves, ColdFusion does not. ColdFusion can use  Java open source libraries (and often contribute to) and also improve the core language. Take two parts of ColdFusion 9 as an example, it can take Hibernate and make ORM ridiculously easy and improve the language itself via script based components.&lt;/p&gt;

&lt;p&gt;So, thats my long answer as to why I believe &lt;strong&gt;the future of ColdFusion is positive and in a good, strong position.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You may have noticed that in the opening paragraph I mentioned that I was &quot;partially dependent&quot; on ColdFusion. That is because as awesome as I think ColdFusion is (and others like jQuery, ORM) knowing &lt;em&gt;what&lt;/em&gt; a programming language can do is only part of being a great developer.  Its knowing &lt;em&gt;how&lt;/em&gt; to use languages that truly makes great developers. And, in my opinion, that is a process that involves constant learning, reading, practicing, trying new things, failing, succeeding and having fun. Most of that is up to you not a language. So, don&apos;t worry about ColdFusion -- it will be fine -- and spend time making yourself a better developer. Write more unit tests. Do the &lt;a href=&quot;http://blog.bittersweetryan.com/2011/11/screencast-getting-started-with.html&quot;&gt;ColdFusion Koans&lt;/a&gt;. Learn more about ORM. Find out what on is in jQuery 1.7. Investigate NoSQL. Read &lt;a href=&quot;http://pragprog.com/book/cfcar2/the-passionate-programmer&quot;&gt;The Passionate Programmer.&lt;/a&gt; Find out what AOP is. And whatever you do don&apos;t engage in FUD.&lt;/p&gt;
				
				</description>
				
				
				<category>ColdFusion</category>
				
				<pubDate>Mon, 14 Nov 2011 20:21:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2011/11/14/Why-ColdFusions-Future-is-Fine</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>debugClean, fixed for most Windows installs</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2011/10/26/debugClean-fixed-for-most-Windows-installs</link>
				<description>
				
				&lt;p&gt;D&apos;oh, I realized that debugClean had an issue with IIS and the different CGI variables it passes back.&lt;/p&gt;

&lt;p&gt;Anyhoo, its now fixed and can be downloaded from the &lt;a href=&quot;http://debugclean.riaforge.org/&quot;&gt;project home page&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;What it does&lt;/h3&gt;
&lt;div&gt;
Checks a file or folder for any debug code that should probably be stripped before moving to staging or production.&lt;br /&gt;&lt;br /&gt;Looks for ColdFusion tags:&lt;br /&gt; - cfdump&lt;br /&gt; - writeDump&lt;br /&gt; - cflog&lt;br /&gt; - writeLog&lt;br /&gt;&lt;br /&gt;Looks for JavaScript:&lt;br /&gt; - console.log&lt;br /&gt;&lt;br /&gt;The tags and functions it looks for can be configured to your taste in the _config.cfm file.
&lt;/div&gt;
				
				</description>
				
				
				<category>ColdFusion</category>
				
				<category>debugClean</category>
				
				<category>ColdFusion Builder</category>
				
				<pubDate>Wed, 26 Oct 2011 19:03:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2011/10/26/debugClean-fixed-for-most-Windows-installs</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Next release of ColdFusion has websockets, closures, enhanced security, REST and more</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2011/10/24/Next-release-of-ColdFusion-has-websockets-closures-enhanced-security-and-more</link>
				<description>
				
				&lt;p&gt;At Adobe MAX the ColdFusion team showed off some of the planned features in the next release code-named &quot;Zeus&quot;. Highlights include:
&lt;ul&gt;
&lt;li&gt;More security functions (using ESAPI)&lt;/li&gt;
&lt;li&gt;Closures&lt;/li&gt;
&lt;li&gt;REST built into components (classes). From the example shown specify a couple arguments to a function and it becomes a REST service.&lt;/li&gt;
&lt;li&gt;Websockets&lt;/li&gt;
&lt;li&gt;HTML 5 Charting (including a demo showing updating a chart via websockets &amp;mdash; in the Keeping Current video below)&lt;/li&gt;
&lt;li&gt;Tomcat as default engine&lt;/li&gt;
&lt;/ul&gt;&lt;/p&gt;

&lt;p&gt;After viewing both videos this is not the full list for ColdFusion Zeus but a nice primer of what is to come (and includes standard disclaimers that things may change).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Videos&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://tv.adobe.com/watch/max-2011-develop/keeping-current-with-coldfusion/&quot;&gt;Keeping Current with ColdFusion&lt;/a&gt; &amp;mdash; Provides a quick overview of ColdFusion 8 &amp; 9 but mostly covers what is in Zeus.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://tv.adobe.com/watch/max-2011-develop/whats-next-in-coldfusion/&quot;&gt;What&apos;s Next in ColdFusion&lt;/a&gt; &amp;mdash; Focused solely on ColdFusion Zeus and covers a lot of the new features&lt;/a&gt;&lt;/p&gt;
				
				</description>
				
				
				<category>ColdFusion</category>
				
				<pubDate>Mon, 24 Oct 2011 19:45:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2011/10/24/Next-release-of-ColdFusion-has-websockets-closures-enhanced-security-and-more</guid>
				
				
			</item>
			
		 	
			
			
			<item>
				<title>Slides and Code: 5 Ways To Improve Your App with ORM</title>
				<link>http://www.samfarmer.com/blog/index.cfm/2011/10/7/Slides-and-Code-5-Ways-To-Improve-Your-App-with-ORM</link>
				<description>
				
				
&lt;p&gt;Here are the slides and code from my Adobe MAX ColdFusion Unconference talk &lt;em&gt;5 Ways To Improve Your App with ORM&lt;/em&gt;:&lt;/p&gt;

&lt;object height=&quot;425&quot; width=&quot;550&quot;&gt;
	&lt;param name=&quot;movie&quot; value=&quot;http://slidesix.com/viewer/SlideSixViewer.swf?alias=5-Ways-To-Improve-Your-App-with-ORM&quot;/&gt;
	&lt;param name=&quot;menu&quot; value=&quot;false&quot;/&gt;
	&lt;param name=&quot;scale&quot; value=&quot;noScale&quot;/&gt;
	&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;/&gt;
	&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot; /&gt;
	&lt;embed src=&quot;http://slidesix.com/viewer/SlideSixViewer.swf?alias=5-Ways-To-Improve-Your-App-with-ORM&quot; allowscriptaccess=&quot;always&quot; allowFullScreen=&quot;true&quot; height=&quot;425&quot; width=&quot;550&quot; type=&quot;application/x-shockwave-flash&quot; /&gt;
&lt;/object&gt;

&lt;p&gt;&lt;b&gt;And the code&lt;/b&gt; which will set up the Derby DSNs and tables needed.&lt;/p&gt;

&lt;p&gt;Available as a download and from &lt;a href=&quot;https://github.com/samfarmer/improveApp&quot;&gt;Github&lt;/a&gt;. After installing:
&lt;ol&gt;
&lt;li&gt;Go to setUp.cfm&lt;/li&gt;
&lt;li&gt;Enter in your cfadmin password and click &apos;Make Datasources&apos;&lt;/li&gt;
&lt;li&gt;Go back to setUp.cfm and click on &apos;Go to App&apos;&lt;/li&gt;
&lt;/ol&gt;
&lt;/p&gt;

&lt;p&gt;All of the mini apps/examples I used in the demo will now work.&lt;br&gt;

&lt;img src=&quot;http://www.samfarmer.com/blog/images/ORMAppExample.png&quot; /&gt;

&lt;/p&gt;

				
				</description>
				
				
				<category>ORM</category>
				
				<category>ColdFusion 9.0.1</category>
				
				<category>ColdFusion 9</category>
				
				<pubDate>Fri, 07 Oct 2011 20:16:00 -0700</pubDate>
				<guid>http://www.samfarmer.com/blog/index.cfm/2011/10/7/Slides-and-Code-5-Ways-To-Improve-Your-App-with-ORM</guid>
				
				
				<enclosure url="http://www.samfarmer.com/blog/enclosures/ORM5.zip" length="33808" type="application/zip"/>
				
				
			</item>
			
		 	
			</channel></rss>
