Admittedly infrequent and largely unsubstantive thoughts on life, medicine, photography, and computers.

Thoughts on Wicked Good Ruby


There will doubtless be much written on the excellent inaugural Wicked Good Ruby Conf (WGR13) held this last weekend in Boston. Most I would imagine will be written from the perspective of those attendees knee-deep in the field and I assume for that reason more generally cogent and useful. A great big thank you to all who were involved and put such effort into making this.

As an outsider to the community, I wanted to add some thoughts on the conference and the keyhole glimpse of the field it gave me. 

I am not a programmer, however much I want to be. Though I cut my teeth as a four or five-time intern at Silicon Graphics (SGI) in the 90s, hopped on the linux bandwagon at kernel 1.2.13, and left to my own devices will spend much of my time hacking, I left the field when younger. Entering college in the 90s I walked down a different road, seeing what I believed to be a rather dark direction for computers as even my dear SGI began hopping on the windows platform. I spent the next decade and a half in medicine and ultimately finished as a perhaps too-specialized physician for children. I now come back to programming because I believe this is how I can positively affect my field and my patients.

I spent more than a year with Objective-C. But after realizing mobile devices without backends were boring and after being introduced to the language by a friend I met at a Big Nerd Ranch course, I drank the Ruby potion. And I have since been spending much of my free time teaching myself BDD patterns and tools. 

The Conference

 Processed with VSCOcam with g3 preset

With one excusable exception, WGR13 was my first programming conference. But in my now many apprenticeships in the medical world I've gone to my share of medical conferences. I've been to near-countless presentations of medical arcana and have presented my own medical work at some. 

So while I was being delighted listening to the excellent speakers this weekend, the other side of my brain was ever-remarking on the differences between medical conferences and now this programming conference. 

The Great

Easily the first thing one notices is the lack of pressed suits. (Indeed, the only individual who had come in a suit removed it piecemeal with some measure of pride through the course of his talk). Everyone is relaxed and dressed in their "hold on a moment while I rip out some code" outfits. I enjoyed this relaxation because it reflected the different flavor of the programming community. There was much less ego. As such, the conference was much more friendly and relaxed. I enjoyed some great chats with people at the lunches and there was a general interest expressed by all in the thoughts and projects of others. It was relaxed enough that when nervous younger presenters faced some unexplained technical mishap, the room gently laughed with them. 

I'm delighted to see all the community well-wishes and thanks showing up under the #wgr13 hashtag on Twitter. What a great group of people.

There is a long stiff hierarchy in medicine, likely a result of the field's maturity, age, and subject matter. Yet there are no Doogie Howsers in the medical world and no more can anyone begin to form dents in the front vanguard of their fields before close to their fourth decade; often it takes much longer. Nobel prize winners tend to have large labs full of near-unsung researchers helping the forward movement of their vision. And the prize this year was shared amongst no fewer than three such collectives.

And yet programming is such a delightfully young field. People as young as their twenties and even teens make meaningful contributions. Do you all recognize how exciting this is? I've been reading Kuhn's The Structure of Scientific Revolutions recently and it is in part a clear vision back to times of low-hanging fruit which are in medicine long since gone. So long gone.

I absolutely loved Sandi Metz's keynote and the field is lucky to have at least one person of her insight and reflection. A discipline needs those wise paragons who can guide, motivate, and direct from that high vantage. A long drive ahead of me, I departed just prior to Foy Savas' ending keynote. But having since read some of this thoughts on his website and discovering his talk on TED, I am looking forward to seeing the recording. Each other talk I attended gave me something to think about and I thank each of you for the clear effort you put in to preparing and presenting your works.

It's not quite all roses

Despite all of these wonderful things, there's one area where I missed the stiff medical collar and dusty wrinkled maturity. One or two of the talks this weekend led me to recall the following. 

Having witnessed at this point many good and bad lectures and presentations, I know there is an important trait always possessed by the best. This is even more important as the technical level and depth of the talk increases; as the speaker leads the audience out into the talk's novelty and long-tail he/she always wants them to follow.

It is always difficult when looking out into one's audience to read and gauge their interest, much less their backgrounds. In any audience spreads a Gaussian distribution of both subfield interest and ability. It's critical to maximize your audience's interest in your story and their ability to follow your lead. You're building and telling a story.  You want the audience to come on this trip with you. And stories begin with introductions. In my experience the only thing that the first few minutes of the talk should address is

  1. the broader framework of my topic in our field
  2. why am I the speaker interested in this?
  3. why should you the audience also be interested?
  4. are there problems we can together solve with this information? 

Even if an audience member isn't interested in your topic, if he or she remains attentive because you successfully brought them to the correct frame of reference, perhaps they'll come up with variant ideas of their own for their own work? Few of us enjoy watching magicians because we want to perform their tricks at home for our own friends. We watch them because we seek insight. 

So if you are preparing a presentation, spend time and effort at the beginning bringing your audience together to the same frame of reference. Speak to each of them personally and tell them why its in their clearest interest to attend to your tale. Get them on the same page prior to starting your adventure.  

This difference is most understandable given the age of the field and at times the presenters (again, only my congratulations). But it is nonetheless no less important if you want your talk to light fires. 

Thank you

It is clear to me even from this short vision of the Ruby world that it has a warm and vibrant community. Continue to work for this. At the end of the day you'll find it is the core of what matters. 



Absinthe Renewed

 The original title image

The original title image

I have long been a bit of a nomadic hacker. Back in July of 1998, with the dawn of the public internet, I registered the original domain Absinthe.Org. While I would come in some ways to regret the choice, I settled on the name for two reasons. First, I wanted something a little edgy, artsy, and different; thus begat Absinthe. Second, while most of the news and public energy focused on the new dot-com Internet, at the time "with-it" and "hip" sites such as Slashdot.Org chose the .org top level domain. And so it was settled.

I can not remember the tools I used to edit the site, but I know they were intensely nascent. I do  know that I shortly thereafter reworked the site in Thomas Boutell's cgic library - effectively turning each webpage into an Ansi-C program which would log the visitor's IP address and access time. It was wonderfully amusing but progressively more difficult as fewer and fewer hosting sites allowed one to compile arbitrary C code on their servers (ahem)

I added C-based guest books and even a minimalist blog which would parse, order, and show text files created and stored on the server. And then the site effectively froze for a decade and a half. During that time I watched as people who had made wiser choices of domains ( readily cash-in on their acquisitions. And I remained with the non-commercial oddity of a domain which to this day is difficult to spell over the phone when giving out email addresses. 

And yet it remains its quaint, historic little corner of the net with which I've grown so fond.