Статьи

Подробнее о «Мастерстве»

TL; DR : Для всех тех, кто не согласен, вы правы, но вы ошибаетесь. Мастерство — это благородный мем, когда это то, что кто-то считает своей личной целью, но это часто встречается как способ побить и очернить других, которые не хотят вкладывать значительное время и энергию в программирование. Мастера дзен не ходили по сельской местности, заявляя: «Я мастер дзен!»

Ух ты. Видимо, я коснулся нерва.

Прошло 48 часов с тех пор, как я опубликовал «Темную сторону» «Мастерства» , и он получил массу интереса, а также несколько синдицированных повторных публикаций (DZone и несколько других). Комментарии к блогу включали в себя ответ Дейва Томаса, другие посты в блоге были доведены до моего внимания, и Twitter был на ОГНЕ, когда люди пинали меня своими мыслями, которые оказывались по всему спектру, одобряли и не соглашались. Честно говоря, совсем не то, что я действительно ожидал, я думал, что это затеряется в шуме других, комментирующих все вокруг.

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

Кажется, что многие мнения были сосредоточены вокруг нескольких основных идей, поэтому позвольте мне сначала ответить на них.

Вы путаете «мастерство» с несколькими людьми, ведущими себя плохо. Это вполне может быть, но среди тех, кто вел себя плохо, был, по крайней мере, тот, кто считает себя лидером ремесленного движения и считает свои действия признаками того, как должны вести себя «ремесленники». Когда вы делаете это, вы приглашаете такую ​​критику и ассоциацию. Так что, если движению дают черный глаз из-за действий одного человека, ну, теперь вы знаете, как группа умеренных республиканцев относится к Полу Райану.

Кори хороший парень, он извинился, не распинай его.Конечно он есть. Кори — хороший парень, и, хорошо обращаясь к своему персонажу, он почти сразу же извинился, когда все это сломалось. Я давно узнал, что «истинное сожаление» означает, что вы (а) приносите извинения за свои действия, (б) стремитесь исправить ущерб, нанесенный вашими действиями («сделать это правильно», другими словами), и (в) избегать делая ту же ошибку в будущем. Издали кажется, что он чувствует себя сокрушенным и публично извинился за свои действия. Я надеюсь, что он напрямую связался с Хизер, чтобы попытаться наладить отношения с ней, но это между ними обоими. Избегает ли он такого рода деятельности в будущем, еще неизвестно. Я думаю, что он будет, но это потому, что я думаю, что он получил суровый урок о том, чтобы быть в центре внимания — это, как правило, суровое место, чтобы быть. Остальное это действительно небольше о Кори и Хизер, насколько я понимаю, эта тема завершена.

Вы неправильно понимаете природу «мастерства».Вообще-то нет. По сути, изначальная цель «мастерства» заключалась в постоянном стремлении быть лучше в том, что вы делаете, и в том, чтобы гордиться тем, что вы делаете. Это связано с японским кодексом самураев (канбан), который говорит, по сути, что мы постоянно стремимся стать лучше. Самураи стремились стать лучшими фехтовальщиками, постоянно бросая вызов друг другу, чтобы проявить храбрость друг против друга, улучшая свои навыки и, обусловливая, но также и свою честь, тем, как они обращались друг с другом, своим господином, своими слугами и теми, кого они стремились защитить. Канбан — это прекрасный код, и я пытался прожить его всю жизнь, даже до того, как открыл его. Пожалуйста, не думайте, что я неправильно понимаю учения вашего движения только потому, что я не хожу на собрания.

В любом случае, почему вы выбираете «мастерство»? Если я хочу гордиться тем, что я делаю, какая разница? Это я перефразирую большую часть инакомыслия, и мой ответ сводится к двум основным соображениям:

  1. Если вы думаете, что ваше движение «только о себе», зачем изобретать ярлык, чтобы отличать себя от остальных?
  2. Если вы изобретаете ярлык, становится практически автоматическим проводить черту между «нами» и «ими», и это само по себе почти автоматически приводит к поведению и менталитету «мы против них».

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

Были также некоторые конкретные блоги и комментарии, которые я тоже заслуживаю обсуждения:

Дэйв Томас любезно прокомментировал мой блог:


