2 ms·
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
by mikekchar 9y ago
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.