
Ask HN: Why are programmers so unfriendly? - acidfreaks
I&#x27;ve noticed several times that the programmers are unfriendly, grumpy and with a lot of attitude. If you ask them something related to programming in a community, all they will do is fight with other programmers on frameworks, programming languages, skills etc etc I&#x27;m not including the whole programming community as if every programmer on earth is like that, Of course I have seen some good programmers as well. But why most of the programmers are so unfriendly towards new coders?
======
akamaozu
Unfriendly towards new programmers? I don't see it.

This is one of the more open and accepting fields of work I can think of.

We have regular meetups where an absolute newbie can meet a very public figure
in the community and have a conversation.

We have tutorials all over the internet for anyone. Guides, helpful libraries,
etc.

Regardless of age, gender, religion or financial status, programmers welcome
you to the community with open arms.

The problem is programmers happen to care a lot about what they do, and that
manifests itself in taking a very passionate stance on what seems like
trivialities to a passerby.

Take for instance spaces versus tabs for indentation. Pretty inconsequential,
right? Visually it looks the same so what's the big deal?

A more experienced programmer can tell you exactly why spaces are better from
personal experience. Usually coupled with much emotion too.

It just looks unfriendly / grumpy when she's arguing the merits of spaces over
tabs, but I can promise you that it's not her intent to discourage people from
programming.

The end goal is always more (and better) programmers. We just have a silly way
of unconsciously sabotaging that effort.

~~~
SixSigma
> A more experienced programmer can tell you exactly why spaces are better

You're getting in dangerous territory there m8. TABS ftw

~~~
dozzie
Except no editor supports them correctly. Good luck with trying to keep tabs
for indentation and spaces for alignment -- at the beginning of the same line.

~~~
SixSigma
> Except no editor supports them correctly

I use Acme, an editor that supports them correctly.

~~~
dozzie
And how does it work with this?

    
    
      while (keep_going) {
        my_value = function(argument1, argument2, some_module.CONSTANT,
                            some_module.CONSTANT2)
        // ...
      }
    

Because there is one indent and twenty spaces, and those can't be converted to
tabs, since it would break code alignment.

~~~
SixSigma
It would say "that's horrible style, keep them all on one line, thanks"

I use proportional fonts so playing games like that is unlikely to get the
results one wants.

~~~
dozzie
And I would say "not breaking your lines to fit in 80 columns is horrible
style".

Also, proportional fonts are very rare choice for code. You're the first
person I've ever heard to use them this way.

I take it that, all in all, Acme doesn't work with tabs correctly for
indentation/alignment, the same as the rest of the editors.

~~~
SixSigma
The plan9 team use proportional. Plan9 too the decision to drop support of the
punch card derived TTY. Once you free yourself from 80 columns you can forget
about it. There is no indentation/alignment dichotomy.

Russ Cox, Rob Pike - Acme users

Here's a picture of Dennis Ritchie using it

[http://nl.pcmweb.s3-eu-
west-1.amazonaws.com/sites/default/fi...](http://nl.pcmweb.s3-eu-
west-1.amazonaws.com/sites/default/files/beeld/dennis_ritchie.jpg)

~~~
dozzie
Precisely 80 columns may be derived from TTY, but the range 80 was chosen from
is not. It's around the limit of a line human can easily comprehend in one
look. If you make it 160 (easily doable), then the line gets too wide to read.

Guess why articles in newspapers were typically organized in several narrow
columns instead of spanning throughout the whole page, even when the article
was several pages long?

And once you forget about the ridiculous idea of having few lines as wide as
the whole screen, so there is a small vertical area on the left with almost
all the code, while two thirds of the screen is wasted (or so you need to
scroll horizontally, which is equally bad), suddenly using proportional fonts
goes awry, as you _need_ the alignment, which is a separate thing from
indentation.

~~~
SixSigma
With a tiling window manager, the window is not the width of the screen.

Acme has no horizontal scrolling.

------
nperez
People are people. The obnoxious ones stand out more.

This is also a field where poor quality work can put sensitive information at
risk or cost others their jobs. If someone is writing production code
carelessly, I think it's OK to be firm (but not personal) about what needs to
happen next.

If someone is being rude in a learning environment, it's just ego,
competition, and/or poor social adjustment.

------
foolshdropout
It takes a special kind of project member persona to handhold a newcomer from
the "asking questions phase" of wanting to be a programmer, to the "seeking
answers for themselves" stage of being a programmer and if you're lucky you'll
have a member of your project that excels at handholding a new user all the
way up to the "gives answers to newcomers" stage, thus completing the unicorn
life cycle. But these are rare and in only one instance have I actually meet
such a member of a project.

------
orionblastar
It all started in the 1980s and personal computers. Boys who were nerds and
socially inept got personal computers from their parents as something to learn
with. Before that it was mostly women who got into programming.
[http://www.npr.org/sections/money/2014/10/21/357629765/when-...](http://www.npr.org/sections/money/2014/10/21/357629765/when-
women-stopped-coding)

The problem is when you are socially inept. Or rather lack social and people
skills. You don't tend to be as friendly with other people who ask questions
etc. Now not every programmer is socially inept. Just that some programmers
have a high level of intelligence at the sacrifice of social and people
skills.

For example during the BBS era there was a series of computer wars between
platforms and debates. In modern times it is war between frameworks and
programming languages.

No, not every programmer is like that. Programming is stressful at times, and
it depends on how well you handle the stress. Sometimes the stress makes
programmers angry and snap at people asking them questions because they feel
they should have read the manual or documentation or used a help file or
something instead of asking them something they could have looked up.

Me I was always glad to help others out as a programmer. I didn't have much in
social skills and people skills and I was a nerd, but I always tried to answer
questions in a friendly manner. I saw other programmers who did not and it did
not go well for them so I adapted. I mentored others how to program.

Most of the programmers are unfriendly towards new coders because they are
competition, and they are not at the level of the programmer yet. It is called
biting the noob, and you find it on Internet Forums on programming. Noob being
new coder or new person. It is just that they have been a programmer for X
amount of years, and some new coder comes along and wants to learn what took
them X years to learn. It is a process of trial and error, and learning from
your mistakes. At first you will write sloppy code and learn how to write
better code later.

You find the same thing from people who are experts at Linux and the new Linux
user asks them questions, and they tell them to read the manual or man pages.

------
udkl
Are you a male or a female?

Were the negative experiences mainly with males or females?

Are you yourself a developer? (vs a product manager etc)

What skill level are you at? (Intermediate, Proficient etc)

Is this in the US?

Unfortunately, sexism is a fact in the tech industry.... and maybe more-so in
the initial mentoring stages ...

I'm a male and have had good mentoring experiences.