Я помню комментарии фермеров 🙂 Я думаю, что сказал 30%, но я придерживаюсь того, что я сказал.
И это не совсем элитарная позиция. Вместо этого я чувствую, что программирование — это тяжелая работа. В конце дня кодирования я устал. И поэтому я считаю, что если вы просите кого-то заняться программированием, то в ваших интересах и в том, чтобы они делали то, что им нравится. Потому что, если им это не нравится, то они действительно просто рабочие, усердно трудящиеся над чем-то, что для них не имеет значения. И если вы проводите это 8 часов в день, 5 дней в неделю, это кажется ужасной тратой жизни умного человека.

Конечно, программирование сложно. Как и домашняя роспись. Это разные виды истощения, но все равно это истощение. Но, честно говоря, если кто-то решил заняться работой, которую он делает, просто потому, что это работа, это его выбор, а не наш, чтобы критиковать, по моему мнению. (И я помню это как 50%, потому что я очень четко помню, как говорил «способ оскорбить половину комнаты» после этого, но, может быть, я вас не услышал. Я знаю, что другие тоже слышали это на 50%, потому что один или два посетителя) подошел, чтобы поговорить об этом после панели. По крайней мере, так я это запомнил в то время. Но само число является своего рода бессмысленным, теперь, когда я думаю об этом.)


Сельскохозяйственная цитата была преднамеренной попыткой быть шокирующей, чтобы сделать точку.
Но я все еще думаю, что это действительно. Я предполагаю, что 30% разработчиков, которых я встречаю, не довольны своей работой. И я думаю, что эти люди были бы счастливее и более довольны, занимаясь чем-то другим, что приносило им больше удовлетворения.

Опять же, вы и я согласны, что люди должны делать то, что они любят, но это личное суждение, которое каждый человек может сделать для себя. В нашей жизни есть аспекты, которые мы не любим, но делаем это потому, что они делают других людей счастливыми (например, вспоминаются Джульетта и Шарлотта, увлекающие мальчиков на различные занятия), и мы не можем судить как другие выбирают для себя, имхо.


Никто не должен быть рабочим.

И здесь, вы и я не согласимся совершенно принципиально: поскольку я считаю, что это был Мартин Лютер Кинг, младший, который сказал: «Если вы собираетесь быть уборщиком, будьте лучшим уборщиком, которого вы знаете, как быть». Этим утверждением кажется, что вы говорите, что люди, которые работают с телом, а не с вашим разумом (и, поверьте мне, вы, возможно, больше не работаете, большой издательский магнат, которым вы являетесь, но я знаю, что уверен, что так и есть) каким-то образом менее обеспеченные, чем те, на кого работают другие люди. Некоторые люди не хотят быть боссом или владельцем. Посмотрите историю мексиканского рыбака в конце этого блога.

Нейт прокомментировал:


У вас есть логическая ошибка, смешивая людей, которые высмеивали код Хизер, и людей, которые занимаются мастерством программного обеспечения.
На самом деле это огромный скачок логики для создания этой связи, и это действительно отрывается от статьи.

Как я укажу позже, люди, которые высмеивали код Хизер, были одними и теми же людьми, которые поддерживают мастерство программного обеспечения. Это не я придумывал.


Теперь вы понимаете, что вы твердо устанавливаете свой флаг в лагере «мастерства», одновременно продвигая свое положение вверх, рисуя линию на песке, чтобы определить другую группу людей как «рабочих».
Или, другими словами, попытайтесь поднять себя, покровительствуя другим той позицией, которую, как вы думаете, вы делаете им комплимент. Может ты этого не понимаешь?

Нет, я понимаю это, и это справедливая критика, поэтому я не называю себя «мастером». У меня есть больше, чтобы сказать об этом ниже.


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

И те самые люди, которые называют себя «мастерами», раскритиковали кусок кода, который, насколько я могу судить, соответствовал всем этим критериям. Отсюда и моя реакция, с которой все началось.


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

О, люди все время судят друг друга, и нам давно пора перестать избивать их за это. Это человек, чтобы судить. И хотя было бы политически корректно сказать: «Вы не должны судить меня, прежде чем вы меня знаете», факт, конечно, вы собираетесь делать именно это, потому что у вас нет времени, чтобы узнать меня. И тот факт, что вы не знаете меня, кроме как через блог, вполне приемлем — вам не нужно исследовать меня, чтобы иметь мнение. Так что мы все согласны с этим. (Что касается того, являюсь ли я отличным умным парнем, который делает добро в мире, ну, это по мнению других, по моему мнению, а не по моему.)


