Pair Programming best-practices

  Рет қаралды 12,040

Bran van der Meer

Bran van der Meer

Күн бұрын

Пікірлер: 25
@werni75
@werni75 11 күн бұрын
I would like to share my personal experience with pair programming, especially from the perspective of an introverted developer. For me, pair programming means above all: loss of productivity and extreme stress. In theory, it may sound good to divide the tasks into 'driver' and 'navigator', but in practice, the more dominant part often takes the lead - and the other remains passive. This creates an imbalance that is neither productive nor motivating. Another major problem is that you never get into a state of flow. The constant synchronization of thoughts prevents the kind of deep concentration that is often necessary for creative and complex software solutions. Pair programming is incredibly energy-sapping - especially for introverts like me. After a whole day, I'm so exhausted that I want to give up everything, even though I love my job as a software developer. Pair programming can be useful for very specific problems. But for longer than an hour, I think it should be restricted under occupational health and safety law. I wonder if there have already been any studies on this - especially with regard to the psychological stress for introverts. If not, it would be high time! For me, pair programming takes away everything I value about software development: Personal responsibility, calm, focus and the joy of creative work.
@Codefide
@Codefide 10 ай бұрын
Thanks for the overview. I have started to pair-program with the new team/company I have recently joined. At first I was reluctant to it and wanted my own space to think about the logic/problem/solution but after a few session I am starting to see the huge benefits to it! I'm really looking forward to many more pair-programming sessions with my colleagues :)
@daviddelaney363
@daviddelaney363 5 ай бұрын
The statement that code ownership is a bad idea and that everyone on the team should share the code seems like a good idea at first but there is a learning curve involved with jumping between the different pieces. We experienced this when we coded a system that spanned database code, front end code and mainframe code. Every few months we needed to refresh on MVS/TSO/JCL/DB2 ...of course if the code base is small this works well. I think pairing works best on initial design approach before coding starts. And then it would be more of a team discussion.
@dmitrybiletskyi7020
@dmitrybiletskyi7020 Жыл бұрын
Thank you for the great video. We're only going to use pair programming in our team so I found it extremely useful.
@MilMike
@MilMike Жыл бұрын
I hate pair programming.. at least at my current company (never did it before): - the development is way way slower - the quality is not necessary better - It is very energy draining.. the need to explain every single character and discussing why I use X over Y is crazy - I can't focus if someone is talking, especially about some unrelated bullshit. - other devs usually don't take any breaks. That means sometimes I sit for 5 hours and talk about everything Sometimes we had a bigger problem, and we talked about it for hours and tried to solve it. Later after work I thought about the problem by myself quietly for few minutes and solved the problem in 30 minutes... I prefer to work alone and if I need help (or someone else needs help) I am OK with pair programming for max 1 hour. I also love to listen to music while coding and not blah blah blah.. Maybe I am not compatible with pair programming or maybe we are doing it wrong, I don't know.. But for me it is a nightmare. In my next job, I will explicitly ask if the company is doing pair programming.
@theafrodreamer
@theafrodreamer 7 ай бұрын
I have a code paring interview coming up. This video is helpful.
@EmmaSamuel-n1t
@EmmaSamuel-n1t Жыл бұрын
Great video, would love to hear your thoughts on pair programming between a junior and senior dev, more of a mentor/mentee role
@branvandermeer
@branvandermeer Жыл бұрын
I recommend you read the "Different skill levels" section of this article: martinfowler.com/articles/on-pair-programming.html#DifferentSkillLevels
@JelleVictoor
@JelleVictoor 11 ай бұрын
Hey, great video. Perhaps you could look to what woody zuil has to say about driver/navigator. His definitions are a bit different, but it’s in the context of ensemble programming. I tend to follow his definition more
@branvandermeer
@branvandermeer 11 ай бұрын
I've seen a talk from Woody in the past about mob programming, but I'm not sure how his driver/navigator is different from what I'm saying, can you elaborate? Btw, I also have a video about driver/navigator in more detail: kzbin.info/www/bejne/oKKqnn9sfctlac0
@YiyunMaoSSW
@YiyunMaoSSW Жыл бұрын
Cool video! Appreciate the helpful tips🤩
@codingismyreligion
@codingismyreligion 7 ай бұрын
Im going to propose this at the start-up im workign at 🎉
@alejandrocano88
@alejandrocano88 21 күн бұрын
did you?
@WebDevJapan
@WebDevJapan 21 күн бұрын
@@alejandrocano88 Yes (this is my other account) and we started doing it for some people - mostly for newer/less experienced employees. I shared this video with the company I work for.
@alejandrocano88
@alejandrocano88 21 күн бұрын
@@WebDevJapan thank you for the answer, if you don't mind me asking, how many hrs a day is reserved for pair programming, and is it for ever?
@WebDevJapan
@WebDevJapan 19 күн бұрын
@@alejandrocano88 It's not forever and there aren't really any strict guidelines. Some people are doing it for an hour, or however long it takes to finish the task they are doing. I'm one of the inexperienced people so it has helped me a lot! I have 14 months of full-time work experience now.
@codewithsebastian
@codewithsebastian Жыл бұрын
Thanks for this mate! I’m sure to learn a lot from you!
@weirdo-beardo
@weirdo-beardo 11 ай бұрын
Great content mate.
@JTXRP
@JTXRP Жыл бұрын
Great video! How did you make your description so professional? It has images, clear spacing? Is there a format or something you can use. Would love to know more
@branvandermeer
@branvandermeer Жыл бұрын
Do you mean the chapters? YT generates the design itself, I only provide the "0:00 Intro, 0:20 Chapter 1" etc.
@JTXRP
@JTXRP Жыл бұрын
@@branvandermeer I think KZbin did an update and I just realized it when viewing your video. I thought there was some kind of code you used.
@DevSamuraiX
@DevSamuraiX Жыл бұрын
Great content!! thank you!
@jazibulhassan
@jazibulhassan Жыл бұрын
This was helpful. Thanks!
@LarryPanozzo
@LarryPanozzo Жыл бұрын
Great video,
@yoavtamir7707
@yoavtamir7707 11 ай бұрын
Subscribed!
The future of software engineering
7:10
Bran van der Meer
Рет қаралды 2,4 М.
Driver/Navigator style of Pair Programming
15:17
Bran van der Meer
Рет қаралды 4,2 М.
I'VE MADE A CUTE FLYING LOLLIPOP FOR MY KID #SHORTS
0:48
A Plus School
Рет қаралды 20 МЛН
Вопрос Ребром - Джиган
43:52
Gazgolder
Рет қаралды 3,8 МЛН
#behindthescenes @CrissaJackson
0:11
Happy Kelli
Рет қаралды 27 МЛН
How Senior Programmers ACTUALLY Write Code
13:37
Thriving Technologist
Рет қаралды 1,6 МЛН
Talking Pair Programming with Shopify's VP of Engineering
54:36
The Tuple Podcast
Рет қаралды 6 М.
Angular Code Review Best Practices - Refactoring From Junior Level to Senior
27:10
To Pair or Not to Pair: Pair Programming
17:44
Thoughtworks
Рет қаралды 24 М.
Loose & Tight Coupling: Why Code is Hard to Change
17:40
Bran van der Meer
Рет қаралды 7 М.
Continuous Integration vs Feature Branch Workflow
17:31
Continuous Delivery
Рет қаралды 194 М.
Is Functional Programming DEAD Already?
21:07
Continuous Delivery
Рет қаралды 77 М.
Microservices are Technical Debt
31:59
NeetCodeIO
Рет қаралды 702 М.
What is a Code Pairing round? Hands-on demo with TDD | Thoughtworks
20:07
DHH discusses SQLite (and Stoicism)
54:00
Aaron Francis
Рет қаралды 104 М.
I'VE MADE A CUTE FLYING LOLLIPOP FOR MY KID #SHORTS
0:48
A Plus School
Рет қаралды 20 МЛН