Fog Creek Software
Discussion Board

Do software developers have poor social skills?

Why is is that software developers have poor social skills in relation to the rest of the population?

Quite a few software developer positions require little creativity and socialization.  Is this the reason? 

Marcus Leon
Tuesday, April 20, 2004

It may be because people with poor social skills are attracted to programming because they enjoy having a modicum control in the realm of computers that they can't have in the realm of interpersonal relations.

All children, while growing up, have some problems with interpersonal relations, but most children learn from the cues they're getting from their peers and become socialized. Unfortunately there are always a few children who are so awkward at social behavior that their peers shun them, and they become so isolated and alone that they don't even have a chance to practice and develop good social skills, which makes a small problem worse, and it spirals from there. These poor kids can never get anything to go right for them in the social world and when they discover that command-line interpreters will obey them no matter what they do they find this very comforting.

I've gotten some emails from famous software developers who were literally treating me as a command line interpreter. Once I wrote a long, mostly positive review of a programmer's book. Rather than writing something human like, "thanks for your review," he sent me the following single line email:

Please link to the up to date version of XXXX at http://XXXX.

Nothing else. That was the whole reply to my review of his book.

Anyway, there are a lot of other possible reasons why many developers are lacking in social skills, this is just one. Here's another: when you spend the entire day interacting with a very literal creature (the computer), changing your mode of interaction to deal with more multifaceted creatures, like humans, with emotions, can be difficult. This is the symptom referred to by Alan Cooper as, "I didn't give you the wrong answer; you asked the wrong question!" It explains why you go into a programmer's office and say, "Would you like to get lunch?" and he says something like "I would love to get lunch, but I'm afraid that today like every other day I'm going to have to pay for it" or something awkward and irrelevant. You see, he's acting like the compiler he spends all day with. To "get" something is to get it free, and so he interprets the question ultra-literally, possibly thinking he's making a joke, and then it comes out sounding totally stupid, or like he's maybe whining about paying for everybody's lunch? Or what? What is he saying? And then you go to the next office to get the next developer for lunch *and the first developer doesn't come to lunch,* and if you ask him afterwords why he didn't come, he says, "you asked me if I wanted to come to lunch, but you never said you were going NOW," and all in all you feel like you're dealing with the REP loop in lisp, not a human being. But it's just because the poor guy has been sitting in front of a REP loop all day and he hasn't had a chance to adjust to human relationships.

So that's another reason. There are problems dozens of others.

Joel Spolsky
Fog Creek Software
Tuesday, April 20, 2004

I tried your link to http://XXXX but it didn't work.  Did you spell it wrong?

Rob Mayoff
Tuesday, April 20, 2004

".... famous software developers who were literally treating me as a command line interpreter."

Brillian analogy. That sums up my experience quite nicely.

BTW, I have CUSTOMERS (non-programmers, non computer users) who act like this.

Mr. Analogy
Tuesday, April 20, 2004

So that's why people don't laugh at my jokes.

Tuesday, April 20, 2004


has a period on the end. should be ->


Tuesday, April 20, 2004

Insert obligatory mention of Asperger's syndrom here.

Tuesday, April 20, 2004


Gustavo W.
Tuesday, April 20, 2004

Since programmers treat people like they're just another command line interpreter or compiler, too bad there's no Design Patterns or Cookbook for dealing with people.  Then programmers might actually read it and acquire some social skills.

Tuesday, April 20, 2004

Design patterns are widely applicable. And some habits of software developers can be readily translated. "Write the test first", for example, in the world of writing, might translate neatly into "write the review first". Write the review you want to get, then write the book to match it.

Perhaps I've been lucky, but most of the software developers I have known have been well-rounded people with few outright social abnormalities. Communication can be a problem, but who has a job working with others where communication isn't a daily concern?

When it comes to rude one-line responses, it has been my observation that this is not limited to computer people. Asses are everywhere.

Patrick McCuller
Tuesday, April 20, 2004

It happens to exist to some extent:

Made by developers of course !

Tuesday, April 20, 2004

Well, not ALL developers have poor social skills.  But I agree, it is an industry that appeals to people with a certain mental bent to get complicated mechanisms to follow their will.

