Live data from Hacker News

Don't Get Your Coworker to Agree with You

workaguide.com

21–30 of 112 posts

Re: Don't Get Your Coworker to Agree with You

#21

The problem is that if you are actually do know best, everybody else has to make that mistake and learn, and while doing so, is halting progress that could be made in the right direction. In my world as a software developer, I've found that if my group of colleagues and the boss has very different culture and skills than you do, it's very hard or impossible to influence change. Because the entire group would have to…

I agree with you, it is important to let the person fail and learn. But sometimes, this can be costly and fixing it may be hard. My approach is to ask the person question and understand what is the objective trying to be achieved, and hope with the answers given, the person realize it is doing a mistake. I also hope that the person respect my experience and is able to learn from my mistakes and do not need to do the…

The problem with Socratic questioning is that it assumes a teacher-student type of relationship, or at least a superior-subordinate one.

If that's not the case, and once someone recognizes what it is that you're doing, they may become rightly offended at the arrogance you're displaying by choosing the teacher role for yourself.

Re: Don't Get Your Coworker to Agree with You

#22
post #13

This works well in situations where the cost of a mistake is low and reversible. But often in software the cost is accumulating technical debt that will rarely, if ever, be paid off and driving a potentially successful project to the ground. I don't believe you can have a successful software team with individuals who can't take a code review well. Edit: That being said, there are definitely tactful ways to deliver a…

i'm a pretty mild mannered personality, very reluctant to get angry with other people. i try to be diplomatic with people, at least, in person.

one of my worst experiences working on a dev team was checking in code that broke the build. the alpha came into my office and got quite angry with me. it left new emotional wounds and reopened old wounds. it didn't help me become a better programmer, just more fearful and stressed. i've reflected many times on how that message could have been conveyed better.

multiple years later, a manager i was working for decided he needed to start writing code and he checked in something that broke the build i was working on. of course, now that the shoe was on the other foot, what do you think i did? i reacted angrily! (lucky for me, he's a good guy with a lot of class and didn't just fire me on the spot. he didn't even react in a negative way.)

the lesson i learned is that i need to become classier. still working on that ...

Re: Don't Get Your Coworker to Agree with You

#23
post #14
post #8

I went through this phase with a difficult coworker over code, would take code reviews personally, developed long running branches in an ivory tower with no input or discussion. Learned to let go and he has his parts of the code base and I have mine. Not ideal, but worked as we were a 2 man dev team at the time. Then he left and we grew the team. Now we got a few minefields left in the code base that anytime we need…

> What could one have done instead? Got rid of the co-worker much earlier on, by the sounds of it.

This is half of the right answer. The part where the OP's story breaks down is "he has his parts of the code base and I have mine". "Letting go" is different than "giving up". "Letting go" means realising that a single decision is not going to destroy the world (unless it is -- then don't let go ;-)). "Giving up" means never trying to find consensus on the rest of the issues.

If you can't find a way to work together so that your code is sensible, then one of you should leave -- as quickly as possible. Over a long period of time, if you shut down your communication channels, then you will grow even further apart. This is what leads to the problem.

Some people are inflexible. They have a need to have things their own way. They panic if the code is not how they would like it. Don't be that person and don't accept anyone else on the team like that either. Be compassionate and help the person improve, but don't enable their poor behaviour. You're the one who will ultimately pay.

But you can't help everyone. And sometimes you can't leave. That's life. Not every situation is fixable.

Re: Don't Get Your Coworker to Agree with You

#24

But you are a smart and socially conscious human being. You know that you can’t just go to Kara’s desk and tell them “Kara, the icon is wrong.” Kara would get defensive and argue for the the icon. I never understood this logic. How is Kara being offended a smart and socially conscious decision? A better way to handle criticism is to ask for people's opinions and not get defensive. After reading couple of negotiation…

> I never understood this logic. How is Kara being offended a smart and socially conscious decision?

Because Kara is a human, and humans are weird, emotional creatures. Our primary instinct is to scan any interaction for signs of attack. Thus, your recommendation to build trust is the right one, with trust Kara's prime instinct isn't that you're a potential attacker (and that's the main value of having high trust in teams in general - they are more efficient because they have less friction in communications). But empathy is also important: Kara didn't select the icon because she's a moron, bent on anti-social behaviour. Saying "the icon is wrong" can be understood to imply that, and that implication is, indeed, an attack.

Your experience in trying to reason with people might (I obviously don't know you) stem from some measure of lack of empathy - do you enter those interactions with a belief that you're right and the other person is wrong? Try entering them in the spirit of assuming that the other person made the choice they did in good faith, but perhaps did not have all the information you do, then listen, and remember that perhaps you don't have all the information they have, either.

Re: Don't Get Your Coworker to Agree with You

#26
Parts of this article make sense but only in the reversible case.

Arguments are rough- there are many ways to circumvent them. I find with review as long as you provide sound reasoning on why something is wrong and compliment the rest of the work. It's generally received well.

Hairy reviews can be avoided by specifying how a project is to be approached beforehand.

A one pager on the layout of a project and its components before work gets done does wonders to avoid huge changes at review time.

Re: Don't Get Your Coworker to Agree with You

#27

I'm sorry but no. This is terrible advice. Shit quality will be shit quality. If you really know shit has been done, you need to say so. Not communicating it will just keep the shit flowing. Have some pride in your work!

Agreed. This must be written by someone out on the west coast.

Re: Don't Get Your Coworker to Agree with You

#28

But you are a smart and socially conscious human being. You know that you can’t just go to Kara’s desk and tell them “Kara, the icon is wrong.” Kara would get defensive and argue for the the icon. I never understood this logic. How is Kara being offended a smart and socially conscious decision? A better way to handle criticism is to ask for people's opinions and not get defensive. After reading couple of negotiation…

> How is Kara being offended a smart and socially conscious decision?

That's not what the article is saying. The article is not saying that Kara being offended is smart and socially conscious. The article does not judge whether being offended here is smart or stupid or whatever.

What the article is saying is that it is smart and socially conscious to be aware of the fact that Kara is likely going to be offended. It is certainly true that awareness of others' likely reactions is smart and socially conscious.

The rest of your comment is pretty much a restatement of the conclusion of the article :)

Re: Don't Get Your Coworker to Agree with You

#29
post #13

This works well in situations where the cost of a mistake is low and reversible. But often in software the cost is accumulating technical debt that will rarely, if ever, be paid off and driving a potentially successful project to the ground. I don't believe you can have a successful software team with individuals who can't take a code review well. Edit: That being said, there are definitely tactful ways to deliver a…

i'm a pretty mild mannered personality, very reluctant to get angry with other people. i try to be diplomatic with people, at least, in person. one of my worst experiences working on a dev team was checking in code that broke the build. the alpha came into my office and got quite angry with me. it left new emotional wounds and reopened old wounds. it didn't help me become a better programmer, just more fearful and st…

As far as comments on a checkin go. The main thing I find is that the way to phrase things is very important.

Whatever you do, write any of your thoughts as suggestions instead of tasks to be completed. If you have a decent coworker, they'll know when something is really a problem, and when something is actually up for discussion.

Re: Don't Get Your Coworker to Agree with You

#30
If Kara's emotions and defensiveness can't handle a clearly articulated, rational, objective argument against design decisions, then for the sake of the product and the company, she probably needs to find another job. Avoiding discussions doesn't work for me. I'm happy Steve Jobs didn't read this post.
Post reply on HN