Why We Argue: Style

I've been thinking about why we argue about code, and how we might transform vehement differences of opinion into active forces for good.

My thoughts spring from a very specific context.  Ten or twelve times a year I go to an arbitrary business and spend three or more days teaching a course in object-oriented design.  I'm an outsider, but for a few days these business let me in on their secrets.  

Here's what I've noticed.  In some places, folks are generally happy.  Programmers get along.  They feel as if they are all "in this together."  At businesses like this I spend most of my time actually teaching object-oriented design.

Other places, folks are surprisingly miserable.  ...

Posted on July 18, 2017 .

The Half-Life of Code

I've been thinking about the half-life of code.

In his Software that Fits in Your Head talk, Dan North defines the half-life of software as (I'm paraphrasing) "the amount of time required for half of an application's code to change so much that it becomes unrecognizable."

In that talk he tells the story of working on a high quality, non-trivial application whose code's half-life was six weeks.

Yup.  Six.  Weeks.

Posted on June 1, 2017 .

Make Everything The Same

As part of my local ruby meetup (#westendruby), I've been dabbling in katas and quizzes.  Having worked several, I can't help but notice that my solutions are sometimes radically different from the others.


Posted on June 9, 2016 .