An Architect's View

CFML, Clojure, Software Design, Frameworks and more...

An Architect's View

A look back at 2011

December 31, 2011 ·

In years past, I have gone back over each month of my blog and posted a review of the year based on what I've been posting during the year. I skipped that for 2009 and 2010 for various reasons but decided to reinstate it this year because 2011 has been a very different year for me.

I left Adobe in April 2007 and went freelance. I spent most of 2008 working at Broadchoice until the development team were all let go in April 2009 when I went back to freelance work (and also joined Railo as unpaid CEO of the US consulting operation). Via some Railo team members, I started part-time consulting with World Singles, then switched to full-time consulting in 2010 and finally took a full-time role there in September. Back in 2009, I'd introduced Scala for some performance-critical areas of the project and in 2010, I started learning Clojure. In 2011, that became a production reality and the year has seen me doing more and more Clojure, alongside my regular CFML work.

So what has 2011 held for me (and, perhaps, for you)?

Well, one obvious thing is a lot less blogging! I'd like to blame Twitter but I've also been very (very) busy with my full-time job at World Singles. We built a whole new dating platform that went live in late 2010 and we've been rolling sites onto that platform - and adding functionality - ever since, with the ultimate goal of rolling about fifty sites onto the new system during 2012.

January saw OpenCF Summit offering a super-low price and news that I would be speaking at cf.Objective() (on multi-tenant application platforms and on functional programming - two things that I'm very focused on at World Singles).

February saw Adam Lehman move to the Flash Builder team and a bit of a crisis of faith in the CFML community (again... sigh!).

March saw me starting to talk more about Clojure ("The Joy of Clojure" book) and writing up both OpenCF Summit and Scotch on the Rocks - both great conferences!

April saw my plans for cf.Objective() and news that I'd taken over Clojure's JDBC library from Stephen Gilardi.

May saw my report of cf.Objective() (a great conference - and my chance to introduce Clojure to a new audience through my Introduction to Functional Programming talk!), some more Clojure, some FW/1 updates and my first experiences with MongoDB at the MongoSF conference (we took MongoDB to production a few months later at World Singles, using the Clojure wrapper CongoMongo).

June saw me attend Scala Days (which confirmed my decision to move World Singles from Scala to Clojure), and continue to work with MongoDB and Clojure (together). I also attended JAXconf, an "enterprise" Java (and Agile) conference, which I found fairly depressing as it showed me just how many 9-to-5 corporate Java developers there are out there who are out of touch with most anything new on the JVM :(

July saw new releases of Clojure's JDBC library and some notes on parsing large CSV files with Clojure.

August saw the "How I got started in ColdFusion" meme hit a lot of blogs and pre-release builds of FW/1 2.0, cfmljure and DI/1 become available for testing. I also spoke at the first annual MuraCon.

September saw FW/1 2.0 hit beta and release candidate status... and a tutorial about Clojure and SQL. September also saw me attend The Strange Loop conference (even tho' I didn't blog about it - one of the best conferences I've ever attended - and a strong Clojure presence was there).

October saw the start of a series of posts about using Clojure in the real world.

November saw the completion of my real world Clojure blog post series, FW/1 being ported to Clojure (and how to run it on Heroku), the launch of Chas Emerick's "Mostly Lazy" Clojure podcast and FW/1 becoming the most watched and most forked CFML project on github! I also attended the second annual Clojure/conj (my first) - another great conference, even tho' I didn't blog about it.

December saw the release of FW/1 2.0! I also attended MongoSV which was even bigger than MongoSF (in May).

You'll see quite a strong pattern here: a lot less CFML on the blog and a lot more Clojure. Don't be shocked or take this to heart - many "CFML" blogs seem to be covering other technologies these days. I've spoken to a number of CFML developers and there's a feeling amongst many of them that almost everything that can be said about CFML, as it is today, has already been said - there's a huge archive of great CFML material out there. We've caught up with ourselves. Now we'll mostly just see blog posts about new things (Adobe ColdFusion 10 and Railo 4 should both appear in 2012). Clojure is still new and there's much to be written about it, as the language and its "contrib" libraries continue to evolve and the community grows.

I've been doing CFML for a decade now and I felt a strong need to grow my skill set over the last few years (Groovy in 2008, Scala in 2009, Clojure in 2010) and that led to a lot of conferences in 2011: I spoke at four CFML events and attended six non-CFML events - so that I could broaden my horizons. I'll be doing far fewer conferences in 2012: I decided to skip cf.Objective() for the first time ever, I can't make OpenCF Summit or The Strange Loop due to personal conflicts. I will be attending Clojure/West in March (perhaps as a speaker) with my team from World Singles.

Make your 2012 New Year Resolution to "Broaden Your Horizons"!

Tags: clojure · coldfusion

2 responses

  • 1 Ken // Feb 1, 2012 at 9:06 PM

    Sean, You briefly mentioned attending the Strange Loop conference. That one's always intrigued me. Is there anything more you can say about what it was like? Would you go again?
  • 2 Sean Corfield // Feb 2, 2012 at 11:35 PM

    @Ken, Strange Loop was incredible and, yes, I'd go back in a heartbeat. Unfortunately, Strange Loop 2012 is the same weekend I'm in England (friends, family, cat show). I started a long write up of the conference, originally for Fusion Authority, but abandoned it when it became clear that it wasn't really appropriate for a CFML audience. I may finish it and post it here in a different form at some point. I'd highly recommend it as a conference that will challenge your thinking and expose you to a lot of new ideas!