Two interesting blog posts about programmers and their preferences.

Here’s one that explains the fundamental difference between (most) programmers and (most) managers:

So here’s my theory: Managers must work shallow and wide, while programmers must work narrow and deep. People who are naturally tuned to one particular method of work will not only enjoy their jobs a lot more, but be better at them. I’m a deep guy, I should be doing deep work.

I didn’t say it was a particularly insightful theory.

It may not be an insightful theory but it certainly strikes a chord with me. I’ve said many times to both to my current manager and the two previous ones that I have no aspirations whatsoever to move up the traditional career ladder that inevitably leads to managing people. In fact if I was forced to I’m pretty sure I’d rather quit. Wide vs. deep is not the only reason for this preference but is certainly a big part.


The other talks about the role that personal preferences play in technological choices, and about why you need to know your audience before you can tell them what they should do.

When someone tells you “you need better tools: try Lisp”, ask “what about Lisp do you think would help me?” If they start listing reasons without first trying to understand who you are, may I say there’s a problem.

This is something I have encountered many times. People who recommend me some music or other, and when I ask them why they think I would like it, their only reason is “because this band is great” or “well I just think you would”. Book reviews that effectively say “everyone will like this book” or “best book of the year”. Of course they may sometimes be right, but more often it’s just a sign of sloppy thinking.