Chad Perrin: SOB

14 February 2009

Um, I have an answer!

Filed under: Cognition,Geek,Writing — apotheon @ 02:04

Reg Braithwaite says Um, I have a question! His question is, in summary, “What the heck do programmers mean when they say they are more or less productive under a given circumstance?”

He makes very good points:

  1. We have a real bear of a time measuring the productivity of individual programmers in any quantitative manner.
  2. We can measure results of complete projects, including everybody involved even peripherally in bringing those projects to a conclusion, as holistic units — but the moment we break those units up into people, all our metrics fall apart.
  3. Programmers talk about how productive they are (or aren’t, as the case may be) under different circumstances all the time.

Reg comments on Joel Spolsky’s statements about being in “the zone”, also known as hack mode, which is of course incredibly important to programmer productivity, but I think he focuses on that particular aspect a little too much. Yes, even context-switching between keyboard and mouse in Visual Studio is in some respects detrimental to maintaining the state of flow of which Joel speaks, but there are other productivity reasons some of us prefer Vim over VS, too.

The answer seems simple to me: It’s easy — completely, incredibly, unavoidably easy — for anyone with a significant amount of experience programming to measure individual programmer productivity. The problem isn’t that we can’t measure it. The problem, however, is two-fold:

  1. We can only measure that productivity against the same programmer’s productivity under other circumstances.
  2. We can only measure it from the inside, because productivity looks different for each programmer — and each of us is only familiar enough with exactly one programmer (ourselves) to be able to recognize the clear indicators.

Oh, sure, a big enough difference in productivity may make it clear to someone on the outside, but I don’t think we’re really worrying about being able to measure the difference in productivity between an actively programming Reg Braithwaite and a Reg Braithwaite in a persistent vegetative state after a refrigerator fell out of a third story window and landed on him walking down the sidewalk outside.

I know for a fact that I’m far more productive writing articles with Vim than I am with Notepad or OpenOffice.org. I have no idea how well you’d do under those different circumstances, in part because there are simply too many other factors involved, and many of them are inside your own head — so I’d have to take your word for it if you told me you were more productive using echo and redirects at the shell (or just think you were pulling my leg).

I could definitely give you some reasons why Vim works for me, though — and why I would therefore think it might work for you. I just have to accept the fact that I might be wrong about that latter part.

3 Comments

  1. […] Um, I have an answer! We can only measure it from the inside, because productivity looks different for each programmer — and each of us is only familiar enough with exactly one programmer (ourselves) to be able to recognize the clear indicators. […]

    Pingback by Chipping the web: February 14th -- Chip’s Quips — 14 February 2009 @ 04:00

  2. Knowing yourself and your “rhythm” is more vital, in most cases I think, than the tools you use. I’m personally not a big fan of vim, but I don’t advocate using something else. Comfort matters a LOT for productivity.

    Then again, there’s kind of an over-emphasis on productivity too. While you might produce functional code, without that “hacker mode” you may not produce a great solution. So I suppose I put on my symantics cap and say “define productive”.

    Comment by Kevin Dean — 15 February 2009 @ 11:49

  3. Knowing yourself and your “rhythm” is more vital, in most cases I think, than the tools you use.

    I don’t think either is really more important than the other, necessarily. The tools have to suit you as much as timing, if you want to avoid things getting in the way of productivity.

    I suppose I put on my symantics cap and say “define productive”.

    My (internal) definition of “productive” includes quality among its criteria.

    Thanks for reading, and taking the time to comment.

    Comment by apotheon — 15 February 2009 @ 01:39

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.

All original content Copyright Chad Perrin: Distributed under the terms of the Open Works License