Tuesday, May 17, 2011

Back from cf.objective() conference.I was going in a little burned out but as soon as I saw some familiar faces at the bar I new it's going to be great. And it didn't disappoint.

Here is a quick recap of the sessions and subjects that stood out and got me excited. These sessions inspired me to evaluate my current development process, to try new tools and expand my knowledge.

In no particular order:

Progressive enhancement - Barney BoisvertBarney made a great case for this technique. The basic idea is to develop HTML and CFML to lowest common denominator i.e no JavaScript or CSS (HTML should be prepared for CSS though) and then progressively enhance with bells and whistles. In a lot of cases the basic is enough and it naturally degrades.

Jasmine, JsTestDriver, Angular -Elliott Sprehn Very excited to try these tools. Finally a way to develop JavaScript with tests and an MVC. What I really liked is that using methods shown by Elliott one starts to develop web application from the same point one starts thinking about it - user interactions and page content. I can't wait to try Angular JavaScript framework.

NoSQL databases - Peter Bell, Mark Drew and a BOF - great sessions on NoSQL databases and specifically CouchBase.The BOF had great attendance and Matt Woodward did a good job moderating the discussion. Also need to look at MongoDB. A lot of ideas were presented on what to use these document databases for, but one needs to carefully evaluate the needs of an application.

Mylyn plugin for Eclipse. I don't know why I never used this, but every point in the session applied to my work environment. So needless to say I installed Mylyn immediately following the presentation.

One very exciting project is cfselenium from Bob Silverberg. I didn't get to attend his session on Selenium but it's posted on his blog. CFSelenium allows you to write Selenium tests in ColdFusion and run them in MXUnit. Great thing about being at the conference is sometimes you can try the tools right the way and if something is not working ask the author. I did just that by "accidentally" sitting next to Bob at lunch.

Continuous Integration with Jenkins and ORM Zen (best session name by the way) by Marc Esher helped me answer some parts of the process where I got confused and stuck before. These were very timely since I just rewrote a small app I have with ColdFusion 9 ORM and set up Jenkins locally to run build with tests, and also while at the conference converted Selenium tests into CFSelenium so all these were very hands on and super practical for me.

There were two re-factoring sessions by Emily Christiansen Making Legacy Code Testable got rave reviews from my co-workers that attended and made wish I did too. I did attend Getting To Know Anti-patterns talk which was great and timely because who doesn't have legacy code they wish they could improve. Made me want to read a book on anti-patterns.

This year cf.Objective() introduced "Deep Dive" type sessions, where a speaker is given two hours to explore his/her topic and go, you know, deeper.I attended Multi-Tenant, Multi-Lingual Web Platforms - Software as a Service and it was as long and deep as it sounds. The jury is still out on how effective these longer sessions are. The presenter Sean Corfield is very good but it's a lot of information. Thankfully the presentation is posted on his blog so I am planning to review it again. I think same goes for his Functional Programming/ Clojure talk. It made me want to try Clojure and in fact I have started on that road but it's such a change in thinking that one really needs to press on before "fog" lifts. Here is good intro to Clojure that Sean tweeted about and it got me going.

I really didn't have any negative impressions at all at the conference other then staying in the hotel across the street because I forgot to book Hyatt in time.

Content was wide and deep.Location enjoyable and convenient.Food tasty and filling.And people ... ah the people is what really made it great.I feel like I still have enough impressions for few more blogs thanks to all the organizers, speakers and attendees.