2009 – A Year in Conferences and Publications
2009 has been a really good year for me. Impossibly busy between work, travel, dating and improv classes, but I’ve learnt a huge amount this year and am looking forwards to leveraging a lot of that in 2010. Here’s a quick summary of the conferences I attended and articles I wrote in the last twelve months. Not quite the crazy pace of 2008, but still a decent years work!
My main goals for the year were to become more broadly known outside just the ColdFusion and Domain Specific Modeling worlds while still being actively involved with CFML and code generation.
Domain Driven Design
I kicked off the year with a well received presentation on Domain Specific Modeling to the Domain Driven Design group in New York. The presentation focused on the many synergies between DDD and DSM and inspired a video interview on domaindrivendesign.org.
Flex
While I haven’t had much of a chance to code in Flex this year, I managed to continue my Flex Authority series with an article on Automating the Build using ANT.
Program Committees
In addition to continuing as a member of the Code Generation conference program committee, I was really excited to be invited to join the program committee for the Domain Specific Modeling workshop at ooPSLA and the British Computer Society Software Practices Advancement (SPA) conference.
Groovy/Grails
I attended the inaugural gr8 conference in Denmark back in May. I also wrote an article for groovymag comparing Ruby/Rails and Groovy/Grails and presented on the gr8 conference at the New York Groovy/Grails meetup over the summer. I also signed up to co-organize the New York Groovy/Grails meetup although unfortunately I’ve been remiss at that and have not yet organized a meeting. Hopefully I can resolve that in the New Year. I also launched a “Getting Groovy” blog, but I really need to find some more time in the New Year to post some new content – especially about DSL’s in Groovy.
CFML
I presented on RAD OO at CF United Express in New York, RAD OO in code at cf.Objective(), and both RAD OO and Requirements and Estimating at CF United. I also presented a version of the Requirements and Estimating presentation at Scotch on the Road in London, and gave a RAD OO presentation at RIA Unleashed in Boston last month. I also wrote the forward for Luis Majano’s book on ColdBox – thanks Luis!
I’d have *loved* to present at CF in NC, but the timing was too close to another conference, and I had hoped to present at cf.Objective().anz, but in the end I just couldn’t make it down. Hopefully I’ll manage one of the antipodean conferences in 2010 as I’m missing Australia and would love to see a little more of the country (I never got to do much traveling when I was living in Sydney). I’m also hoping to manage a presentation or two in continental Europe in 2010.
Code Generation/DSM/Software Product Lines
I was on the program committee for Code Generation 2009, managed the birds of a feather sessions and moderated a panel on “The State of the Art in Domain Specific Modeling”. I also presented a case study on SystemsForge “A High Volume Software Product Line” at the inaugural conference on Practical Product Lines in Amsterdam and have been asked to contribute a small piece for an article in IEEE Computing based on the presentation for publication next year. I was also excited to have my first article published on InfoQ. It provided an introduction to DSL Evolution and I’m now working on another article on DSL Testing which I hope to have published on InfoQ in the new year.
In other news, I wrote an article in jsmag on jQUery UI, and presented a session on “solo scrum” at BCS SPA in London this year. I also attended the local No Fluff Just Stuff conference in Boston which was a great chance to actually attend a conference without having to present anything ![]()
Looking back
I’m happy with what I accomplished this year. In particular I’ve been working on a large CFML project with some excellent developers and have got a chance to hone a number of skills – from agile project management to working with Continuous Integration servers in CFML. I’ve also continued to work on the SystemsForge software product line and have been busy with the Railo open source CFML engine which I use for pretty much all of my CFML development now unless there is a compelling reason not to. I’m also glad to be using git for pretty much everything now and have MX Unit and Selenium as my defaults for CFML unit/integration tests and UI/acceptance tests respectively.
Looking forwards
I’m embarrassed to say that I’m still not fully “test infected”. I blame it on lots of small projects and the extra complexity of TDD in a SPL/DSM environment, but the fact is I just haven’t taken the time to change how I do things. This year I’m looking forward to getting into a truly TDD flow with my projects.
I’m also looking forward to doing some more substantial projects in Groovy and Grails and I also hope to do some projects using Spring Roo and Scala. I’m starting to miss the nice code completion that static typed languages can offer and am looking forward to seeing how productive I can be using Roo and Scala respectively.
In the CFML world, my main focus will be “fast start” projects. Imagine being able to generate 80-90% of a real world application in your frameworks of choice and then being able to add custom code while still being able to regenerate the project as the requirements change. I’ve already got the ability to generate ColdBox apps and will be working on FW/1 and Model Glue generators early in the new year. I think this is a way I could add a lot of value to CFML projects by bringing in a great reference architecture, best practices for project management, coaching, *and* a substantial part of the application for a fraction of the cost and in a fraction of the time that other developers could offer. Expect to hear more about this (and feel free to hit me up if it sounds of interest!).
I’ll also be helping to present a long tutorial on openArchitectureWare, so I’m looking forward to writing some more practical generators using oAW (especially xtext). I love what the guys at Artemis can coax out of oAW and I’d like to see if I could leverage some of the capabilities of their tooling in my code generation projects. I’m also hoping to find some time to play with JetBrains new MPS. I’m fascinated by projectional editors and while I’m not sure it’ll be ready for primetime, I think the experience of using one will really help me to broaden the way I think about Language Workbenches.
So, not a bad year, and some decent plans. Still, looking at some of these guys it’s good to see how much more can be achieved in just a year!
Here’s to an exceptional 2010 all round! What are *your* main goals?
