Sam Farmer head shot

Sam Farmer

Growing up I never imagined I would play bass guitar for the Dave Matthews Band. And indeed it never happened.

But I have become a passionate and pretty good web developer.


Looking for a ColdFusion job?

A month ago Raymond Camden blogged about ColdFusion jobs at REX Technologies. 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() 1, 2, 3) in one of the locations below contact Chris Seim or myself.

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.

Add a keyboard shortcut to a Builder extension

To set up a keyboard shortcut to a ColdFusion Builder extension:

  1. Use the extension at least once.
  2. Open Preferences > General > Keys
  3. In the 'type filter text' field type part of the extension name
  4. Select the extension
  5. Enter a binding. Click on 'Apply'.

So far I have found this works with extensions that open a view. I find it quite useful for Codey.

I'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).

Excited to Speak at cf.Objective() 2012 (Plus job opportunities)

I am excited and honored to have been chosen to speak at cf.Objective() 2012 on Searching ORM: First Why, Then How. This will be my first time speaking and attending cf.Objective as personal conflicts have generally kept me away in the past.

There are some excellent sessions this year and a whole tracked on JavaScript dubbed js.Objective()

Two of my colleagues are also speaking: Jason Delmore on Managing your Software Development LifeCycle and Steven Erat on Automated UI Testing with CFSelenium, MXUnit, ANT, and JenkinsCI. If you would like to work with us we have openings in both Omaha and Providence. Contact me if your interested.

Why ColdFusion's Future is Fine

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'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.

In the past week Adobe has announced a change in strategy and pretty massive layoffs. As my buddy Dan Wilson put it on Twitter:

Funny, I wondered where the netflix PR team went after their disaster earlier this year. Obviously, they went to Adobe.
As has been posted on various blogs this has mostly effected various parts of the Flash Platform.

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.

My short response is: The future of ColdFusion is positive and in a good, strong position.

My longer response and why is below.

First ColdFusion makes money for Adobe. Rob Brooks-Bilson wrote on Twitter over the weekend:

The thing to remember with CF is that CF is profitable for Adobe.
I'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.

Second, at MAX, the ColdFusion team was quite bullish about showing features in the next version of ColdFusion. More.

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't share it but, and I'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 Josh Adams that nothing has changed for ColdFusion:

Following on the heels of the slew of Adobe announcements of last week, Adobe evangelist Terry Ryan released a blog post stating that ColdFusion Zeus is still under development and on schedule. We're still here--same leadership, engineers, and sales team as before last week--and we're still selling ColdFusion 9 and working hard on the next version of ColdFusion, codenamed ColdFusion Zeus.

(There is more in his blog entry as well, including information about Zeus release dates, so do read it).

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's blog entry announcing the change:

The fact of the matter is Adobe just upped their commitment to ColdFusion in a HUGE way.

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.

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

You may have noticed that in the opening paragraph I mentioned that I was "partially dependent" on ColdFusion. That is because as awesome as I think ColdFusion is (and others like jQuery, ORM) knowing what a programming language can do is only part of being a great developer. Its knowing how 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't worry about ColdFusion -- it will be fine -- and spend time making yourself a better developer. Write more unit tests. Do the ColdFusion Koans. Learn more about ORM. Find out what on is in jQuery 1.7. Investigate NoSQL. Read The Passionate Programmer. Find out what AOP is. And whatever you do don't engage in FUD.

debugClean, fixed for most Windows installs

D'oh, I realized that debugClean had an issue with IIS and the different CGI variables it passes back.

Anyhoo, its now fixed and can be downloaded from the project home page.

What it does

Checks a file or folder for any debug code that should probably be stripped before moving to staging or production.

Looks for ColdFusion tags:
- cfdump
- writeDump
- cflog
- writeLog

Looks for JavaScript:
- console.log

The tags and functions it looks for can be configured to your taste in the _config.cfm file.

Next release of ColdFusion has websockets, closures, enhanced security, REST and more

At Adobe MAX the ColdFusion team showed off some of the planned features in the next release code-named "Zeus". Highlights include:

  • More security functions (using ESAPI)
  • Closures
  • REST built into components (classes). From the example shown specify a couple arguments to a function and it becomes a REST service.
  • Websockets
  • HTML 5 Charting (including a demo showing updating a chart via websockets — in the Keeping Current video below)
  • Tomcat as default engine

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).

The Videos

Keeping Current with ColdFusion — Provides a quick overview of ColdFusion 8 & 9 but mostly covers what is in Zeus.

What's Next in ColdFusion — Focused solely on ColdFusion Zeus and covers a lot of the new features

Slides and Code: 5 Ways To Improve Your App with ORM

Here are the slides and code from my Adobe MAX ColdFusion Unconference talk 5 Ways To Improve Your App with ORM:

And the code which will set up the Derby DSNs and tables needed.

Available as a download and from Github. After installing:

  1. Go to setUp.cfm
  2. Enter in your cfadmin password and click 'Make Datasources'
  3. Go back to setUp.cfm and click on 'Go to App'

All of the mini apps/examples I used in the demo will now work.

Slides for jQuery & Media Queries: Optimize your screen or app for every screen size

Here are my slides for the presentation I gave at RIACON on jQuery & Media Queries: Optimize your screen or app for every screen size. I really enjoyed giving this presentation and got some great questions in the session. And if you are looking for a good example of Media Queries take a look at Checklists and make the browser window smaller and bigger.

How I Got Started in ColdFusion

I needed a quick way to create cheap energy and so...

Ok, cheap joke out of the way. ColdFusion was the third language that I tried and I was impressed at how much I could easily. I had been hired without ever writing a line of ColdFusion and so was taking a bit of a gamble that I could do it (as was the company!). I was able to pick it up pretty quickly. I put this down to working for a great company and with some colleagues who knew more than I did. I was learning stuff, doing cool stuff and having fun.

That was with version 3.1. Since then I've learnt some stuff, written some cool stuff and had fun. And written the odd bug or two. Before ColdFusion I had written two other languages.

The first piece of programming I did was with JavaScript. This was back in 1995 and I remember getting excited that I could write a script that would display the date and time in a nice format. I did some programming in high school with, I think, BASIC but all I remember was changing the color of text and using GOTO and being pretty unimpressed with it all.

The second language I used was Perl (I'm ignoring HTML and SQL for this post). I had an assignment at work to produce hundreds of reports. The initial plan was to do this by hand but someone suggested using Perl and the next thing I was off on a Perl training class. I loved it. The ability to write a script and have all these reports come out was great. At that point I was truly hooked on being a programmer.

RIACON is less than two weeks away; Register NOW!

With 25 sessions spread over three tracks — ColdFusion, Flex and jQuery/Javascript — RIACON is shaping up to be a great conference.

This is the inaugural conference and the registration cost is $99. How can you not want to come? Register now

I will be talking on jQuery and Media Queries: Optimize your site or app for every screen size
Rich Internet Applications Conference - Washington DC

More Entries

BlogCFC was created by Raymond Camden. This blog is running version 5.9.7. Contact Blog Owner