Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Timid people get overrun by dominant people, and the kind of aspie cluelessness that runs through so many programmers (and I have no problem with that). So timid programmers often wind up unhappy and unwilling to talk about being unhappy, and the value of their ideas and opinions is lost. That's a loss to the team.

Boring people? Hell, I just don't want to work with them. If I have a say in hiring someone I'm going to spend hours a day around, I'm going to do my best to make sure it's someone I find entertaining.



If we met for the first time and you were in an authoritative position (interviewer) I'd probably come off as timid because I'm reserved around new people, but once I get to know the person/environment and get a good sense of my limits/role/status I have no problem voicing opinions or dealing with assertive people. Just because I might seem timid initially doesn't mean I'm a pushover, and I don't think I'm the only one like this.


I'm pretty good at getting timid people to come out of their shell (I actually like a lot of timid people). But it's not usually their interactions with me I'm worried about - it's their interactions with the rest of the team.


> Boring people? Hell, I just don't want to work with them. If I have a say in hiring someone I'm going to spend hours a day around, I'm going to do my best to make sure it's someone I find entertaining.

What the fuck, man? Are you trying to hire professionals to do a job or are you treating hiring as some sort of fucked up way of making friends?


I don't know about you, but I spend approximately one third of my awake time at work. One third of my conscious life. I'm going to make sure that I enjoy that time, and having enticing colleagues has a lot to do with that in my experience.

There are tons of interesting, very professional people around. There's no need to stick with the boring ones you find along the way, so yes, I would also avoid them.


If there's a glut of otherwise equally qualified people, sure. Is that the case with programmers?

An otherwise boring guy who goes home to his family and spends his weekends working on his house and watching football might get you one week closer to shipping product than the guy who goes out for drinks after work and will play video games with you and go rock climbing. So if you don't hire him, your competitors will and then your competition will leave you behind while you're out drinking and playing video games and rock climbing.


Why do you link "enticing colleague" with "doing whatever with that guy after (instead of) work(ing)"?

So your competitors hire the boring guy and get that feature one week earlier. You hire interesting people and they form a cohesive team, carry each other through tough times and work more passionately overall. At the end, you get N extra, unique features as a byproduct of your more involved workers, shooting months ahead of your competitor.

I know I presented an ideal case, but it makes my point. Working around boring (as in non-interesting) people is boring, and you won't be as productive in that environment. Thus, it makes sense to avoid these people unless you very much need their specific skills and you can't find those anywhere else.


I guess you'll just have to define what you mean by "boring" then. People who can meaningfully contribute to solving problems are good programmers and good professionals, but they could still be "boring" in the sense that they're not interesting as people.

Let's say you had a coworker who was knowledgable about the problem domain you worked on, produced lots of good code, made great positive contributions to any design meeting or code review he was invited to, always had a free moment to answer questions, but he always brought leftovers from home for lunch and ate by himself and never really made a joke or hung around with the team in a social context and you never got a sense for what his personality was outside of work because he only ever seemed to get engaged when the discussion was about work. I'd say that's a great coworker, someone I would love to work with, but also a very boring person. So why wouldn't you want to work with this guy?


Obviously, I would prefer to work with this guy than with someone more interesting but clueless. However, this doesn't mean that I would be happy doing it.

On the one hand, you present a very idealized case: how can she engage in (tangentially) work-related discussions if she's never around when discussions happen outside of meetings? After 8 years in industry and 4 as a PhD student, I have worked with and around many excellent people. However, I still have to meet someone that fits your example. They probably exist, but it is way easier to find either excellent interesting people or excellent boring people who simply won't get as engaged in your team/company.

On the other hand, at least for a small company, hiring the wrong person is much more costly than passing on a good candidate. Thus, when you interview (hopefully excellent) boring persons, probabilities are hugely stacked against them.


The point of my example was to isolate "boring" as a trait to demonstrate that, all other things being equal, "boring" doesn't matter. If someone's boring and also an asshole, the problem is that they're an asshole. If someone's boring and also doesn't contribute ideas, then the problem is that they don't contribute ideas. And so forth. The actual problem is never that someone is boring.


Personally I wouldn't mind working with him as a fellow employee, but he'd make me nervous as a manager of a small business. He sounds like he's great at his job, but has zero emotional ties to it, which translates to him being less likely to weather any bad times the company may face.

Ultimately, you clearly agree that gaining and retaining great talent is what makes a software business stand ahead of its competition, so isn't it risky to gain someone who isn't going to feel bad about leaving the business (and take all his experience with him)? If I can hire someone who'll fit in well with the team and produce good quality code, then I'd consider him a better long term investment that someone who fits in poorly with the team and writes great quality code, purely because the latter person has fewer reasons to stick with the business than the former.


I'm not sure what kind of connection there is between being boring and being more likely to jump ship. Plenty of interesting people jump ship too, because the best way to become interesting is to accumulate a lifetime of diverse experiences and staying in any one place gets in the way of that.

If you don't want people to leave the business, earn their loyalty. A boring person still wants to be treated fairly. They still want to take vacation, even if it's to visit their boring family rather than go backpacking in Tibet. They still have the same capacity to either enjoy or hate their job. They just don't necessarily have an interesting answer to the question "any plans for the weekend?", and I don't see why that makes them worse employees.


