Tough Business – How Social Networks Change Personality

toughbusiness

The first title that I made up for this post was "Developers and Socialization". I know this is not what I want to write about. I want to write about a larger issue, not limited to software developers only – it’s just that thinking about the behavior of software developers brought it to my mind. So here goes.

I wonder how the world is going to change with the increased popularity of online communities, collaboration tools and social networks. Is it going to open people up to contacts with strangers? Or is it going to make loners even more scared of personal contact? I’ve been thinking about this and still can’t answer the question for myself.

I probably lean toward the former answer. The latter might even sound absurd to some of you – after all, the main purpose these networks were invented is to bring people together. But I have a perception of psychology different than the one that you read about in textbooks and mainstream magazines or journals. I think everyone is different and behaves as an introvert or extrovert, depending on different factors.

I read an article by Matt Berseth the other day, discussing whether it is OK to perform Google background checks for new employees. The question for me is different – what does the background check give you? Are people with a visible online presence extroverts in "real life"? Are people who do not appear in search results nerds who stay in front of the computer all day? No, of course, it’s individual. Here’s where software developers come in the picture.

I am a software developer. I feel uncomfortable when people have a prejudice towards software developers. A friend of mine, also a developer, never says what he does when meeting someone new, especially a girl. The reason – most people immediately change their attitude. They think you’re that geek that curses Windows every time, or uses strange word like c++, blog, java, framework. I do tell the truth every time, ready to bear the consequences.

These prejudices are not accidental. There is a reason people have them towards geeks, and the reason is geeks are weird. This weirdness comes from the fact that they simply can’t feel comfortable talking to strangers for the first time. This is the only reason and it comes naturally. They can’t break the ice, they are not pro-active. This is why I think that online communities would rather open people up for new contacts rather provide the needed social element online and scare them away from real personal interaction. They provide the first step. They connect people, and it’s always easier for geeks to talk and get to know someone online, rather than personally. After all they are in their own domain in this case.

I’m not seeing this happening yet, and this is why I was wondering about it. I have examples of really active Facebook members who can’t say a word to a stranger asking their name in reality. And yet I hope this would change. ReadWriteWeb have a nice article about quantitative implications of modern social networks. Let’s see what these numbers will look like in the next year or two. What do you think?

What to love in a job?

Let me begin with a quotation: “If you love your job, you’ll never work a day in your life”.

This has been attributed to Confucius, James Worsham, Mark Jackson, and Anonymous. I don’t know who the credits go to, but it’s someone of the above.

It is a fact that people who love their jobs are in general more productive than others and get things done. I see a strange phenomenon here, though. This one has to do with how programmers love their jobs compared to normal people.

Why do people love their jobs? I would imagine the answer to this is that they love what they achieve through them. A manager loves the teamwork spirit he has established in his team. A salesman loves the revenue coming from the many products he sold. A craftsman loves the product he created. I can go on like this forever. Until… I reach the obvious exception – programmers. Programmers don’t like what they create – they like the means they used to create it. I know most of them don’t admit it, but what programmers like is code and coding, not the outstanding web app coming out of it – or the slick 3D game.
I might be wrong at this one, but the longer I think about it, the more real it seems. We (yes, I consider myself a programmer) love the means we use, not the final product. I’ve tried to explain this to myself since I realized it, but I reach dead end all the time. Finally I just decided to accept it, like anything else that seems weird about programmers.

Here are some examples:

  1. Programmers fall in love with development practices (Agile or TDD)
  2. Programmers fall in love with frameworks (.NET, Ruby on Rails)
  3. Programmers fall in love with programming languages (like… you know)
  4. Programmers fall in love with operating systems (Linux)

Recently there’s been a lot of hype on similar phenomena. I’ve witnessed brutal debates on what practice to use, or what framework to use when developing a product. The question I ask all the time is “Does it really matter?” What if we concentrate on what is coming out as a result and see what happens? What if we try to use what we create and constantly improve it until we love it? This is what our customers and users do and this is what causes the gap between us and them. We can try and change, but then we would be going against the community. After all, we’ve always done it this way.