17 октября 2012 г., 23:55 пользователь Nataliya Trenina
<nat.t...@gmail.com> написал:
> --
> Agile Software Development Group, Ukraine, http://www.agileukraine.org/
>
> To visit the group online see: http://groups.google.com/group/agile-ukraine/
> To post to this group send email to agile-...@googlegroups.com
> To unsubscribe send email to agile-ukrain...@googlegroups.com
--
Александр Бурдун
tel: +38 097 137 0443
skype: a.burdun
AIM/ICQ: 307064073
http://burdun.com
Конечно иногда можно сделать еще быстрее ценой не самого простого
кода. Например дописать (скопировать откуда-то) что-то без тестов, со
слабой уверенностью что оно делает то, что нужно. Или сгенерить кусок
кода каким-то генератором или визуальным дизайнером, понимая что
результат поддерживать сложно. И это тоже иногда имеет смысл,
поскольку быстро закончить итерацию и получить обратную связь от ПО
это очень ценно. Подобное особенно ценно на очень ранних этапах
продукта, когда еще нет рабочей версии но очень желательно максимально
быстро "потрогать" что-то рабочее чтобы понять в правильном ли мы
двигаемся направлении.
Разработчики - это инструмент в руках ПО. ПО работает в среде с
неопределенностями: требования могут изменяться очень часто по
различным причинам. Хорошо когда у ПО появляется два уровня работы с
разработчиками: можно сдeлать продакшн качество и выпустить новую
версию продукта или очень быстро сделать "прототип", поигравшись с
которым можно принять решение о том делать ли его продакшн или
двигаться в другом направлении. При переделке прототипа в продакшн
часто имеет смысл полностью его выкинуть и написать заново.
Общий мотив - снимаем шапку архитектора заглядывающего в будущее.
Стремимся делать очень просто. Это красиво. Это не стыдно показать
детям. С этим можно дойти до IPO.
Не забываем что мы работаем на ПО. Наша задача быть удобным
инструментом в его руках.
Если ПО хочет на месте будущего этажа дома набросать из песка вариант
этого этажа, то очень здорово если мы умеем делать песочный вариант в
несколько раз быстрее каменного. Можно научить ПО пользоваться этим.
Естественно ПО должен понимать, что селить в песочный вариант людей
нельзя.
Не боимся делать без заглядывания вперед - неизвестно будут ли этажи
над тем, который вы сейчас строите, даже если вы строите первый а
вчера ПО упоминал про небоскреб. Если в спринте мы строим одноэтажный
дом, то фундамент делаем ровно под один этаж. Мы же умеем менять
фундамент потом.
2012/10/17 Nataliya Trenina <nat.t...@gmail.com>:
> --
> Agile Software Development Group, Ukraine, http://www.agileukraine.org/
>
> To visit the group online see: http://groups.google.com/group/agile-ukraine/
> To post to this group send email to agile-...@googlegroups.com
> To unsubscribe send email to agile-ukrain...@googlegroups.com
--
Evgeny Kompaniets
Я обычно ещё до того как человек начал работать на проекте
ознакамливаю его с рекомендациями Кена Бека ("4 заповеди"):
http://c2.com/cgi/wiki?XpSimplicityRules и другими полезными вещами.
Вроде все всё понимают, но проблемы всё равно есть: мало кто хочет
быть инструментом в руках ПО ...
2012/10/18 Evgeny Kompaniets <evg...@gmail.com>:
--
Borys L.
18 октября 2012 г., 9:56 пользователь Borys Lebeda
<borys....@gmail.com> написал:
--
Но до пропаганды нужно начать с более эффективного метода: зачем
кого-то побуждать, если можно поменять его или место работы? :)
т.е. резкое ослабление таких проблем возможно на этапе подбора
персонала. Т.е. еще при найме надо брать тех, кто разделяет подобные
ценности.
А дальше - пропаганда! :)
Например показываешь человеку исходники проекта в несколько
человеко-лет, а там хороший код. И говоришь, это возможно, если
работать так как я.
Иногда разработчики просто не умеют "менять фундамент потом", из-за
этого и желание поархитектурить. Тогда появляется технический вызов -
научиться решать такие задачи. Это может быть для кого-то мотивацией.
Внутренная красота от простоты - технари это могут оценить.
Подобную культуру могут нести другие разработчики.
Это хорошо работает, если удается заработать авторитет. Именно
заработать! А тогда его начинают слушать, даже если он на первый
взгляд говорит что-то не то. Естественно это тяжело сделать тренеру и
скраммастеру, если он далек от кодирования. Потому я верю в то, что в
команде очень нужен технический авторитет. Он будет на одной стороне с
разработчиками и его влияние будет самым сильным. Парное
программирование с таким авторитетом сильнейшая вещь!
Еще один ресурс - достучаться до ПО внутри каждого программиста. В
наше время модно стартапить и делать что-то для себя.
Т.е. многие программисты уже примеряли на себя эту роль. Знаю что
многие очень любят вникать в причины по которым ПО принимает решения.
Мы вообще любим обсуждать действия президента страны на кухне. Так что
любая домохозяйка может быть ПО :)
Это может быть мотивацией: ПО рассказывает бизнес причины его решений,
программисты ими проникаются и начинают больше играть на его стороне.
Также как если б они писали свой собственный продукт. Когда пишешь
свой продукт то очень легко убедить себя не делать лишнюю работу, если
она отдаляет тебя от успеха на рынке.
Здесь тоже я верю в силу авторитета ПО. Если программисты чувствуют,
что он силен в бизнес решениях с ним хочется работать вместе.
Есть еще один момент, даже если люди разделяют эти ценности, они
иногда (некоторые часто) увлекаются. Похоже чаще увлекаться
свойственно техническим людям сильным в каких-то технических областях
(в алгоритмах, технологиях и т.п). Когда ты владеешь огромным
арсеналом, который любишь, очень хочется его задействовать. И очень
здорово иметь в команде кого-то кто замечает что людей начинает
"заносить" и он сможет мягко вернуть людей из космоса на землю.
Хорошо, когда это не кто-то один, а вся команда помогает друг-другу не
увлекаться.
2012/10/18 Borys Lebeda <borys....@gmail.com>:
--
Agile Software Development Group, Ukraine, http://www.agileukraine.org/
To visit the group online see: http://groups.google.com/group/agile-ukraine/
To post to this group send email to agile-...@googlegroups.com
To unsubscribe send email to agile-ukrain...@googlegroups.com
2012/10/18 Anton Naumov <grays...@gmail.com>:
> --
> Agile Software Development Group, Ukraine, http://www.agileukraine.org/
>
> To visit the group online see: http://groups.google.com/group/agile-ukraine/
> To post to this group send email to agile-...@googlegroups.com
> To unsubscribe send email to agile-ukrain...@googlegroups.com
--
Evgeny Kompaniets
В аутсорсинге это не всегда проходит: заказчик может давать
неадекватно много времени. Было бы нормально если бы с ростом
"идеальности" кода, уменьшались бы и накладные расходы, а они ведь не
всегда уменьшаются ...
"Идеальность" - вещь субъективная :)
>
> А я вот сейчас буду толсто троллить. Вот очень толсто.
Да уж. Затроллил, так затролил ...
> --
> Agile Software Development Group, Ukraine, http://www.agileukraine.org/
>
> To visit the group online see: http://groups.google.com/group/agile-ukraine/
> To post to this group send email to agile-...@googlegroups.com
> To unsubscribe send email to agile-ukrain...@googlegroups.com
--
Borys L.