Wednesday, May 14, 2008

To BES, or not to BES?

Today, I draw the line at learning Blackberry development.

This blog is about being a designer and a developer. And as the only person in my Marketing department, I do the jobs of at least three distinct positions, if not more. I'm not saying I do the work of three people, they keep me busy, but not that busy! However I am the sole person responsible for internal applications development (barring IT/systems admin support for server and database management, and most reporting), marketing strategies and tactics, and graphic design/creative direction. In these varied roles I find myself making distinct "hat switches" from day to day: Monday I design and mail a few thousand postcards, Tuesday I upgrade our dashboard application, Wednesday I coordinate trade shows. And so it varies.

It's just too much of a shift to spend the first part of my day planning a direct mail campaign, and the second half programming Flex and CF. Sure, I've done it. But I find I am more productive if I put on one hat and wear it all day, than if I jump around between tasks. I'm not sure if I get more done that way, but it feels like I do! I design better if I'm not thinking "but how will I program this?." I program better if I stay knee deep in code once I'm there. I open my mind to develop marketing strategies better if my mind isn't cluttered with thoughts of design patterns and syntax.

This generally works, but I feel I could be a lot better at any one of the three, if I just focused on it all the time. Extra hours of experience aside, never having to think about the other roles would help me focus and specialize. I've struggled with this a lot lately, thinking that I need to specialize my skill set (way before Seth made this post). And I've wondered...where do I draw the line in learning new skills? Should I?

My company recently moved from hosted Blackberry service to our own BES, and the opportunity of deploying our own applications and themes has excited management. Since I do all of our internal applications development, I will theoretically be writing any Blackberry applications we develop. I read up on basic Blackberry development a few months ago when this prospect first arose, and got to understand the basics, but somehow I cannot get behind forcing myself to take on Blackberry development, nor do I see a lot of need for us to develop BB applications.

I will always learn what technology is required to do my job, and I certainly never plan to just "stop" learning new skills because my brain is full, or such nonsense. However, I do feel like venturing into BB is unnecessarily broadening my already ridiculously general skill set. As the Director of Marketing, do I "pull title" and tell the IT guys they're on their own? I'm thinking now would be a good time to do that.

Technical learning curve aside, I might feel different about this if I saw a real need for a custom BB application within our organization. But none of our core systems (the ones that would really be valuable if they were mobile-accessible) have any type of open API that would allow proper integration (read: I would have to directly connect to an undocumented legacy database, and probably violate our software license), so anything I build would be a total band-aid solution, mobile "just because we can". Hardly worth learning a new skill for that.

Despite my goal of being a lifelong learner, I feel like at some point I have to say: "let someone else deal with it!" So ends the rant of this designer-developer, and I'll put this out there to all the other generalists: where do you draw the line? How do you decide NOT to learn something? How do you juggle different roles?

Thursday, May 8, 2008

CF.Objective() 2008, #3 Come and Gone

Well...another year has passed for the CF.Objective() conference! It's hard to believe that the first one was three years ago.

Funny story about that... when I first heard about it -- the rumored "advanced" ColdFusion conference -- I thought, "there's no need for me to go to that, I'm not really that advanced." But it was over a weekend, so I tagged along with Adam and told him to tell Jared (Rypka-Hauer, the organizer) that if he needed any help running the registration desk or anything, I'd be happy to donate my years of experience running conferences.

As it turned out, they did need my help. I worked the desk, hand-scrawled signs to post outside the meeting room doors, and most importantly: got to meet just about every one of the 100 guru developers that were there. And as I worked it, I realized that the session schedule looked totally awesome, and that there were things I could learn there, so I was very happy to find out that it was happening again. The next year, I returned as an actual attendee (and also designed that "E for Enterprise" t-shirt you may have seen).

For the past two years I've been sort of their "designer on the side", helping out with various graphic needs of the conference, and this year I was honored to get a special "VIP" badge - as they put it - "anyone who cuts their honeymoon short to attend a conference deserves a VIP Badge"! Well, we didn't exactly cut the honeymoon short, but we did go straight there because we simply did not want to miss such an excellent conference.

This year's conference was better than ever. Best Meetings, Inc & Jim Lewis, the conference planners, did a great job - things have come a long way since that first year where we didn't even have signage. The downtown St. Paul Crowne Plaza hotel location was great, within walking distance of several restaurants and conveniences. I saw several excellent sessions, covering a preview of Model-Glue:Gesture from Joe Rinehart, Developing Flex Without a Framework (heresy? no!) by Max Porges, Adding Chat with BlazeDS by Tom Jordahl... those were some of my favorites, but every session I attended was really great.

A lot of the conference buzz was about the new frameworks - Mate, the Flex Framework from AsFusion which really impressed the crowd, including Chris Scott who has been working on a Flex framework of his own - Swiz. Then there was Model-Glue: Gesture (3), now in Alpha.
The Adobe team held a BOF (Birds-of-a-Feather) discussion of ColdFusion 9, which I thought went really well - many great ideas, and mostly constructive discussion. The Adobe guys kept really open minds, despite the consistently difficult challenges this community throws at them!

A lot of the talk there was about ActionScript on the server (to supplement or replace CFScript, and using AS Objects as a replacement for CFC objects) - plenty of controversy and counterpoints there, and I will leave it to the experts to cover that in detail! There were several other new or improved feature suggestions, many having to do with server administration. The demand for a real CF IDE was as high as ever.

I was still on Hawaii time so I had a rough time getting up in the morning for the early sessions (I did miss one slot - bummer!) but I was able to actually stay awake late to hang out with everyone at the hotel bar afterwards so there was an upside... We had a blast, as always - met lots of people, caught up with friends. No, this wrap-up is not technical, more like a ringing endorsement for my favorite CF conference! I am already looking forward to next year.

Speaking on Model-Glue at MD CFUG June 10

If you're in the Washington DC area, I'll be speaking at the Maryland ColdFusion (Adobe) User Group in Rockville, Tuesday June 10, 6:30 pm to 9:00 pm. My topic will be "Getting Started with Model-Glue", and there will also be another presenter, Jeremy Kadlec, talking about "SQL Server 2008" which I am looking forward to seeing!

For meeting details, visit the MD CFUG website:

My talk will cover the powerful but simple MVC (Model-View-Controller) framework for ColdFusion. If you're new to developing with a framework, or just want to find out more about Model-Glue, this presentation will help you take the plunge. We'll cover installation, setup, and creation of a new application. Then we'll demonstrate how to accomplish some of the most frequently required tasks in building web applications with Model-Glue, and finish with some highlights of the upcoming Model-Glue: Gesture Alpha.

If you've been considering giving Model-Glue or frameworks in general a try some time, this is your opportunity - sometimes seeing it demonstrated in person can be a big help. Also I can personally attest to the the Model-Glue mantra - "MVC for you and me" - it's a wonderfully simple framework that just works and will really help speed up and improve your development. No pre-existing 1337 skillz required! I've been using it for a little over a year now, and I've never looked back. Hope to see you there!