Вышесказанное звучит как большая часть того же «элитарности», который созрел в этом мире от игровой площадки до рабочего места с самого начала.

Так ведь? И, надеюсь, я проясню позицию более четко позже.

В « Это нормально любить свою работу» , Чед МакКаллум говорит, что


Основная предпосылка (или, по крайней мере, та, с которой автор начинает) состоит в том, что, поскольку существует самопровозглашенная группа «мастеров программного обеспечения», будет эгоистический разрыв между теми, кто «понимает это», и теми, кто этого не делает. т.

Нравится тебе это или нет, Чад, это эгоистическое различие есть. Вы можете «называть ерунду» весь день, но посмотрите на реакцию, которая возникла по этому поводу — люди чувствуют это разделение, и, честно говоря, это было то, что было здесь очень долго. Это не только я придумываю это.

Чад также говорит:

Это правда, что отзывы Хизер были излишне негативными. И это произошло от людей, которых, вероятно, считают «умельцами программного обеспечения». Тем не менее, корреляция не равна причинности. Я предполагаю, что отрицательных отзывов было больше, потому что у этих оригинальных преступников был плохой день, и они должны были излить. И, возможно, комментарии после этого просто вскочили на подножку, потому что кто-то с большим количеством последователей и / или уважением сказал это.

Это то, что может и произошло с кем угодно, независимо от отрасли, в которой они работают. Очень несправедливо ассоциировать «человека, увлеченного разработкой программного обеспечения», с «человеком, который ждет, чтобы напасть на вас за ваши ошибки».

К сожалению, Чад, оправдание, что «это делают и другие», не является приемлемым оправданием. Если бы все спрыгнули со скалы, вы бы тоже это сделали? Я понимаю обоснование — крайне трудно быть противником стада (у меня есть психологические исследования, которые я могу привести на вас, чтобы доказать это), но это не делает это нормально или оправдывает это. Сказать «это происходит в других отраслях» — это просто продолжение этого. В других отраслях женщины по-прежнему подвергаются явной дискриминации — значит ли это, что мы тоже можем это делать?

Чад закрывает свой блог словами «Прекратите называть нас эгоистичными придурками только потому, что мы любим то, что делаем». На что я отвечаю: «Я счастлив сделать это, как только те« мастера », которые ведут себя как один, перестанут вести себя как один». Если вы не ведете себя как один, здесь не должно быть никаких аргументов. Если вы пытаетесь сказать мне, что ваш лейбл как-то невосприимчив к критике, то я думаю, что мы просто должны согласиться не соглашаться.

Пол Пейджел (на сайте, посвященном искусству программного обеспечения, не менее) ответил также со своим Смиренным Преследованием Мастерства . Он открывается с:


Я читаю в блогах и пишу твиты о том, что «мастерство в программировании — это элитарность».
Это восприятие формируется вокруг комментариев кода, процесса или методов. Я понимаю, что заслуженное ремесленником чувство гордости за свою работу иногда может быть передано ненадлежащим образом.

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

Затем Павел подводит итоги своей карьеры, убеждаясь в том, что он ограничивает определенные термины, с которыми я не спорю: «жертвовать», «слушать», «практиковать», «критиковать» и «учить». И, честно говоря, это то, что я тоже обнимаю. Но я начинаю немного сомневаться в святости вашей терминологии, Пол, когда она довольно явно используется в качестве рекламного слогана и темы по всему сайту — если вы хотите, чтобы этот термин оставался преследованием в стиле дзен, тогда вам нужно по моему мнению, чтобы не допустить коммерциализации, или вы приглашаете критику, которая идет сюда (явная или неявная).

Вывод Павла заканчивается:


Жертва, слушание, практика, критика и обучение звучат для вас как элитарные качества? Мастерство программного обеспечения начинается как скромное стремление к мастерству. Я не позволю 140 или 1000 персонажам пересмотреть часы и годы, потраченные на то, чтобы стать мастером. Это дало мне смирение и уверенность в том, что я профессиональный разработчик программного обеспечения. Иногда я позволяю уверенности взять верх над собой, но я знаю, что когда это произойдет, я не соблюдаю дух мастерства, которому меня научили.

