Форум: "Потрепаться";
Текущий архив: 2003.02.10;
Скачать: [xml.tar.bz2];
ВнизКак перестать беспокоиться и начать работать? :) Найти похожие ветки
← →
Tux (2003-01-23 00:01) [0]Волей случая приходится писать крупный проект с напарником. С утра выковыриваем из Team`a 4 сотни файлов и начинаем работать. Проект такой, что RAD средства помогают мало, дохренища приходится писАть ручками с нуля. Стиль, архитектуру и вообще идеологию диктует руководство. С ужасом заметил, что не могу себя заставить писать как приказывают, т.е. много, тупо и быстро. Напарник УСИДЧИВЫЙ, он с утра крепко садится в кресло и бодро без перекуров до отбоя долбит тупой код навроде
if (frmX.visible) then
begin
mnuX.checked := true
end
else
begin
mnuX.checked:=false;
end;
- конструкции вроде mnuX.checked = (frmX.visible and (x = y)) его приводят в ужас;
- Апи - это буржуйские штучки;
- простому регэкспу он предпочитает подозрительный перебор всякими length, pos и stringreplace (ему это непонятно);
- крайне редко использует RTTI, предпочитает все, что можно, запихивать в Tag (ему это тоже непонятно), к тому же никогда не пользуется указателями;
- его не смущает индексирование коллекций строками (когда можно и нужно числами);
- про абстрактный класс и всякие иерархии я ему разжевываю неделю - не доходит. Copy+Paste - и хоть плачь.
и т.д. и т.п.
В общем, ужас. НО! Он работает продуктивно, а я нет. У него к обеду есть что показать шефу, а я все по MSDN ползаю, сделав едва треть. Читать его код я не могу без улыбки. НО!! Веский аргумент: "мы сорцы сдаем заказчику, ему должно быть все понятно, писать надо как проще и вообще нас сроки жмут".
Вопрос: что с собой поделать? :)) Я же не могу себя насиловать :))
← →
Jeer (2003-01-23 00:22) [1]переходи в постановщики.
А вообще сейчас - кто быстрее даст результат - тот и с деньгами, если это тебе надо.
← →
Tux (2003-01-23 01:17) [2]Еклмн :) Есть еще один аргумент - оптимизация - потОм, после создания скелетика. В принципе, вариант. Притащить заказчику машинку помощней, на ней все будет летать. "Сдал-принял". Ставим поделку на 95/P133/64. Заказчик заверещит. А мы ему - "Поздняк, подписано! Давай-ка договорчик еще второй подпишем, чтобы быстрее работало???" Мы - типа операторы машинного доения :))
← →
Big_Rom (2003-01-23 03:17) [3]Да была у меня иака ситуация когда ,но когда все начело плыть
ториозить то политика резко изменилась
← →
kaif (2003-01-23 03:59) [4]Разделите с напарником задачу так, чтобы каждый выигрывал от стиля другого. Возьмите коллективную ответственность за весь проект на двоих. Тогда ты сможешь заниматься продумыванием членов абстрактных классов и иерархий, а напарник прописывать все эти
if Visble then
... := True
else
... := False
А еще лучше, если вы разобьете проект на отдельные dll или кто-то возьмет приложение, а кто-то dll. Тогда плюсы коллективной работы сразу выявятся. А в параллель однородно работать - напоминает организацию мануфактуры сапожников прошлого века с гордым названием "Обувная фабрика".
← →
Кот Бегемот (2003-01-23 09:51) [5]Игорь - ту где ????? - посоветуй чегото товарищу, а ?
Я бы сам - так не был в таком де#$%е :)
ЗЫ: А с другой стороны - начальство тоже право :\
"Работает ? - Точно работает ? - Ничего не трогай..."
А код:
if (frmX.visible) then
begin
mnuX.checked := true
end
else
begin
mnuX.checked:=false;
end;
не такой уже и плохой - все рано твоеmnuX.checked := (frmX.visible and (x = y))
компилятор приведет примерно к такому же виду :\
← →
gn (2003-01-23 10:04) [6]
>
> Tux
Если твоё начальство не хочет прислушиваться к твоему мнению
То, что ж тут сделаешь, они платят они и музыку соответственно заказывают
И обижаться тут неначто (только если на их глупость)
А с напарником вам надо распилить приоритеты на данный проект на то он и напарник
← →
Слесарь Матерящийся (2003-01-23 10:09) [7]А может, сменить напарника?
← →
blackman (2003-01-23 10:11) [8]Не усложняй себе жизнь.
Операторы машинного доения были и будут.
И это не плохо.
Делай СВОЁ дело и не смотри на других.
Работать надо быстро, а иначе ты можешь никогда не закончить работу и следовательно будешь не нужен.
Если есть время, то можно и в MSDN заглянуть, но если нет, то значит нет...
← →
Игорь Шевченко (2003-01-23 11:33) [9]Напарника надо либо переучивать либо ампутировать.Другого не дано.
Аргументы: корявый код невозможно сопровождать. В него крайне неудобно вносить изменения (или вы от изменений застрахованы на $1000000)
Copy/Paste - любой изменение придется вносить в N+1 мест.
Если тем более, исходники отдаются заказчику, то серьезный заказчик просуществует с вами ровно один раз при таком подходе.
Впрочем, если вы свои поделки не сопровождаете, тогда конечно, все мои аргументы можно проигнорировать :-)
С уважением,
← →
Кот Бегемот (2003-01-23 11:45) [10]2Игорь Шевченко © (23.01.03 11:33)
Спасибо :))) - а я уже думал ты исчез :(
← →
NailS (2003-01-23 12:05) [11]Может пора задуматься, а нафига тебе такая работа?
Ничему новому научится, а следовательно и поднять свой скилл, с описанным подходом все равно нельзя.
← →
Fiend (2003-01-23 12:26) [12]То Tux:
Поддержу мнение kaif про разделение. Т.е., я считаю в принципе глупым и не рациональным выполнять одни и те же подзадачи одного проекта, либо проверять текст напарника. На мой взгляд всегда было оптимальным разбить проект на минизадачи, каждому в зубы дать по набору этих задач. Как каждый из вас будет реализовывать свои алгоритмы это его личная проблема. Единственное о чём надо будет договриться так это моментах где ваши задачи будут стыковаться.
Из своего опыта: в комманде всегда так делали, т.е. например один чел разрабатывает БД, другой клиента и в друг друговы задачи не лезем. Надо что то тому кто пишет клиента от БД, он говорит второму: а как мне получить то то или а как тото удалить/сохранить/добавить не вникая во внутренности. Надо же разработчику БД какая то особенность от клиента, он спрашивает первого или говорит ему шо мол тото и тото, надо так то и так то!
и напоследок то Кот Бегемот:
чё это вы взяли шо компилятор приведет mnuX.checked := (frmX.visible and (x = y)) к блоку с ифами??? он сделает именно код вычисления выражения, а не переколбасит его в проверки
← →
Игорь Шевченко (2003-01-23 12:30) [13]Fiend © (23.01.03 12:26)
Компилятор переведет наоборот - блок if"ов к mnuX.checked := (frmX.visible and (x = y)), если включена оптимизация. Хотя, может и не перевести.
> Поддержу мнение kaif про разделение
Не с таким напарником. Напарника в конце концов уволят, и что делать с его кодом - переписывать по новой ? Нафиг, нафиг :-)
Лучше учить или менять на ранних этапах.
← →
Fiend (2003-01-23 12:36) [14]то Игорь Шевченко:
не стоит расчитывать на то что напарника уволят. Ведь это не задаватель вопроса решает. Поэтому как грится если уж он хочет работать в этой конторе или шо там у него не знаю, то ему придётся смириться с этими условиями. Ведь не пойдёт же он к начальству говорить что мол напарник - балбес, это по крайней мере неэтично, самому жаловаться. Я так понимаю они там с напарником на одинаковых должностях. Другое дело если его самого спросят, а как тебе мол второй товарисч? тогда можно и всю правду рассказать, тока при этом надо и от человека не скрывать своё мнение о нём.
ну и про первое: я просто хотел поправить Кота Бегемота, не более
← →
Кот Бегемот (2003-01-23 14:59) [15]2Fiend © (23.01.03 12:36)
Да я не про то - все равно та или другая конструкция переведется в наборJE JNE
- и какая оптимальнее - надо еще посмотреть :)
← →
Duce (2003-01-23 17:53) [16]Уважаемые, Солнца Вам над головой, или Луны(по вкусу) или микса из обоих этих светил. Вот по теме ветки.
Академическое знание - это прекрасно. Академический код - превосходно. Но это уже из области фундаментальной науки - тогда надо идти в НИИ или подобное место и посвящять себя науке. В индустрии же решаются конкретные задачи, и решаются оптимальным способом! Потому все эти охи-ахи за "арт-оф-программинг" - больно узкий взгляд на вещи. Решаются конкретные задачи на конкретных мощностях. И поэтому наивны мнения, что любой ценой нужно вцепиться в академизм. В конце концов, если мощь железа позволит компенсировать некоторые моменты программинга, то это НОРМАЛЬНО!
(Zic! Я совсем не утверждаю, что нужно сползти на линейный алгоритм из примитивных конструкций, на программингФРУклипборд!) Но в конечном итоге, если и решение на "неграмотном коде", и "на грамотном" устроит в ходе эксплуатации по таким параметрам, как быстродействие( ну какая на хрен эксплуататору разница, что чистое решение работает на 30% быстрее, когда в абсолютных величинах пьюре алгоритм пашет 7 , а грязный-10 сек ), легкость в сопровождении, удобство фейса, то то решение, какое быстрее получено - лучшее.
И плевать хотел эксплуататор нашего с вами труда на академичность кода, и правильно!
И как же я в свое время намучался с одним перфекционистом : -()
Потом узнал, что этот фрукт в прежней конторе писал весьма узкую систему учета около 10 мес. Даже в опытной эксплуатации его софт так и не зажил. А задача требовала 3 рабочих места в одной комнате без перспективы выноса вовне и расширений. Финал- изгнание гения.
Промтехнология требует следования стандарту, а не ежесекундных открытий и прорывов, или виртуозного мастерства. Поэтому герой ветки - безусловно очень талантливый тактик, но плохой стратег, если не может применится к контексту условий задачи, взвесить все аргументы и найти оптимальное качество работы. Вот.
Я не против артОФпрог, но за разумное ему следование. Нужно либо научиться работать в контексте конкретной задачи с учетом многих факторов, либо идти двигать науку. Сделать выбор, перестать беспокоиться и работать.
ПС: все беззлобно, прошу не обижаться :)
← →
Lancelot (2003-01-23 18:14) [17]
> Duce © (23.01.03 17:53)
И тут столкнулись лбами розовая детская мечта и суровая грязная действительность... :)
← →
Mike_Goblin (2003-01-23 20:09) [18]Присоединяюсь к мнению Игоря Шевченко
одно время и у меня был такой напарник, результаты
1. Чувствуя что заваливает свой участок работы он перед окончанием проекта ушел (это его право и я его не осуждаю)
2. N+1 Copy/Paste был приведен в нормальный вид (в сверурочное время), объем кода стал на 40% меньше, функциональность та же.
> Duce ©
наука не мешает практике, а очень даже помогает, откуда берется стандарт промтехнологии (а если вы знаете как его улучишить, почему не сделать этого?). Ваша позиция напоминает мне анекдот конечная фраза которого - че тут думать, прыгать надо!!!
(PS ничего личного ни к Duce, ни к напарнику)
← →
Ketmar (2003-01-23 20:22) [19]>Duce © (23.01.03 17:53)
ага. а вы пробовали поддерживать код и модифицировать, написанный в стиле "extreme programming"? причем написанный фиг знает кем? видимо, не пробовали...
Satanas Nobiscum! 23-Jan-XXXVIII A.S.
← →
Tux (2003-01-23 21:10) [20]Спасибо всем, от души.
Ketmar © (23.01.03 20:22)
Я около полугода назад заинтересовался XP, почитал теорию и удивился несостыковкам - как это можно БЫСТРО написать МНОГО ПРАВИЛЬНОГО кода, даже тех же тестов? КОнтора должна состоять либо из гениев, либо надо какое-то прилагательное выкинуть...
← →
Ketmar (2003-01-23 21:20) [21]>Tux (23.01.03 21:10)
достаточно просто писать не левой ногой.
Satanas Nobiscum! 23-Jan-XXXVIII A.S.
← →
Ketmar (2003-01-23 21:29) [22]>Tux (23.01.03 21:10)
а. вы про Extr.Progr? тогда не знаю.
Satanas Nobiscum! 23-Jan-XXXVIII A.S.
← →
Duce (2003-01-24 09:48) [23]Вы, господа, не совсем поняли, о чем я говорил. Все Ваши аргументы - это аргументы из кузницы от кузнецов. А юзеру скакать надо, и как можно быстрее. Разборки в цеху - не его проблемы. Тут уж кто быстрее подкову удовлетворительного качества сделает - тому и гонорар.
К Mike_Goblin - каждый должен заниматься своей спецификой.
Кто-то- аккуратно и грамотно работает по технологии, выдерживает сроки и минимаксные требования. Кто-то не в цейтноте эти технологии создает. Нигде в послании я не столкнул науку и практику лбами. Индустрия серийного производства использует достижения науки, а не параллельно занимается наукой.
Ничего похожего на "че тут думать, прыгать надо" в своем тексте я не нахожу. Я не зря упоминал ОПТИМАЛЬНОЕ РЕШЕНИЕ. Взвешенное и осмысленное. Не триумф дер виль, не акт воли, а акт разума.
Вот :))
← →
Игорь Шевченко (2003-01-24 09:52) [24]
> Тут уж кто быстрее подкову удовлетворительного качества
> сделает - тому и гонорар.
При этом надо, чтобы подкова не развалилась через 1 км скачки, и, возможно в будущем, могда прибиваться большим/меньшим количеством гвоздей. И не к копыту, а к колесу автомобиля.
С подходом Copy/Paste я гарантирую заведомый неуспех подобных модификаций.
> Индустрия серийного производства использует достижения науки
Так об чем и речь! Более того, для того, чтобы эту науку использовать, надо ее, как минимум знать :-)
С уважением,
← →
Ketmar (2003-01-24 10:53) [25]>Duce © (24.01.03 09:48)
скакать, говорите? ну вот выдали юзверю лошадку. быстро выдали. хорошая лошадка. но вот незадача: скачет она странно. 10 метров проскачет, и - бух на бок. приходится ее, болезную, юзверю поднимать. а она тяжелая. теперь вопрос: через сколько метров юзверь задолбается поднимать лошадь и пойдет бить морду продавцу?
я уж не говорю о том, что при попытке повесить на лошадку новое седло оная лошадка просто рассыпается на элементарный скелет и кишки...
Satanas Nobiscum! 24-Jan-XXXVIII A.S.
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.02.10;
Скачать: [xml.tar.bz2];
Память: 0.53 MB
Время: 0.009 c