Posts tagged with “conferences”

CakePHP Workshop Review

I spent last weekend in Raleigh, NC attending a CakePHP workshop. At work we’re beginning to standardize on the CakePHP framework in order to minimize our development cycle while still ensuring reasonably strong application architecture in the presence of time constraints. I haven’t had much time to play in the weeds of this effort, so the workshop looked like it could be a decent way to get introduced to CakePHP.

It was. And it wasn’t.

First, though, many kudos are due to the workshop organizers. The CakePHP contributors (Garrett, Nate, Felix & Tim) who ran the workshop are typical open source developers – they have day jobs. The fact that they were willing to give even more back to the community by giving up their own weekend is commendable and, at the risk of speaking for the other attendees, I think everyone present appreciated that sacrifice. Judging by the amount of content presented, this was not a trivial undertaking. Not to mention making their own travel arrangements and all of the other logistical challenges. The workshop was very well done.

I never understood how we ended up in Raleigh (none of the framework developers are based there, as far as I know), but the training was held in two rooms of an office in one of Raleigh’s many corporate office parks. The first room was a reasonably impressive and well-equipped training room with a number of computers that no one used because we all brought our own laptops. Nonetheless, it was a nice facility that was conducive to learning. This room was the headquarters for “structured” learning – presentations, mostly. The second room, similarly equipped, was dedicated to unstructured discussion with the contributors that weren’t actively engaged in the first room. In this room, attendees were afforded the opportunity to guide the discussion and the developers here were equally responsive to beginner and advanced questions alike.

My only issue with the workshop was that it wasn’t really a workshop. At least not by my definition (so take that for what it’s worth). I went in expecting – from nothing more than the use of the word “workshop”, frankly – far more hands-on activity. I expected to be building a simple application with the framework and, in the process, getting a broad (not deep) introduction to the tools offered – the console, tests, fixtures, etc. – and how to use them. Instead, I got what I would consider to be more of a conference.

I understand that a true workshop (again, by my definition) would have been challenging to the folks leading the conference. This was never billed as a workshop for beginners so there was a wide range of experience levels among the participants. The small majority, I think, were, like me, newbs to CakePHP. Others were far more experienced. Tailoring a one-conference-fits-all curriculum would have been impossible. Instead we got some introductory topics and some advanced topics. Unfortunately, the advanced topics were all but lost on the beginners. I had no trouble with the concepts – I’ve been doing this for a long time – but I had no practical context in which to assimilate these concepts. Conversely, I imagine that the more advanced Cake users were bored by the introductory material.

My suggestion for any future workshops would be to offer two tracks (assuming a similarly diverse audience). There were two rooms available, so it would’ve been great to offer one track to introduce beginners, in an interactive manner, by way of building an application – essentially the blog tutorial on ‘roids coupled with the ability to ask questions and establish a dialog during the process – and another to introduce and talk through more advanced topics that experienced Cake developers can grasp and visualize within the context of their own applications.

That’s not to suggest that I got nothing out of the weekend. I did. I got a lot out of it and it was extremely helpful to have access to several of the key contributors. What I didn’t get out of it was the ability to recognize everything I got out of it. At least not yet. That requires a context I don’t have at this point.

Going to Portland

I feel like the title should have been more lyrical than that, but I’m running on a ridiculous sleep deficiency so I’ll settle for offering only excuses. Nonetheless, I am – as the title may suggest to those of you with minds astute enough to crack my code – going to Portland. I’ll be in town for a week attending the OSCON 2008 conference.

If anyone (read: either of you) is in the area and interested in meeting up for a beer or your preferred social beverage, feel free to leave a comment, send me a direct message on Twitter or contact me via email at r o b (at) r o b w i l k e r s o n (dot) o r g (take that, spammer wannabes). I’ll be flying solo all week.

Since this will be my Portland deflowering, I’m also taking suggestions on what to see, where to go and any other touristy advice. Please donate. I don’t want to spend the week sitting by myself in my hotel room.

DC Design Talks Post-Mortem

As I mentioned, today I went to the inaugural DC Design Talks conference in Falls Church, VA. Unfortunately, I ended up staying for just three speakers because:

  1. The conference was even more (pure) design-oriented than I expected
  2. The material covered was more elementary than I had hoped
  3. I had another migraine (my third in three days. argh.)

I mention these things so that it’s very clear what kind of review I can offer and to emphasize that there was more to it than I was around to see.

General Impressions

The conference was held in the pseudo-classroom area of a local web shop. It was small, but that was okay; I also prefer going to concerts in more intimate settings than an arena. I don’t know the numbers and am not good at guessing, but I’d say there were well under a 100 folks in attendance. This was definitely not MacWorld or Adobe MAX, but that’s not necessarily a bad thing. It felt a little less like the first day of high school where you seem to spend half of your day trying to figure out where you’re supposed to be next.

There were a few minor technical glitches, but frankly the venue was small enough that microphones were kind of on the overkill side, anyway. Happily, the organizers seemed to understand their constituency all too well. There were surge protectors and outlets all over the place for the laptops that would surely be out in force at a geek-centric conference. No need to worry about running out of battery life. There was also reliable wi-fi available. It would’ve been nice to have the login credentials printed in the conference literature, but they weren’t hard to track down. That was another huge win. Even the big boys often have trouble providing reliable wi-fi at their events.