Достаточно ли смирения, чтобы пометить вашу фразу «Программное обеспечение — наше ремесло»? Достаточно ли смирения, чтобы назвать себя «движущей силой» мастерства программного обеспечения? Не поймите меня неправильно, Пол, есть определенная коммерциализация, которую любой консультант должен принять, чтобы выжить — но либо, пожалуйста, не смешивайте свои жизненно важные принципы с вашей коммерциализацией, иначе не удивляйтесь когда другие прицеливаются в ваше «смирение», когда вы это делаете. То же самое происходит, когда в воскресное утро министры стоят в многомиллионном здании и рассказывают о притче о вдове, которая раздает ей последние два медника, — это отдает лицемерием.

Наконец, Мэтт ван Хорн написал в Crafsmanship, опровержение, что:


Существует умозаключение, что мастера-программисты являются исключительной группой, которая работает над «правильными» инструментами и техниками.
Это не может быть дальше от истины. Любой, кто серьезно относится к своему ремеслу, знает, что для каждой работы есть инструменты, которые лучше, а некоторые хуже.

… но затем он совершает именно эту ошибку:


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

(1..10).each{|i| puts i}

более элегантный, чем

x = 0
while true do
  x = x + 1
  if x > 10
    break
  end
  puts x
end

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

Мэтт, вы как бы делаете мою точку зрения для меня. Что делает его элегантным? Вы принимаете это как само собой разумеющееся. Я не. На самом деле, я уже несколько лет задаю этот вопрос: «Что делает код« элегантным », а не« некрасивым »?» По иронии судьбы Эллиот Расти Гарольд только что написал в блоге о том, насколько опасен этот стиль кодирования в Java. и был распят за это, но он считает, что функциональный стиль (ваш первый пример) не JIT, а более императивный стиль прямо сейчас на JVM (или на CLR, насколько я могу судить). вы предполагаете, что это будет работать на нативной реализации Ruby, на JRuby, IronRuby, …? Вы оценили код во втором примере на основе внутренней системы ценностей, которую вы, возможно, никогда не ставили под сомнение. быть в состоянии объяснить свои суждения с точки зрения системы ценностей.И тот факт, что вы судите без какого-либо контекста, прямо говорит о том, что я пытался сделать: «ремесленники», похоже, имеют тенденцию судить в отсутствие контекста, потому что они явно «продвигаются дальше по пути к мастерство «, чтобы использовать свою собственную метафору.

Или, говоря более кратко: «Красота в глазах смотрящего».

Затем Мэтт говорит мне, что я упустил смысл истории самураев и чайного мастера:


в конце концов, он завершает известной историей дзен, но он полностью упускает суть этого. История касается мастера чая и самурая, которые вступают в поединок. Мастер чая побеждает, привнося в дуэль ту же концентрацию, что и в своей чайной церемонии. Дело в том, что Тед, похоже, упускает из виду то, что мастер чая является мастером высшего порядка. Мастер ча-до (способ чая) способен превратить простой акт приготовления и наливания чашки чая во что-то трансцендентное, привнося в этот простой акт ясный ум, хорошее отношение и годы терпеливого, скромного практика. Возможно, он побеждает, потому что он усовершенствовал свое ремесло в большей степени, чем самураи усовершенствовали свое собственное. Вот почему он заслужил право носить одежду самурая, и поэтому он может сразиться со своим противником.

Что, опять же, я нахожу забавным, потому что большинство мастеров дзен скажут вам, что история — любая история дзен, на самом деле — не имеет «окончательного» значения, но имеет значение, основанное на том, как вы ее интерпретируете. (Есть несколько притч о дзен, которые подкрепляют эту точку зрения, но есть небольшая мета, чтобы оправдать мое понимание истории дзен, цитируя другую историю дзен.) Как Мэтт решает интерпретировать эту притчу, конечно, ему решать. Я предпочитаю толковать историю таким образом: оскорбленный самурай чувствовал, что его «заслуженное чувство гордости» за мастерство владения мечом оскорбил мастер чая — явно не фехтовальщик, как говорится в рассказе, — носил одежды ранга и Почитай, что он не заработал. И ясно, что мастер чая не был фехтовальщиком. Но мастер чая научился у своего сверстника не тому, как использовать свою концентрацию и дисциплину, чтобы улучшить свое мастерство владения мечом,но как доказать, что он действительно заработал ноту мастерства благодаря совершенно иной дисциплине, чем у оскорбленных самураев. Мастер чая до сих пор не владеет мечом, но в своем деле он эксперт. Это было все, что нужно оскорбленным самураям, чтобы увидеть, что знак чести был заработан, а не только наложен капризным (и неуважительным) лордом. Положите кисть и холст в руки маляра, и вы получите много неприятностей, но поставьте художника-распылителя в руки Леонардо, и вы все равно получите беспорядок. На самом деле, чтобы по-настоящему оправдать притчу, мы должны увидеть, сколько «ремесла» может принести Мэтт, когда его просят нарисовать дом, потому что это касается того, насколько важны фехтование и рисование дома по отношению друг к другу. (Кстати, все аналогии проваливаются, и мывероятно, достигну границ этого.)

