Переключение на Главную Страницу Страницы: 1 [2] 3  ОтправитьПечать
Очень популярная тема (более 25 ответов) 1CPP: разработчикам - о схеме работы (число прочтений - 13805 )
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: 1CPP: разработчикам - о схеме работы
Ответ #15 - 06. Марта 2008 :: 11:14
Печать  
artbear писал(а) 06. Марта 2008 :: 11:09:
fez писал(а) 06. Марта 2008 :: 11:02:
Любой разработчик хочет сохранить контроль над своим участком кода. Это на самом деле очень важно.

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


Совместное владение кодом по технологии XP означает, что любой участник проекта контролирует код. Тот вариант совместного владения кодом, который сейчас принят в 1С++, и который до недавнего времени был принят в FuncTest означает, что существует код, который не контролирует никто.
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: 1CPP: разработчикам - о схеме работы
Ответ #16 - 06. Марта 2008 :: 11:27
Печать  
fez писал(а) 06. Марта 2008 :: 11:14:
Совместное владение кодом по технологии XP означает, что любой участник проекта контролирует код. Тот вариант совместного владения кодом, который сейчас принят в 1С++, и который до недавнего времени был принят в FuncTest означает, что существует код, который не контролирует никто.

А, знаешь, почему так есть?
ИМХО как раз из-за разговоров о принадлежности кода какому-то одному автору Печаль
Т.е. использовались одновременно оба подхода Печаль из-за того, что авторы не были готовы на оперативную тех.поддержку Печаль
Например, по Фанктесту я не менял/не дополнял принятую тобой схему наследования из-за твоего авторства.
Также в 1С++ пришлось лезть в "чужие" части кода из-за отсутствия поддержки от авторов Печаль

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

ЗЫ Насчет некомпетентности при внесении кода напомню, что лично я пришел в 1С++ после того, как мне надоело наблюдать за "хреновыми" сборками 1С++ от того же kms и АльФ-а Улыбка Именно для исключения подобных моментов в 1С++ мной было добавлено автоматическое тестирование.

Считаю это своей заслугой и горжусь этим вкладом Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: 1CPP: разработчикам - о схеме работы
Ответ #17 - 06. Марта 2008 :: 11:33
Печать  
fez писал(а) 06. Марта 2008 :: 11:23:
Ну вот куда ты так торопишься, и отвлекаешь Артура от главного? Я уже практически во всем его убедил вот тут: http://www.1cpp.ru/forum/YaBB.pl?num=1204707584 а ты прием претензий уже закрыл. Давай, открывай обратно. Ща научим Артура делать cvs diff -u и все снова будет хорошо.

Федор, я ведь и так практически со всем с тобой давно согласен.
Пусть будут зоны ответственности и соответствующие ответственные, один или группа.

Я же хочу определить политику в проекте на случай, когда автор/ответственный по причинам, не относящимся к разработке и проекту, не может/не хочет выполнять тех.поддержку.
И лично я лез в чужой код в 1С++ только для решения проблем, которые автор не решал.

В общем, такова моя позиция.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: 1CPP: разработчикам - о схеме работы
Ответ #18 - 06. Марта 2008 :: 11:40
Печать  
А знаешь, почему авторы порой не готовы на оперативную техподдержку? Потому что им как правило надо потратить ОЧЕНЬ много времени для того, чтобы разгрести архив с предлагаемыми изменениями. Если присылать изменения в виде патчей, то это во-первых, уменьшит количество мусора, а во вторых сделает работу автора по приему тех или иных изменений более легкой и менее напряжной.

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

P.S. Твоих заслуг в области автоматического тестирования никто не умаляет. Но те проблемы уже в прошлом, благодаря твоим стараниям. Теперь нам нужна твоя помощь в том, чтобы решить новые проблемы. Поможешь?
  
Наверх
www  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: 1CPP: разработчикам - о схеме работы
Ответ #19 - 06. Марта 2008 :: 11:45
Печать  
artbear писал(а) 06. Марта 2008 :: 11:33:
Я же хочу определить политику в проекте на случай, когда автор/ответственный по причинам, не относящимся к разработке и проекту, не может/не хочет выполнять тех.поддержку.

1. В предлагаемом мной варианте любой может предложить патч к коду. От автора требуется лишь одно: посмотреть в патч и либо скоммитить его, либо отклонить с определенными доводами. В случае отклонения автор патча идет дорабатывать патч по пожеланию автора.
То есть заинтересованный пользователь работает над нужным ему фунционалом, и при этом не сильно достает автора кода необходимостью постоянно отвлекаться на разбор многомегабайтных архивов.