The conference was organized a bit like a day of high school. There were nine speakers scheduled (not including the opening remarks) with about a five minute break between each speaker so we were parked in our chairs pretty much the entire time. It would have been nice to have a little more mingling time if for no other reason than to stand up. Perhaps eight sessions would have sufficed. The schedule was packed a little tight.

That brings me to my lone complaint about peripheral matters: the chairs. They were not comfy. My ass was falling asleep within minutes and went completely numb not long after. Knowing I was going to be largely sedentary for the remainder of the day didn’t help matters. If I were to recommend just one item to change, it’d be the chairs. Oy.

Subject Matter

As I mentioned, the subject matter was more design-centric than I expected. I was anticipating a web design conference. That is, a conference covering multiple aspects and disciplines of web design from technologies, to standards, to techniques, to methodologies, etc. The focus, though, was more on pure design as it applies to the web. There’s nothing wrong with that, of course, but as a developer and engineer, I’m the wrong audience. The material just wasn’t varied enough to offer much for me.

Speakers

As I mentioned above – and this can’t be stressed enough – I didn’t stay all day. I stuck around to hear three speakers. I can only speak to the sessions I saw and I won’t generalize beyond that.

Web Typography (Samantha Warren)

My guess is that this was one of Samantha’s first public speaking appearances. She wasn’t polished, but I can get past that pretty easily. I’m not the most polished speaker either. Nonetheless, she was presenting an interesting topic so I was looking forward to hear what she had to say.

Unfortunately, the content didn’t deliver. Her slides were beautiful – she appears to be a very capable designer – but the session didn’t progress much beyond quoting a few definitions of “Typography” and then offering one of her own. There was very little real information, wisdom or experience conveyed. Most of the presentation involved looking at webpage examples and pointing out what I thought were relatively obvious characteristics of the typography chosen. One of the notes I scribbled summed it up pretty well, I think. It said, “Too much what, not enough why or how.”

That said, I did learn a couple of things. I learned about measure and, more importantly, about optimal measure within a document. I also learned that greater leading (line-height in CSS-speak) should be employed on dark backgrounds. I had never thought about that. It would have been nice if she had spent more time discussing why these things were important rather than just telling me that they are important.

Creating a Component Library (Nathan Curtis)

This session essentially covered the organization and reuse of site components – be they wireframe stencils, visual comp elements, code, etc. As an engineer and unabashed fan of reuse and loosely coupled components, this is a topic near and dear. And Nathan was clearly a practiced public speaker. He presented the material very well.

Although the general subject matter and high-level concept are ones that I find compelling and even critical to the long-term success of projects, the specifics of the session didn’t have much to offer me. The material was heavily weighted to the pre-development side of the SDLC. I won’t belabor that point since it’s something I’ve already mentioned.

I did come away thinking, though, that creating this library of “stuff” appeared to be extraordinarily time-consuming and would probably not be a good fit for smaller companies, companies that redesign frequently or companies that, by necessity, must be nimble with their design. The techniques presented seemed best suited for large, static organizations creating large sites. This kind of effort could quickly become cost prohibitive for smaller companies or companies that redesign with any kind of frequency.

Speaking in Styles (Jason Cranford Teague)

This session keyed on another subject I’m fond of – CSS. Jason, too, was a polished speaker and clearly knew his stuff in spite of a minor typo in a bit of Javascript code that some dolt in the peanut gallery just had to point out. There’s one of those at every conference, it seems.

My only issue with this session was that the subject matter wasn’t as substantive as it could have been. Maybe the rest of the audience needed to be sold on why they should be using CSS, but I certainly didn’t. I’ve been evangelizing and espousing the use of CSS for years.

I would have liked to have heard more discussion about how to overcome the limitations of CSS. If the audience needed selling, then this is probably one of the primary reasons selling was required. In my experience, a lot of folks aren’t using CSS as extensively as they should primarily because it’s not an easy thing to do. In addition to the browser limitations (see me looking in your direction, IE?), there are also baked-in language limitations. There’s no way it should be this difficult to create a 100% height container or vertically align one block within another.

As Jason correctly pointed out, the only way to avoid the limitations of CSS is to know and understand those limitations. Too little time was spent highlighting those limitations, much less offering workarounds and alternatives.

Conclusion

On the whole, I think the conference series has real potential. Not for me, maybe, but it’s not the fault of the organizers that I chose to be a developer, right?

Even operating on a shoestring budget, the organizers pulled off an event that, though small, had a professional feel about it. I’d like to see a wider range of material covered and I’d like to see some more advanced topics mixed in with the elementary ones, but this was only the beginning (I hope). I have to believe they’ll evolve down that path as the conference matures.

Being a developer, I’m not sure whether I’ll personally attend on a regular basis, but I suspect I’ll send one of my front-end developers and I’ll definitely be keeping my eye on the schedule in case some developer-oriented material begins to make its way onto the agenda.

The Days Ahead

It looks to be a busy weekend. Tomorrow I get to brave the DC traffic and make my way to the DC Design Talks conference. I’m really looking forward to the conference, but as much as I love DC when I’m actually in DC, I loathe northern Virginia. And even more than I loathe northern Virginia I utterly detest the commute into DC/northern Virginia. If it’s a bad day, it’s not inconceivable that I could end up spending more time in traffic than actually at the conference. Note to self: road rage is not helpful, road rage is not helpful, road rage is not helpful…

Then, on Saturday, I hop a flight to parts unspoken for an unannounced visit only to return the next day. Fly out Saturday morning, return Sunday evening, back to work Monday morning. Looking forward to that. Really.