Лучше бы вместо украшений типа breadcrumbs сделали что-нибудь реальное нужное, например, полноценный SCP-клиент. Но нет — мы идем своим путем! Кстати, именно из-за SCP очень многие пользуются исключительно FAR Manager.
Да, у сейлзов и разработчиков интересы зачастую противоположные, и это, наверное, правильно — достигается некое равновесие сил. Я был в ситуации, когда вопрос стоял так — если мы быстро не сделаем (на заплатках, с минимальным тестированием) проект и не выставим счет, то часть разработчиков просто придется уволить, т.к. зарплату им платить будет нечем. Таковы реалии маленьких контор. Или еще ситуация — надо починить какую-то багу, но заказчик не особо настроен за это платить, причем известно, что бюджет у него исчерпан и с вероятностью 90% продолжения не будет. Тут в общем-то на рефакторинг нет смысла заморачиваться.
Вопрос какой код и на что он влияет. В период кризиса все определяется простой математической формулой :)
Если ЦЕНА_РЕФАКТОРИНГА < ЦЕНА_ВНЕСЕНИЯ_ЗАПЛАТОК_В_БУДУЩЕМ, то рефакторинг оправдан. Однако главная трудность — как оценить оба этих компонента. Одни склонны преуменьшать первую, другие — недооценивать вторую.
В свое время (за месяц до ухода из некоей компании) я написал сразу несколько таких документов и передал руководству. Руководство их прочло, ничего не поняло и сообщило, что это им не нужно.
Времена, надо сказать, тогда были дикие — например, команда даже не пользовалась VCS, причем на попытки его таки внедрить отвечали «а зачем нам это»
Правильно. На самом деле я тоже люблю новые фичи и т.п.
Если все время тормозить инициативу, то падает мотивация, производительность и в конце концов люди либо «успокаиваются» либо уходят.
Ну, я описал достаточно грубый вариант менеджера. Все решает столкновение интересов. На самом деле инициатива сама по себе ничего не означает, человек должен помимо генерации идей уметь их обосновать и защитить, а с этим часто проблемы. «Просто идеи» без всякой ответственности за них мне, как менеджеру, не очень интересны.
Порадовало про тесты. Их что типа нет совсем?
«Зависит от». Например, в legacy-системе, с которой я сейчас работаю, тесты покрывают от силы 5-7%. Опять же полностью покрытая тестами система это «идеальный мир».
Если ЦЕНА_РЕФАКТОРИНГА < ЦЕНА_ВНЕСЕНИЯ_ЗАПЛАТОК_В_БУДУЩЕМ, то рефакторинг оправдан. Однако главная трудность — как оценить оба этих компонента. Одни склонны преуменьшать первую, другие — недооценивать вторую.
В свое время (за месяц до ухода из некоей компании) я написал сразу несколько таких документов и передал руководству. Руководство их прочло, ничего не поняло и сообщило, что это им не нужно.
Времена, надо сказать, тогда были дикие — например, команда даже не пользовалась VCS, причем на попытки его таки внедрить отвечали «а зачем нам это»
Правильно. На самом деле я тоже люблю новые фичи и т.п.
Ну, я описал достаточно грубый вариант менеджера. Все решает столкновение интересов. На самом деле инициатива сама по себе ничего не означает, человек должен помимо генерации идей уметь их обосновать и защитить, а с этим часто проблемы. «Просто идеи» без всякой ответственности за них мне, как менеджеру, не очень интересны.
«Зависит от». Например, в legacy-системе, с которой я сейчас работаю, тесты покрывают от силы 5-7%. Опять же полностью покрытая тестами система это «идеальный мир».