So, the ones with poor social skills will tend to stand out in this crowd.

Tuesday, April 20, 2004

No, the ones with GOOD social skills will stand out.

Personally, the breed I detest are the snotty little rich kids who learnt programming when they were 12 because none of the other kids would play with them. They often end up in game studios at 18, thinking they know all about programming, and my heavens, are they bad.

Spaghetti, spaghetti, but they know the boss and they've got a flash car. I think some of them even end up getting their own deals and then they're the managers. Horrible thought.

Tuesday, April 20, 2004

Someone's bitter.


Wednesday, April 21, 2004

I'll write some things that I wouldn't have disclosed without the protection of anonimity.

I'm writing them because I want to help other people who have bad social skills.

I used to have very bad social skills. I was extremely shy and introverted. Going to college, for example, was a pain because I had to deal with people. I felt primary school, high school and college like a continuous string of humiliations by the people around me. It was hard. Until 20 years old, I couldn't get any date because I simply could not make myself to talk to girls.

This happened because up to the age of 6 I was raised by my grandmother who was very critical - she was criticizing me all the time, so I had a very low self esteem.

When I was in high school and college, I started reading a lot of psychology and self-help books. The situation improved a tiny bit.

Then, when I was 21 years old or so, became very depressed and started to contemplate suicide.

I went to a psychologist, the kind that uses REBT (rational - emotional - behavioral theray) and hypnosis.

After only 4 months of therapy (1-2 times a week) very good results begun to show themselves. Especially hypnosis was working wonders.

I was improving rapidly, gaining social skills, and especially gaining self-esteem.

I did psychoterapy for a whole year, and then quit.

I was at "normal" level. I could interact well with others, ask girls out on dates, etc.

Several years passed since then, and I kept improving by myself. I re-read the self-help books, and could finally apply them. I worked on my social skills and self-esteem (if self-esteem is high, it is easy to gain social skills).

Because I worked on it, I am now more socialble, outgoing and have better social skills than the average people. I go to parties, meet with groups of people, and other things.

I also learned how to negotiate like a pro.

I almost forgot about my old, very shy and introverted self.

I'm still introverted (that means I pay some attention to myself and not only to others), but I have the social skills, go out with people, etc.

So, if you are shy and have bad social skills and bad self-esteem, try to get REBT and hypnosis therapy once a week, for 3 months.

It will probably work wonders!

Wednesday, April 21, 2004

Most of the devlopers I know have fair social skills; girlfriends, jobs and ordinary lives. Even me :). I disagree with what seems to be the general standpoint, that all developers have poor social skills.

At least with me the need for being social varies with my mood swings and my state of mind. At times I dont mind being left alone, doing whatever it is I feel like doing. I've been called associal and what not. Thats just fine. Other days I feel like being social and go out with friends or whatever.

If Im faced at work with some particulary intresting problem or task, Im able to focus 100%, concentrating on understanding the thing. That will lead others to believe Im less than talanted socially. This is simply untrue.

The need to socialize at work I think, is mainly based on the fact that most people a) dont find their jobs very intresting and b) would kill to escape their boring jobs and get a break chitchatting with colleagues.

Its not an uncommon belief amongst managers that you need to socialize with your co-workers, because you spend so much time at work and stuff like that. When Im coding something I dont want to chitchat about the weather or someones new car or boat. At that time I couldnt care less, other times I can chat away about whatever over a beer or coffee.

This is not black and white.

Wednesday, April 21, 2004

I tried your link to http://XXXX but it didn't work.  Did you spell it wrong? -Rob Mayoff

Rob I hope you were making an ultra-literall interpretation joke, but in case you weren't,
I believe when Joel said:

"Please link to the up to date version of XXXX at http://XXXX."

XXXX means (unecessary detail),
in this case the name of the programming book,
and the actual link to the updated versions website.


Hani Obaid
Wednesday, April 21, 2004

I'd like to take issue with the comment right at the top of this thread. Anyone who believes that software development is not a creative process really doesn't understand it at all.