I'm not sure we mean the same thing by 'boring'. Boring, to me, doesn't mean that the person doesn't have hobbies, rather it means that the person is a perfectly nice person who just doesn't gel with the team. In fact, 'boring' is probably the wrong word here: it should probably be something closer to 'outsider'. That said, larger organisations do depend upon outsiders to prevent groupthink, so this is a multi-faceted issue.


That's not quite what I was after, but it's a good observation. I don't mind outsiders so long as they're energetic and interesting.


In this context there are two kinds of people - the "just a job" crowd and the "live and breathe this thing" crowd.

Either is a completely valid lifestyle, but they just don't mix well, so they should screen each other out at interviews.


If you live and breathe programming than you want to work with the best programmers. It shouldn't matter whether they're "entertaining". To me that sounds like the interviewer has no friends and uses work as a surrogate social life, not that he lives and breathes the actual work.


I should add here that "the best programmers" are, quite frankly, not always people I want to work with. I worked under a totally brilliant tech lead for a while, one of the finest programmers I've ever met. But he relished being an asshole, and really grated on people. I learned as much from him as I've ever learned from anyone, and I actually kind of like him as a person, but I'm so glad I don't have to work with him anymore.

Brilliant people don't always play well with others, and software is (in my world at least) a team effort. I want to work with people who pull the team together, not tear it apart, no matter how talented they are technically.


There's a difference between being boring and not being an asshole. In fact, assholes are rarely boring.


True dat.


"Best programmers" and "people who contribute effectively to a team's culture" can sometimes be exclusive sets.

One of the most intelligent and creative programmers I know is an arrogant douchebag who demoralises entire teams. He's very effective on his own, but stick him in a scrum team, and watch the culture of that team sour and watch its productivity drop.



And if your team culture is "let's be interesting creative people with zany hairstyles and really unusual hobbies" (not my team, but I sit beside them), then someone who is passionate mainly about checked exceptions is probably going to be a bad fit.

I used the arrogant douchebag as an example of why a great programmer who doesn't fit a team's culture is going to drag down the productivity of that team - how they don't fit that culture can obviously vary.


The team I work on has gone from a culture of "single guys who stay after work playing board games and go out drinking sometimes" to a culture of "married guys who leave promptly at 5 PM to go home to their pregnant wives and/or children" by gradually introducing people from the second set while people from the first set leave. Guess what? It didn't affect how much we managed to accomplish, because it's work and that bullshit doesn't really matter.


Fair enough, each team's dynamics are different.


Kind of the opposite, really. I have a tremendous number of friends and a very active social life. I find "work" can be a drag if it's not as much fun as not-work is.

One of the ways I manage to be a very happy person is to not spend time with people who don't actively make me happy, any more than necessary.


I guess I can't fault that if you're running a lifestyle business, but hiring programmers on the basis of how entertaining they are isn't really defensible on the basis of delivering results.


I think it really depends upon the business. I mean, a genuinely bad programmer, who doesn't merely fail to positively affect a codebase but actually manages to worsen it, will be bad in any programming business. However, many software shops just won't see the return on having a superstar. For instance, consider a shop writing Excel VSTO plug-ins: it's not wildly difficult work once you've done it a few times, but the work is time consuming, so it'd make more sense in that business to have good programmers who can work together and cover each others' backs than it would to have one brilliant programmer who annoys the rest of the team into leaving, or bores the rest of the team into losing what little enthusiasm they have for an already fairly boring niche of software development.

It may not make sense to choose personality over technical chops if you're trying to hire a language designer, but it may make sense to do so if you're in a niche which requires teamwork.


I wouldn't hire someone just because they're entertaining. But I might not hire someone otherwise qualified if they're not. And I'm not even in the habit of socializing with co-workers outside the job. But the job is enough hours with someone that I'd much prefer to enjoy their company.

I'm not sure why you keep assuming the best programmers are boring or unpleasant. I've found the opposite to be true, generally.


I assume nothing. I'm just pointing out that being "boring" or "entertaining" is completely irrelevant to whether someone is suited for a programming job, and that unless you're running a lifestyle business where enjoying your work day is more important than delivering results for your customers or getting paid, you're doing your company a disservice by hiring people based on these kinds of irrelevant characteristics.


I think he's looking for people that are fit for the job AND the chat over coffee.


Maybe I'm the clueless aspie here, but that sounds like the consequences of having a dominant-personality team that doesn't respect boundaries.

But, at the end of the day, teams can hire who they want, so I definitely don't think this sort of thing is inherently wrong -- I guess I miss the part of the industry where one could work in near-solitude since that's what I prefer.


I don't like working in solitude myself. I'm a social person, and I need other people to bounce off of.

I'm not the only one, either. I was trying to recruit an old colleague (and I'm not done trying to recruit him!), and his biggest concern about going to an early startup was the lack of a team to work with. He's one of the nicest and most easygoing people I know, and a natural leader. I'd love to have him leading a team of developers for me. But first, I'd have to get him a team.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: