Подтвердить что ты не робот

Работает ли парное программирование при несоответствии импеданса навыков?

Например, может ли опытный кодер с ограниченным опытом работы с С#.NET быть сопряжен с опытным С#.NET-кодером со вторичной целью заставить первого ускорить работу с С#.NET?

4b9b3361

Ответ 1

Совершенно верно. Обмен знаниями - одна из точек парного программирования (наряду с полезной динамикой наличия одного типа лица для бит и другого обзора, как они это делают).

По моему опыту, это один из наиболее эффективных способов сделать это - и позволяет менее опытному кодеру по-прежнему полезно вносить свой вклад (требуется меньше опыта для обзора того, что делает эксперт, и принятия разумных комментариев/вмешательств, чем для целая работа).

Ответ 2

Это зависит от личной химии между ними. Если более опытный программист желает и способен поделиться своими знаниями, и пусть менее опытный программист участвует в разработке посредством написания кода и обсуждений, я бы сказал, что это очень эффективный способ обучения.

Ответ 3

Да, я считаю, что хорошее программирование на парах - это всегда два пути, это, по сути, часть социальной инженерии, маскирующаяся как ИТ-инновация.

Ответ 4

Да, это сработает. Если 1) программист с ограниченным опытом восприимчив к обучению С# и 2) другой программист готов преподавать С#.

Ответ 5

Когда рассогласование умений велико, тогда он становится больше отношения между учителем и учеником. Это неплохо, но может тратить время на квалифицированного человека.

Однако, даже если это нецелесообразно или бесполезно, очень полезно иметь очень редкую пару сессий! Даже если ученик перегружен или неудобен, иногда полезно "студентам" видеть, как люди на высшем уровне работают и думают. Это помогает дать им представление о проблемах/навыках/методах высококачественной работы. Подумайте об этом как ученик средней школы, посещающий исследовательскую лабораторию. Это пустая трата для ученых-ученых для обучения старшеклассников, но 1-часовое посещение может помочь сосредоточиться на ученике и дать им представление о конечных целях...

Я помню, почему я выбрал Emacs в качестве моего редактора. Я просто оказался рядом с опытным пользователем и буквально грубо посмотрел через плечо, наблюдая, как он перестраивается и быстро перемещается по коду. Я смотрел меньше минуты, и я никогда с ним не разговаривал.. он, возможно, даже не заметил, что я смотрю! Но я был настил, и решил научиться Emacs. Десять лет спустя у меня все еще не так много навыков, как этот эксперт, но я не жалею о своем решении изменить редакторов, так как я получил представление о том, что было возможно.

Ответ 6

Лично я считаю, что это будет хорошо работать и является одной из целей парного программирования, но насколько это будет зависеть от двух программистов. Если программист 1 (тот, кто изучает С#), закладывает дополнительное время, чтобы действительно встать на скорость, а программист 2 (другой) имеет терпение и желание учить его, должно быть хорошо для обоих.

Ответ 7

Вы, конечно, можете это сделать - мы это сделали в прошлом. Но вы должны признать, что вы торгуете преимуществами "качества кода" от преимуществ обучения. Боюсь, нет бесплатной тренировки.

Ответ 8

Это работает в некоторой степени. Обычно это один ведет другого... так что это не так много парного программирования в этом смысле.

В значительной степени это зависит от навыка опытного кодера для обучения, а другого навыка кодера - для быстрого изучения.

Ответ 9

Да, но только если лучший человек терпелив и готов учить, а худший человек готов учиться. У меня есть пара, запрограммированная с людьми не так хорошо, как я, и это было утомительно, но я думаю, что они учились на этом. У меня есть пара, запрограммированная с людьми, которые лучше меня, и я, конечно, узнал об этом. Зависит от людей на самом деле.

Ответ 10

Это может быть эффективным со следующими оговорками: Вы должны переключить партнеров.

Я действительно был в этой ситуации, и, если разрыв большой, он может очень облагаться налогом для обоих членов пары. Лучше всего переключить партнеров через несколько часов, причем время меняется в зависимости от вашего допуска и размера пробела, Если этот параметр недоступен, смешайте некоторые соло-программы.

Ответ 11

Там говорится, что сила команды так же хороша, как и ее слабая связь. Сопряжение самого сильного со слабым из них традиционно было лучшей стратегией, потому что самое слабое обучение от самого сильного потенциально обеспечивает большую часть обучения. Если есть беспокойство о том, что самое сильное не заинтересовано, то замените самого сильного на кого-то, кто действительно был бы самым сильным.

Ответ 12

Все зависит от личности разработчиков, нет жесткого и быстрого правила.

Одно несомненно, что опытный разработчик будет менее продуктивным при работе с неопытным разработчиком. Я лично считаю, что при парном программировании должно быть хорошее соответствие способностей. Это, однако, очень хороший способ сделать разработчиков с неопытным опытом до скорости.

Ответ 13

Хотя это хорошая идея, но практически это может быть не полезно. Чтобы обучить кого-то, вы можете организовать обучение и назначить наставника, который может помочь и вести. Наставник может назначить работу из реального проекта и может контролировать.

Программирование пар должно быть между относительно опытными людьми, если вы хотите получить преимущества этой концепции. На мой взгляд, парное программирование с неопытным человеком будет иметь потерю производительности и не уверен, сколько человек будет пикап, когда кто-то постоянно проверяет его. Назначение задачи и предоставление возможности ее разработки независимо, а затем ее обзор обеспечат хорошее самообучение.

Ответ 14

Да, но подход, чтобы сделать его эффективным, может быть неясным вначале. Задачей, которую программируется пара, должна стать задача менее опытного программиста (мы будем называть его Майклом). У меня также был бы Michael запуск сеанса парного программирования, чтобы объяснить, что представляет собой цель сеанса. Этот подход ставит Michael на место водителей, где более опытный программист (мы будем называть его Биллом) будет служить больше наставнической роли.

Обычно Билл будет либо принимать, либо давать более сложные задачи для работы. Этот подход позволяет Michael работать над задачами, которые больше подходят для его уровня опыта. Я бы рекомендовал сначала отключить с 30-минутным интервалом времени, чтобы Майкл мог привыкнуть к процессу управления кем-то другим. Вы можете медленно сократить эти отключения выключателя до 15-минутных интервалов или что-то, что лучше всего подходит для двух разработчиков.

Ответ 15

Я думаю, что конечные результаты, которые вы получите, зависят от ребят, которые это делают. В этом случае вы, вероятно, закончите тем, что один ведет другого (и где другой просто обращает внимание на то, какие функции языка использует первый).

Ответ 16

Это зависит от того, насколько несоответствие импеданса навыков мы говорим.

Два хороших программиста на разных языках могут быстро развиваться вместе с ним, очевидно, за счет небольшого замедления одного эксперта на текущем языке проекта.

Если разница слишком велика (например, ветеран и новобранец), вместо этого может быть предпочтительнее начать с какого-то другого подхода, чтобы избежать риска получения контрпродуктивности.

Всегда будьте осторожны с программированием экстремальных пар!

enter image description here