2. Если автор кода не может выполнить даже такую простую функцию, как реакция на патч в разумное время - тут уже можно обсуждать смену ответственного за код, как мне кажется.
  
Наверх
www  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: 1CPP: разработчикам - о схеме работы
Ответ #20 - 06. Марта 2008 :: 11:48
Печать  
1. Федор, ты же знаешь, я всегда готов помочь, участвовать и т.д. И проект я не брошу, есть еще задумки и предложения.
2. ИМХО часто бывает так, что автор просто не готов в течение некоторого времени осуществлять тех.поддержку Печаль Типа завалили работой, отпуск и т.д.
А ведь дело стоит, люди ждут Печаль
Я говорю именно об этом.
О регламенте/форме внесения готовых изменений/дополнений в проект от доп. участника к основному автору всегда можно договориться, лишь бы автор был готов достаточно оперативно внести изменение, а не откладывал исправление по "левым" причинам Печаль
Вот что меня больше напрягает.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: 1CPP: разработчикам - о схеме работы
Ответ #21 - 06. Марта 2008 :: 11:50
Печать  
fez писал(а) 06. Марта 2008 :: 11:45:
artbear писал(а) 06. Марта 2008 :: 11:33:
Я же хочу определить политику в проекте на случай, когда автор/ответственный по причинам, не относящимся к разработке и проекту, не может/не хочет выполнять тех.поддержку.

1. В предлагаемом мной варианте любой может предложить патч к коду. От автора требуется лишь одно: посмотреть в патч и либо скоммитить его, либо отклонить с определенными доводами. В случае отклонения автор патча идет дорабатывать патч по пожеланию автора.
То есть заинтересованный пользователь работает над нужным ему фунционалом, и при этом не сильно достает автора кода необходимостью постоянно отвлекаться на разбор многомегабайтных архивов.

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

Согласен по обоим пунктам.

Думаю, что мы с тобой друг друга поняли Улыбка
Теперь осталось, чтобы остальные с нами согласились.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: 1CPP: разработчикам - о схеме работы
Ответ #22 - 06. Марта 2008 :: 19:00
Печать  
Федор, описанная тобой схема с патчами, конечно, красивая, но только мне не понятно, как она может заработать в условиях проекта 1CPP. Возможно, в Багзилле она работает потому, что проект достаточно большой и находится в активной стадии радвития.

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

Ты, Федор, конечно принимал патчи, но согласись, что, например, от Михаила ты принимал их практически не глядя.

Тут дело в том, что даже если патч будет от человека одного с тобой уровня, то у тебя все равно будет свой взгляд на принимаемое решение. А если патч оказывается достаточно сложным, то проще оказывается сказать "ну нехай", чем полностью в нем разобраться, да еще и скорректировать то, что можно было бы поправить. А если в патч попадает рефакторинг, то тут вообще - дело труба.  Улыбка

Вообщем, хрен его знает, как организовать эффективное взаимодействие разработчиков в распределенном проекте.  Улыбка У меня такое ощущение, что должна сформироваться команда разработчиков, которые доверяют друг другу. А разногласия между разработчиками регулирует координатор (от разработки) проекта.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1CPP: разработчикам - о схеме работы
Ответ #23 - 06. Марта 2008 :: 19:07
Печать  
fez

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

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

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

De quelle planète es-tu?
Наверх
 
IP записан
 
sedmin
1c++ developer
Отсутствует


I Hate Fat YaBB 2!

Сообщений: 862
Зарегистрирован: 24. Мая 2006
Re: 1CPP: разработчикам - о схеме работы
Ответ #24 - 06. Марта 2008 :: 21:17
Печать  
kms писал(а) 06. Марта 2008 :: 19:07:
Большая часть обратной связи с пользователями все же должна строиться на уровне идей/предложений.
Многие из которых будут отклоняться, к этому надо быть готовым.


Вот в том то и дело, что тогда получается "внутренний смех". (смотри "Чепаев и пустота").

Сильная сторона Артура как раз в том, что он не говорит "Это ИДЕАЛогически не верно" или "Мы подумаем на этим" или "У нас есть более важные вещи". А берет и реализует то, что просят пользователи. Хотя из этого следуют и отрицательные моменты.