Билли Холлис — мастер в VB, гораздо больше, чем я когда-либо буду; Я знаю C ++ гораздо лучше, чем он когда-либо. Я уважаю его способности, а он, мои. Здесь нет аргументов. Но что еще более важно, есть друзья, с которыми я работал в прошлом, которые являются мастерами ни с VB, ни с C ++, ни с каким-либо другим языком программирования, но вместо этого решили потратить свое время и энергию на катание на лыжах, гончарное мастерство или поклонение Телевизионное шоу. Они решили направить свои энергии — энергии, которые, по-видимому, говорят «мастера», должны быть направлены на их программирование — на вещи, которые приносят им радость, а это не программирование.

Это подводит меня к еще одному припеву, который возникает снова и снова: вы критикуете ремесленника, но затем проводите различие между «мастером» и «рабочим». Вы сбиты с толку (или запутались).Прежде всего, я думаю, что важно проводить двусмысленную оценку по двум осям: те, кто предпочитает тратить свое время на обучение написанию лучшего программного обеспечения, и те, кто предпочитает рассматривать код как «просто» работу как одну ось, и вдоль второй оси, степень, в которой они освоили программирование. По вашим собственным определениям, «ремесленники», можно ли в начале овладеть программированием и при этом оставаться «мастером»? Можно ли быть мастером боулера, который только что занялся программированием и может считаться «мастером»? Является ли природа «мастерства» мерой вашего мастерства, или это ваша преданность программированию, или это ваша преданность чему-то в вашей жизни, точка? (Помните, в притче о мастере чая говорится, что мастер-разработчик C ++ увидит мастера-боулера и уважает его мастерство в боулинге,несмотря на то, что он не может кодировать дерьмо. Вы бы назвали его «мастером»?)

Честно говоря, скажу для справки, что я думаю, что есть люди, программирующие, которые не хотят тратить кучу времени и энергии на изучение того, как стать лучшими программистами. (Я подозреваю, что большинство из них также никогда не будут читать этот блог.) Они видят работу как «просто работу» и готовы учить, как делать вещи, но не хотят уходить и учиться как сделать их самостоятельно. Они хотят сделать лучшую работу, какую только могут, потому что они, как и любой человек, хотят принести ценность миру, но не имеют такой страсти к программированию. Они хотят прийти в 9, сделать свою работу и вернуться домой в 5. Это те, кого я называю «рабочими». Они «рыбак» в следующей истории :

Бизнесмен был на пристани небольшой прибрежной мексиканской деревни, когда пришвартовалась небольшая лодка с одним рыбаком. Внутри маленькой лодки было несколько больших желтоперых тунцов. Бизнесмен похвалил мексиканца за качество своей рыбы и спросил, сколько времени понадобилось, чтобы поймать их. Мексиканец ответил лишь немного.

Затем бизнесмен спросил, почему он не задержался и не поймал больше рыбы? Мексиканец сказал, что у него достаточно средств для удовлетворения насущных потребностей его семьи. Затем бизнесмен спросил, а чем вы занимаетесь в остальное время? Мексиканский рыбак сказал: «Я сплю допоздна, ловлю рыбу, играю с моими детьми, беру сиесту с моей женой Марией, каждый вечер прогуливаюсь по деревне, где я потягиваю вино и играю на гитаре с моими амиго; у меня есть полный и занятая жизнь, сеньор.

Бизнесмен усмехнулся: «Я — магистр Гарвардского университета, и я мог бы помочь вам. Вы должны проводить больше времени на рыбалке, а на вырученные деньги купить большую лодку. На вырученные деньги от более крупной лодки вы могли бы купить несколько лодок; в конечном итоге у вас будет флот». рыбацких лодок. Вместо того, чтобы продавать свой улов посреднику, вы продали бы его непосредственно переработчику и в конечном итоге открыли свой собственный консервный завод. Вы бы контролировали продукт, обработку и распределение. Вам нужно было бы покинуть эту небольшую прибрежную рыбацкую деревню и переехать в Мехико, затем Лос-Анджелес и, в конечном итоге, Нью-Йорк, где вы будете управлять своим растущим предприятием.

Мексиканский рыбак спросил: «Но, сеньор, сколько времени это все займет?» На что бизнесмен ответил «15-20 лет». «Но что тогда, сеньор?» Бизнесмен засмеялся и сказал: «Это лучшая часть! Когда придет время, вы объявите IPO, продадите акции своей компании для широкой публики и станете очень богатыми. Вы заработаете миллионы». «Миллионы, сеньор? Тогда что?» Бизнесмен сказал: «Тогда ты уйдешь на пенсию. Переезжай в маленькую прибрежную рыбацкую деревушку, где будешь спать поздно, ловить рыбу, играть с детьми, устроить сиесту с женой, прогуляться в деревню по вечерам, где можно потягивать вино и играй на гитаре со своими амиго. «

Что делает все это (этот конкретный предмет, мастерство) особенно трудным для меня, так это то, что мне нравится послание, которое приносит мастерство, с точки зрения того, как вы ведете себя. Я люблю книгу Образцы ученичестваНапример, и подумайте, что любой, новичок или мастер, должен прочитать эту книгу. В прошлом я брал на себя учеников и буду продолжать учиться в будущем. Сообщение, которое лежит в основе мема мастерства — постоянное стремление к улучшению — хорошее, и я не хочу выбрасывать ребенка с водой из ванны. Если вы приняли «мастерство» в качестве своей основной ценности, пожалуйста, во что бы то ни стало, продолжайте практиковать это! Я тоже хочу сделать это. У меня есть программисты-наставники, я взял говорящих учеников, и я стремлюсь узнать больше о своем ремесле, расширяя свои исследования далеко за пределы программного обеспечения — я читаю книги по менеджменту, психологии, архитектуре зданий и бизнесу, потому что я думаю, что есть больше для программного обеспечения, чем просто выбор языка программирования или стиля.

Но имейте в виду, что если вы начнете рассказывать людям о том, как вы живете своей жизнью, возникает неявная критика или ожидание того, что они тоже должны это делать. И когда вы начнете критиковать код других людей за то, что он «нелегальный», «некрасивый» или «нечистый», вам лучше объяснить свою систему ценностей и то, почему вы ее так оценили. Смирение — это трудный, трудный путь, по которому я только недавно начал понимать очертания; Я виновен почти во всех мыслимых грехах, когда дело доходит до этой темы. Я создал «элегантные» системы, которые потерпели неудачу в своем первоначальном намерении. Я критиковал «некрасивый» код, который, на самом деле, хорошо служил цели. Я хвастался своими достижениями тем, кто достиг гораздо большего, чем я, или когда-либо буду.И я считаю поразительным, что мои друзья, которые были со мной задолго до того, как я начал есть свой справедливо заслуженный пирог, все еще со мной. (И что эти друзья сами по себе являются удивительными людьми; если человек судит по компании, которую он держит, то, оглядываясь на своих друзей, я становлюсь королем.) Я буду продолжать стремиться быть лучше, чем я сейчас, хотя, даже в рамках этой дискуссии прямо сейчас: те из вас, кто критиковал мой пост, у вас есть хорошие моменты, все вы, и я, конечно, не хочу мешать вам продолжать свои путешествия самопознание, либо.затем, оглядываясь на своих друзей, я становлюсь королем.) Я буду и впредь стремиться быть лучше, чем я есть сейчас, хотя даже в рамках этой дискуссии прямо сейчас: те из вас, кто критиковал мой пост, вы У всех вас есть хорошие моменты, и я, конечно же, не хочу помешать вам продолжать свои путешествия самопознания.затем, оглядываясь на своих друзей, я становлюсь королем.) Я буду и впредь стремиться быть лучше, чем я есть сейчас, хотя даже в рамках этой дискуссии прямо сейчас: те из вас, кто критиковал мой пост, вы У всех вас есть хорошие моменты, и я, конечно же, не хочу помешать вам продолжать свои путешествия самопознания.

И если мы когда-нибудь встретимся лично, я куплю тебе пива, чтобы мы могли сесть и продолжить это обсуждение лично.