Самомнение проявляется множеством различных способов, как правило, мешает вам быть продуктивным и тормозит вас. Вот еще одна замечательная история из лекции Хэмминга, которая наглядно иллюстрирует эту мысль:

Джон Тьюки почти всегда носил очень простую одежду. Он ходил в пафосные офисы, и проходило немало времени, пока его собеседник понимал, что перед ним важная персона, которую следует слушать с вниманием. Джон долго преодолевал в себе проявление скромности. Это пустая трата сил! Я не говорю, что вам следует подчиняться правилам; я лишь утверждаю, что такое поведение поможет вам достичь значительных успехов. Если вы собираетесь искать способы отстоять свое эго («я сделаю так, как считаю нужным»), то вы платите в течение всей вашей профессиональной карьеры небольшую постоянную цену, которая за вашу жизнь превращается в огромное количество ненужных проблем. […] Если вы понимаете, что вам нужно использовать систему, и изучаете способы заставить систему работать на вас, то вы учитесь адаптировать систему к вашим желаниям. Иначе вы постоянно боретесь с ней на маленькой, необъявленной войне, длящейся всю вашу жизнь.

Учитесь критиковать и быть критикуемым

Джо получил новую работу программистом. Через неделю он стал внимательно изучать базу исходных текстов. Живо интересуясь происходящим, он деликатно расспрашивал своих коллег по команде о плодах их творчества. Он рассылал по электронной почте рецензии на коды, вежливо интересуясь о принятых допущениях и указывая на фрагменты, логику которых можно было улучшить. Через пару недель директор вызвал его к себе в кабинет. «Что случилось? – спросил Джо. – Я сделал что-то не так?» Директор выглядел обеспокоенным: «Мы получили много жалоб на твое поведение, Джо. Очевидно, что ты занял очень жесткую позицию по отношению к своим коллегам, критикуя их направо и налево. Они недовольны. Необходимо, чтобы ты стал мягче». Джо пришел в полное замешательство. В корпоративной культуре, основанной на скромности, уважении и доверии, коллеги Джо должны были приветствовать и ценить анализ кода, который он делал. Тем не менее в данном случае Джо слишком сильно воздействовал на чувство незащищенности команды и ему следовало вводить анализ кода в командную культуру более деликатными методами.

В среде профессиональных разработчиков ПО критика почти никогда не бывает личной – обычно она высказывается с целью создать максимально хороший продукт. Тонкость состоит в том, чтобы вы и окружающие вас люди понимали разницу между конструктивной критикой творчества человека и открытых нападок на его характер. Второе бессмысленно – это проявление мелочности, которое не способно что-либо изменить. Первое же всегда помогает определить путь к совершенству и, что важнее всего, воплощает уважение: конструктивный критик проявляет внимание к другому человеку и хочет, чтобы он или его работа стала лучше. Учитесь уважать коллег и критикуйте их конструктивно и вежливо. Если вы действительно испытываете уважение к людям, то у вас будет стремление выбирать тактичные и вежливые фразы, а это навык, который приходит только с опытом.

С другой стороны, вам также необходимо учиться принимать критику. Это подразумевает не только скромность по отношению к собственным навыкам, но и доверие к тому, что другой человек искренне неравнодушен к вашим ключевым интересам (и интересам вашего проекта!) и не считает вас идиотом. Программирование – такой же навык, как и любой другой. Он совершенствуется с практикой. Если коллега указал вам на то, как можно усовершенствовать ваши приемы, то воспримете ли вы это как нападки на ваш характер и попытку унизить ваше достоинство? Надеемся, что нет. Аналогичным образом, ваша самооценка не должна быть связана с кодом, который вы пишете. Вы и ваш код – не одно и то же. Повторяйте это снова и снова.