Поэтому, архитектор должен думать о том как СДЕЛАТЬ то, что хотят пользователи или разработчики.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1CPP: разработчикам - о схеме работы
Ответ #25 - 06. Марта 2008 :: 21:32
Печать  
Здесь я скорее соглашусь со Страуструпом.

Если будет время, можно заглянуть в книжку D&E (дизайн и эволюция)  С++.
Он очень подробно описывает, почему те или иные изменения были приняты и почему большая часть принята не была.

То же самое касается принятия решений тем же комитетом по стандартизации С++.

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

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1CPP: разработчикам - о схеме работы
Ответ #26 - 06. Марта 2008 :: 21:37
Печать  
Впрочем, сейчас у меня есть исключительно благодарность пользователям 1cpp.
Здесь действительно отличный комьюнити, который объединяют некоторые общие идеи.

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

De quelle planète es-tu?
Наверх
 
IP записан
 
noprogrammer
1c++ power user
Отсутствует


I Love YaBB 2!

Сообщений: 465
Зарегистрирован: 16. Июня 2006
Re: 1CPP: разработчикам - о схеме работы
Ответ #27 - 06. Марта 2008 :: 21:56
Печать  
kms писал(а) 06. Марта 2008 :: 19:07:
Большая часть обратной связи с пользователями все же должна строиться на уровне идей/предложений.
Многие из которых будут отклоняться, к этому надо быть готовым.


+1
  
Наверх
wwwICQ  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: 1CPP: разработчикам - о схеме работы
Ответ #28 - 07. Марта 2008 :: 04:06
Печать  
Содержимое данного сообщения было перенесено СЮДА.
  
Наверх
www  
IP записан
 
fez
Forum Administrator
1c++ power user
Отсутствует


I wanted to cry, but the
tears wouldn't come

Сообщений: 2712
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: 1CPP: разработчикам - о схеме работы
Ответ #29 - 07. Марта 2008 :: 05:37
Печать  
sedmin писал(а) 06. Марта 2008 :: 19:00:
Я был в ситуации принимающего такие патчи. И если человек хуже меня ориентируется в проекте, то таким способом можно добавить только какую-нибудь примитивную педальку. Попытка принять что-то более серьезное приводила к 2-4 итерациям, полсле которых было понятно, что проще сделать самому, чем объяснить человеку, как это следует сделать.

Согласен, но тут есть еще два момента.
1. В процессе объяснения ты создаешь себе еще одного разработчика в проекте.
2. Если человек не в состоянии за 4 итерации создать правильный патч, то это серьезная причина 20 раз подумать, прежде чем принимать от него какие-то патчи вообще.
Оба момента являются достаточно ценными для того, чтобы их игнорировать.

sedmin писал(а) 06. Марта 2008 :: 19:00:
Ты, Федор, конечно принимал патчи, но согласись, что, например, от Михаила ты принимал их практически не глядя.

Не припомню ни одного патча от Михаила, который бы мне прищлось принимать.
Вот от Лехи Диркса - принимал не глядя. Очень положительное ощущение осталось.
Однако были граждане, "неглядный" прием патчей от которых обернулся потом очень серьезным дискомфортом для меня.

sedmin писал(а) 06. Марта 2008 :: 19:00:
Тут дело в том, что даже если патч будет от человека одного с тобой уровня, то у тебя все равно будет свой взгляд на принимаемое решение. А если патч оказывается достаточно сложным, то проще оказывается сказать "ну нехай", чем полностью в нем разобраться, да еще и скорректировать то, что можно было бы поправить.

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

sedmin писал(а) 06. Марта 2008 :: 19:00:
А если в патч попадает рефакторинг, то тут вообще - дело труба.  Улыбка

А не надо мешать все в кучу. Один баг - один патч. Чем меньше шаг - тем проще и понятнее патч. На рефакторинг стоит заводить отдельный баг.

sedmin писал(а) 06. Марта 2008 :: 19:00:
У меня такое ощущение, что должна сформироваться команда разработчиков, которые доверяют друг другу.

"должна сформироваться"... Никому она ничего не должна. Это задача координатора сделать так, чтобы он доверял разработчикам, а разработчики доверяли координатору и друг другу. И система приемки патчей - это как раз тот механизм, который может помочь всем участникам процесса выяснить: кому стоит доверять, а кому нет.
  
Наверх
www  
IP записан
 
Переключение на Главную Страницу Страницы: 1 [2] 3 
ОтправитьПечать