Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» парное программирование

Автор: ironwit
Дата сообщения: 06.05.2003 13:36
для начала вот урл статьи http://www.maxkir.com/sd/pairprog_RUS.htm

Кто что скажет, у кого есть личный опыт в этом, ну и ....
Автор: ZlydenGL
Дата сообщения: 06.05.2003 13:59
Согласен с большей частью сказанного, сам в свое время писал для кафедры прогу именно в режиме парного программирования. Программа получилась - конфетка, с действительно простым алгоритмом и интуитивно понятным междумордием... Но вот бедные клава и мышь - они это время пережили с трудом! :о)
Автор: ironwit
Дата сообщения: 06.05.2003 14:06
ZlydenGL

Цитата:
Но вот бедные клава и мышь - они это время пережили с трудом!


одновременно стучали что ли?

То есть ты считаешь, что парное программирование - это хорошо, чуть ли не будущее программирования в целом?
Автор: ZlydenGL
Дата сообщения: 06.05.2003 14:20
Смотря какое конкретное задание - и насколько оно синхронизируется с другими заданиями буде таковые имеются. У нас были все предпосылки - желание получить "халявный" зачет/ехамен :о) и практически полная совместимость характеров. Поэтому как раз клава и мышь пострадали - одновременно стучать не получалось, но вот отбирать ее у напарника приходилось... Да и ему тоже! :о) Но результат опять-таки превзошел себя. Какие бы одинаковые характеры не были - всегда из двух потоков мыслей можно получить алгоритм максимально близкий к оптимальному - особенно если у обоих как и у всех программеров то ли какого-то нейрончика в голове не хватает, то ли наоборот, на один больше :о)

