Добрый день! Все, наверное, видели замечательную короткометражку "Эксперт" (для любителей неповторимых оригиналов - "The Expert", UPD: ну и первоисточник на всякий случай) про то, как специалиста просят нарисовать красные линии зелёным цветом. Как бы ни было смешно наблюдать когнитивный диссонанс специалиста, получившего противоречивую задачу, каждый, я думаю, сталкивался с подобным (в той или иной мере) в своей карьере.
Релевантный личный кейс (почти) в тему
Один из топ-менеджеров спрашивает у меня: "Why do you want to waste time on writing unit tests? Are you writing bad code?" Учитывая громкость вопроса и его обстоятельства, наиболее корректно по-русски это будет звучать так: "Нахрена ты собрался тесты писать? Ты там что, говнокодишь, что без тестов не можешь обойтись?" Опущу рассуждение о фрагменте, выделенном полужирным шрифтом, и способах обеспечения качества кода. Упомяну только, что речь тогда шла об нескольких классах, осуществлявших алгоритмически сложную многоуровневую обработку графа. Ага, и зачем тут тесты, в самом-то деле...
То, как задача была поставлена в изначальном видео, может вызвать у специалиста только одно желание - поскорее сменить работу. Почему? Потому что эта задача - сама по себе противоречие, причём не инженерного уровня (должна решаться выше). Специалиста просят сделать то, что невозможно в принципе: нельзя нарисовать что-то определённым цветом с помощью другого цвета. А хотите ту же самую задачу, но которая звучала бы как challenge? Чтобы её самому хотелось решать? Следите за руками:
Нам необходимо нарисовать красные линии. (Есть ясная выполнимая задача.)
Но у нас есть только зелёная краска. (Доступные ресурсы ограничены - это уже инженерное противоречие.)
(манипуляция "ты же профессионал", но давайте сменим тон на по-настоящему дружелюбный) Мы понимаем, что это звучит сложно/невозможно, но постарайся, пожалуйста, что-то сделать для наших клиентов. Может, ты сможешь подмешать в краску какую-нибудь добавку? Или поиграешься с освещением так, чтобы линии выглядели красными?
И знаете что? Ведь работает же!