Tim Boudreau is a noted technology consultant, evangelist and author. While perhaps most broadly known for his leadership on Sun Microsystems’ NetBeans, those who’ve worked with Tim remark most on his technical chops, passion for a great challenge and rare gift of great communication. And, as a former troubadour, he’s pretty tough when it comes to bad 70s rock lyrics too. A real renaissance programmer. Tim has posted 25 posts at DZone. You can read more from them at their website. View Full User Profile

Do You Anthropomorphize When Coding?

  • submit to reddit
I recently wrote, in this blog about state management, threading and API design, the following (talking about a refactored SwingWorker with the state information in a separate argument class):
It also removes a bit of psychological weirdness: Someone who is writing a SwingWorker subclass being is required to think to themselves “Now I have to tell myself what my state is.” I suspect many developers anthropomorphize classes they are writing — they think of the class they are editing, or the program counter, in the first person, as I, myself. I don't have empirical evidence for this, but I know I do it, and I have heard many other developers who were discussing code do it - if there's someone out there who emphatically does not do anything of this sort, I'd be interested to know about your thinking style when coding - please speak up.

It's a worthwhile question: When writing a class, do you think of that class, or the program counter moving across lines of your code, as "me"?

Published at DZone with permission of its author, Tim Boudreau.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)


Tim Boudreau replied on Sat, 2008/08/30 - 4:27pm in response to: Athen O'Shea


Over-identifying with the system and its processes!


The irony being that object-oriented programming is (IMHO) successful because it lets people harness thinking-skills that are already wired in because of being human beings.  It is going to encourage such identification.  I never thought about the notion that it comes at the cost of being able to communicate about the code (i.e. to communicate most naturally about it, the person you're communicating with has to identify with the elements of the code in a similar way and the communication filtered through that identification has to be mutually intelligible).  Food for thought!


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.