четверг, 5 сентября 2013 г.

ОТЛИЧНЫЕ две ссылки

http://habrahabr.ru/post/192502/
http://habrahabr.ru/post/192296/

ОБОИМ авторам - пожал бы руки.

17 комментариев:

  1. Не переоценивал бы содержимое указанных постов.

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

    Мне вообще противна постановка вопроса "фриланса" и "разовых проектов". Вот так НЕ разрабатываются программные продукты.
    Там можно делать ремонт в квартире. Создание ПО (а не какого-то затрапезного сайта компании) - это не "тщательно напишите ТЗ" и "расплачивайтесь по факту сдачи проекта".

    И вообще - аутсорсинг и фриланс - (а также agile) - деградация в сфере инженерии ПО.

    ОтветитьУдалить
    Ответы
    1. Почему-то мне казалось, что работу должен выполнять профессионал. Так, например, я не силён в дизайне - почему бы её не отдать на аутсорс? И мне, и заказчику это выйдет дешевле. Правда, есть риск попасть на плохого исполнителя, зато в противном случае его (риска) больше не будет.
      И чем же так не угодил agile? ИМХО, постоянная связь с заказчиком это только плюс. Может, у Вас был негативный опыт, тогда поделитесь?

      Удалить
    2. Был на конференции Agile Days (походу в 2011 году).
      Выступали очень гладкие тренеры и только один case.

      Кейс закончился тем, что "мы все разругались".

      Еще пару челов выступали типа "мы его делали, но переросли... и скрам, и канбан".

      Мой девиз как у Брюса Ли - самый лучший стиль - отсутствие какого-либо стиля.
      Я под каждый проект/людей выбираю свою методологию. Ибо проекты/люди - уникальны.

      Сейчас (NDA) в одной очень дружественной конторе внедряют скрам.
      Вот убедите проджект оунера, что архитектура/моделирование/УМЛ/рефакторинг важен?
      Не, заплатко-пришивательство, дырозатыкательство и г...окод. Вот то, что порождает постоянная связь с заказчиком.

      Про ЛИЧНЫЙ опыт писал. Делал аджайлом (прикрыв правильным ТЗ свою ...пу). Переработал раза в 2. Зато скушал проект на следующий год 1 000 000 в одну харю (жаль, что рублями).
      Но этот аджайл мы сами придумали с заказчиком, включая длину спринта :)
      Придумали, как Александр Люлин "текучесть".

      Возможно, написал бы большую статью - почему Agile это плохо. Но с конференции Agile Days меня чуть ли не с кулаками пытались вытолкать. Поэтому пока вяленько нудю в комментах. :)

      Удалить
    3. Убедить овнера, что рефакторинг нужен, иногда возможно :) Тут всё от человека зависит: кому-то хватает веры в команду (раз она говорит, значит нужно), кому-то нужны расчёты в рублях/времени (сейчас разработка этой фичи стоит 2 недели, если потратить 1 неделю на рефакторинг, то мы её сделаем за 3 дня, а ту задачу за 2 вместо 5). Но эта нетривиальная задача требует больше психологии, чем логического мышления.
      >>Я под каждый проект/людей выбираю свою методологию. Ибо проекты/люди - уникальны.
      В итоге так и получается :) Тут опять же надо разбираться в психологии, но что мне больше всего нравится в agile - быстрый отклик заказчика.

      Удалить
    4. "Не переоценивал бы содержимое указанных постов."
      А я и не переоцениваю. Я просто считаю, что авторы сказали то, что должны были сказать.

      "Такие вещи каждый мгновенно понимает себе после первого провального проекта."
      МНОГИЕ - понимаю, но НЕ МНОГИЕ пишут. Посему - авторам - респект.

      Удалить
    5. "И вообще - аутсорсинг и фриланс - (а также agile) - деградация в сфере инженерии ПО."

      Вот - СОГЛАСЕН!

      Удалить
    6. Теперь уже вопрос к двоим людям: почему аутсорсинг и фриланс - деградация в сфере разработки ПО? У меня был опыт работы с фрилансерами - результатом доволен. Не сказать, что я отдавал им большой объём работ, но то, в чём они разбираются лучше, целиком. Какие у вас были баги, что столь резко настроили против?
      P.S. небольшая заметка про аутсорс в Китай - http://habrahabr.ru/post/165967/

      Удалить
  2. Тоже прочитал обе статьи, но у меня сложилось впечатление, что они больше подходят для водопадной модели. Там действительно нужно чёткое ТЗ, договор и прочие бумажки. Я же стараюсь со своими клиентами работать по agile: частые выпуски ПО, быстрая обратная связь. Как-то пока всё получается :) Конфликтов нет, если я неправильно понял задачу, то теряю не так уж и много времени. Кстати, у кого-нибудь из здесь присутствующих был опыт такой разработки? Хотелось бы услышать отзывы.

    Остальные пункты, ИМХО, относятся к психологии. Рецензии, профиль, варианты нужны чтобы выбрать адекватного исполнителя. За тестовое задание я бы послал на GitHub :)

    ОтветитьУдалить
    Ответы
    1. Вы правы (и все правы) относительно agile.
      Но масштаб проекта другой. Как только он больше $50 000, Вам такой водопад устроят, только в путь.
      Говоря простым языком - кого сажать, если проект проср..т? Если это не стартап?

      Поэтому agile - "пионерская зорька". Рано или поздно перестаешь играть в зарницу :)

      Ладно, ладно, скажу. По секрету.
      Scrum - есть способ выжимать все соки из программистов. Поэтому скрам должны любить начальники и ненавидеть программисты как способ своего окончательного порабощения :)

      Удалить
    2. Вот здесь я с Вами соглашусь - для больших и дорогих проектов agile не подходит. Там дествительно нужен кто-то ответственный и документы, которыми можно прикрыться. В частности, это касается госструктур (и тем более военных). "Где кнопка?! Здесь написано, что будет кнопка!!!" :)
      Я бы не сказал, что scrum - выжимание соков. Команда должна помнить, что Пете в среду надо уйти пораньше, а Вася всю неделю болеет. То есть не нагребать задачи и впопыхах их делать, а уметь тормозить "хотелки" овнера.

      Удалить
    3. >>это касается госструктур (и тем более военных).

      Коллега!
      ТЗ пишешь сам себе.
      Курирует проект один человек.
      Принимает госприёмка, которая ПО ЗАКОНУ не может с тобой общаться во избежание сговора.
      + уголовная статья за срыв гос. оборон. заказа.
      Там такой аджайл начинается....

      Удалить
    4. "а уметь тормозить "хотелки" овнера."

      Вам ПРАВДА это удаётся? ЗАВИДУЮ!

      Мне - практически НИКОГДА не удавалось.

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

      Удалить
  3. По моему небольшому опыту "водопад" и agile - "следуют рука об руку". Либо СНАЧАЛА "водопад", и потом agile. Либо СНАЧАЛА agile, а потом - "водопад". И так - "матрёшка" (или фрактал если хотите). На одном этапе "водопад", потом agile. Потом - наоборот.

    Ну мне так кажется.

    Я кстати поэтому "не люблю" MVC или "трёхзвенку". Ну НЕТУ ТРЁХ уровней. Их ГОРАЗДО больше. Матрёшка или фрактал.

    Ни MVC, ни "трёхзвенка" этого не показывают. А вот модели на UML - запросто.

    ОтветитьУдалить
  4. Ответы
    1. Договор о неразглашении (англ. Non-disclosure agreement, NDA)

      Удалить
  5. NDA - а мне сразу почудились автоматы и сети Петри :)

    ОтветитьУдалить