Monday, May 31, 2010

A New Chapter

For most of us here being islanders is a terminal condition.
But those who go away aren't cured.

They simply die of the same ailment on alien soil.

-- Frank Ledwell, The North Shore of Home

After more than a decade in St Louis, and much introspection, I am moving back to my home province, Prince Edward Island.

My friends and family know that I have been torn between (a) terrific friends and an increasingly hot tech scene in St Louis and (b) the distance from family and the tortures of holiday air travel. Thankfully, the burgeoning tech community on PEI has opened doors for me, and I've summoned the courage to recognize priorities outside of my career.

I'm tempted to thank individual people in St Louis, but the list is simply too long and I'll be sure to miss someone. Though there is some overlap, here are some key groups, relating to tech:

I've been attending the St Louis Java User Group for many years, and countless presentations. It is such an enduring fixture in St Louis, and I appreciated the sponsors (and frequent speakers) so much that I applied to work there (see below).

As a big Groovy fan, I've enjoyed the Gateway Groovy Users Group. It terrific to have a dedicated group for Groovy and Grails, and the organizers are first-class.

The biggest splash in the last few years is, undoubtedly, the Lambda Lounge. Some wondered if the St Louis area could support a user group dedicated to eclectic, hardcore nerdiness. The answer is a resounding yes!

A big thanks to everyone at OCI / Advantage. I've grown so much in terms of interesting clients, writing, giving presentations, and from observing my colleagues do the same. I love the college-style culture, and am simultaneously inspired and humbled by your talent.

Most of all, thanks to my friends from the various gigs, user groups, conferences, and pub nights. It has been a great run, with some fun stunts along the way.

I plan to visit regularly, so between this blog, Twitter, and return trips, we'll stay in touch.

To the geeks in the Maritimes: please get in touch! I'll be eager to meet up and talk tech.

ps. The quote is by the late Frank Ledwell, a former English prof at UPEI, and a beloved Island poet. I found the poem both charming and haunting when I first read it, in 1991, and have never forgotten it.

Monday, May 24, 2010

10 Thoughts as an Attendee at NFJS

(Full disclosure: I work for a sponsor of the Gateway Software Symposium and, this year, was also a speaker).


Rather than write about obvious trends (e.g. document databases are hot) or review big name speakers (how can you not know Ted Neward, Neal Ford, and Ken Sipe !), I thought I would write some quick thoughts about GSS 2010 as an attendee. Another post will be about my initial stint as a speaker.

Use Evaluations

Jay Zimmerman made an excellent point: when speaking, take every opportunity to use evaluations at your talks, including your local JUGs. If your JUG doesn't have evals, then make your own!

LiquiBase and My Team

I really enjoyed a talk on LiquiBase and Agile DB Development by Tim Berglund. He described a category of problems / solutions with which I was only barely aware. He highly recommends the book Refactoring Databases, and I'll definitely check it out.

Interestingly, when describing the talk to a close friend and colleague, my friend told me that his team was using LiquiBase. I was stunned. We work on the same floor, and yet I didn't know this. We all know conferences bring people together, but often it is within the same department.

Hawthorne Effect / Psychology

Several talks reminded me of how much psychology (and neuroscience) comes into play in software development. As one example, check out the Hawthorne Effect (as explained to us by Neal Ford). What's more, use it on your team, and in your personal life. e.g. For me, I exercise more often if I track my distance / rate, so that I know where my personal trend is headed.

Visualizing Code

Neal Ford gave a talk that listed a dozen tools for viewing code in weird and wonderful ways. The best part is that I wasn't familiar with any of them. It feels like a violation of intellectual property to enumerate them here in a garish list, but as one example, check out Code City.

Books == Quality

A former mentor of mine said that he has noticed that he can tell the best developers by what they read. Always ask your friends what they are reading. Seek recommendations everywhere. Some favourites from the NoFluffers are Predictably Irrational and the Design of Every Day Things.

Virtualization Imperative

Virtualization is going to be commonplace. I realized the following, during a excellent talk by Pratik Patel: with free options for virtualization software and the OS, we have no excuse not to try this at home. We should experiment so that we are ready for the inevitable in a corporate environment.

Fault Lines

Tim Bergland gave a talk on Decision Making that included team dynamics. He used an analogy of fault lines to represent the divisions that can occur across teams. Wonderful stuff. This is precisely the phenomenon that happens between DBAs and devs, testers and devs, and, of course, managers and everyone else.

I don't have time to explore this idea further, but are there hidden fault lines? Do we intuitively partition our teams across sociological lines that, strictly speaking, do not belong in the workplace? (e.g. age, religious views, political stance). It's something to consider, and the answers may not be pretty.


Brian Gilstrap asked the Expert Panel about specific instances of failure. It was interesting to see how the panelists chose to define failure, and how the scope could range from the individual, team, or organization. Though good stories come from brilliant innovation or clever design, the best tall tales come from failures.

Nate Schutta made a great point: civil engineers around the world will study a report on why a bridge collapses. Though proprietary code is an issue here, why don't software engineers do the same?

Don't Fear Reinforcement

I noticed several friends attended talks on subjects with which they were familiar, as they wanted to pan for a few more gold nuggets from the talk. e.g. James Carr gave a great talk on Mockito. I've been using Mockito for some time now. There is an argument for me to broaden my horizons, but I went to the talk and had some revelations about Mockito's Spy object.

10 Year Arc

I attended NFJS shows in St Louis for nearly a decade, and almost always in the same venue. It's become a fascinating reference point as the years go by.

Technically, if we had an animated graph across that timeline, you would see some technologies appear and disappear (XSLT), while others grow strong (Grails). Some of them are continually berated and yet refuse to die (Swing).

I've seen speakers make a point in a given conference room, where Dave Thomas made the same point, possibly in the same room, years before. I've seen Mark Volkmann ask the expert panel "what is the next big thing?" circa 2004. Today, we would find the answers either quaint or downright prescient (re: languages on the JVM).

There is a piano in the lobby of the Marriott West. Once, I wondered how marvelous it would be to play it. Though barely an intermediate, I now brazenly sit down at it, and gleefully bang out a hamfisted tune.

Over the years, that piano has seen a lot of speakers, attendees, trends, and technologies.

But mostly, it has seen changes. I will remember it fondly.

Wednesday, May 19, 2010

No Fluff, Just Stuff in St Louis

Like James Carr, the upcoming Gateway Software Symposium will be a mix of new and old for me: I've attended many (probably every one of them) over the years; this year, I will be speaking on Gradle.

I've been studying Gradle exclusively in the past months, and look forward to exploring my findings in the session. I'll have gone full circle from a heckler in the back (not really) to being up front and center.

Just as much, though, I look forward to the energy from the speakers and the crowd. I have always been an unabashed fan of NFJS: it was an excellent idea right from the start. Be sure to say hello at the show....

Sunday, May 2, 2010

Just Do Something

Hello from CtJ HQ! It has been a long spell since posting. There are reasons why, but mostly pedestrian excuses.

As many do, I have spells when I break out of my usual rhythm. Usually, this pertains to exercise or practicing a musical instrument.

In these cases, I've learned to "just do something".

For example, if I'm out of my routine for the gym, the experience of being a (former) triathlete makes me feel like my first work-out should be a dandy. This leads to pressure, which causes fear, etc. The "deal" is that it is OK to just run a couple of miles, at any pace I want. The true goal is to start again, with a pleasant experience; the means to the end is: just do something.

This simple idea has helped me tremendously in the past, and now via this post.