Comments 121
habrahabr.ru/post/348406
Потом прототип.
Потом макет.
Еще хорошо бы тесты.
Когда все нормальные этапы пройдены отчего бы и не добавить?
Вот когда каждое просто добавь откладывает релиз на месяцы — это реальная боль и хочется убивать
— давай добавим и запускаем
— давай сюда еще добавим
— а теперь вот сюда добавим
— а это лучше убрать (п.1)
— а теперь еще не хватает для красоты вот этого (п.1)
«Продавать» в моем контексте — приносить пользу конечному пользователю. Быть полезным продуктом. Иметь ценность. Решать конкретную основную насущную задачу. Не обязательно заказчик должен зарабатывать. Но продукт должен иметь ценность. Иметь потенциал продажи.
Вот даже когда заказчик вроде бы корпоративный и вроде бы точно понимает точно что нужно, назаказывает всего и не пользуется. А пользуется не фундаментальным основным функионалом, который под него пилился, а совершенно каким-то второстепенным. Потому что удобно оказалось.
Постоянно такое наблюдаю.
Бывает ещё такое: "Всё сломалось!"
И никаких объяснений: что сломалось, где сломалось, что именно это "всё". Хорошо если ссылку дадут.
А в итоге может оказаться, что "всё" – это какой-то мелкий баг, который ну никак язык не повернётся назвать "всё".
И вот такое вот может лететь не только от заказчика, но и внутри компании-исполнителя(например от менеджера к разработчику).
Elena> Алексей, ваша программа опять не работает! Достало уже! Я буду жаловаться.
polecat> Добрый день, в чём выражается проблема?
Elena> Не парьте мозги, программа не работает! Исправьте! У меня работа стоит!
polecat> Для того чтобы исправить программу, для начала мне нужно узнать, что вы понимаете под проблемой.
Elena> У меня уже очередь в 10 человек!
polecat> Это проблема?
Elena> Проблема!
polecat> Это проблема моей программы?
Elena> Какая разница? Вы будете исправлять программу?
polecat> Буду, но вы можете хотя бы пару раз ответить на поставленные вопросы?
Elena> Я вам оракул, что ли на вопросы отвечать? Я в вашей программе ничего не понимаю.
polecat> Скажите только, что именно работает не так.
Elena> Ну вы же писали программу!
polecat> БЛЯТЬ, УБЕЙ СЕБЯ!
Elena> ???
polecat> УБЕЙ СЕБЯ, СЦУКО!
Elena> Попрошу не хамить!
polecat> СЛУШАЙ МЕНЯ, СЦУКО, ОБЩАТЬСЯ БУДУ ТОЛЬКО С ВАШИМ ДИРЕКТОРОМ, А ТЫ ИДИ НА *УЙ, И ПУСТЬ ТЕБЯ ТАМ *БУТ МЕДВЕДИ!!!
Elena> Алексей, это Андрей Сергеевич! Программу только что проверил — всё работает. С твой путевки валяемся падсталом, похоже Лену туда и отправим, снабдив вазелином. ;)
В дальнейшем похоже ситуация будет только нагнетаться.
«Что конкретно сломалось?»
«ВСЁ СЛОМАЛОСЬ»
Обычно, если такое слышишь как аргумент в дискуссии, то все кончается плохо.
Хороший контраргумент: «Тогда были другие времена и соответственно требования. А технический прогресс не стоит на месте, все меняется».
Иногда это смущает «опытных» личностей и они замолкают, и больше не призывают к коммунизму :)
— предоставьте критерии оценки
— никаких критериев не дам, критерии только все портят, мое мнение — главный критерий, я 10 лет работаю
Его мнение = принятое решение задачи = его ответственность.
Зависит от программиста.
С одной стороны всегда надо тыкать руководство — что необходим дизайн, с другой и самому не быть уж совсем кривоглазым пофигистом, знать основные дизайн решения или продумать как юзеру будет удобней/понятней.
Сталкивался с таким несколько раз когда поручали часть работ по проекту фрилансерам.
Если заказчик не может их документировать, то они должны документироваться на нашей стороне.
1. Есть ошибка, она воспроизводится
2. У разработчика ошибка тоже воспроизводится и он ее исправлять не хочет
3. В этом случае нужно обращаться к контракту или его пересмотру. Мысли о профессионализме баг не исправят.
У них лист ошибок на годы вперед.
Все починить нет ресурсов, исходят из оценки экономического эффекта.
Думаю можно просить деньги назад.
Требовать, чтобы починили именно ваш баг, если он с экономической точки зрения не интересен владельцу продукта, ну не знаю.
А то что можно кинуть кнопку в случайное место формы — я узнал сегодня. Хотя подозревать о такой возможности стал раньше, после того как посмотрел код фрилансеров…
Так что либо описание, либо ссылка на то, как было сделано ранее.
С такой позицией вас ждёт ещё ой как много сюрпризов и сложностей
Действия первых двух кнопок друг друга скорректируют, а вот если я вместо опускания на одну позицию случайно ткну в самый низ списка — я оооочень растроюсь, ведь теперь надо докликивать вверх, а если список 200 позиций? По-этому разнести эти два набора кнопок считаю вполне логичным.
Хотя нет, логичнее для перемещения вниз и вверх на одну позицию расположить слева или справа от списка, в самый низ — под списком, в самый верх — над списком.
По-другому думают только инопланетяне и индусы.«Есть только два мнения: моё и неправильное!»?
То, что кнопка «переместить в самый низ» должна находиться рядом с кнопкой «переместить на 1 позицию ниже» — это очевидно.Посмотрите на клавиатуру (без нумпада): где стрелки, а где Home/End — как раз «локальные» и «глобальные» перемещения отделены.
А юзер будет промахиваться и из середины списка опускать не на две позиции, а в самый низ. А потом тащить вверх в середину. Я б убил. Всё правильно программист сделал, то что вам кажется очевидным — таковым не является. Это не свет солнца и не гравитация Земли.
Нет, серьезно, если заказчик такой — зачем вы с ним работает?
Плодите неадекватов. Уходите от них, все уйдут и либо заказчик будет очень дорого получать проекты, либо вообще не будет получать. Все в плюсе и те, кто за доп бабки готов терпеть и те, кто не готов терпеть ни за какие бабки.
«То, что чётко прописано в ТЗ, делаю по ТЗ. Остальное делаю по своему усмотрению. Все последующие правки — платно.»
Без исключений, именно проговаривать и требовать подтвердить.
Не важно, какие там договора-контракты, и насколько это кажется очевидным с точки зрения исполнителя. Цель в том, чтобы такой ситуации не возникло, а не в том, чтобы подловить заказчика на пункте договора.
У заказчика просто часто возникает иллюзия, что ему пообещали за N денег «сделать такую работу, которую он согласится принять». И нужно им чисто по-человечески объяснять, что это не критерий. Не понимают — до свидания.
Частенько их выкидывают со словами «правок не будет, какие правки» с логами и кучей переговоров.
А потом все равно нытье и боль -)
Но если в ТЗ есть строка, например «В админке должна быть возможность добавлять/удалять юзеров», они представляют себе эту возможность совсем по-своему (например, именно так, как она реализована в админке другого проекта). И до тех пор, пока речь идёт именно про добавление/удаление (а не про импорт из другой БД, например), им даже в голову не придёт, что эту задачу можно решить десятками способов. И они в итоге очень удивятся, увидев непривычный интерфейс и другую логику работы. «Ой, а что, так тоже можно было? Но это же совсем не то!»
Вот от таких удивлений и можно застраховаться. Ну, или как минимум морально подготовить. От правок как таковых это не защитит, но, поверьте, с финансовой и психологической точки зрения это будет уже совсем другой разговор. По ощущениям это уже будет не обманутый заказчик, которому «этот долбаный программист» обещал всё сделать, но в итоге попытался сдать сырую работу, сорвал все сроки на правках, и теперь ещё денег требует. Это будет заказчик, совершивший ошибку в ТЗ, но при этом пообещавший принять работу, сделанную «на своё усмотрение».
Речь не идет об ошибках в ТЗ или попытках подловить заказчика. Речь о новых идеях, которые неизбежно возникают, когда щупаешь готовое приложение руками.
Интересная мысль в статье, про некорректную обратную связь. А рецепт даётся во многих случаях общий — сказать, что же конкретно не устраивает.
Ещё обобщу. Есть понятие:
- корректирующая обратная связь — это имеется в виду в статье
- развивающая обратная связь — близкое по смыслу, но у неё есть шаблон: плюс — минус — плюс
Был на семинаре SOFTER (митапы в Москве), где рассказывали как такую связь можно давать, не обижая человека:
Рецепт такой (плюс — минус — плюс), а также:
- позитив
- конструктив
- максимальная конкретность
- краткость
Пример:
- Леня да Винчи, здравствуй. Ты очень профессиональный человек и хорошо проявил себя на предыдущем проекте с дизайном открыток.
- Текущий дизайн афиши слишком средневековый, цвета тусклые, фон тёмный, границы объектов размыты.
- Предлагаю упростить сюжет, сделав его более ярким. Думаю у тебя отлично получится.
В жизни эти знания пока не применял, просто усвоил и внутренне с ними согласен. Прочитал статью и вспомнил.
Но зато работает чеклист в карточке трелло с измеримым результатом
Делай раз
Делай два
Делай три
Причем когда хочешь какого-то бреда в одном из пунктов, то исполнитель обычно делает остальные пункты чеклиста, а этот пропускает с комментом:
— не понимаю
— не получится
— будет хуже
— давай сделаем по-другому
И все счастливы -)
- На исполнение дать в 5-10 раз меньше времени, чем минимально необходимо. А на вопрос «Что за нахер?» отвечать, что это уже кто-то прорабатывал и все и так ясно что задача маленькая. Отказаться обсуждать по существу. Это абсолютно убойная фича.
- Вместо вменяемых элементарных требований к работе для понимания что делать направить тебя в группу бизнес-мечтателей из самого высокого руководства из 10 человек (в переписке 20 человек), где у каждого свое мнение как должно все работать.
- Нагнать в задачу «помощников» у каждого также собственное видение что делать, но ответственным назначить тебя. Каждый «помощник» лучше тебя в 10 раз знает что делать и никоим образом тебе не подчиняется. Также у каждого собственное видение как делится задача.
Для лучшего эффекта сделать все это одновременно. Любая задача мгновенно отправляется в могилу. Также заметте, что в таких условиях содержание задачи становится уже не очень важно.
2. А вот, что вы думаете о работе… не рассказывайте.
Лайфхак:
Не ставьте перед исполнителем задачу из противоречивых и взаимоисключающих пунктов а-ля «стой там иди сюда» (иначе исполнитель в лучшем случае сделает лишь половину, и не факт, что вас именно эта половина устроит). Больше однозначности!
Потом понял, что цитата
Сначала подумал, что мой недостаточно...
Это фраза дня нашего генирального.
Сегодня было еще: «Нет акцента на главной, все размазанно». Мы раза два за последний год переделывал ее, по ходу грядет еще один редизайн главной.
Да и постоянно, дизайнер нарисует, там все выровнено по нижнему краю, приходит и говорит: «Я нашел баги, эта картинка не по центру относительно текста».
Как только слышит что-то, что идет в разрез с его мнением или представлением, так разворачивается и уходит. Причем не важно, договорил ты или нет. Потом еще может жаловаться на тебя другим сотрудникам.
Или макет нового списка ресторанов, он спрашивает: «За сколько сделаете. Там делать особо не чего, за пол дня будет готово?»
Ну и вишенкой на торте. Как-то пожаловался на меня менеджеру, что я не работаю, так как у меня руки лежат не на клавиатуре. Еще я отвернула специально свои мониторы, что бы не было видно, что я на них делаю.
Правда, приехавшие спецы из головной конторы попервости тоже пытались рассказать какие мы не профессионалы ибо используем не тот язык. который в головной конторе в фаворе. На что им было сказано, что наша программка идет даже на древних Нокиях N95 и не доставляет неудобств пользователям.
Как заработать ненависть исполнителей