
Ask HN: Is programming ability inversely correlated to sociability? - alfredallan2
Apologies in advance if the question is offensive to some.<p>Anecdotally, I have often noticed that the better programmers that I know are, while congenial and very well-mannered, also tend to be somewhat self-absorbed and not very open to chit chat.<p>Personally, although I consider myself only a decent programmer, on days that I am productive, I tend to be averse to social interactions, and instead want to focus on the program I&#x27;m building. I find that the more I socialize, the more of the code&#x2F;structure gets out of my head and needs to be &quot;reloaded&quot;. Conversely I have many days I spend almost entirely socializing (aka meetings) and on those days I get almost zero coding work done.<p>1. What do the more experienced folks here think of this? 
2. Is there any serious&#x2F;casual study done on the topic?
======
tedmiston
Honestly, contrarian opinion ahead, but I don't think so.

Software engineering is design just like anything else. Being able to clearly
communicate the components, workflows, thought process, etc is a sign it's
built well. (I'm interpreting "better programmer" to mean one who builds
software well or better than average.) Whether that conversation is with a
peer, maintainer, or end user, I think the same principle is at work.

This is premised on the idea that I believe peer reviews of code and designs
are fundamentally a good thing. Talking with more people to get more relevant
feedback makes for a better system overall.

Context switching is for sure a thing when in the moment of building a system,
and having our time in meetings definitely spends our finite attention on
those meetings rather than building things. Some amount of meetings is
inevitable in any job though. Personally I try to cluster my meetings and
prefer them later in the day.

------
hackermailman
Knuth was in a fraternity, meaning living with a dozen people and going to
parties, so I don't think asocial = great programmer. I also agree with the
other posts that in the end it's really just design skills that makes a great
programmer. Designing these highly complex systems to somehow all fit
seamlessly together, be self documenting, be maintainable, easy to reason
about for future optimization and easy to add features to. The more
professional programming I do the more I realize how bad I am at it when I
come across a designer who is able to implement the above and make it look
easy.

~~~
Dudenoso
I don't think pointing out Knuth is valid in this case. What happens with
people way outside the curve most likely does not apply to everyone within the
standard deviation (or maybe even a few times it) .

I am not saying that I agree or disagree with the conclusion, mind you.

------
shahbaby
It's simple, the more time you spend programming, the less time you'll have
for socializing and the more time you spend socializing, the less you'll have
to improve your programming.

Where you spend your time is what you get good at.

~~~
massimo-nazaria
> It's simple, the more time you spend programming, the less time you'll have
> for socializing and the more time you spend socializing, the less you'll
> have to improve your programming.

Totally agree.

Especially at the beginning, programming skills need time and constant
dedication in order to be developed.

A busy social life may preclude this necessary initial time investment by
beginners.

------
badrabbit
It's not just in technology. This applies to any field that does not require
sociability to succeed.

I think it's about balance. The time one spends learning a new programming
language,system,etc... Could also be spent learning sociability and social
skills.

In my experience,someone is a better programmer because they invested more
time into it.

I think it's possible,but very hard to strike a good balance.

------
auslegung
I don’t think so, and the first thing I would point to is pair programming,
particularly promiscuous pairing. Promiscuous pairing in particular requires a
relatively large amount of social interaction throughout the day but improves
code quality and skill level for teams who can actually pull it off.

------
iSloth
Generally I would agree that the better IT professionals are often less
social, nature or nurture I wouldn’t like to guess though.

I also don’t think it’s limited to our industry, I’ve seen it across most or
all that I’ve worked in so far.

------
bjourne
Anecdotally, yes, most definitely.

------
PaulHoule
see

[https://en.wikipedia.org/wiki/NeuroTribes](https://en.wikipedia.org/wiki/NeuroTribes)

------
vbuwivbiu
no