The art, yes art, of good software development is to visualise an abstract idea and represent that visualisation in some medium like VB6 or C. How is this different from someone who paints beautiful pictures? Yes, the medium is different but I believe that the process is the same. Content manage systems are not the same as people or landscapes but both painter and developer are expressing their own ideas in their own chosen media.

Think about it, how many other jobs offer this amount of creativity?

In spite of our many apparent freedoms, we live in an incredibly conformist age. Software development offers a real escape from that conformism because it exists in a purely intellectual domain.

Perhaps developers are not the übergeeks that the original poster believes but instead are frustrated poets and painters?

John Dudmesh
Wednesday, April 21, 2004

It is important not to assume that one's own experience and set of problems apply to everyone else.  I'm sure low self esteem can make one shy but it can also make one an insufferable loud-mouth.  I have always held myself in high regard, and those who raised me were always complimenting and supporting me.  Still, I grew up painfully shy.  I have no explanation.  It is just the way I am.

name withheld out of cowardice
Wednesday, April 21, 2004

Are developers more anti-social than people in any other high-paying career that requires one to sit at a desk all day? I've been to parties full of investment bankers and lawayers, and as a group, they don't really have better social skills than developers. In fact, I would say that investment bankers are worse than developers. I've never understood why developers are stereotyped as geeks, but that's just me.

Wednesday, April 21, 2004


Those careers also require CONSTANT interaction with people. For all the talk about communication skills amongst programmers, we really do spend most of our time programming.

Wednesday, April 21, 2004

That software developers (or scientists, mathematicians, professional musicians, engineers...) have, as a group, poor social skills is mainly just a case of sour grapes.  You hear these suggestions most often from the stupider quarters.

"Sure, Albert is f'ing brilliant, but his social skills suck."
"I'm ashamed at being so stupid compared to Albert.  How can I prop myself up?  What do I think I have?"

Go ahead and search your personal anecdotes, but I have just as many from among fields like sales and management, and I see them in the same proportion to all other populations as the developer population.  (I recently turned on the tele to watch Philo's favorite diversion.  While, incidentally, none of these specimens seemed to posses impressive business acumen either, with a couple exceptions, none of them seemed to have ANY social grace.)

In my own workplace for example, the most outrageous social inepts are not to be found among the developers, but among the sort of business generalists with long domain experience but no actual talents.  Quick, yank to the front of your mind the last few automobile salespeople you met.  Would you enjoy going out for beer with them?  Management consultants?  Construction contractors?  Hmm...

Wednesday, April 21, 2004

The real question is how many of you antisocial developers plugged  &#1588;&#1587;&#1740;&#1576;  into an html file to see what rendered?  (You get no points if you do it only now that I said something.)

Joel, when is the Unicode signature support coming?

Wednesday, April 21, 2004

I think a lot of it also is that in many development jobs, you don't *need* good social skills.  That's not to say they won't help you (good social skills are always a plus.)  But if you're interacting with the REP loop all day, good social skills aren't a requirement.  When you're hiring people to interact with the REP loop ... if there's one candidate who's great at that but has bad social skills, and another candidate who's ok at that, but has good social skills, the REP loop will often win.

Now if you're hiring for the myriad of other positions that require social skills, then it's a different story....

Michael Kale
Wednesday, April 21, 2004

"wondering", that's not even a word :).

Btw, I tried it AFTER your second post. :p

Green Pajamas
Wednesday, April 21, 2004

> These poor kids can never get anything to go right for
> them in the social world and when they discover that
> command-line interpreters will obey them no matter what
> they do they find this very comforting.

There has been many situations where a compiler did not obey what I wanted it to do. Of course, the problem was on my side (as long as it has no bugs). I wasn't able to explain perfectly what I wanted it to do.

I wonder if we have the same problem with people. We want to communicate something to them, but for one reason or another, we cannot. Not because they didn't get it, but because we did not try communicating in a way that they would understand.

In fact I am not wondering. I am pretty sure that's the case. :)

Wednesday, April 21, 2004

"Since programmers treat people like they're just another command line interpreter or compiler, too bad there's no Design Patterns or Cookbook for dealing with people."

Jim Rankin
Wednesday, April 21, 2004

As a program/project manager, who, although mostly introverted can fake it enough to get by, I would like to recommend the following link:

Wednesday, April 21, 2004

Software developers?  That's just not the case, in my experience.  Us programmers are the life of the party.  The creepy folks are system administrators.  I'd hate to get stuck in an elevator with one of them.

a programmer
Wednesday, April 21, 2004

The clueless fellows Joel is describing might have Asperger's Syndrome.

My son suffers from a milder variant of one of those autistic spectrum disorders, and he's having a hard time picking up social cues, even though he's around other kids all the time.

Some people are simply wired differently.  Some of those people grow up to be software developers.  ;)

