Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Pro-choice Programmer (tedneward.com)
11 points by dangoldin on May 11, 2008 | hide | past | favorite | 8 comments


This article basically attempts to discredit the maxim that 'The three most “personal” choices a developer makes are language, tool, and OS.'

The author posits that these shouldn't be 'personal' choices, rather a programmer should just choose the right tool for the job.

However, I think he fails to take into consideration that some choices are 'sticky' (in the economic sense) because of external efficiency boosts.

For example, Eclipse may be a better Java IDE than Emacs, ceteris paribus. However, all things are not equal. By using Emacs with JDEE I get free svn integration, my keybindings, my customizations, and so on. All those things would take considerable time to set up/learn on Eclipse.

Similarly, I can imagine certain tasks for which OCaml may be better suited than CL or Perl (my two strongest languages). But, I may have enough additional expertise in Lisp or Perl to offset the 'natural' advantage OCaml would offer. (This isn't to suggest that we shouldn't push our comfort zones and expand our skills, though).

It's a basic principle that specialization often leads to efficiency increases. And, since the decision of what to specialize in (Emacs v Vim, Ruby v Python, etc.) is effectively arbitrary, it boils down to a personal choice.

I should learn the basics of both A and B (windows and linux, cl and scheme, etc), but at some point I should choose one to specialize in. And that choice is pretty personal.


Wow, CL and Perl :) I thought I was the only person with such odd tastes... glad to know I'm not alone.


Great post & totally agree.

silly nitpick: you get free svn integration with Eclipse, too.


Thanks, I know Eclipse has SVN support.

I guess my point (see: "those things would take considerable time to set up/learn on Eclipse.") was that yes, the feature is there, but it isn't free because it costs me time to learn/configure.


"When programmers embed their choice so deeply into their psyche that it becomes the tagline by which they identify themselves... Do you, the customer, really care what kind of tools they use?"

The customer probably doesn't care, but recruiters certainly do. They want a 'C# developer' or 'experience of VB.NET' rather than a 'good programmer', which is probably what they should be looking for.

If the writer is saying he'd avoid working with someone who would only use his own favourite language no matter what, then I'd agree with him. However, I'd also be suspicious of an experienced programmer who didn't have strong views on operating systems, languages, and text editors/IDEs. If you don't care about these things, you probably don't care about programming.


"I use a variety of languages, tools, and OSes, and my choice of which to use are all geared around a single end goal: not to promote my own social or political agenda, but to make my customer happy."

My customer probably won't be happy if I programmed his thing with a language, tools and OS that frustrate me to no end. That frustration will no doubt find its way in the product, just as sheer joy finds it way into the product when I love the way I work.

My agenda? Having fun making software that's fun to use.


There's nothing wrong in promoting a social or political agenda either. We are software specialists and we should educate other citizens, including our clients, about the virtues of good software and the right tools to build it. This is no different from any other field. I though the post made Ted look like a pushover.


The author says that choice of language, OS, and so on ought not to be deeply personal for programmers; they should be guided only by what's best for the customer. That's pretty hard to dispute. Who wants to argue that their ego needs matter more than customer value?

But choice of language, OS, and so on are deeply personal for many programmers, including many good ones. Are they all just being self-centered and misguided? I doubt it. Neward doesn't offer any insight into why this might be. He just says it makes him want to "hurl". (Actually, his attitude seems condemnatory and dismissive in a way that's more similar to the caricatured programmers he's critiquing than it is to the heterodox flexibility he advocates.)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: