DEV Community

Discussion on: Pair programming

Collapse
afrinc profile image
John Dears Author • Edited on

Thank you so much @jonrandy for your honest feedback. Appreciate it. Would love to hear from you about how it affected the productivity in your case. We can see both sides of the same coin.

My experience:
Well, I do get a lot of mixed feelings for this from my team also.

But here's a thing, and hope you agree with me, collaborating isn't easy. So much potential it can go wrong, as stakeholders are so many. It may or may not be everyone's cup of tea. Its so easy to work solely than to work with others, get them on same page as us. Its definitely not an all-in-one solution.

It does have many challenges and if we try to follow some best practices, we can minimize them.

Would like to highlight some scenarios I felt, it really helped a lot:

  • If working remotely and want to onboard new member on team ASAP.
  • Have small team but huge features to deliver within tight deadlines.
  • Writing test cases before/after implementation of features

During PP, we learn about each other's thinking and working style. We get so different ways to solve a particular problems, and then we can choose the best of them.
We get instant feedback, so a lot of to-and-fros are eliminated.

Its not that we can't get conflicts everyday. We fight, try to convince each other of why their suggested way is better. And since everybody is working on the betterment of the product, the decision is always taken in favor of it. Moreover, we as professionals, do understand this and take it with a pinch of salt. This shows we respect each other.

Gotta say, over a period of time, we eventually accept each other.
I personally enjoyed such sessions, because worst case, we can end up to - "just agree to disagree". :D

PP is totally a different practice and is not expected to work, if the proper mindset is not established before hand. I myself when started felt so weird about it initially. But after having gone through it once, have seen it working magically so well for many cases.

Choosing this practice, is always a product management team choice though.

You are free to disagree with me and I will respect that :)