Wednesday, April 21, 2004


XXXX means (unecessary detail),
in this case the name of the programming book,
and the actual link to the updated versions website.

You've got to be kidding! You must be the author of the book Joel reviewed!

Wednesday, April 21, 2004

The last place I worked, a (non-programmer) coworker said to me, upon hearing I had a new gf, "What is it with everybody dating programmers these days?", without a trace of sarcasm.

The myth of "software developer = social outcast" is about as true as pocket protectors and slide rules these days.  Welcome to the 21st century.

Wednesday, April 21, 2004

Flow-chart conversation designs for lifes sticky situations (e.g. firing somebody, dealing with slipped deadlines, etc). Like the scripts telemarketers use, but for work interactions. A little creepy, but a useful resource for the socially hapless.

Wednesday, April 21, 2004

This is an interesting topic, mostly because I fall at the extreme end of poor social skills.  It isn't just software development that attracts the socially inept, but math, physics, engineering in general.  Anything where the interaction is more with nature or logic than with other people.

Joel's comments about the problem being self reinforcing is probably true.  Physical characteristics that make one unattractive, severe acne, thick glasses, being small or obese, can increase the problem.  At least I didn't have the problem of being fat.

With practice and experience one can improve basic skills of human interaction.  But, like music or art, if you don't have the talent for it you may never get to the state of being really skilled.

The cell phone is an indication to me of a continuing deficiency in my own social skills.  I see people everywhere with there hand up to their ear, talking to someone who isn't there.  I think about getting one like everyone else, but  don't.  Not because I object to the technology, but because I would have no one to talk to.

Wednesday, April 21, 2004

>>>That software developers (or scientists, mathematicians, professional musicians, engineers...) have, as a group, poor social skills is mainly just a case of sour grapes.  You hear these suggestions most often from the stupider quarters.<<<

I hear it most often from other software developers, (and scientists, etc.)  They are not from the stupider quarters, but rather are self aware enough to realize that they have the problem.

>>> Quick, yank to the front of your mind the last few automobile salespeople you met.  Would you enjoy going out for beer with them?  <<<

That's the wrong question.  The question is could they find someone that they would want to go for a beer with (and who would go with them).  If they can find a drinking buddy or can get a date for a Saturday night, then they must have some social skills, even if you or I think they are a total bore.

Wednesday, April 21, 2004

I disagree, vehementy even, that software developers have poor social skills.  This is the classic case of Proof by Repeated Assertion; and frankly, I think it's one of the ways that the industry reinforces the mentality that programmers are not and cannot function on the same level as "real businesspeople."

Programmers are certainly less social than other people.  But that is not the same as having poor social skills.  One is practice, the other is aptitude.  As developers, we do spend more time in front of our desks and less in the boardroom.  But why does that diminish social aptitude?  Is making small talk and showing interest in other people somehow unlike riding a bike?

And as to why we're less social, in general, I think the answer is simple:  software developers work damned hard.  We really undersell ourselves on this point.  More than the fact that we work in front of computers, we work a lot.  Meet people in other professions who work, often passionately, in a regular 8-5 + overtime + outside professional development.  They may be more outgoing in personality and faster to make acquaintances, but they are often driven along a one-track mind that eventually turns people off.

Thursday, April 22, 2004

I would say that true programmers are wired differently. I don't think that anyone can argue with that one. People in previous centuries would've said something about the "geometrical mind", but it means the same thing.

I think it's a tradeoff, for a less fine-grained mental model of other people, programmers can construct very detailed mental models of computer programs and hardware. The two seem to be mutually exclusive. The more complex mental models of programs you can visualize, the less you can model and predict what people are going to say.