А уж если об ошибках говорить... Точнее - о потенциальных ошибках... Какая бы совместная работа не была, все равно призрак состязания все равно витал в районе IDE :о) Посему даже если пишущий на данный момент код человек что-то "зевал", второй тут же замечал - без муторного процесса поиска, где же ты вместо "'" поставил """ или вместо "." поставил ",".

Добавлено
А когда пишешь прогу 7 час подряд (ну неинтересно было останавливаться!!!) сие согласись довольно важно.
Автор: ironwit
Дата сообщения: 06.05.2003 14:30
ZlydenGL

:)

вот продолжение темы http://www.xprogramming.ru/Articles/WorkingInPairs.html

там есть пара вещей, которые мне бросились в глаза.


Цитата:
Непродуктивные споры. Двое неплохих программистов, оказываясь в паре, проводят слишком много времени в спорах. Эта проблема - свидетельство отсутствия культуры командной работы и, возможно, неопределенности общих целей. Мы стараемся решить подобные проблемы апеллируя к результату и внедряя формальные протоколы принятия решений (см. книгу Software For Your Head).

Пассивность. Один набирает, другой спит или ковыряется в ногтях. Это являлось результатом силового внедрения, наложенный на внутреннюю пассивность разработчика и непонимание того как работает парное программирование. Разрешается путем работы над личными целями каждого и внедрением нескольких простых правил:
 - Менять ведущего каждые 15-30 мин.
 - Тот кто теряет нить или плохо разбирается в том что пишут - садится за клавиатуру.
 - Если становится скучно - садишься за клавиатуру.


у Вас было что-то типа такого?

Автор: ZlydenGL
Дата сообщения: 06.05.2003 14:41
Неа, говорю же - мы очень хорошо сошлись характерами! Скучно нам не становилось - оба программить любим, пассивность оба просто терпеть не можем - потому клава и мышь с ума сходили!!!

--------- оффтоп ---------
Клаву топтать - это вам не с ДЖОЙСТИКОМ баловаться! :о)
------end of оффтоп------

Споры конечно были - но я уверен что проиграло от этого только время написания! А вот нить рассуждения/написания почти не терялась - несмотря на то, что на начальный момент написания мы оба в предмете программирования немного "плавали". Но как говорится TFM в зубы - и...

А ведущего менять принудительно не приходилось, сами определяли когда и кто лучше. Например у него хорошо получалось реализовывать "заковыристые" ходы, а у меня - оптимизировать. Это не значит что мы работали ТОЛЬКО в этом ключе - роли менялись, причем иногда с ОЧЕНЬ большой частотой... Но опять-таки - в проигрыше осталось только время.

P.S. А за прогу нам вообще по пятерке в диплом ломанули! :о) Почти сходу, можно сказать.

Добавлено
ironwit

Еще немного оффтоп... Как с твоего сайта книжки сливаются? Что-то я торможу сегодня...
Автор: Pinocchio
Дата сообщения: 07.05.2003 12:34
ironwit
Парное прогреммирование, если имеется ввиду одна клава на двоих, это помоему бред и суровое лицо русской действительности (хорошо хоть кубики в детстве в разных местах прибили). Коллективное программирование в целом - это драйв, как участник опен соурце проектов отмечу, что наша инициатива, даже парная, канет в лету. А вот то что мы делаем в зарубежных GNU проектах - будет жить.
Автор: ironwit
Дата сообщения: 07.05.2003 12:51
Pinocchio

Цитата:
Парное прогреммирование, если имеется ввиду одна клава на двоих, это помоему бред и суровое лицо русской действительности


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


Цитата:
как участник опен соурце проектов отмечу


представьтесь плс


Цитата:
что наша инициатива, даже парная, канет в лету


это такое отношение именно к парному программированию или к отечественным разработкам вообще? (не очень понтно из поста).


Цитата:
А вот то что мы делаем в зарубежных GNU проектах - будет жить.


а свои поднимать не будем? Но это так, оффтоп.
Автор: ZlydenGL
Дата сообщения: 07.05.2003 16:34
Pinocchio

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

Ты хочешь сказать, что у тебя не было периодов когда ты сидел тупо пялясь в монитор (читать - в никуда) и либо пытался понять, ЧТО тебе надо сделать, или КАК ЭТО сделать?
Автор: aero
Дата сообщения: 07.05.2003 23:36
ironwit

был опыт по парному программированию
и споры действительно были
но вычитали откуда-то принцип, если спорим больше полчаса, то кидаем монетку

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

Автор: ironwit
Дата сообщения: 08.05.2003 07:27
aero

Цитата:
но вычитали откуда-то принцип, если спорим больше полчаса, то кидаем монетку




а если спорят "гарячие эстонские парни"


Цитата:
обоснование такое, раз спорим долго, то оба варианта равнозначны,  
и большой выгоды любой даже лучший вариант не принесет


хотя, ИМХО, реально и верно. Могут конечно быть варианты...
Автор: vserd
Дата сообщения: 08.05.2003 08:06
Pinocchio

Цитата:
Парное прогреммирование, если имеется ввиду одна клава на двоих, это помоему бред и суровое лицо русской действительности

Но придумали почему то на западе. Где и сосредоточены основные усилия по пропагандированию данного метода.
Автор: aero
Дата сообщения: 08.05.2003 12:21
на эстонских парней, наверное, нужен поправочный коэффициент
Автор: roma
Дата сообщения: 08.05.2003 12:55
обсуждай не обсуждай но подобное программирование стоит хотябы раз в жизни попробовать - я пробовал в бытность свою студентом, действительно контроль ошибок хорош, идеи возникают интересные - причём именно во время сидения за одним компом

правда потом когда мы больше писали вместе стали совершать одинаковые ошибки...
возможно в парном программировании немаловажен фактор "свежего партнёра"
Автор: ironwit
Дата сообщения: 08.05.2003 13:10

Цитата:
возможно в парном программировании немаловажен фактор "свежего партнёра"


кстати в статьях об этом есть, там именно указывается - что партнеры должны менятся с определенной периодичностью.
Автор: Pinocchio
Дата сообщения: 08.05.2003 13:59
ironwit
Кто подымать то будет? Свои опен соурцы? Представляться не зачем,
http://www.mtex.ru/software/
Я давно тут в форуме тему подымал о совмесном, дак народ очень вяло всё это перенёс. Основной облом получился, что у меня например нету CVS. Закрыто...
Работал в SynEdit - шлю мылом куски текстов программ с комментариями своих изменений зиповым вложением и там народ с удовольствием хавает. А у нас предложи кому нибудь так тебя тут же как дурачка на вид поставят. Лентяи все - сидят в Варезнике и наблюдают за тем как на западе все их мечты осуществляютя.
Автор: ironwit
Дата сообщения: 08.05.2003 14:29
Pinocchio

Цитата:
Я давно тут в форуме тему подымал о совмесном, дак народ очень вяло всё это перенёс.


ты про http://forum.ru-board.com/topic.cgi?forum=33&topic=0613#1 ?

прочитал, но если честно, там нормальные только 2-3 первых поста, потом обычный спор двух программистов.

может это и интересно, но.... опять же - ты внес какое-то изменение, может быть прокомментировал его, но мне, перед тем как писать что-то еще - нужно понять зачем ты внес изменение, что будет дальше.... То есть перестроить в своей голове весь проект - если же писать одновременно на одном компьютере - то эти затраты времени сами собой отпадают. ИМХО.

Добавлено
хотя все cvs очень удобно. Сам пользуюсь. Вот только никак руки не дойдут прикрутить к IDE фронт-энд к нему. Может кто посоветует(в пм) или урл на статью(сюда)?
Автор: v0yager
Дата сообщения: 08.05.2003 16:07
Парное программирование (далее ПП) - это прежде всего инструмент. И его полезность/бесполезность/вредность в первую очередь определяется тем, кто[персонал] где [в каких организационных условиях] и для чего [решения какой задачи] данный инструмент использует.

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

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

Привязываться жестко к одному методу работы опасно:


Цитата:
Когда мне приходится снова работать в одиночку после того, как поработал в паре, мне кажется, что у меня отказала часть мозга. Я чувствую, что начинаю терять уверенность в том, что делаю.


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

Практика:

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

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

В общем случае, эффективность ПП зависит от качества обратной связи (динамики) между программистами из одной пары. Как и от их психологической совместимости, готовности слушать и воспринимать других, конструктивному принятию критики, отсутствию желания во что бы то ни стало навазать свою точку зрения, профессионализма и т.д. Только вот мне эта ситуация чем то напоминает сказку о том, как солдат варил кашу из топора. Если у разработчиков есть все эти замечательные качества (ингридиенты), то при чем здесь топор (ПП) ?

Удачи и творческих успехов,

v0yager

Автор: ironwit
Дата сообщения: 08.05.2003 16:12
v0yager

вау, для
Цитата:
Newbie
сказано великолепно.

Где то занимался этим вопросом?
Автор: v0yager
Дата сообщения: 08.05.2003 16:24
ironwit

парное программирование, в частности (как один из инструментов), и software engineering, вообще, входят в круг моих профессиональных интересов (и обязанностей).

Так что потенциальных тем для обсуждения еще много Было бы желание.

А на форуме я действительно недавно...

Автор: ironwit
Дата сообщения: 08.05.2003 16:27
v0yager
хорошее образование?
Автор: v0yager
Дата сообщения: 08.05.2003 16:50
ironwit

я все таки newbie на форуме, так что не смущай меня

а обучение в нашей профессии идет постоянно Думаю ты прекрасно понимаешь, о чем я.


Автор: Pinocchio
Дата сообщения: 08.05.2003 18:25
ironwit
Про мою тему - не спорю, поглучилось не интересно. Тема нужная, вот мы её и пытались в топике держать. Кто то спрашивал - сидел ли я тупо уставившись в комп? Отвечаю - сидел, обычно это на вторые сутки сидения без сна. Это проходит буквально через два часа, а дальше снова сидишь как чёкнутый. Без сна могу не более четырёх суток - дальше компьютер свободен...
Ты спрашивал про изменения. Идея весьма простая.
1. Публикует, т.е. кладёт филес один человек - он ответственный.
2. Ты делаешь свои изменения под себя в любом случае. Если врозникает хорошая идея - отсылаешь публикатору.
3. Если публикатор внёс твои изменения в общаг, значит тебе не придётся переделывать всё в следующей версии открытых исходников.
4. Если ты принимаешь участие действительное участие в жизни проекта - тебя вносят в список "соавторов". Это твои рекомендательные письма, на случай если интересуются твоим авторитетом.
5. Я фиксирую изменения утилитами нортона FileCompare - запусти как нибудь.
Автор: ironwit
Дата сообщения: 09.05.2003 12:11

Цитата:
обычно это на вторые сутки сидения без сна.


это уже не программирование, а извращение. ИМХО.


а остальное не в тему. Но, сейчас как раз времени есть немного, мог бы бросить мне в ПМ список решаемых тобой вопросов сейчас, может я бы чем нить заинтересовался и помог. А лучше свой топик подними ответом на мою просьбу.
Автор: Pinocchio
Дата сообщения: 11.05.2003 07:43
Извините за оффтоп.
ironwit
Согласен, я извращенец. Был покрайней мере, по этому радикально непонимаю парного программирования. Мой сайт в рубрике "заценика". Там можешь скачать софт. Текущая проблемма ToDo для SysTray. При попытке менять хандлера аппликации, либо некорректно работает минимизация, либо неотлавливается EndSession. Нехватает времени. На инно сетуп анализировал Russion-13(14,15)-3.0.5.isl - Куча ошибок в русском языке. Сейчас делаю ISX 3.0.7, последний отталкивается от 3.0.6.
Сайт проекта "Open Source" для Delphi
Автор: ironwit
Дата сообщения: 12.05.2003 07:39
Pinocchio
ок, посмотрю.

Страницы: 1

Предыдущая тема: Вопрос по перепрошивке микросхем К573РФ2 и К573Рф*


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.