I think Joel's onto something when he says it's more of a cascading phenomena, than something linear. So all you need is a tendency, and the environment automatically pushes you in that direction. Almost like the world wants you to be that way for some reason.

I don't think it's impossible for programmers to have social skills, it's just something that doesn't come naturally, and it's something that has to be worked on.

I would also argue that programmers, unless they have an outside interest, don't really have much to say to normal people. Talking about inline assembler and C++ templates, or why Java sucks due to garbage collectors that thrash pages, flies right over the head of most people. Definitely when I hear someone discussing last night's TV episode of Survivor, I immediately hash them into the "uninteresting" bin.

anonymous strikes again
Thursday, April 22, 2004

"I would also argue that programmers, unless they have an outside interest, don't really have much to say to normal people. Talking about inline assembler and C++ templates, or why Java sucks due to garbage collectors that thrash pages, flies right over the head of most people. "

Unlike discussions of every other group, which are perfectly comprehensible, right?  When my brother and father talk investment banking, I get lost pretty quickly.  Or two philosophy types talking about the phenomenology of the numinous world (or whatever).  Or my nephew (a talmud geek) could make your head spin when he talks about whether tosefta influenced the mishna or vice versa.

Anyone without an outside interest probably doesn't have much to say to people outside if their chosen specialty.

Thursday, April 22, 2004

In reply to the nameless poster who said that IBs and lawyers requiring constant interaction with people, that is only true for a small subset of those in either careers. Most of the lawyers my age do one single mindless task repeatedly, for 60-80 hours a week (e.g. document review), so not only do they not interact with people at work, they don't have time to interact with people outside of work. Investment banking is even worse. In law, it is at least possible to get a job that involves real interaction with people, if you choose the right field, but as an IB, you don't really interact with anyone for the first four years of your career, unless you consider sitting in a meeting and not saying anything interacting. At least, that's how it looks to me, from the outside. But then, it's probably only my lack of awareness (self, and otherwise), that makes me think that :)

Thursday, April 22, 2004

Lets get summin straight, im 16 years old, a programmer and have a web server etcetc... learning Visual C++, started when I was 8...

Oh and i have quite a good social life.

Just because the large percentage of programmers have no social life, doesnt me we all do

Nathan Howard (aka Triggerhapp)
Thursday, April 22, 2004

> Oh and i have quite a good social life

Programming skills, social life, and the ability to write: pick any two.

Michael Eisenberg
Thursday, April 22, 2004

I think the claim needs to be taken with a grain of salt. Part of it comes from organisational settings where non-developers are commenting on developers' lack of spontaneity when they're interrupted at a task. But this is not unusual.

It derives from the fact that software development requires concentration, and yet developers often aren't given the privacy they need for that level of concentration.

Bob and Jane say hi to the accounts people and get a pleasant chat about the weather. They say hi to the programmer and he blinks at them, refocussing to a new context.

Me And The View Out The Window
Thursday, April 22, 2004

Interruptions... yes!

Would anyone enter operation room to say hello to
the surgeon?

Would anyone enter into a TV studio when there's red
light turned on. "Hi Mike, you have a lovely audience in
here - is this live? Hi Mom!"

Friday, April 23, 2004

I don't think social skills is the problem, I think it's mostly because geeks in general tend not to share too many common interests with the general population and tend not to be overly impressed with pop culture.

I've always been mystified as to why most people have no interest in things like politics, I suspect it's because most people don't enjoy spending time analysing things and thinking things through. Mostly I've learned to accept that most people don't like talking about the things I like talking about. Good thing music is one of my hobbies...

Bob Hu
Sunday, April 25, 2004

I know a whole lot of developers, and very few of them have poor social skills.  However, most of them are introverts, which is very different.

See the following article...


Friday, April 30, 2004


I hate to say this, but as a NON programmer that got into programming totally by accident but decided he loved it, I find that a lot of the degreed (More than a bachlors) types seem to be the geekiest. (Is that a word?) .. In my three real jobs as a programmer before I finally quit doing this work full time because I hated working with machines so much and don't get enough contact with real people I decided that some folks just love to write complex code for complexities sake, and I also find that stereo types are pretty much based on fact..  Thankfully I can seem to mix with anyone for the most part.. I'm actually shocked that Joel has such good articles. Most web sites about programming or products that are based on "Developing a web site, or product that does the same" are so void of real human interaction that it scares me!


Tim Smallwood
Friday, May 21, 2004

first off - I'm fairly geeky too, so I'm not saying I have incredibly good social skills, but still...

I think the problem is, there's a difference between being social, and being *good* at it.

E.g. many geeks I know are *not* introverted, contrary to popular belief, they are quite social as evidence by the fact they go to roleplaying/boardgaming/lan evenings up to 5 times a week - but it's often with other geeks which somehow feels 'safer' or 'less social' and they may actually get along fine and *think* they're find until they make a social faux par, and not even realise why.

Sometimes, the people who are *really* bad socially, stuff up badly enough that they actually figure out (or are told) what they're doing wrong, and after a couple of years are fairly ok, while the ones that weren't too bad - don't make as major stuff ups, and so when they happen, can't figure out why (I'm thinking of an actual case example of two brothers here).

Not to mention, it can be really hard *explaining* to someone what's gone wrong. Even when *they* know somethings gone wrong (everyone hates them and they don't know why, etc) it can take ages, because they won't believe you when you say 'people generally act a certain way in a certain situation' until you come up with a dozen examples (and not before!).

If you know someone like this, a psych textbook can help. They haven't picked up certain social cues or behaviours by themselves, but reading a textbook can point them out so they can learn to recognise them, or at least be back-up for when they don't believe you.

This is why I sat down with someone and a copy of 'Influence: The Psychology of Persuasion' citing psychological studies at them about:

E.g the reason a friend was annoyed at him for something they wouldn't have been annoyed at a stranger for doing (going out with an ex after they broke up) and this was *because* they were friends, and therefore expected a different/higher standard of behaviour and loyalty, and that yes, reciprocity is 'logical', as it's a kind of 'inbuilt' correct strategy to the Prisoners Dilemma (at which point they understood me).

I had to use the section on brainwashing as a example of why *other* people think you will be consistent with your actions all the time, even when they have reasonably clear spheres.
E.g. He was getting a 'sleazy' reputation, and friends who were just friends suddenly had a much bigger 'personal space' than they'd had before - ie no hugs etc.
Basically, despite the fact he had been *uncannily* good at flirting, and never flirted with anyone who wasn't attracted to him, people were presuming he would be sleazy with them, despite the fact that he wasn't - or were starting to interpret his 'friend hugs' as flirting, when they weren't, or hadn't been interpreted that way before (he only hugged close friends), because he wasn't discrete about the people he *was* flirting or involved with.
He had a rather lurid sexual history, that was making people feel uncomfortable, despite the fact he was never at all sexual with them - which is what he couldn't understand.
It took awhile to basically explain 'Discretion is the better part of valour', but it would have taken longer if I hadn't had the book for examples.

Hey, I just realised that I originally saw that book here!

I actually spent a few years as a teenager reading psych textbooks etc, and closely observing social behaviour, as I felt like I just didn't understand it (teens are actually worse at social cues than both younger children & adults - can't find a link though), and I feel it really helped.

However, I get really annoyed when people keep bringing up the 'Aspergers' card. I actually know some children with Aspergers, and it's a lot more noticeable, from a young age. It's literally border-line Autism (or even a form of Autism if you're going by the clinical, rather than commonly understood definitions).

But these days, anyone who's just at the low-end of the scale when it comes to social interaction, gets self-diagnosed as 'Aspergers'.
Give me a break!
I don't have Aspergers, my friend doesn't have Aspergers, most of the typical geeks I know don't have Aspergers.

Social isolation (due to random 'kids can be mean' playground causes, parents who won't let you go see other kids after school, or spending a lot of time in a particular pursuit or hobby) means you won't pick up some social skills, which leads to a viscious circle of social interaction, but it doesn't mean you *can't* pick up social skills.

Paul Grahams 'Why geeks are unpopular' is basically on the same track:

Friday, July 16, 2004

*  Recent Topics

*  Fog Creek Home